From 8d80e7269f3d2ed782a0ddff6887614aca88c8dd Mon Sep 17 00:00:00 2001
From: licp <lichunping@guanfang.com.cn>
Date: 星期五, 28 六月 2024 13:03:10 +0800
Subject: [PATCH] 修改审批参数
---
src/components/do/b1-inspect-order-plan/Inspection.vue | 268 ++++++++++++++++++++---------------------------------
1 files changed, 101 insertions(+), 167 deletions(-)
diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue
index 1a6e052..09e8c64 100644
--- a/src/components/do/b1-inspect-order-plan/Inspection.vue
+++ b/src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -266,13 +266,13 @@
<td :id='item.templateId+"-"+n.i+"-"+n.r+"-"+n.c' v-for="(n,j) in m" :key="j"
v-if="n.v.mc==undefined || Object.keys(n.v.mc).length === 4" :colspan="n.v.mc&&n.v.mc.cs?n.v.mc.cs:1"
:rowspan="n.v.mc&&n.v.mc.rs?n.v.mc.rs:1"
- :style="`background:${n.v.bg};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;height:${item.style.rowlen[n.r]}px;font-wight:${n.v.bl?'bold':''};`">
+ :style="`background:${n.v.bg?n.v.bg:''};color:${n.v.fc};font-size:${n.v.fs}px;width:${handleWidth(n)}px !important;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}`"
- :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;background:${n.v.bg};`">
+ :style="`width:${handleWidth(n)}px !important;min-height:${item.style.rowlen[n.r]}px;`">
<template v-if="n.v.ps!=undefined && n.v.ps.value==='妫�楠屽��' && state==1">
<el-input v-if="getInspectionValueType(n.i) == 1" class="table_input" v-model="n.v.v"
:disabled="getInspectionItemType(n.i) == 1 || (n.u != userId && n.u != undefined && n.u != '')"
- @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" type="number">
+ @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" type="number" @mousewheel.native.prevent>
<el-button slot="append" type="primary" icon="el-icon-edit" size="mini"
v-if="getInspectionItemType(n.i) == 1" @click="getSystemValue(n)"></el-button>
</el-input>
@@ -482,6 +482,7 @@
<script>
import ValueTable from '../../tool/value-table.vue'
import file from '../../../util/file'
+ import excelFunction from '../../../util/excelFountion'
export default {
props: ['sonLaboratory', 'orderId', 'state'],
components: {
@@ -806,6 +807,7 @@
let bushing = this.currentSample.bushing
if(bushing&&bushing.length>0){
this.bushing = bushing
+ this.bushing.forEach(a => {})
}
// this.handleTableData()
this.getTableLists();
@@ -1087,12 +1089,12 @@
} else {
this.param[b.i].resValue = b
} */
- if (b.i !== undefined) {
+ if (b.i !== undefined&&!this.param[b.i].resValue) {
this.param[b.i].resValue = b
}
}
if (b.v.ps != undefined && b.v.ps.value === '缁撹') {
- if (b.i !== undefined) {
+ if (b.i !== undefined&&!this.param[b.i].insResult) {
this.param[b.i].insResult = b
conclusionList.forEach((n, i) => {
if (n.r == b.r && n.c == b.c) {
@@ -1163,6 +1165,7 @@
let id = str[0]
let pId = str[3]
var list = []
+ // console.log(id, 'r', r , 'c',c,this.tableList)
for (let a in this.tableList) {
if (this.tableList[a].templateId == id) {
list = this.tableList[a].arr
@@ -1196,7 +1199,7 @@
}
})
})
- if (item.methodName == '鑷畾涔夋柟娉�' && item.v.ps != undefined && item.v.ps.value == '缁撹') {
+ if (item.v.ps != undefined && item.v.ps.value == '缁撹') {
if (this.currentSample.insProduct.find(m => m.id == item.i)) {
let ask = this.currentSample.insProduct.find(m => m.id == item.i).ask?this.currentSample.insProduct.find(m => m.id == item.i).ask.split('&'):null;
let res = Object.values(comValue)[0]
@@ -1227,6 +1230,10 @@
}else if(m.includes('卤')){
let k = m.split('卤')
return res >= (k[0] - k[1]) && res <= (k[0] + k[1])
+ }else if(m.includes('锛�')){
+ return res > m.split('锛�')[1]
+ }else if(m.includes('锛�')){
+ return res < m.split('锛�')[1]
}
})
}
@@ -1238,51 +1245,11 @@
this.saveInsContext()
}
} else {
- let comResult = 0;
- switch (item.methodName) {
- case 'AVERAGE':
- let num = 0
- for (var a in comValue) {
- num += comValue[a]
- }
- comResult = num / Object.keys(comValue).length
- break;
- case 'SUM':
- let sum = 0
- for (var a in comValue) {
- sum += comValue[a]
- }
- comResult = sum
- break;
- case 'MEDIAN':
- let arr = []
- for (var a in comValue) {
- arr.push(comValue[a])
- }
- comResult = this.median(arr)
- break;
- case 'APS':
- let arr0 = []
- for (var a in comValue) {
- arr0.push(comValue[a])
- }
- comResult = Math.abs(arr0[0])
- break;
- // case 'MAX':
- // let arr1 = []
- // for (var a in comValue) {
- // arr1.push(eval(comValue[a]))
- // }
- // comResult = Math.max(...arr1)
- // break;
- // case 'MIN':
- // let arr2 = []
- // for (var a in comValue) {
- // arr2.push(eval(comValue[a]))
- // }
- // comResult = Math.median(...arr2)
- // break;
- default:
+ let comResult = ''
+ try {
+ if(this.getInspectionValueType(item.i)==1){
+ comResult = excelFunction.compute(item.v.f.replace(/=/g, ' '),comValue)
+ }else{
let valueList = [];
item.valueList.forEach(a => {
valueList.push({
@@ -1297,27 +1264,94 @@
}
})
}
- let str = item.v.f.replace(/=/g, ' ');
+ let str = item.v.f.replace(/=/g, ' ')
valueList.forEach(b => {
str = str.replace(b.name, b.value)
})
- str = str.replaceAll('MAX', 'Math.max')
- str = str.replaceAll('MIN', 'Math.min')
- str = str.replaceAll('锛�', ',')
- console.log(str)
- try {
- if(this.getInspectionValueType(item.i)==1){
- comResult = eval(str)
- }else{
- comResult = str
- }
- } catch (error) {
+ comResult = str
+ }
+ } catch (error) {
- }
- break;
}
+ // comResult = excelFunction.compute(item.v.f.replace(/=/g, ' '),comValue);
+ // switch (item.methodName) {
+ // case 'AVERAGE':
+ // let num = 0
+ // for (var a in comValue) {
+ // num += comValue[a]
+ // }
+ // comResult = num / Object.keys(comValue).length
+ // break;
+ // case 'SUM':
+ // let sum = 0
+ // for (var a in comValue) {
+ // sum += comValue[a]
+ // }
+ // comResult = sum
+ // break;
+ // case 'MEDIAN':
+ // let arr = []
+ // for (var a in comValue) {
+ // arr.push(comValue[a])
+ // }
+ // comResult = this.median(arr)
+ // break;
+ // case 'APS':
+ // let arr0 = []
+ // for (var a in comValue) {
+ // arr0.push(comValue[a])
+ // }
+ // comResult = Math.abs(arr0[0])
+ // break;
+ // // case 'MAX':
+ // // let arr1 = []
+ // // for (var a in comValue) {
+ // // arr1.push(eval(comValue[a]))
+ // // }
+ // // comResult = Math.max(...arr1)
+ // // break;
+ // // case 'MIN':
+ // // let arr2 = []
+ // // for (var a in comValue) {
+ // // arr2.push(eval(comValue[a]))
+ // // }
+ // // comResult = Math.median(...arr2)
+ // // break;
+ // default:
+ // let valueList = [];
+ // item.valueList.forEach(a => {
+ // valueList.push({
+ // name: `${this.comparisonList.find(e=>e.value==a.c).label}${a.r+1}`,
+ // value: 0,
+ // })
+ // })
+ // for (var a in comValue) {
+ // valueList.forEach(b => {
+ // if (b.name == a) {
+ // b.value = comValue[a]
+ // }
+ // })
+ // }
+ // let str = item.v.f.replace(/=/g, ' ');
+ // valueList.forEach(b => {
+ // str = str.replace(b.name, b.value)
+ // })
+ // str = str.replaceAll('MAX', 'Math.max')
+ // str = str.replaceAll('MIN', 'Math.min')
+ // str = str.replaceAll('锛�', ',')
+ // try {
+ // if(this.getInspectionValueType(item.i)==1){
+ // comResult = eval(str)
+ // }else{
+ // comResult = str
+ // }
+ // } catch (error) {
+
+ // }
+ // break;
+ // }
list.forEach(a => {
- if (a[0].r == item.r && comResult != '') {
+ if (a[0].r == item.r && comResult !== '') {
for (var b in a) {
if (a[b].c == item.c) {
try{
@@ -1405,107 +1439,7 @@
handleExcelMethod() {
if (this.excelMethodList.length > 0) {
this.excelMethodList.map(item => {
- item.methodName = item.v.f.split('=').length > 1 && item.v.f.split('=')[1].split('(') && item.v.f.split(
- '=')[1].split('(')[0] ? item.v.f.split('=')[1].split('(')[0] : '鑷畾涔夋柟娉�';
- let valueList = [];
- if(item.v.f.includes('MAX') || item.v.f.includes('MIN')){
- item.methodName = '鑷畾涔夋柟娉�'
- let regex = /[=\+\-\*\%\/\^\s]/g
- let mode = item.v.f.replace(regex, ' ').split(' ');
- let that = this
- if(item.v.f.includes('MAX')){
- item.v.f = Judgment(item.v.f, 'MAX')
- }
- if(item.v.f.includes('MIN')){
- item.v.f = Judgment(item.v.f, 'MIN')
- }
- function Judgment(f,type) {
- let newF = f
- let mode4 = mode.filter(m => m&&m.includes(type))
- mode4.forEach(m => {
- let mode0 = m
- if(mode0.includes(':')){
- let r0 = null;
- let c0 = null;
- let r1 = null;
- let c1 = null;
- let mode1 = mode0.split('(')[1].split(')')[0];
- let start = mode1.split(':')[0]
- let end = mode1.split(':')[1]
- c0 = that.comparisonList.find(j => j.label == start.split('')[0]).value
- r0 = start.replace(/[a-zA-Z]/g, "") - 1
- c1 = that.comparisonList.find(j => j.label == end.split('')[0]).value
- r1 = end.replace(/[a-zA-Z]/g, "") - 1
- let valueList0 = []
- for (let i = Number(r0); i <= Number(r1); i++) {
- for (let u = Number(c0); u <= Number(c1); u++) {
- valueList0.push({
- r: i,
- c: u
- })
- }
- }
- let valueList1 = []
- valueList0.forEach(v => {
- let r = '';
- let c = '';
- r = v.r +1;
- c = that.comparisonList.find(j => j.value == v.c).label
- valueList1.push(c+r)
- })
- let mode3 = type+'('+valueList1.join(',')+')'
- newF = newF.replace(mode0, mode3)
- valueList = [...valueList,...valueList0]
- }else{
- let mode1 = mode0.replace(type, '').replace(/[=\+\-\*\%\(\)\/\^\s]/g, '');
- let modeList = mode1.split(',');
- modeList.filter(m => m && !Number(m)).forEach(m => {
- let r = m.replace(/[a-zA-Z]/g, "") - 1
- let c = that.comparisonList.find(j => j.label == m.split('')[0]).value
- valueList.push({
- c,
- r
- })
- })
- }
- })
- return newF
- }
- }else if (item.v.f.includes(':')) {
- valueList = [];
- 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]
- c0 = this.comparisonList.find(j => j.label == start.split('')[0]).value
- r0 = start.replace(/[a-zA-Z]/g, "") - 1
- c1 = this.comparisonList.find(j => j.label == end.split('')[0]).value
- r1 = end.replace(/[a-zA-Z]/g, "") - 1
- for (let i = Number(r0); i <= Number(r1); i++) {
- for (let u = Number(c0); u <= Number(c1); u++) {
- valueList.push({
- r: i,
- c: u
- })
- }
- }
- } else {
- valueList = []
- let regex = /[=\+\-\*\%\(\)\/\^\s]/g
- let mode = item.v.f.replace(regex, ' ').split(' ');
- mode.filter(m => m && !Number(m)&&m!='undefined').forEach(m => {
- let r = m.replace(/[a-zA-Z]/g, "") - 1
- let c = this.comparisonList.find(j => j.label == m.split('')[0]).value
- valueList.push({
- c,
- r
- })
- })
- }
- item.valueList = valueList;
+ item.valueList = excelFunction.changeParameter(item.v.f);
return item;
})
}
--
Gitblit v1.9.3