Просмотр исходного кода

数据模板字段默认显示字段对应key值

cfort 1 год назад
Родитель
Сommit
4b616c45c8

+ 4 - 6
src/business/platform/data/templatebuilder/right-aside/editors/display-column.vue

@@ -11,12 +11,10 @@
         <el-form-item label="显示名称" prop="label">
             <el-input v-model="formData.label" placeholder="显示名称" />
         </el-form-item>
-        <!-- 默认显示标识 -->
-        <template v-if="1 || datasetType === 'thirdparty'">
-            <el-form-item label="标识(name)" prop="name">
-                <el-input v-model="formData.name" placeholder="标识(name)" readonly />
-            </el-form-item>
-        </template>
+        <!-- 默认显示字段标识 原显示条件: v-if="datasetType === 'thirdparty'"-->
+        <el-form-item label="字段标识" prop="name">
+            <el-input v-model="formData.name" placeholder="字段标识" readonly disabled />
+        </el-form-item>
         <el-form-item label="权限" prop="rights">
             <rights-selector v-model="formData.rights" />
         </el-form-item>

+ 3 - 0
src/business/platform/data/templatebuilder/right-aside/editors/query-column.vue

@@ -11,6 +11,9 @@
         <el-form-item label="显示名称" prop="label">
             <el-input v-model="formData.label" placeholder="显示名称" />
         </el-form-item>
+        <el-form-item label="字段标识" prop="name">
+            <el-input v-model="formData.name" placeholder="字段标识" readonly disabled />
+        </el-form-item>
         <template v-if="datasetType === 'thirdparty'">
             <!-- <el-form-item label="参数类型">
                 <el-select v-model="formData.paramType" placeholder="">

+ 171 - 172
src/business/platform/data/templatebuilder/right-aside/editors/result-column.vue

@@ -1,129 +1,128 @@
 <template>
-  <el-form
-    ref="form"
-    :model="formData"
-    :rules="rules"
-    label-width="120px"
-    size="mini"
-    class="template-result-column"
-    @submit.native.prevent
-  >
-    <el-form-item label="显示名称" prop="label">
-      <el-input v-model="formData.label" placeholder="显示名称" />
-    </el-form-item>
-    <template v-if="datasetType === 'thirdparty'">
-      <el-form-item label="标识(name)" prop="name">
-        <el-input v-model="formData.name" placeholder="标识(name)" />
-      </el-form-item>
-    </template>
-    <el-form-item label="跟字段控件一致">
-      <el-switch v-model="formData.same" active-value="Y" inactive-value="N" />
-    </el-form-item>
-    <!--控件类型-->
-    <template v-if="formData.same === 'N'">
-      <el-form-item label="返回格式">
-        <el-select v-model="formData.field_type" @change="changeFieldType">
-          <el-option
-            v-for="item in resultFieldTypeOptions"
-            :key="item.value"
-            :label="item.label"
-            :value="item.value"
-          />
-        </el-select>
-      </el-form-item>
-      <!-- 枚举值格式 -->
-      <el-form-item v-if="formData.field_type === 'radio' ||formData.field_type === 'checkbox' ||formData.field_type === 'select'" label-width="0" prop="options">
-        <field-options v-model="formData.field_options.options" />
-      </el-form-item>
-      <!-- 日期格式 -->
-      <el-form-item v-if="formData.field_type === 'datePicker'" label="日期格式" prop="datefmt_type">
-        <el-select v-model="formData.field_options.datefmt_type">
-          <el-option
-            v-for="(item,index) in datefmtTypeOptions"
-            :key="index"
-            :label="item.label"
-            :value="item.value"
-          />
-        </el-select>
-        <el-input
-          v-if="formData.field_options.datefmt_type ==='custom'"
-          v-model="formData.field_options.datefmt"
-        />
-      </el-form-item>
-
-      <!-- 数据字典 -->
-      <el-form-item v-if="formData.field_type === 'dictionary'" label="数据字典" prop="dictionary">
-        <ibps-type-select
-          v-model="formData.field_options.dictionary"
-          category-key="DIC_TYPE"
-          node-key="typeKey"
-          clearable
-        />
-      </el-form-item>
-      <!-- 选择器 -->
-      <template v-if="formData.field_type === 'selector'">
-        <el-form-item label="选择器类型" prop="selector_type">
-          <el-select v-model="formData.field_options.selector_type">
-            <el-option
-              v-for="item in selectorTypeOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="存储格式" prop="store">
-          <el-select v-model="formData.field_options.store">
-            <el-option
-              v-for="item in selectorStoreOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            />
-          </el-select>
-        </el-form-item>
-        <el-form-item label="是否多选" prop="label">
-          <el-switch
-            v-model="formData.field_options.multiple"
-            active-value="Y"
-            inactive-value="N"
-          />
-        </el-form-item>
-      </template>
-      <!-- 自定义对话框 -->
-      <template v-if="formData.field_type === 'customDialog'">
-        <el-form-item>
-          <template slot="label">自定义对话框</template>
-          <ibps-data-template-selector2
-            v-model="formData.field_options.dialog"
-            type="dialog"
-            placeholder="请选择自定义对话框"
-          />
+    <el-form
+        ref="form"
+        :model="formData"
+        :rules="rules"
+        label-width="120px"
+        size="mini"
+        class="template-result-column"
+        @submit.native.prevent
+    >
+        <el-form-item label="显示名称" prop="label">
+            <el-input v-model="formData.label" placeholder="显示名称" />
         </el-form-item>
