浏览代码

fix:bug修复

liu.tao3 1 年之前
父节点
当前提交
058b6e91af

+ 41 - 41
data-room-ui/package-lock.json

@@ -3377,27 +3377,6 @@
         "whatwg-fetch": "^3.6.2"
       },
       "dependencies": {
-        "@vue/vue-loader-v15": {
-          "version": "npm:vue-loader@15.10.2",
-          "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.2.tgz",
-          "integrity": "sha512-ndeSe/8KQc/nlA7TJ+OBhv2qalmj1s+uBs7yHDRFaAXscFTApBzY9F1jES3bautmgWjDlDct0fw8rPuySDLwxw==",
-          "dev": true,
-          "requires": {
-            "@vue/component-compiler-utils": "^3.1.0",
-            "hash-sum": "^1.0.2",
-            "loader-utils": "^1.1.0",
-            "vue-hot-reload-api": "^2.3.0",
-            "vue-style-loader": "^4.1.0"
-          },
-          "dependencies": {
-            "hash-sum": {
-              "version": "1.0.2",
-              "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
-              "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
-              "dev": true
-            }
-          }
-        },
         "acorn-walk": {
           "version": "8.2.0",
           "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.2.0.tgz",
@@ -3469,26 +3448,6 @@
             "tapable": "^2.0.0"
           }
         },
-        "json5": {
-          "version": "1.0.2",
-          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
-          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
-          "dev": true,
-          "requires": {
-            "minimist": "^1.2.0"
-          }
-        },
-        "loader-utils": {
-          "version": "1.4.2",
-          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
-          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
-          "dev": true,
-          "requires": {
-            "big.js": "^5.2.2",
-            "emojis-list": "^3.0.0",
-            "json5": "^1.0.1"
-          }
-        },
         "ms": {
           "version": "2.1.2",
           "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -3723,6 +3682,47 @@
         "lodash": "^4.17.4"
       }
     },
+    "@vue/vue-loader-v15": {
+      "version": "npm:vue-loader@15.10.2",
+      "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.2.tgz",
+      "integrity": "sha512-ndeSe/8KQc/nlA7TJ+OBhv2qalmj1s+uBs7yHDRFaAXscFTApBzY9F1jES3bautmgWjDlDct0fw8rPuySDLwxw==",
+      "dev": true,
+      "requires": {
+        "@vue/component-compiler-utils": "^3.1.0",
+        "hash-sum": "^1.0.2",
+        "loader-utils": "^1.1.0",
+        "vue-hot-reload-api": "^2.3.0",
+        "vue-style-loader": "^4.1.0"
+      },
+      "dependencies": {
+        "hash-sum": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
+          "integrity": "sha512-fUs4B4L+mlt8/XAtSOGMUO1TXmAelItBPtJG7CyHJfYTdDjwisntGO2JQz7oUsatOY9o68+57eziUVNw/mRHmA==",
+          "dev": true
+        },
+        "json5": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
+          "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
+          "dev": true,
+          "requires": {
+            "minimist": "^1.2.0"
+          }
+        },
+        "loader-utils": {
+          "version": "1.4.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.2.tgz",
+          "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==",
+          "dev": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^1.0.1"
+          }
+        }
+      }
+    },
     "@vue/vue2-jest": {
       "version": "27.0.0",
       "resolved": "https://registry.npmjs.org/@vue/vue2-jest/-/vue2-jest-27.0.0.tgz",

+ 26 - 14
data-room-ui/packages/RemoteComponents/innerComponents/indexCard/index.vue → data-room-ui/packages/BasicComponents/IndexCard/index.vue

@@ -36,7 +36,7 @@
             'font-weight':customize.firstWeight,
             'margin-bottom':customize.lineDistance +'px'
           }"
-        >{{ tableData?tableData:'' }}</span>
+        >{{ optionData}}</span>
         <span
           :style="{
             'font-size': customize.secondSize + 'px',
@@ -53,10 +53,13 @@
   </div>
 </template>
 <script>
