From 771699a2a85aecde95a4393ef6016b28f73a551e Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期五, 28 六月 2024 14:11:46 +0800 Subject: [PATCH] 检验任务bug修复 --- src/components/do/b1-inspect-order-plan/Inspection.vue | 80 ++++++++++--------- src/util/excelFountion.js | 121 +++++++++++++++++------------ 2 files changed, 112 insertions(+), 89 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index 09e8c64..fbf847c 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -253,7 +253,7 @@ </el-form> </div> <div class="center"> - <div class="search"> + <div class="search" style="text-align: left;"> <el-radio-group v-model="currentTable" size="small"> <el-radio-button :label="item.templateId" v-for="(item,index) in tableLists" :key="index" size="small">{{ item.templateName }}</el-radio-button> @@ -272,7 +272,7 @@ <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" @mousewheel.native.prevent> + @change="m=>changeInput(m,`${item.templateId}-${n.r}-${n.c}-${n.i}`)" type="number" @mousewheel.native.prevent :key="'abc-'+'000'+index+'000'+i+'000'+j"> <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> @@ -1204,43 +1204,47 @@ 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] let comp = [] - if(ask){ - comp = ask.map((m, i) => { - if (m.includes('=')) { - let str = m.split('=')[1] - if(typeof res == 'string'&&typeof str == 'string'){ - return res.trim() == str.trim() - }else{ - return res == str - } - } else if (m.includes('鈮�')) { - return res >= m.split('鈮�')[1] - }else if (m.includes('鈮�')) { - return res <= m.split('鈮�')[1] - }else if (m.includes('<')) { - return res < m.split('<')[1] - }else if (m.includes('>')) { - return res > m.split('>')[1] - }else if (m.includes('~')) { - let k = m.split('~') - return res >= k[0] && res <= k[1] - }else if(m.includes('-')){ - let k = m.split('-') - return res >= k[0] && res <= k[1] - }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] + if(res==''||res==null||res==undefined||res=='Infinity'){ + item.v.v = '' + }else{ + if(ask){ + comp = ask.map((m, i) => { + if (m.includes('=')) { + let str = m.split('=')[1] + if(typeof res == 'string'&&typeof str == 'string'){ + return res.trim() == str.trim() + }else{ + return res == str + } + } else if (m.includes('鈮�')) { + return res >= m.split('鈮�')[1] + }else if (m.includes('鈮�')) { + return res <= m.split('鈮�')[1] + }else if (m.includes('<')) { + return res < m.split('<')[1] + }else if (m.includes('>')) { + return res > m.split('>')[1] + }else if (m.includes('~')) { + let k = m.split('~') + return res >= k[0] && res <= k[1] + }else if(m.includes('-')){ + let k = m.split('-') + return res >= k[0] && res <= k[1] + }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] + } + }) } - }) - } - if (comp.every(m => m)) { - item.v.v = 1 - } else { - item.v.v = 0 + if (comp.every(m => m)) { + item.v.v = 1 + } else { + item.v.v = 0 + } } this.saveInsContext() } diff --git a/src/util/excelFountion.js b/src/util/excelFountion.js index d879f8f..de10531 100644 --- a/src/util/excelFountion.js +++ b/src/util/excelFountion.js @@ -1,7 +1,7 @@ function SUM(...val){ - let num = 0; + let num = null; if(val&&val.length>0){ val.forEach(item=>{ num+=item; @@ -10,33 +10,44 @@ return num; } function MAX(...val){ - let max = 0; + let max = null; if(val&&val.length>0){ val = val.filter(item=>item!=null&&item!=='') - max = Math.max(...val) + if(val.length>0){ + max = Math.max(...val) + }else{ + max = null; + } } return max; } function MIN(...val){ - let min = 0; + let min = null; if(val&&val.length>0){ val = val.filter(item=>item!=null&&item!=='') - min = Math.min(...val) + console.log(val) + if(val.length>0){ + min = Math.min(...val) + } } return min; } function AVERAGE(...val){ - let num = 0; + let num = null; let arr = []; if(val&&val.length>0){ arr = val.filter(item=>item!=null&&item!=='') arr.forEach(item=>{ num+=item; }) - return num/arr.length; + if(arr.length>0){ + return num/arr.length; + }else{ + return null; + } }else{ - return 0; + return null; } } @@ -51,19 +62,23 @@ * @param {Object} cellId */ function getColumnNameFromId(cellId){ - if (! Array.isArray(cellId)) { - cellId = cellId.split('-'); - } - var i = cellId[0]; - var letter = ''; - if (i > 701) { - letter += String.fromCharCode(64 + parseInt(i / 676)); - letter += String.fromCharCode(64 + parseInt((i % 676) / 26)); - } else if (i > 25) { - letter += String.fromCharCode(64 + parseInt(i / 26)); - } - letter += String.fromCharCode(65 + (i % 26)); - return letter + (parseInt(cellId[1]) + 1); + try{ + if (! Array.isArray(cellId)) { + cellId = cellId.split('-'); + } + var i = cellId[0]; + var letter = ''; + if (i > 701) { + letter += String.fromCharCode(64 + parseInt(i / 676)); + letter += String.fromCharCode(64 + parseInt((i % 676) / 26)); + } else if (i > 25) { + letter += String.fromCharCode(64 + parseInt(i / 26)); + } + letter += String.fromCharCode(65 + (i % 26)); + return letter + (parseInt(cellId[1]) + 1); + }catch(e){ + console.log('error',cellId) + } } /** * 鏍规嵁鍒楀悕鑾峰彇鍧愭爣 @@ -71,37 +86,41 @@ * @param {Object} arr */ function getIdFromColumnName(id, arr) { - // Get the letters - var t = /^[a-zA-Z]+/.exec(id); - if (t) { - // Base 26 calculation - var code = 0; - for (var i = 0; i < t[0].length; i++) { - code += parseInt(t[0].charCodeAt(i) - 64) * Math.pow(26, (t[0].length - 1 - i)); - } - code--; - // Make sure jexcel starts on zero - if (code < 0) { - code = 0; - } - - // Number - var number = parseInt(/[0-9]+$/.exec(id)); - if (number > 0) { - number--; - } - - if (arr == true) { - id = [ code, number ]; - } else { - // id = code + '-' + number; - id = { - c:code, - r:number + try{ + // Get the letters + var t = /^[a-zA-Z]+/.exec(id); + if (t) { + // Base 26 calculation + var code = 0; + for (var i = 0; i < t[0].length; i++) { + code += parseInt(t[0].charCodeAt(i) - 64) * Math.pow(26, (t[0].length - 1 - i)); } - } - } - return id; + code--; + // Make sure jexcel starts on zero + if (code < 0) { + code = 0; + } + + // Number + var number = parseInt(/[0-9]+$/.exec(id)); + if (number > 0) { + number--; + } + + if (arr == true) { + id = [ code, number ]; + } else { + // id = code + '-' + number; + id = { + c:code, + r:number + } + } + } + return id; + }catch(e){ + console.log('error',id) + } } // 鑾峰彇鍙傛暟鍒楄〃 -- Gitblit v1.9.3