-        <el-form-item>
-          <template slot="label">是否多选</template>
-          <el-switch
-            v-model="formData.field_options.multiple"
-            active-value="Y"
-            inactive-value="N"
-          />
+        <!-- 默认显示字段标识 原显示条件: v-if="datasetType === 'thirdparty'"-->
+        <el-form-item label="字段标识" prop="name">
+            <el-input v-model="formData.name" placeholder="字段标识" readonly disabled />
         </el-form-item>
-        <el-form-item>
-          <template slot="label">存储格式</template>
-          <el-select v-model="formData.field_options.store" style="width:100%;">
-            <el-option
-              v-for="item in dialogStoreOptions"
-              :key="item.value"
-              :label="item.label"
-              :value="item.value"
-            />
-          </el-select>
+        <el-form-item label="跟字段控件一致">
+            <el-switch v-model="formData.same" active-value="Y" inactive-value="N" />
         </el-form-item>
-      </template>
-      <!-- end -->
+        <!--控件类型-->
+        <template v-if="formData.same === 'N'">
+            <el-form-item label="返回格式">
+                <el-select v-model="formData.field_type" @change="changeFieldType">
+                    <el-option
+                        v-for="item in resultFieldTypeOptions"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                    />
+                </el-select>
+            </el-form-item>
+            <!-- 枚举值格式 -->
+            <el-form-item v-if="formData.field_type === 'radio' ||formData.field_type === 'checkbox' ||formData.field_type === 'select'" label-width="0" prop="options">
+                <field-options v-model="formData.field_options.options" />
+            </el-form-item>
+            <!-- 日期格式 -->
+            <el-form-item v-if="formData.field_type === 'datePicker'" label="日期格式" prop="datefmt_type">
+                <el-select v-model="formData.field_options.datefmt_type">
+                    <el-option
+                        v-for="(item,index) in datefmtTypeOptions"
+                        :key="index"
+                        :label="item.label"
+                        :value="item.value"
+                    />
+                </el-select>
+                <el-input
+                    v-if="formData.field_options.datefmt_type ==='custom'"
+                    v-model="formData.field_options.datefmt"
+                />
+            </el-form-item>
 