-
+import commonMixins from 'data-room-ui/js/mixins/commonMixins'
+import paramsMixins from 'data-room-ui/js/mixins/paramsMixins'
+import linkageMixins from 'data-room-ui/js/mixins/linkageMixins'
 export default {
   name: 'Card',
   components: {},
+  mixins: [paramsMixins, commonMixins, linkageMixins],
   props: {
     // 卡片的属性
     config: {
@@ -77,24 +80,33 @@ export default {
       return this.config?.option
     },
     optionData () {
-      return this.option?.data || []
+      return this.option?.data || 0
     },
     customize () {
-      return this.option?.customize
+      return this.config?.customize
     },
-    tableData () {
+  },
+  methods: {
+    dataFormatting (config, data) {
       let dataList = ''
-      if (this.optionData instanceof Array && this.optionData.length > 0) {
-        dataList = this.option?.yField
-          ? this.optionData[0][this.option.yField]
-          : this.optionData[0]?.value
-      } else {
-        dataList = this.optionData ? this.optionData[this.option.yField] : ''
+      if(data.success){
+        if (data.data instanceof Array) {
+          dataList = config.dataSource.dimensionField
+            ? data.data[0][config.dataSource.dimensionField]
+            : data.data[0].value
+        } else {
+          dataList = data.data[config.dataSource.dimensionField]
+        }
+      }else{
+        dataList=0
       }
-      return dataList
+      config.option = {
+        ...config.option,
+        data: dataList
+      }
+      return config
     }
-  },
-  methods: { }
+   }
 }
 </script>
 

+ 214 - 0
data-room-ui/packages/BasicComponents/IndexCard/setting.vue

@@ -0,0 +1,214 @@
+<template>
+  <div class="bs-setting-wrap">
+    <el-form
+      ref="form"
+      :model="config"
+      class="setting-body bs-el-form"
+      label-position="left"
+      label-width="90px"
+    >
+      <el-form
+        :model="config.customize"
+        class="setting-body bs-el-form"
+        label-position="left"
+        label-width="90px"
+      >
+        <SettingTitle>标题</SettingTitle>
+        <el-form-item
+          class="lc-field-body"
+          label="轮播表名称"
+        >
+          <el-input
+            v-model="config.title"
+            clearable
+          />
+        </el-form-item>
+        <SettingTitle>位置</SettingTitle>
+        <div class="lc-field-body">
+          <PosWhSetting :config="config" />
+        </div>
+         <!-- <SettingTitle v-if="config.border">边框</SettingTitle>
+          <div class="lc-field-body">
+            <BorderSetting
+              v-if="config.border"
+              label-width="100px"
+              :config="config.border"
+              :bigTitle='config.title'
+            />
+          </div> -->
+        <SettingTitle>基础</SettingTitle>
+        <div class="lc-field-body">
+          <el-form-item label-width="100px" label="背景色">
+            <ColorPicker
+              v-model="config.customize.bgColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="边框颜色">
+            <ColorPicker
+              v-model="config.customize.borderColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="边框粗细">
+            <el-input-number
+              v-model="config.customize.borderWidth"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入粗细"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="边框圆角">
+            <el-input-number
+              v-model="config.customize.borderRadius"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入圆角值"
+            />
+          </el-form-item>
+          <el-form-item
+            label="图标链接"
+            label-width="100px"
+          >
+            <el-input
+              v-model="config.customize.src"
+              clearable
+              placeholder="请输入链接"
+            >
+            </el-input>
+          </el-form-item>
+          <el-form-item label-width="100px" label="左右间距">
+            <el-input-number
+              v-model="config.customize.distance"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入左右间距"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="上下间距">
+            <el-input-number
+              v-model="config.customize.lineDistance"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入上下间距"
+            />
+          </el-form-item>
+           <el-form-item label-width="100px" label="图标大小">
+            <el-input-number
+              v-model="config.customize.imgSize"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入图标大小"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="首行文字大小">
+            <el-input-number
+              v-model="config.customize.firstSize"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入首行文字大小"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="首行字体颜色">
+            <ColorPicker
+              v-model="config.customize.firstColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="首行字体粗细">
+            <el-input-number
+              v-model="config.customize.firstWeight"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入首行字体粗细"
+            />
+          </el-form-item>
+          <el-form-item
+            label="第二行文字内容"
+            label-width="100px"
+          >
+            <el-input
+              v-model="config.customize.secondLine"
+              clearable
+              placeholder="请输入第二行文字内容"
+            />
+          </el-form-item>
+           <el-form-item label-width="100px" label="第二行文字大小">
+            <el-input-number
+              v-model="config.customize.secondSize"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入首行字体粗细"
+            />
+          </el-form-item>
+           <el-form-item label-width="100px" label="第二行字体颜色">
+            <ColorPicker
+              v-model="config.customize.secondColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="第二行字体粗细">
+            <el-input-number
+              v-model="config.customize.secondWeight"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入第二行字体粗细"
+            />
+          </el-form-item>
+        </div>
+      </el-form>
+    </el-form>
+  </div>
+</template>
+<script>
+import SettingTitle from 'data-room-ui/SettingTitle/index.vue'
+import ColorPicker from 'data-room-ui/ColorPicker/index.vue'
+import BorderSetting from 'data-room-ui/BigScreenDesign/RightSetting/BorderSetting.vue'
+import PosWhSetting from 'data-room-ui/BigScreenDesign/RightSetting/PosWhSetting.vue'
+export default {
+  name: 'BarSetting',
+  components: {
+    ColorPicker,
+    PosWhSetting,
+    SettingTitle,
+    BorderSetting
+  },
+  data () {
+    return {
+      // 预设主题色
+      predefineThemeColors: [
+        '#007aff',
+        '#1aa97b',
+        '#ff4d53',
+        '#1890FF',
+        '#DF0E1B',
+        '#0086CC',
+        '#2B74CF',
+        '#00BC9D',
+        '#ED7D32'
+      ]
+    }
+  },
+  computed: {
+    config: {
+      get () {
+        return this.$store.state.bigScreen.activeItemConfig
+      },
+      set (val) {
+        this.$store.state.bigScreen.activeItemConfig = val
+      }
+    }
+  },
+  watch: {},
+  mounted () {
+  },
+  methods: {
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.lc-field-body {
+  padding: 12px 16px;
+}
+</style>

+ 61 - 0
data-room-ui/packages/BasicComponents/IndexCard/settingConfig.js

@@ -0,0 +1,61 @@
+import { commonConfig, displayOption } from 'data-room-ui/js/config'
+
+export const settingConfig = {
+  padding: [30, 30, 30, 60],
+  legend: false,
+  isGroup: true,
+  header: [],
+  columnWidth: [],
+  align: [],
+  data: 0,
+  // 设置面板属性的显隐
+  displayOption: {
+    ...displayOption,
+    params: {
+      enable: false
+    },
+    headerField: {
+      enable: false
+    },
+    metricField: {
+      // 指标
+      label: '指标',
+      enable: false,
+      multiple: false // 是否多选
+    },
+    dimensionField: {
+      // 表格列
+      label: '展示字段', // 维度/查询字段
+      enable: true,
+      multiple: false // 是否多选
+    }
+  }
+}
+const customConfig = {
+  type: 'indexCard',
+  root: {
+    version: '2023071001',
+    contribution: false,
+    loading: false
+  },
+  customize: {
+    src: 'http://60.174.249.206:11080/upload/webDesign/uiSucai/dir/icon/icon_top6.png',
+    borderRadius: 0,
+    borderWidth: 0,
+    lineDistance: 25,
+    borderColor: '',
+    bgColor: '',
+    distance: 30,
+    imgSize: 110,
+    firstSize: 50,
+    firstColor: '#ffffff',
+    firstWeight: 500,
+    secondSize: 50,
+    secondColor: '#ffffff',
+    secondWeight: 500,
+    secondLine: '装机处理及时率'
+  }
+}
+export const dataConfig = {
+  ...commonConfig(customConfig)
+}

+ 37 - 16
data-room-ui/packages/RemoteComponents/innerComponents/IndicatorCard/index.vue → data-room-ui/packages/BasicComponents/IndicatorCard/index.vue

@@ -21,7 +21,7 @@
           'margin-bottom':customize.lineDistance +'px'
         }"
       >
-        {{ tableData?tableData:'' }}
+        {{ optionData }}
       </div>
       <div
         :style="{
@@ -38,13 +38,14 @@
   </div>
 </template>
 <script>
-// import commonMixins from '../../../js/mixins/commonMixins'
-// import paramsMixins from '../../../js/mixins/paramsMixins'
+import commonMixins from 'data-room-ui/js/mixins/commonMixins'
+import paramsMixins from 'data-room-ui/js/mixins/paramsMixins'
+import linkageMixins from 'data-room-ui/js/mixins/linkageMixins'
 
 export default {
   name: 'Card',
   components: {},
-  // mixins: [paramsMixins, commonMixins],
+  mixins: [paramsMixins, commonMixins, linkageMixins],
   props: {
     // 卡片的属性
     config: {
@@ -66,24 +67,44 @@ export default {
       return this.config?.option
     },
     optionData () {
-      return this.option?.data || []
+      return this.option?.data || 0
     },
     customize () {
-      return this.option?.customize
+      return this.config?.customize
     },
-    tableData () {
+    // tableData () {
+    //   let dataList = ''
+    //   if (this.optionData instanceof Array && this.optionData.length > 0) {
+    //     dataList = this.option?.yField
+    //       ? this.optionData[0][this.option.yField]
+    //       : this.optionData[0]?.value
+    //   } else {
+    //     dataList = this.optionData ? this.optionData[this.option.yField] : ''
+    //   }
+    //   return dataList
+    // }
+  },
+  methods: {
+    dataFormatting (config, data) {
       let dataList = ''
-      if (this.optionData instanceof Array && this.optionData.length > 0) {
-        dataList = this.option?.yField
-          ? this.optionData[0][this.option.yField]
-          : this.optionData[0]?.value
-      } else {
-        dataList = this.optionData ? this.optionData[this.option.yField] : ''
+      if(data.success){
+        if (data.data instanceof Array) {
+          dataList = config.dataSource.dimensionField
+            ? data.data[0][config.dataSource.dimensionField]
+            : data.data[0].value
+        } else {
+          dataList = data.data[config.dataSource.dimensionField]
+        }
+      }else{
+        dataList=0
+      }
+      config.option = {
+        ...config.option,
+        data: dataList
       }
-      return dataList
+      return config
     }
-  },
-  methods: { }
+   }
 }
 </script>
 

+ 187 - 0
data-room-ui/packages/BasicComponents/IndicatorCard/setting.vue

@@ -0,0 +1,187 @@
+<template>
+  <div class="bs-setting-wrap">
+    <el-form
+      ref="form"
+      :model="config"
+      class="setting-body bs-el-form"
+      label-position="left"
+      label-width="90px"
+    >
+      <el-form
+        :model="config.customize"
+        class="setting-body bs-el-form"
+        label-position="left"
+        label-width="90px"
+      >
+        <SettingTitle>标题</SettingTitle>
+        <el-form-item
+          class="lc-field-body"
+          label="轮播表名称"
+        >
+          <el-input
+            v-model="config.title"
+            clearable
+          />
+        </el-form-item>
+        <SettingTitle>位置</SettingTitle>
+        <div class="lc-field-body">
+          <PosWhSetting :config="config" />
+        </div>
+         <!-- <SettingTitle v-if="config.border">边框</SettingTitle>
+          <div class="lc-field-body">
+            <BorderSetting
+              v-if="config.border"
+              label-width="100px"
+              :config="config.border"
+              :bigTitle='config.title'
+            />
+          </div> -->
+        <SettingTitle>基础</SettingTitle>
+        <div class="lc-field-body">
+          <el-form-item label-width="100px" label="背景色">
+            <ColorPicker
+              v-model="config.customize.bgColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="边框颜色">
+            <ColorPicker
+              v-model="config.customize.borderColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="边框粗细">
+            <el-input-number
+              v-model="config.customize.borderWidth"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入粗细"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="边框圆角">
+            <el-input-number
+              v-model="config.customize.borderRadius"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入圆角值"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="上下间距">
+            <el-input-number
+              v-model="config.customize.lineDistance"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入上下间距"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="首行文字大小">
+            <el-input-number
+              v-model="config.customize.firstSize"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入首行文字大小"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="首行字体颜色">
+            <ColorPicker
+              v-model="config.customize.firstColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="首行字体粗细">
+            <el-input-number
+              v-model="config.customize.firstWeight"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入首行字体粗细"
+            />
+          </el-form-item>
+          <el-form-item
+            label="第二行文字内容"
+            label-width="100px"
+          >
+            <el-input
+              v-model="config.customize.secondLine"
+              clearable
+              placeholder="请输入第二行文字内容"
+            />
+          </el-form-item>
+           <el-form-item label-width="100px" label="第二行文字大小">
+            <el-input-number
+              v-model="config.customize.secondSize"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入首行字体粗细"
+            />
+          </el-form-item>
+           <el-form-item label-width="100px" label="第二行字体颜色">
+            <ColorPicker
+              v-model="config.customize.secondColor"
+              :predefine="predefineThemeColors"
+            />
+          </el-form-item>
+          <el-form-item label-width="100px" label="第二行字体粗细">
+            <el-input-number
+              v-model="config.customize.secondWeight"
+              :precision="0"
+              class="bs-el-input-number"
+              label="请输入第二行字体粗细"
+            />
+          </el-form-item>
+        </div>
+      </el-form>
+    </el-form>
+  </div>
+</template>
+<script>
+import SettingTitle from 'data-room-ui/SettingTitle/index.vue'
+import ColorPicker from 'data-room-ui/ColorPicker/index.vue'
+import BorderSetting from 'data-room-ui/BigScreenDesign/RightSetting/BorderSetting.vue'
+import PosWhSetting from 'data-room-ui/BigScreenDesign/RightSetting/PosWhSetting.vue'
+export default {
+  name: 'BarSetting',
+  components: {
+    ColorPicker,
+    PosWhSetting,
+    SettingTitle,
+    BorderSetting
+  },
+  data () {
+    return {
+      // 预设主题色
+      predefineThemeColors: [
+        '#007aff',
+        '#1aa97b',
+        '#ff4d53',
+        '#1890FF',
+        '#DF0E1B',
+        '#0086CC',
+        '#2B74CF',
+        '#00BC9D',
+        '#ED7D32'
+      ]
+    }
+  },
+  computed: {
+    config: {
+      get () {
+        return this.$store.state.bigScreen.activeItemConfig
+      },
+      set (val) {
+        this.$store.state.bigScreen.activeItemConfig = val
+      }
+    }
+  },
+  watch: {},
+  mounted () {
+  },
+  methods: {
+  }
+}
+</script>
+
+<style lang="scss" scoped>
+.lc-field-body {
+  padding: 12px 16px;
+}
+</style>

+ 58 - 0
data-room-ui/packages/BasicComponents/IndicatorCard/settingConfig.js

@@ -0,0 +1,58 @@
+import { commonConfig, displayOption } from 'data-room-ui/js/config'
+
+export const settingConfig = {
+  padding: [30, 30, 30, 60],
+  legend: false,
+  isGroup: true,
+  header: [],
+  columnWidth: [],
+  align: [],
+  data: 0,
+  // 设置面板属性的显隐
+  displayOption: {
+    ...displayOption,
+    params: {
+      enable: false
+    },
+    headerField: {
+      enable: false
+    },
+    metricField: {
+      // 指标
+      label: '指标',
+      enable: false,
+      multiple: false // 是否多选
+    },
+    dimensionField: {
+      // 表格列
+      label: '展示字段', // 维度/查询字段
+      enable: true,
+      multiple: false // 是否多选
+    }
+  }
+}
+const customConfig = {
+  type: 'indicatorCard',
+  root: {
+    version: '2023071001',
+    contribution: false,
+    loading: false
+  },
+  customize: {
+    borderRadius: 0,
+    borderWidth: 0,
+    lineDistance: 25,
+    borderColor: '',
+    bgColor: '',
+    firstSize: 50,
+    firstColor: '#ffffff',
+    firstWeight: 500,
+    secondSize: 50,
+    secondColor: '#ffffff',
+    secondWeight: 500,
+    secondLine: '装机处理及时率'
+  }
+}
+export const dataConfig = {
+  ...commonConfig(customConfig)
+}

二进制
data-room-ui/packages/G2Plots/images/componentLogo/柱线混合图.png


+ 158 - 214
data-room-ui/packages/G2Plots/组合图/柱线混合图.js

@@ -37,105 +37,36 @@ const setting = [
     value: [],
     tabName: 'data'
   },
-  {
-    label: '数据标签',
-    type: 'switch', // 设置组件类型
-    field: 'label_style_opacity', // 字段
-    optionField: 'label.style.opacity', // 对应options中的字段
-    value: 0,
-    active: 1,
-    inactive: 0,
-    tabName: 'custom',
-    groupName: 'graph'
-  },
-  {
-    label: '数据标签位置',
-    type: 'select', // 设置组件类型
-    field: 'label_position', // 字段
-    optionField: 'label.position', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    value: 'middle',
-    tabName: 'custom',
-    options: [
-      {
-        label: '顶部',
-        value: 'top'
-      },
-      {
-        label: '居中',
-        value: 'middle'
-      },
-      {
-        label: '底部',
-        value: 'bottom'
-      }
-    ],
-    groupName: 'graph'
-  },
-  {
-    label: '数据标签颜色',
-    type: 'colorPicker', // 设置组件类型
-    field: 'label_style_fill', // 字段
-    optionField: 'label.style.fill', // 对应options中的字段
-    value: '#ffffff',
-    tabName: 'custom',
-    groupName: 'graph'
-  },
-  {
-    label: '数据标签大小',
-    // 设置组件类型
-    type: 'inputNumber',
-    // 字段
-    field: 'label_style_fontSize',
-    // 对应options中的字段
-    optionField: 'label.style.fontSize',
-    value: 12,
-    tabName: 'custom',
-    groupName: 'graph'
-  },
-  {
-    label: '柱子颜色',
-    // 设置组件类型
-    type: 'colorSelect',
-    // 字段
-    field: 'color',
-    // 对应options中的字段
-    optionField: 'color',
-    value: ['#5B8FF9', '#61DDAA', '#5D7092', '#F6BD16', '#6F5EF9', '#6DC8EC', '#945FB9', '#FF9845', '#1E9493', '#FF99C3'],
-    tabName: 'custom',
-    groupName: 'graph'
-  },
   // 网格线 grid
-  {
-    label: '虚线',
-    type: 'switch',
-    field: 'yAxis_grid_line_style_lineDash',
-    optionField: 'yAxis.grid.line.style.lineDash',
-    value: 0,
-    active: 5,
-    inactive: 0,
-    tabName: 'custom',
-    groupName: 'grid'
-  },
-  {
-    label: '宽度',
-    type: 'inputNumber',
-    field: 'yAxis_grid_line_style_lineWidth',
-    optionField: 'yAxis.grid.line.style.lineWidth',
-    value: 1,
-    tabName: 'custom',
-    groupName: 'grid'
-  },
-  {
-    label: '颜色',
-    type: 'colorPicker',
-    field: 'yAxis_grid_line_style_stroke',
-    optionField: 'yAxis.grid.line.style.stroke',
-    value: '#d0d0d0',
-    tabName: 'custom',
-    groupName: 'grid'
-  },
+  // {
+  //   label: '虚线',
+  //   type: 'switch',
+  //   field: 'yAxis_grid_line_style_lineDash',
+  //   optionField: 'yAxis.grid.line.style.lineDash',
+  //   value: 0,
+  //   active: 5,
+  //   inactive: 0,
+  //   tabName: 'custom',
+  //   groupName: 'grid'
+  // },
+  // {
+  //   label: '宽度',
+  //   type: 'inputNumber',
+  //   field: 'yAxis_grid_line_style_lineWidth',
+  //   optionField: 'yAxis.grid.line.style.lineWidth',
+  //   value: 1,
+  //   tabName: 'custom',
+  //   groupName: 'grid'
+  // },
+  // {
+  //   label: '颜色',
+  //   type: 'colorPicker',
+  //   field: 'yAxis_grid_line_style_stroke',
+  //   optionField: 'yAxis.grid.line.style.stroke',
+  //   value: '#d0d0d0',
+  //   tabName: 'custom',
+  //   groupName: 'grid'
+  // },
   // 图例 legend
   {
     label: '显示',
@@ -343,122 +274,133 @@ const setting = [
     tabName: 'custom',
     groupName: 'xAxis'
   },
-  // Y轴 yAxis
-  {
-    label: '标题',
-    type: 'input',
-    field: 'yAxis_title_text',
-    optionField: 'yAxis.title.text',
-    value: '',
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '标题过长时旋转',
-    type: 'switch',
-    field: 'yAxis_title_autoRotate',
-    optionField: 'yAxis.title.autoRotate',
-    value: true,
-    active: true,
-    inactive: false,
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '标题位置',
-    type: 'select',
-    field: 'yAxis_title_position',
-    optionField: 'yAxis.title.position',
-    value: 'end',
-    tabName: 'custom',
-    options: [
-      {
-        label: '上',
-        value: 'end'
-      },
-      {
-        label: '中',
-        value: 'center'
-      },
-      {
-        label: '下',
-        value: 'start'
-      }],
-    groupName: 'yAxis'
-  },
-  {
-    label: '标题字体大小',
-    type: 'inputNumber',
-    field: 'yAxis_title_style_fontSize',
-    optionField: 'yAxis.title.style.fontSize',
-    value: 12,
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '标题颜色',
-    type: 'colorPicker',
-    field: 'yAxis_title_style_fill',
-    optionField: 'yAxis.title.style.fill',
-    // 是否多选
-    multiple: false,
-    value: '#8C8C8C',
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '显示标签',
-    type: 'switch',
-    field: 'yAxis_label_style_opacity',
-    optionField: 'yAxis.label.style.opacity',
-    value: 1,
-    active: 1,
-    inactive: 0,
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '标签字体大小',
-    type: 'inputNumber',
-    field: 'yAxis_label_style_fontSize',
-    optionField: 'yAxis.label.style.fontSize',
-    value: 12,
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '标签字体颜色',
-    type: 'colorPicker',
-    field: 'yAxis_label_style_fill',
-    optionField: 'yAxis.label.style.fill',
-    // 是否多选
-    multiple: false,
-    value: '#8C8C8C',
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '轴线宽度',
-    type: 'inputNumber',
-    field: 'yAxis_line_lineWidth',
-    optionField: 'yAxis.line.style.lineWidth',
-    value: 0,
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
-  {
-    label: '轴线颜色',
-    type: 'colorPicker',
-    field: 'yAxis_line_stroke',
-    optionField: 'yAxis.line.style.stroke',
-    // 是否多选
-    multiple: false,
-    value: '#d0d0d0',
-    tabName: 'custom',
-    groupName: 'yAxis'
-  },
+  // y轴
+  // {
+  //   label: '标题',
+  //   type: 'input',
+  //   field: 'yAxis_title_text',
+  //   optionField: 'yAxis.title.text',
+  //   value: '',
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '标题过长时旋转',
+  //   type: 'switch',
+  //   field: 'yAxis_title_autoRotate',
+  //   optionField: 'yAxis.title.autoRotate',
+  //   value: true,
+  //   active: true,
+  //   inactive: false,
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '标题位置',
+  //   type: 'select',
+  //   field: 'yAxis_title_position',
+  //   optionField: 'yAxis.title.position',
+  //   value: 'end',
+  //   tabName: 'custom',
+  //   options: [
+  //     {
+  //       label: '上',
+  //       value: 'end'
+  //     },
+  //     {
+  //       label: '中',
+  //       value: 'center'
+  //     },
+  //     {
+  //       label: '下',
+  //       value: 'start'
+  //     }],
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '标题字体大小',
+  //   type: 'inputNumber',
+  //   field: 'yAxis_title_style_fontSize',
+  //   optionField: 'yAxis.title.style.fontSize',
+  //   value: 12,
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '标题颜色',
+  //   type: 'colorPicker',
+  //   field: 'yAxis_title_style_fill',
+  //   optionField: 'yAxis.title.style.fill',
+  //   // 是否多选
+  //   multiple: false,
+  //   value: '#8C8C8C',
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '显示标签',
+  //   type: 'switch',
+  //   field: 'yAxis_label_style_opacity',
+  //   optionField: 'yAxis.label.style.opacity',
+  //   value: 1,
+  //   active: 1,
+  //   inactive: 0,
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '标签字体大小',
+  //   type: 'inputNumber',
+  //   field: 'yAxis_label_style_fontSize',
+  //   optionField: 'yAxis.label.style.fontSize',
+  //   value: 12,
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '标签字体颜色',
+  //   type: 'colorPicker',
+  //   field: 'yAxis_label_style_fill',
+  //   optionField: 'yAxis.label.style.fill',
+  //   // 是否多选
+  //   multiple: false,
+  //   value: '#8C8C8C',
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '轴线宽度',
+  //   type: 'inputNumber',
+  //   field: 'yAxis_line_lineWidth',
+  //   optionField: 'yAxis.line.style.lineWidth',
+  //   value: 0,
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+  // {
+  //   label: '轴线颜色',
+  //   type: 'colorPicker',
+  //   field: 'yAxis_line_stroke',
+  //   optionField: 'yAxis.line.style.stroke',
+  //   // 是否多选
+  //   multiple: false,
+  //   value: '#d0d0d0',
+  //   tabName: 'custom',
+  //   groupName: 'yAxis'
+  // },
+
 ]
 
+// 配置处理脚本
+const optionHandler = 'option.legend = option.legendEnable ? {position: setting.find(settingItem=>settingItem.field === \'legendPosition\').value} : false;' +
+  '  if (option.legendEnable) {\n' +
+  '    option.legend.itemName = option.legendItemName\n' +
+  '  };'
+  // 'option.yAxis.grid.line.style.lineDash = [4,setting.find(settingItem=>settingItem.field === \'yAxis_grid_line_style_lineDash\').value]'
+
+// 数据处理脚本
+const dataHandler = 'data = [data,data]'
+
 // 模拟数据
 const data = [
   { time: '2019-03', value: 350, count: 800 },
@@ -488,7 +430,7 @@ const option = {
     },
   ],
   isStack: true,
-  seriesField: 'type',
+  // seriesField: 'type',
   legendEnable: false,
   legendItemName: {
     style: {
@@ -503,7 +445,7 @@ const option = {
   pattern: {
     type: ''
   },
-  color: ['#5B8FF9', '#61DDAA', '#5D7092', '#F6BD16', '#6F5EF9', '#6DC8EC', '#945FB9', '#FF9845', '#1E9493', '#FF99C3'],
+  // color: ['#5B8FF9', '#61DDAA', '#5D7092', '#F6BD16', '#6F5EF9', '#6DC8EC', '#945FB9', '#FF9845', '#1E9493', '#FF99C3'],
   label: {
     // 可手动配置 label 数据标签位置
     position: 'middle', // 'top', 'bottom', 'middle'
@@ -597,4 +539,6 @@ export default {
   name,
   option,
   setting,
+  optionHandler,
+  dataHandler
 }

二进制
data-room-ui/packages/RemoteComponents/innerComponents/IndicatorCard/component.png


+ 0 - 263
data-room-ui/packages/RemoteComponents/innerComponents/IndicatorCard/config.js

@@ -1,263 +0,0 @@
-const title = '指标卡二'
-// 右侧配置项
-const setting = [
-  {
-    label: '背景色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_bgColor',
-    optionField: 'customize.bgColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '边框颜色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_borderColor',
-    optionField: 'customize.borderColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '边框粗细',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_borderWidth',
-    optionField: 'customize.borderWidth', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 0,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '边框圆角',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_borderRadius',
-    optionField: 'customize.borderRadius', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 0,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  // {
-  //   label: '图标链接',
-  //   // 设置组件类型, select / input / colorPicker
-  //   type: 'input',
-  //   // 字段
-  //   field: 'customize_src',
-  //   optionField: 'customize.src', // 对应options中的字段
-  //   // 是否多选
-  //   multiple: false,
-  //   // 绑定的值
-  //   value: 'http://60.174.249.206:11080/upload/webDesign/uiSucai/dir/icon/icon_top6.png',
-  //   // tab页。 data: 数据, custom: 自定义
-  //   tabName: 'custom'
-  // },
-  // {
-  //   label: '左右间距',
-  //   // 设置组件类型, select / input / colorPicker
-  //   type: 'inputNumber',
-  //   // 字段
-  //   field: 'customize_distance',
-  //   optionField: 'customize.distance', // 对应options中的字段
-  //   // 是否多选
-  //   multiple: false,
-  //   // 绑定的值
-  //   value: 30,
-  //   // tab页。 data: 数据, custom: 自定义
-  //   tabName: 'custom'
-  // },
-  {
-    label: '上下间距',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_lineDistance',
-    optionField: 'customize.lineDistance', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 25,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  // {
-  //   label: '图标大小',
-  //   // 设置组件类型, select / input / colorPicker
-  //   type: 'inputNumber',
-  //   // 字段
-  //   field: 'customize_imgSize',
-  //   optionField: 'customize.imgSize', // 对应options中的字段
-  //   // 是否多选
-  //   multiple: false,
-  //   // 绑定的值
-  //   value: 110,
-  //   // tab页。 data: 数据, custom: 自定义
-  //   tabName: 'custom'
-  // },
-  {
-    label: '首行字段',
-    // 设置组件类型, select / input / colorPicker
-    type: 'select',
-    // 字段
-    field: 'yField', // 字段
-    optionField: 'yField', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'data'
-  },
-  {
-    label: '首行文字大小',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_firstSize',
-    optionField: 'customize.firstSize', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 50,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '首行字体颜色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_firstColor',
-    optionField: 'customize.firstColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '#fff',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '首行字体粗细',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_firstWeight',
-    optionField: 'customize.firstWeight', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 500,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行文字内容',
-    // 设置组件类型, select / input / colorPicker
-    type: 'input',
-    // 字段
-    field: 'customize_secondLine',
-    optionField: 'customize.secondLine', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '装机处理及时率',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行文字大小',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_secondSize',
-    optionField: 'customize.secondSize', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 36,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行字体颜色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_secondColor',
-    optionField: 'customize.secondColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '#fff',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行字体粗细',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_secondWeight',
-    optionField: 'customize.secondWeight', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 500,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  }
-]
-
-// 模拟数据
-
-const option = {
-  // 自定义组件其他属性
-  customize: {
-    borderRadius: 0,
-    borderWidth: 0,
-    lineDistance: 25,
-    borderColor: '',
-    bgColor: '',
-    // distance: 30,
-    // imgSize: 110,
-    firstSize: 50,
-    firstColor: '#ffffff',
-    firstWeight: 500,
-    secondSize: 50,
-    secondColor: '#ffffff',
-    secondWeight: 500,
-    secondLine: '装机处理及时率'
-  }
-}
-
-export default {
-  title,
-  setting,
-  option: {
-    ...option,
-    displayOption: {
-      dataAllocation: {
-        enable: false
-      }
-    }
-  }
-}

二进制
data-room-ui/packages/RemoteComponents/innerComponents/indexCard/component.png


+ 0 - 264
data-room-ui/packages/RemoteComponents/innerComponents/indexCard/config.js

@@ -1,264 +0,0 @@
-const title = '指标卡'
-// 右侧配置项
-const setting = [
-  {
-    label: '背景色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_bgColor',
-    optionField: 'customize.bgColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '边框颜色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_borderColor',
-    optionField: 'customize.borderColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '边框粗细',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_borderWidth',
-    optionField: 'customize.borderWidth', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 0,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '边框圆角',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_borderRadius',
-    optionField: 'customize.borderRadius', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 0,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '图标链接',
-    // 设置组件类型, select / input / colorPicker
-    type: 'input',
-    // 字段
-    field: 'customize_src',
-    optionField: 'customize.src', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 'http://60.174.249.206:11080/upload/webDesign/uiSucai/dir/icon/icon_top6.png',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '左右间距',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_distance',
-    optionField: 'customize.distance', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 30,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '上下间距',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_lineDistance',
-    optionField: 'customize.lineDistance', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 25,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '图标大小',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_imgSize',
-    optionField: 'customize.imgSize', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 110,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '首行字段',
-    // 设置组件类型, select / input / colorPicker
-    type: 'select',
-    // 字段
-    field: 'yField', // 字段
-    optionField: 'yField', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'data'
-  },
-  {
-    label: '首行文字大小',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_firstSize',
-    optionField: 'customize.firstSize', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 50,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '首行字体颜色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_firstColor',
-    optionField: 'customize.firstColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '#fff',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '首行字体粗细',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_firstWeight',
-    optionField: 'customize.firstWeight', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 500,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行文字内容',
-    // 设置组件类型, select / input / colorPicker
-    type: 'input',
-    // 字段
-    field: 'customize_secondLine',
-    optionField: 'customize.secondLine', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '装机处理及时率',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行文字大小',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_secondSize',
-    optionField: 'customize.secondSize', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 36,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行字体颜色',
-    // 设置组件类型, select / input / colorPicker
-    type: 'colorPicker',
-    // 字段
-    field: 'customize_secondColor',
-    optionField: 'customize.secondColor', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: '#fff',
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  },
-  {
-    label: '第二行字体粗细',
-    // 设置组件类型, select / input / colorPicker
-    type: 'inputNumber',
-    // 字段
-    field: 'customize_secondWeight',
-    optionField: 'customize.secondWeight', // 对应options中的字段
-    // 是否多选
-    multiple: false,
-    // 绑定的值
-    value: 500,
-    // tab页。 data: 数据, custom: 自定义
-    tabName: 'custom'
-  }
-]
-
-// 模拟数据
-
-const option = {
-  // 自定义组件其他属性
-  customize: {
-    src: 'http://60.174.249.206:11080/upload/webDesign/uiSucai/dir/icon/icon_top6.png',
-    borderRadius: 0,
-    borderWidth: 0,
-    lineDistance: 25,
-    borderColor: '',
-    bgColor: '',
-    distance: 30,
-    imgSize: 110,
-    firstSize: 50,
-    firstColor: '#ffffff',
-    firstWeight: 500,
-    secondSize: 50,
-    secondColor: '#ffffff',
-    secondWeight: 500,
-    secondLine: '装机处理及时率'
-  }
-}
-
-export default {
-  title,
-  setting,
-  option: {
-    ...option,
-    displayOption: {
-      dataAllocation: {
-        enable: false
-      }
-    }
-  }
-}

文件差异内容过多而无法显示
+ 0 - 0
data-room-ui/packages/assets/images/bigScreenIcon/svg/26textCard.svg


+ 1 - 0
data-room-ui/packages/assets/images/bigScreenIcon/svg/27imgCard.svg

@@ -0,0 +1 @@
+<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1696648052469" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="8048" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M853.333333 170.666667a73.142857 73.142857 0 0 1 73.142857 73.142857v536.380952a73.142857 73.142857 0 0 1-73.142857 73.142857H170.666667a73.142857 73.142857 0 0 1-73.142857-73.142857V243.809524a73.142857 73.142857 0 0 1 73.142857-73.142857h682.666666z m0 73.142857H170.666667v536.380952h682.666666V243.809524z m-487.619047 48.761905a146.285714 146.285714 0 0 1 122.709333 225.938285l-0.78019 1.219048-0.024381 170.422857A44.446476 44.446476 0 0 1 426.666667 731.428571l-42.837334-17.139809a48.761905 48.761905 0 0 0-36.230095 0L304.761905 731.428571a44.446476 44.446476 0 0 1-60.952381-41.276952v-170.422857l-0.804572-1.219048A146.285714 146.285714 0 0 1 365.714286 292.571429z m438.857143 316.952381v73.142857H560.761905v-73.142857h243.809524z m-388.608-33.231239A145.993143 145.993143 0 0 1 365.714286 585.142857a145.993143 145.993143 0 0 1-50.249143-8.850286l1.462857 0.512 0.024381 70.948572 48.761905-19.504762 48.761904 19.504762v-70.948572l1.487239-0.512zM804.571429 487.619048v73.142857H560.761905v-73.142857h243.809524z m-438.857143-121.904762a73.142857 73.142857 0 1 0 0 146.285714 73.142857 73.142857 0 0 0 0-146.285714z m341.333333 0v73.142857h-146.285714v-73.142857h146.285714z" p-id="8049" fill="#1296db"></path></svg>

+ 3 - 1
data-room-ui/packages/js/config/basicComponentsConfig.js

@@ -33,7 +33,9 @@ const typeList = [
   'themeSelect',
   'select',
   'timePicker',
-  'dateTimePicker'
+  'dateTimePicker',
+  'indicatorCard',
+  'indexCard'
 ]
 let basicConfigList = []
 basicConfigList = typeList.map((type) => {

+ 24 - 0
data-room-ui/packages/js/utils/getComponentConfig.js

@@ -285,6 +285,30 @@ export default function getComponentConfig (type) {
         y: 0,
         type
       }
+      case 'indicatorCard':
+        return {
+          name: '指标卡',
+          title: '指标卡',
+          icon: Icon.getNameList()[26],
+          className: 'com.gccloud.dataroom.core.module.chart.components.ScreenIndicatorCardChart',
+          w: 500,
+          h: 250,
+          x: 0,
+          y: 0,
+          type
+      }
+      case 'indexCard':
+        return {
+          name: '指标卡一',
+          title: '指标卡一',
+          icon: Icon.getNameList()[27],
+          className: 'com.gccloud.dataroom.core.module.chart.components.ScreenIndexCardChart',
+          w: 600,
+          h: 250,
+          x: 0,
+          y: 0,
+          type
+        }
     default:
       return {}
   }

部分文件因为文件数量过多而无法显示