From 0ffe7d6e144f5e82f19b148969a9fbb3c50615f6 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期二, 26 三月 2024 17:16:49 +0800 Subject: [PATCH] 写表格逻辑 --- src/components/do/b1-inspect-order-plan/Inspection.vue | 95 +++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 94 insertions(+), 1 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index afb0e58..950995a 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -139,7 +139,7 @@ :style="`background:${n.v.bg};color:${n.v.fc};font-size:${n.v.fs}px;width:${item.style.columnlen[n.c]}px;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`"> <div class="content" :class="`content-h-${n.v.ht} content-v-${n.v.vt}`"> <span v-if="n.v.ps===undefined || n.v.ps.value!='妫�楠屽��'" :style="`font-family:${n.v.ff} !important;`">{{ n.v.v}}</span> - <input v-else class="table_input"/> + <el-input v-else class="table_input" v-model="n.v.v" @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}`)" /> </div> </td> </tr> @@ -187,6 +187,7 @@ </template> <script> +import { number } from 'echarts'; import ValueTable from '../../tool/value-table.vue' export default { props: ['sonLaboratory','orderId'], @@ -244,6 +245,53 @@ result: {} }, currentKey:1, + comparisonList:[ + { + 0:'0', + 1:'A', + }, + { + 0:'1', + 1:'B', + }, + { + 0:'2', + 1:'C', + }, + { + 0:'3', + 1:'D', + }, + { + 0:'4', + 1:'E', + }, + { + 0:'5', + 1:'F', + }, + { + 0:'6', + 1:'G', + }, + { + 0:'7', + 1:'H', + }, + { + 0:'8', + 1:'I', + }, + { + 0:'9', + 1:'J', + }, + { + 0:'10', + 1:'K', + }, + ], + excelMethodList:[] } }, created() { @@ -328,6 +376,7 @@ row.index = rowIndex + 1; }, handleTableData(){ + this.excelMethodList = [] const mySet1 = new Set(); this.tableList = JSON.parse(JSON.stringify(this.currentSample.insProduct)).filter(m=>{ let num0 = mySet1.size; @@ -384,6 +433,9 @@ let arr = []; let arrItem = []; item.template.forEach((m,i)=>{ + if(m.v.f){ + this.excelMethodList.push(m) + } let num0 = mySet0.size; mySet0.add(m.r) let num1 = mySet0.size; @@ -414,6 +466,47 @@ return item }) console.log(this.tableList); + this.handleExcelMethod() + }, + changeInput(m,code){ + console.log(2222222222,m,code) + let r = code.split('-')[1] + let c = code.split('-')[2] + }, + // 褰撳墠妯℃澘excel鍑芥暟闆嗗鐞� + handleExcelMethod(){ + if(this.excelMethodList.length>0){ + this.excelMethodList.map(item=>{ + item.methodName = item.v.f.split('=')[1].split('(')[0]; + let valueList = []; + if(item.v.f.includes(':')){ + let r0 = null; + let c0 = null; + let r1 = null; + let c1 = null; + let mode = item.v.f.split('(')[1].split(')')[0]; + let start = mode.split(':')[0] + let end = mode.split(':')[1] + r0 = this.comparisonList.find(j=>j['1']==start.split('')[0])[`0`] + c0 = start.split('')[1]-1 + r1 = this.comparisonList.find(j=>j['1']==end.split('')[0])[`0`] + c1 = end.split('')[1]-1 + for (let i=Number(r0);i<=r1;i++){ + for(let u=c0;u<c1+1;u++){ + valueList.push({ + r:i, + c:u + }) + } + } + item.valueList = valueList; + }else{ + let mode = item.v.f.split('(')[1].split(')')[0]; + // const result = item.v.f.replace(/+|-|*|%|\/|(|)/g, ' ') + } + return item; + }) + } } } } -- Gitblit v1.9.3