-    </template>
-  </el-form>
+            <!-- 数据字典 -->
+            <el-form-item v-if="formData.field_type === 'dictionary'" label="数据字典" prop="dictionary">
+                <ibps-type-select
+                    v-model="formData.field_options.dictionary"
+                    category-key="DIC_TYPE"
+                    node-key="typeKey"
+                    clearable
+                />
+            </el-form-item>
+            <!-- 选择器 -->
+            <template v-if="formData.field_type === 'selector'">
+                <el-form-item label="选择器类型" prop="selector_type">
+                    <el-select v-model="formData.field_options.selector_type">
+                        <el-option
+                            v-for="item in selectorTypeOptions"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value"
+                        />
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="存储格式" prop="store">
+                    <el-select v-model="formData.field_options.store">
+                        <el-option
+                            v-for="item in selectorStoreOptions"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value"
+                        />
+                    </el-select>
+                </el-form-item>
+                <el-form-item label="是否多选" prop="label">
+                    <el-switch
+                        v-model="formData.field_options.multiple"
+                        active-value="Y"
+                        inactive-value="N"
+                    />
+                </el-form-item>
+            </template>
+            <!-- 自定义对话框 -->
+            <template v-if="formData.field_type === 'customDialog'">
+                <el-form-item>
+                    <template slot="label">自定义对话框</template>
+                    <ibps-data-template-selector2
+                        v-model="formData.field_options.dialog"
+                        type="dialog"
+                        placeholder="请选择自定义对话框"
+                    />
+                </el-form-item>
+                <el-form-item>
+                    <template slot="label">是否多选</template>
+                    <el-switch
+                        v-model="formData.field_options.multiple"
+                        active-value="Y"
+                        inactive-value="N"
+                    />
+                </el-form-item>
+                <el-form-item>
+                    <template slot="label">存储格式</template>
+                    <el-select v-model="formData.field_options.store" style="width:100%;">
+                        <el-option
+                            v-for="item in dialogStoreOptions"
+                            :key="item.value"
+                            :label="item.label"
+                            :value="item.value"
+                        />
+                    </el-select>
+                </el-form-item>
+            </template>
+            <!-- end -->
+
+        </template>
+    </el-form>
 </template>
 <script>
 import { resultFieldTypeOptions } from '../constants/editor-column'
