ZaiZai 1 年之前
父節點
當前提交
aa72bb0e24

+ 3 - 2
src/components/table-form/modules/components.vue

@@ -2,9 +2,9 @@
     <div
         :id="id" class="hc-table-form-components-box" :data-key="keyname" :data-index="`${trindex || ''}_${tdindex || ''}`"
         :data-x1="x1" :data-x2="x2" :data-y1="y1" :data-y2="y2" :data-tr="trindex" :data-td="tdindex" :data-name="name"
-        :data-text="placeholder" :data-type="typeName" :data-rows="rows" :data-format="valueFormat" :data-weighing="weighing"
+        :data-text="placeholder" :data-type="typeName" :data-rows="rows" :data-format="valueFormat || format" :data-weighing="weighing"
         :data-label="label" :data-value="value" :data-src="src" :data-val="val" :data-contractid="contractid" :data-pkeyid="pkeyid"
-        :data-objs="objsData" :data-multiple="multiple"
+        :data-objs="objsData" :data-multiple="multiple" :data-range="rangeSeparator"
     >
         {{ name || placeholder }}
         <div v-if="isSlots" class="slot-content">
@@ -40,6 +40,7 @@ const props = defineProps({
     pkeyid: [String, Number],
     objs: Array,
     multiple: [Boolean],
+    rangeSeparator: [String, Number],
 })
 
 const objsData = ref('')

+ 1 - 1
src/views/project/list/adjust-excel.vue

@@ -91,7 +91,7 @@ const setInputRef = ref(null)
 //框框被点击
 const keys = [
     'type', 'key', 'tr', 'td', 'index', 'x1', 'y1', 'x2', 'y2', 'name', 'text', 'rows', 'format',
-    'weighing', 'label', 'value', 'src', 'val', 'contractid', 'pkeyid', 'objs',
+    'weighing', 'label', 'value', 'src', 'val', 'contractid', 'pkeyid', 'objs', 'range',
 ]
 const excelClick = async (item) => {
     const dom = item?.target

+ 68 - 2
src/views/project/list/set-input.vue

@@ -208,9 +208,75 @@ const setDomData = (item) => {
     }
     tableData.value = newArr
     if (type === 'date') {
+        //分割日期时间
+        const arr = item?.format?.split(' ')
+        //移除空值
+        const dateTimes = arr.filter(item => {
+            return !isNullES(item)
+        })
+        //取相关数据
+        let date = '', time = ''
+        if (dateTimes.length >= 2) {
+            date = dateTimes[0]
+            time = dateTimes[1]
+        } else {
+            //要判断下,是日期还是时间
+            if (dateTimes[0].indexOf('Y') !== -1 || dateTimes[0].indexOf('y') !== -1) {
+                date = dateTimes[0]
+            } else if (dateTimes[0].indexOf('D') !== -1 || dateTimes[0].indexOf('d') !== -1) {
+                date = dateTimes[0]
+            } else if (dateTimes[0].indexOf('H') !== -1 || dateTimes[0].indexOf('h') !== -1) {
+                time = dateTimes[0]
+            } else if (dateTimes[0].indexOf('S') !== -1 || dateTimes[0].indexOf('s') !== -1) {
+                time = dateTimes[0]
+            }
+        }
         //日期类型 YYYY年MM月DD日 YYYY-MM-DD  HH:mm:ss
-        const format = item.format
-        console.log(format)
+        let dates = [], times = []
+        if (!isNullES(date)) {
+            if (date.indexOf('Y') !== -1 || date.indexOf('y') !== -1) {
+                dates.push('YYYY')
+            }
+            if (date.indexOf('M') !== -1 || date.indexOf('m') !== -1) {
+                dates.push('MM')
+            }
+            if (date.indexOf('D') !== -1 || date.indexOf('d') !== -1) {
+                dates.push('DD')
+            }
+            //分隔符
+            if (date.indexOf('年') !== -1 || date.indexOf('月') !== -1 || date.indexOf('日') !== -1) {
+                formModel.value.divide_y = '文本'
+            } else if (date.indexOf('-') !== -1) {
+                formModel.value.divide_y = '-'
+            } else if (date.indexOf('/') !== -1) {
+                formModel.value.divide_y = '/'
+            } else {
+                formModel.value.divide_y = '文本'
+            }
+        }
+        if (!isNullES(time)) {
+            if (time.indexOf('H') !== -1 || time.indexOf('h') !== -1) {
+                times.push('HH')
+            }
+            if (time.indexOf('M') !== -1 || time.indexOf('m') !== -1) {
+                times.push('mm')
+            }
+            if (time.indexOf('S') !== -1 || time.indexOf('s') !== -1) {
+                times.push('ss')
+            }
+            //分隔符
+            if (time.indexOf('时') !== -1 || time.indexOf('分') !== -1 || time.indexOf('秒') !== -1) {
+                formModel.value.divide_h = '文本'
+            } else if (time.indexOf(':') !== -1) {
+                formModel.value.divide_h = ':'
+            } else if (time.indexOf('/') !== -1) {
+                formModel.value.divide_h = '/'
+            } else {
+                formModel.value.divide_h = '文本'
+            }
+        }
+        formModel.value.date = dates
+        formModel.value.time = times
     }
 }