@@ -135,65 +134,65 @@ import IbpsTypeSelect from '@/business/platform/cat/type/select'
 import IbpsDataTemplateSelector2 from '@/business/platform/data/dataTemplate/selector2'
 
 export default {
-  components: {
-    FieldOptions,
-    IbpsTypeSelect,
-    IbpsDataTemplateSelector2
-  },
-  mixins: [FieldTypeMixin],
-  props: {
-    data: {
-      type: Object
+    components: {
+        FieldOptions,
+        IbpsTypeSelect,
+        IbpsDataTemplateSelector2
     },
-    datasetType: {
-      type: String,
-      default: 'table'
-    }
-  },
-  data() {
-    return {
-      resultFieldTypeOptions,
-      datefmtTypeOptions,
-      selectorTypeOptions,
-      selectorStoreOptions,
-      dialogStoreOptions,
-      formName: 'form',
-      formData: {},
-      rules: {
-        name: [{ required: true, message: this.$t('validate.required') }],
-        label: [{ required: true, message: this.$t('validate.required') }]
-      }
-    }
-  },
-  watch: {
-    data: {
-      handler(val) {
-        if (val) {
-          this.formData = val
+    mixins: [FieldTypeMixin],
+    props: {
+        data: {
+            type: Object
+        },
+        datasetType: {
+            type: String,
+            default: 'table'
         }
-      },
-      immediate: true
-    }
-  },
-  methods: {
-  // 获取表单数据
-    getFormData(callback) {
-      this.$refs[this.formName].validate((valid) => {
-        if (valid) {
-          callback(this.formData)
-        } else {
-          callback()
+    },
+    data () {
+        return {
+            resultFieldTypeOptions,
+            datefmtTypeOptions,
+            selectorTypeOptions,
+            selectorStoreOptions,
+            dialogStoreOptions,
+            formName: 'form',
+            formData: {},
+            rules: {
+                name: [{ required: true, message: this.$t('validate.required') }],
+                label: [{ required: true, message: this.$t('validate.required') }]
+            }
+        }
+    },
+    watch: {
+        data: {
+            handler (val) {
+                if (val) {
+                    this.formData = val
+                }
+            },
+            immediate: true
+        }
+    },
+    methods: {
+        // 获取表单数据
+        getFormData (callback) {
+            this.$refs[this.formName].validate((valid) => {
+                if (valid) {
+                    callback(this.formData)
+                } else {
+                    callback()
+                }
+            })
         }
-      })
     }
-  }
 }
 </script>
 
 <style lang="scss">
 .template-result-column {
-  .el-select {
-    width:100%;
-  }
+    .el-select {
+        width:100%;
+    }
 }
 </style>

+ 66 - 67
src/business/platform/data/templatebuilder/right-aside/editors/sort-column.vue

@@ -1,84 +1,83 @@
 <template>
-  <el-form
-    ref="form"
-    :model="formData"
-    :rules="rules"
-    label-width="120px"
-    size="mini"
-    class="template-result-column"
-    @submit.native.prevent
-  >
-    <el-form-item label="显示名称" prop="name">
-      <el-input v-model="formData.label" placeholder="显示名称" />
-    </el-form-item>
-    <template v-if="datasetType === 'thirdparty'">
-      <el-form-item label="标识(name)" prop="name">
-        <el-input v-model="formData.name" placeholder="标识(name)" />
-      </el-form-item>
-    </template>
-    <el-form-item label="排序">
-      <el-switch
-        v-model="formData.direction"
-        active-text="降序"
-        inactive-text="升序"
-        active-value="desc"
-        inactive-value="asc"
-      />
-    </el-form-item>
+    <el-form
+        ref="form"
+        :model="formData"
+        :rules="rules"
+        label-width="120px"
+        size="mini"
+        class="template-result-column"
+        @submit.native.prevent
+    >
+        <el-form-item label="显示名称" prop="name">
+            <el-input v-model="formData.label" placeholder="显示名称" />
+        </el-form-item>
+        <!-- 默认显示字段标识 原显示条件: v-if="datasetType === 'thirdparty'"-->
+        <el-form-item label="字段标识" prop="name">
+            <el-input v-model="formData.name" placeholder="字段标识" readonly disabled />
+        </el-form-item>
+        <el-form-item label="排序">
+            <el-switch
+                v-model="formData.direction"
+                active-text="降序"
+                inactive-text="升序"
+                active-value="desc"
+                inactive-value="asc"
+            />
+        </el-form-item>
 
-  </el-form>
+    </el-form>
 </template>
 <script>
 
 export default {
-  props: {
-    data: {
-      type: Object
+    props: {
+        data: {
+            type: Object
+        },
+        datasetType: {
+            type: String,
+            default: 'table'
+        }
     },
-    datasetType: {
-      type: String,
-      default: 'table'
-    }
-  },
-  data() {
-    return {
-      formName: 'form',
-      formData: {},
-      rules: {
-        name: [{ required: true, message: this.$t('validate.required') }],
-        label: [{ required: true, message: this.$t('validate.required') }]
-      }
-    }
-  },
-  watch: {
-    data: {
-      handler(val) {
-        if (val) {
-          this.formData = val
+    data () {
+        return {
+            formName: 'form',
+            formData: {},
+            rules: {
+                name: [{ required: true, message: this.$t('validate.required') }],
+                label: [{ required: true, message: this.$t('validate.required') }]
+            }
         }
-      },
-      immediate: true
-    }
-  },
-  methods: {
-  // 获取表单数据
-    getFormData(callback) {
-      this.$refs[this.formName].validate((valid) => {
-        if (valid) {
-          callback(this.formData)
-        } else {
-          callback()
+    },
+    watch: {
+        data: {
+            handler (val) {
+                if (val) {
+                    this.formData = val
+                }
+            },
+            immediate: true
+        }
+    },
+    methods: {
+        // 获取表单数据
+        getFormData (callback) {
+            this.$refs[this.formName].validate((valid) => {
+                if (valid) {
+                    callback(this.formData)
+                } else {
+                    callback()
+                }
+            })
         }
-      })
     }
-  }
 }
 </script>
 
 <style lang="scss">
 .template-result-column {
-  .el-select {
-    width:100%;
-  }
+    .el-select {
+        width:100%;
+    }
 }
 </style>