From e703b41ee825c66016f5f0fb80b5564d901ae666 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期一, 28 十月 2024 15:06:19 +0800 Subject: [PATCH] 优化出入库 --- /dev/null | 273 --------------------------------------- src/main.js | 8 src/components/do/b1-inspect-order-plan/Inspection.vue | 2 src/components/view/b1-inspect-order-plan.vue | 31 ---- src/components/view/b1-sample.vue | 68 ++++---- 5 files changed, 40 insertions(+), 342 deletions(-) diff --git a/src/components/do/b1-inspect-order-plan/Inspection.vue b/src/components/do/b1-inspect-order-plan/Inspection.vue index 1c8dcce..c2bf51b 100644 --- a/src/components/do/b1-inspect-order-plan/Inspection.vue +++ b/src/components/do/b1-inspect-order-plan/Inspection.vue @@ -918,7 +918,6 @@ <script> import ValueTable from '../../tool/value-table.vue' - import Circuit from './circuit.vue' import file from '../../../util/file' import excelFunction from '../../../util/excelFountion' import CircuitParameters1 from './circuit-parameters1.vue' @@ -930,7 +929,6 @@ props: ['sonLaboratory', 'orderId', 'state','inspectorList','version','orderStateId','isLook','num1','noBack'], components: { ValueTable, - Circuit, CircuitParameters1, CircuitParameters2, filePreview, diff --git a/src/components/do/b1-inspect-order-plan/circuit.vue b/src/components/do/b1-inspect-order-plan/circuit.vue deleted file mode 100644 index 239c7f3..0000000 --- a/src/components/do/b1-inspect-order-plan/circuit.vue +++ /dev/null @@ -1,278 +0,0 @@ -<template> - <div class="circuit"> - <table border="1" cellpadding="10" class="thermal-table"> - <tr> - <th :colspan="typeList0.length+4" style="font-size: 18px;">瀹ゅ鍒嗗竷100-D瀹介灏勭伅澶╃嚎</th> - </tr> - <tr> - <td class="title">鏍峰搧缂栧彿</td> - <td>1111</td> - <td class="title">鏍峰搧鍨嬪彿</td> - <td>22222</td> - <td class="title">璇曢獙鏍囧噯</td> - <td :colspan="typeList0.length">鐢典俊</td> - </tr> - <tr> - <td class="title">妫�楠岄」鐩�</td> - <td class="title">鍗曚綅</td> - <td class="title">鏍囧噯瑕佹眰</td> - <td :colspan="typeList0.length+1" class="title">妫�楠岀粨鏋�</td> - </tr> - <!-- 椹绘尝姣� --> - <template> - <tr> - <td :rowspan="roadList0.length+2">鐢靛帇椹绘尝姣�</td> - <td :rowspan="roadList0.length+2">/</td> - <td :rowspan="roadList0.length+2">鈮�1.5</td> - <td class="title">鏈�宸��</td> - <td v-for="(item,index) in typeList0" :key="index+'ooo'"><span style="display: inline-block;width: 40%;">{{ item.label }}</span><el-button icon="el-icon-minus" circle size="mini" type="danger" style="margin-left: 4px;" @click="deleteList(index,'绔彛')"></el-button><el-button icon="el-icon-plus" circle size="mini" type="primary" v-if="index==typeList0.length-1" @click="addInfo('绔彛')"></el-button></td> - </tr> - <tr v-for="(item,index) in roadList0" :key="index+'iiii'"> - <td><span style="display: inline-block;width: 70%;">{{ item.label }}</span><el-button icon="el-icon-minus" circle size="mini" type="danger" @click="deleteList(index,'娉㈡')"></el-button></td> - <td v-for="(m,i) in typeList0" :key="i+'aaa'"> - <el-input clearable size="small" placeholder="" v-model="value" :disabled="state>1"></el-input> - </td> - </tr> - <tr> - <td><span style="display: inline-block;width: 70%;" class="title">椹绘尝姣旀渶宸��</span><el-button icon="el-icon-plus" circle size="mini" type="primary" @click="addInfo('娉㈡')"></el-button></td> - <td v-for="(m,i) in typeList0" :key="i+'bbb'"> - <span>0</span> - </td> - </tr> - </template> - <!-- 闅旂 --> - <template> - <tr> - <td :rowspan="roadList0.length+2">闅旂</td> - <td :rowspan="roadList0.length+2">dB</td> - <td :rowspan="roadList0.length+2">鈮�-25</td> - </tr> - <tr v-for="(item,index) in roadList0" :key="index+'eee'"> - <td>{{ item.label }}</td> - <td :colspan="index<isolationList.length-1?2:(typeList0.length/2>0?3:2)" v-for="(item,index) in isolationList" :key="index+'sss'"><el-input clearable size="small" placeholder="" v-model="item.value" :disabled="state>1"></el-input></td> - </tr> - <tr> - <td class="title">闅旂鏈�宸��</td> - <td :colspan="index<isolationList.length-1?2:(typeList0.length/2>0?3:2)" v-for="(item,index) in isolationList" :key="index+'ggg'">{{ item.compValue }}</td> - </tr> - </template> - <!-- 浜掕皟 --> - <template> - <tr> - <td :rowspan="bandList0.length+2">浜掕皟37dBm</td> - <td :rowspan="bandList0.length+2">dBm</td> - <td :rowspan="bandList0.length+2">鈮�-107</td> - </tr> - <tr v-for="(item,index) in bandList0" :key="index+'yyy'"> - <td><span style="display: inline-block;width: 70%;">{{ item.label }}</span><el-button icon="el-icon-minus" circle size="mini" type="danger" @click="deleteList(index,'棰戞')"></el-button></td> - <td v-for="(m,i) in typeList0" :key="i+'ccc'"><el-input clearable size="small" placeholder="" v-model="value" :disabled="state>1"></el-input></td> - </tr> - <tr> - <td class="title"><span style="display: inline-block;width: 70%;">浜掕皟鏈�宸��</span><el-button icon="el-icon-plus" circle size="mini" type="primary" @click="addInfo('棰戞')"></el-button></td> - <td v-for="(m,i) in typeList0" :key="i+'hhh'">0</td> - </tr> - </template> - </table> - <el-dialog - :title="'閫夋嫨娣诲姞'+currentType" - :visible.sync="dialogVisible" - width="20%"> - <el-checkbox-group v-model="checkList" v-if="currentType=='娉㈡'"> - <el-checkbox :label="item.label" v-for="(item,index) in roadList1" :key="index+'lll'">{{ item.label }}</el-checkbox> - </el-checkbox-group> - <el-checkbox-group v-model="checkList" v-if="currentType=='棰戞'"> - <el-checkbox :label="item.label" v-for="(item,index) in bandList1" :key="index+'tttt'">{{ item.label }}</el-checkbox> - </el-checkbox-group> - <el-checkbox-group v-model="checkList" v-if="currentType=='绔彛'"> - <el-checkbox :label="item.label" v-for="(item,index) in typeList1" :key="index+'uuuu'">{{ item.label }}</el-checkbox> - </el-checkbox-group> - <span slot="footer" class="dialog-footer"> - <el-button @click="dialogVisible = false">鍙� 娑�</el-button> - <el-button type="primary" @click="handleSure">纭� 瀹�</el-button> - </span> - </el-dialog> - </div> -</template> - -<script> -export default { - data() { - return { - roadList:[], - typeList:[], - bandList:[], - typeList0:[], - roadList0:[], - bandList0:[], - typeList1:[], - roadList1:[], - bandList1:[], - isolationList:[ - { - compValue:'', - value:'' - } - ], - state: 1, - value:'', - dialogVisible:false, - currentType:'',//娉㈡,棰戞,绔彛 - checkList:[], - } - }, - watch:{ - roadList0(val){ - this.roadList1 = this.roadList.filter(item=>{ - return !val.find(m=>m.id==item.id) - }) - }, - typeList0(val){ - this.typeList1 = this.typeList.filter(item=>{ - return !val.find(m=>m.id==item.id) - }) - this.isolationList = [] - if(val.length<2){ - this.isolationList = [{compValue:'',value:''}] - }else{ - let num = Math.floor(val.length/2) - for(let i=0;i<num;i++){ - this.isolationList.push({compValue:'',value:''}) - } - } - console.log(this.isolationList) - }, - bandList0(val){ - this.bandList1 = this.bandList.filter(item=>{ - return !val.find(m=>m.id==item.id) - }) - }, - dialogVisible(val){ - if(!val){ - this.checkList = [] - } - } - }, - mounted() { - this.getTypeDicts() - }, - methods: { - getTypeDicts() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鐢佃矾璇曢獙娉㈡" - }).then(res => { - this.roadList = res.data - this.roadList0 = this.HaveJson(this.roadList) - }) - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鐢佃矾璇曢獙绔彛" - }).then(res => { - this.typeList = res.data - this.typeList0 = this.HaveJson(this.typeList) - }) - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鐢佃矾璇曢獙棰戞" - }).then(res => { - this.bandList = res.data - this.bandList0 = this.HaveJson(this.bandList) - }) - }, - deleteList(index,type) { - switch(type){ - case '娉㈡': - if(this.roadList0.length>1){ - this.roadList0.splice(index, 1) - }else{ - this.$message.error('鑷冲皯淇濈暀涓�鏉℃暟鎹�') - } - break; - case '棰戞': - if(this.bandList0.length>1){ - this.bandList0.splice(index, 1) - }else{ - this.$message.error('鑷冲皯淇濈暀涓�鏉℃暟鎹�') - } - break; - case '绔彛': - if(this.typeList0.length>1){ - this.typeList0.splice(index, 1) - }else{ - this.$message.error('鑷冲皯淇濈暀涓�鏉℃暟鎹�') - } - break; - } - }, - handleSure(){ - switch(this.currentType){ - case '娉㈡': - this.roadList.forEach((item,index)=>{ - let obj = this.checkList.find(m=>m==item.label) - if(obj){ - this.roadList0.push(item) - } - }) - this.roadList0 = this.handleSortById(this.roadList0) - break; - case '棰戞': - this.bandList.forEach((item,index)=>{ - let obj = this.checkList.find(m=>m==item.label) - if(obj){ - this.bandList0.push(item) - } - }) - this.bandList0 = this.handleSortById(this.bandList0) - break; - case '绔彛': - this.typeList.forEach((item,index)=>{ - let obj = this.checkList.find(m=>m==item.label) - if(obj){ - this.typeList0.push(item) - } - }) - this.typeList0 = this.handleSortById(this.typeList0) - break; - } - this.dialogVisible = false - }, - // 鏍规嵁Id鎺掑簭 - handleSortById(arr){ - return arr.sort((a,b)=>{ - if(a.id>b.id){ - return 1; - }else if(a.id<b.id){ - return -1; - }else { - return 0; - } - }) - }, - addInfo(type){ - this.currentType = type - this.dialogVisible = true - }, - } -} -</script> - -<style scoped> -.thermal-table{ - min-width: calc(100% - 10px); - margin: 5px 5px 20px; - table-layout: fixed; -} -.thermal-table td,.thermal-table th { - min-width: 150px; - text-align: center; - font-size: 14px; - word-wrap: break-word; - white-space: normal; - padding: 5px; -} -.thermal-table .el-input{ - display: flex; - align-items: center; -} -.title{ - color: #000 !important; - font-weight: 700 !important; -} -</style> diff --git a/src/components/do/b1-material-ins-order/customs-inspection.vue b/src/components/do/b1-material-ins-order/customs-inspection.vue deleted file mode 100644 index 67d0a5d..0000000 --- a/src/components/do/b1-material-ins-order/customs-inspection.vue +++ /dev/null @@ -1,2577 +0,0 @@ -<template> - <div class="ins_order_add"> - <div v-show="!configShow&&!equipConfigShow&&!cableConfigShow"> - <el-row class="title"> - <el-col :span="6" style="padding-left: 20px;text-align: left;">閲囪喘璁㈠崟淇℃伅 鎬讳环锛�<span - style="color: #3A7BFA">锟{total}}</span></el-col> - <el-col :span="18" style="text-align: right;"> - <el-select v-model="template" size="medium" placeholder="涓嬪崟妯℃澘" style="margin-right: 10px;" v-show="active==1" - @change="selectInsOrderTemplateById"> - <el-option v-for="(a, ai) in templates" :key="ai" :value="a.id" :label="a.name"> - <span style="float: left">{{ a.name }}</span> - <i class="el-icon-delete" style="float: right; color: #66b1ff; font-size: 16px" - @click.stop="handleDelete(a)"></i> - </el-option> - </el-select> - <el-button size="medium" @click="templateDia=true" v-show="active==1"> - <span style="color: #3A7BFA;">淇濆瓨妯℃澘</span> - </el-button> - <el-button size="medium" type="primary" @click="openCableConfig" - v-if="active==1&&PROJECT=='瑁呭鐢电紗'&&addObj.sampleType!=undefined&&addObj.sampleType.indexOf('鐢电紗')>-1">鐢电紗閰嶇疆</el-button> - <el-button size="medium" type="primary" @click="openEquipConfig" v-if="active==1">瀛愭牱鍝侀厤缃�</el-button> - <el-button size="medium" type="primary" @click="openConfig" v-if="addObj.sampleType==='鍏夌紗'">鍏夌氦閰嶇疆</el-button> - <el-button size="medium" type="primary" @click="save" :loading="saveLoad" v-show="active==1">鎻愪氦</el-button> - <!-- 瀹℃牳 --> - <el-button size="medium" @click="upInsOrderOfState(2)" :loading="saveLoad" v-show="active==3" - :disabled="saveLoad">涓嶉�氳繃</el-button> - <el-button size="medium" type="primary" @click="upInsOrderOfState(1)" :loading="saveLoad" - v-show="active==3">閫氳繃</el-button> - <el-button size="medium" @click="$parent.playOrder(0)"> - <span style="color: #3A7BFA;">杩斿洖</span> - </el-button> - </el-col> - </el-row> - </div> - <div class="search" v-show="!configShow&&!equipConfigShow&&!cableConfigShow"> - <el-row> - <el-col class="search_thing" :span="6"> - <div class="search_label">閲囪喘璁㈠崟鍙凤細</div> - <div class="search_input"> - <el-input v-model="addObj.entrustCode" size="small" placeholder="绯荤粺鐢熸垚" disabled></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>渚涘簲鍟嗙紪鍙凤細</div> - <div class="search_input"> - <el-input size="small" placeholder="璇峰~鍐�" clearable :readonly="active>1" v-model="addObj.phone"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>渚涘簲鍟嗗悕绉帮細</div> - <div class="search_input"> - <el-input size="small" placeholder="璇峰~鍐�" clearable :readonly="active>1" v-model="addObj.phone"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>鏍峰搧缂栧彿锛�</div> - <div class="search_input"> - <el-input size="small" placeholder="璇峰~鍐�" clearable :readonly="active>1" v-model="addObj.phone"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>鏍峰搧鍚嶇О锛�</div> - <div class="search_input"> - <el-input readonly size="small" v-model="addObj.sample"> - <template slot="append"><el-button slot="append" icon="el-icon-search" @click="selectStandardTree = true" - :disabled="active>1"></el-button></template> - </el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>鏍峰搧鏁伴噺锛�</div> - <div class="search_input"> - <el-input-number size="small" v-model="addObj.sampleNum" :min="1" :max="100" :precision="0" - style="width: 65%;" @change="addStandardTree" :disabled="active>1"></el-input-number> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>鎺ユ敹鏃堕棿锛�</div> - <div class="search_input"> - <el-date-picker - v-model="addObj.sampleNum" - :disabled="active>1" - type="date" - style="width: 100%;" - size="small" - placeholder="閫夋嫨鏃ユ湡"> - </el-date-picker> - </div> - </el-col> - <el-col class="search_thing" :span="6" > - <div class="search_label"><span class="required-span">* </span>鎶ユ浜猴細</div> - <div class="search_input"> - <el-input size="small" clearable disabled v-model="addObj.custom"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6" > - <div class="search_label"><span class="required-span">* </span>鍒跺崟浜猴細</div> - <div class="search_input"> - <el-input size="small" clearable disabled v-model="addObj.custom"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>鍒跺崟鏃堕棿锛�</div> - <div class="search_input"> - <el-date-picker - v-model="addObj.sampleNum" - :disabled="active>1" - type="date" - style="width: 100%;" - size="small" - placeholder="閫夋嫨鏃ユ湡"> - </el-date-picker> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label">濮旀墭淇℃伅锛�</div> - <div class="search_input"> - <el-input size="small" :placeholder="active>1 ? '' : '璇疯緭鍏�'" clearable v-model="addObj.prepareUser" :readonly="active>1"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6" style="align-items: flex-start;margin: 8px 0;"> - <div class="search_label">澶囨敞锛�</div> - <div class="search_input"> - <el-input type="textarea" :autosize="{ minRows: 2, maxRows: 2}" size="small" clearable :placeholder="active>1 ? '' : '璇疯緭鍏�'" - v-model="addObj.remark" :readonly="active>1"></el-input> - </div> - </el-col> - <el-col class="search_thing" :span="6"> - <div class="search_label"><span class="required-span">* </span>妫�楠岀被鍒細</div> - <div class="search_input"> - <el-select size="small" style="width: 100%;" clearable v-model="addObj.orderType" :disabled="active>1"> - <el-option v-for="(a, ai) in orderType" :key="ai" :value="a.value" :label="a.label"></el-option> - </el-select> - </div> - </el-col> - </el-row> - </div> - <div v-show="!configShow&&!equipConfigShow&&!cableConfigShow"> - <div class="search" v-if="active==1" style="display: flex;background: transparent;"> - <div class="search_thing"> - <div class="search_label">鏍峰搧鍨嬪彿锛�</div> - <div class="search_input"> - <el-select v-model="model" :placeholder="active>1 ? '' : '璇疯緭鍏�'" filterable allow-create default-first-option size="small" - @change="changeModel"> - <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </div> - </div> - <div class="search_thing"> - <div class="search_label">妫�楠屾爣鍑嗭細</div> - <div class="search_input"> - <el-select v-model="standardMethodListId" :placeholder="active>1 ? '' : '璇疯緭鍏�'" size="small" @focus="methodFocus" - :loading="methodLoad" @change="changeStandardMethodListId"> - <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </div> - </div> - </div> - <el-table class="el-table sampleTable" ref="sampleTable" - :data="sampleList" height="250px" tooltip-effect="dark" - border @selection-change="selectSample" - highlight-current-row @row-click="rowClick" style="margin-bottom: 10px;"> - <el-table-column type="selection" width="60" :selectable="selectable" v-if="active==1"></el-table-column> - <el-table-column type="index" label="搴忓彿" width="65" align="center"></el-table-column> - <el-table-column prop="sample" label="鏍峰搧鍚嶇О" align="center" min-width="100"> - <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.sample" clearable :readonly="active>1"></el-input> - </template> - </el-table-column> - <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" min-width="140" align="center"> - <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.sampleCode" clearable placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚" - :readonly="active>1"></el-input> - </template> - </el-table-column> - <el-table-column prop="model" label="鏍峰搧鍨嬪彿" align="center" min-width="100"> - <template slot-scope="scope"> - <el-select v-model="scope.row.model" filterable allow-create default-first-option placeholder="鏍峰搧鍨嬪彿" - size="small" @change="handleChangeModel" :disabled="active>1" style="width: 100%;"> - <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </template> - </el-table-column> - <el-table-column prop="modelNum" label="鍨嬪彿鍙傛暟" width="130" align="center" v-if="!(active>1)"> - <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.modelNum" clearable placeholder="闈炲繀濉�" - @keyup.enter.native="methodChange(scope.row.standardMethodListId, scope.row)" - @clear="methodChange(scope.row.standardMethodListId, scope.row)"></el-input> - </template> - </el-table-column> - <el-table-column prop="standardMethodListId" label="妫�楠屾爣鍑�" align="center" min-width="100"> - <template slot-scope="scope"> - <el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model==null||active>1" - placeholder="妫�楠屾爣鍑�" size="small" :loading="methodLoad" @change="(value)=>methodChange(value, scope.row)" - @focus="methodFocus" :readonly="active>1" style="width: 100%;" clearable @clear="productList = []"> - <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </template> - </el-table-column> - <el-table-column prop="joinName" label="閰嶅鏍峰搧鍚嶇О" width="140" align="center" v-if="addObj.mating==1"> - <template slot-scope="scope"> - <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1}" - v-model="scope.row.joinName"></el-input> - </template> - </el-table-column> - <el-table-column prop="joinModel" label="閰嶅鏍峰搧鍨嬪彿" width="140" align="center" v-if="addObj.mating==1"> - <template slot-scope="scope"> - <el-input size="small" type="textarea" :autosize="{ minRows: 1, maxRows: 1}" - v-model="scope.row.joinModel"></el-input> - </template> - </el-table-column> - <el-table-column prop="joinNum" label="閰嶅鏍峰搧鏁伴噺" width="140" align="center" v-if="addObj.mating==1"> - <template slot-scope="scope"> - <el-input-number size="small" v-model="scope.row.joinNum" :min="1" :max="100" :precision="0" - :controls="false" style="width: 80%;"></el-input-number> - </template> - </el-table-column> - <el-table-column prop="proNum" label="寰呮椤规暟閲�" width="105" align="center"></el-table-column> - </el-table> - <el-table class="el-table" ref="productTable" :data="productList" - height="380px" tooltip-effect="dark" border - style="margin-bottom: 10px;" - @selection-change="selectProduct" - @select="upProductSelect" - :row-class-name="tableRowClassName" - @select-all="handleAll" - v-loading="getProductLoad"> - <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1"></el-table-column> - <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip> - <template slot="header" slot-scope="scope"> - <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px"> - <span>妫�楠岄」</span> - <el-input - v-if="active==1" - v-model="inspectionItem" - @input="searchFilterList" - size="mini" - placeholder="璇疯緭鍏�"/> - </div> - </template> - </el-table-column> - <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140" - show-overflow-tooltip> - <template slot="header" slot-scope="scope"> - <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px"> - <span>妫�楠岄」瀛愰」</span> - <el-input - v-if="active==1" - v-model="inspectionItemSubclass" - @input="searchFilterList" - size="mini" - placeholder="璇疯緭鍏�"/> - </div> - </template> - </el-table-column> - <el-table-column prop="inspectionItemClass" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被" min-width="140" show-overflow-tooltip></el-table-column> - <el-table-column prop="inspectionItemClassEn" v-if="PROJECT === '瑁呭鐢电紗'" label="妫�楠岄」鍒嗙被(EN)" min-width="140" show-overflow-tooltip></el-table-column> - <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters" - :filter-method="filterHandler"></el-table-column> - <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip> - <template slot="header" slot-scope="scope"> - <div style="display: flex;align-items: center;flex-direction: column;font-size: 14px"> - <span>璇曢獙鏂规硶</span> - <el-input - v-if="active==1" - v-model="methodS" - @input="searchFilterList" - size="mini" - placeholder="璇疯緭鍏�"/> - </div> - </template> - </el-table-column> - <el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column> - <el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column> - <el-table-column prop="section" label="鍖洪棿" min-width="120" show-overflow-tooltip></el-table-column> - <el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px"> - <template slot-scope="scope"> - <el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea" - :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row)" - v-if="active==1&&isAskOnlyRead"></el-input> - <span v-else> - <template >{{ scope.row.ask }}</template> - </span> - </template> - </el-table-column> - </el-table> - </div> - <el-dialog title="閫夋嫨鍗曚綅" :visible.sync="selectUserDia" width="70%"> - <div class="body" style="height: 60vh;" v-if="selectUserDia"> - <ValueTable ref="ValueTable2" :url="$api.user.selectCustomPageList" :componentData="componentData2" /> - </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="selectUserDia = false">鍙� 娑�</el-button> - <el-button type="primary" @click="selectUser">纭� 瀹�</el-button> - </span> - </el-dialog> - <el-dialog title="閫夋嫨鏍峰搧" :visible.sync="selectStandardTree" width="400px"> - <div class="body" style="height: 60vh;overflow-y: auto;user-select: none;" v-if="selectStandardTree"> - <el-row> - <el-col :span="24"> - <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛屾悳绱�" suffix-icon="el-icon-search" v-model="search" size="small" - style="margin-bottom: 5px;" clearable @blur="searchFilter" @clear="searchFilter" - @keyup.enter.native="searchFilter"></el-input> - </el-col> - </el-row> - <el-tree :data="list" ref="tree" :props="{ children: 'children', label: 'label' }" node-key="label" - :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen" - @node-collapse="nodeClose" :default-expanded-keys="expandedKeys" @dblclick.native="activeStandardTree"> - <div class="custom-tree-node" slot-scope="{ node, data }"> - <el-row> - <el-col :span="24"> - <span><i - :class="`node_i ${data.children != undefined ? (data.code==='[1]'?'el-icon-folder-opened':'el-icon-folder') : 'el-icon-tickets'}`"></i> - {{ data.code }} {{ data.label }}</span> - </el-col> - </el-row> - </div> - </el-tree> - </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="selectStandardTree = false">鍙� 娑�</el-button> - <el-button type="primary" @click="activeStandardTree">纭� 瀹�</el-button> - </span> - </el-dialog> - <el-dialog title="淇濆瓨妯℃澘" :visible.sync="templateDia" width="400px"> - <div class="body" style="display: flex;align-items: center;" v-if="templateDia"> - <div class="search_label" style="width: 90px;"><span class="required-span">* </span>妯℃澘鍚嶇О锛�</div> - <div class="search_input"> - <el-input size="small" clearable v-model="templateName"></el-input> - </div> - </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="templateDia = false">鍙� 娑�</el-button> - <el-button type="primary" @click="addTemplateDia" :loading="templateLoading">纭� 瀹�</el-button> - </span> - </el-dialog> - <el-dialog title="妫�楠屼笅鍙�" :visible.sync="issuedDialogVisible" width="400px"> - <div class="body" style="max-height: 60vh;"> - <el-row> - <el-col class="search_thing" :span="22"> - <div class="search_label"><span class="required-span">* </span>绾﹀畾鏃堕棿锛�</div> - <div class="search_input"> - <el-date-picker size="small" v-model="distributeData.appointed" type="date" placeholder="閫夋嫨鏃ユ湡" - value-format="yyyy-MM-dd" style="width: 100%;" format="yyyy-MM-dd"> - </el-date-picker> - </div> - </el-col> - <el-col class="search_thing" :span="22"> - <div class="search_label"><span class="required-span" v-if="addObj.type == 2">* </span>鎸囨淳浜哄憳锛�</div> - <div class="search_input"> - <el-select v-model="distributeData.userId" placeholder="璇烽�夋嫨" size="small" filterable style="width: 100%;"> - <el-option v-for="item in personList" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </div> - </el-col> - </el-row> - </div> - <span slot="footer" class="dialog-footer"> - <el-row> - <el-button @click="issuedDialogVisible=false">鍙� 娑�</el-button> - <el-button type="primary" @click="submitForm2" :loading="upLoad">纭� 瀹�</el-button> - </el-row> - </span> - </el-dialog> - <el-dialog title="涓嶉�氳繃鍘熷洜" :visible.sync="noDialogVisible" width="400px"> - <div class="body" style="max-height: 60vh;"> - <el-row> - <el-col class="search_thing" :span="22"> - <div class="search_label"><span class="required-span">* </span>涓嶉�氳繃鍘熷洜锛�</div> - <div class="search_input"> - <el-input v-model="tell" size="small" placeholder="璇疯緭鍏ヤ笉閫氳繃鍘熷洜"></el-input> - </div> - </el-col> - </el-row> - </div> - <span slot="footer" class="dialog-footer"> - <el-row> - <el-button @click="noDialogVisible=false,tell=''">鍙� 娑�</el-button> - <el-button type="primary" @click="submitTell" :loading="noLoading">纭� 瀹�</el-button> - </el-row> - </span> - </el-dialog> - <fiberOpticConfig :currentId="currentId" @saveFiberopticConfig="getTotal()" v-if="configShow" :active="active" /> - <equipConfig :currentId="currentId" v-if="equipConfigShow" :active="active" /> - <cableConfig v-if="cableConfigShow" :active="active" /> - <!-- 鍗曢�夌壒娈婂�煎鐞嗘--> -<!-- <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" width="500px" :show-close="false"--> -<!-- :before-close="beforeClose">--> -<!-- <div class="body" style="max-height: 60vh;">--> -<!-- <el-row v-if="bsm1">--> -<!-- <el-col class="search_thing" :span="22" style="height: initial;margin: 5px 0;">--> -<!-- <div class="search_label"><span class="required-span">* </span>閫夐」锛�</div>--> -<!-- <div class="search_input">--> -<!-- <el-radio-group v-model="bsm1Val" @input="upBsm1">--> -<!-- <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai" :label="a" style="margin-bottom: 2px;margin-top: 2px;"></el-radio>--> -<!-- </el-radio-group>--> -<!-- </div>--> -<!-- </el-col>--> -<!-- <el-col class="search_thing" :span="22" style="height: initial;margin: 5px 0;">--> -<!-- <div class="search_label">瑕佹眰鍊硷細</div>--> -<!-- <div class="search_input" v-show="bsm1Val!==null&&bsm1Val!==''">--> -<!-- <el-radio-group v-model="bsm1Val" @input="upBsm1">--> -<!-- <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai"--> -<!-- :label="a">{{JSON.parse(bsmRow.ask)[ai]}}</el-radio>--> -<!-- </el-radio-group>--> -<!-- </div>--> -<!-- </el-col>--> -<!-- </el-row>--> -<!-- <el-row v-if="bsm2">--> -<!-- <el-col class="search_thing" :span="22">--> -<!-- <div class="search_label" style="width: 220px;"><span class="required-span">* </span>鏍峰搧鐔旀帴閰嶅鏁伴噺锛�</div>--> -<!-- <div class="search_input">--> -<!-- <el-input-number size="medium" v-model="bsm2Val" :min="1" :max="bsm2Val3.length" :precision="0"--> -<!-- style="width: 70%;" :controls="false" @change="bsm2Up"></el-input-number>--> -<!-- <span>MAX锛歿{bsm2Val3.length}}</span>--> -<!-- </div>--> -<!-- </el-col>--> -<!-- <el-col style="margin-top: 6px;">--> -<!-- <el-col v-for="(a,ai) in bsm2Val2" :key="ai">--> -<!-- <el-col :span="10">--> -<!-- <el-select v-model="a[0]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;">--> -<!-- <el-option v-for="(item,index) in sampleList" :key="index" :label="index+1" :value="index+1">--> -<!-- </el-option>--> -<!-- </el-select>--> -<!-- </el-col>--> -<!-- <!– <el-col :span="10" class="pairing">{{a[0]}}</el-col> –>--> -<!-- <el-col :span="4" class="pairing" style="border: 0;color: rgba(0, 0, 0, 0.2);">鈥斺��</el-col>--> -<!-- <el-col :span="10">--> -<!-- <el-select v-model="a[1]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;">--> -<!-- <el-option v-for="(item,index) in sampleList" :key="index" :label="index+1" :value="index+1">--> -<!-- </el-option>--> -<!-- </el-select>--> -<!-- </el-col>--> -<!-- </el-col>--> -<!-- </el-col>--> -<!-- </el-row>--> -<!-- </div>--> -<!-- </el-dialog>--> - <!-- 鍏ㄩ�夌壒娈婂�煎鐞嗘--> -<!-- <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1DiaAll" width="500px" :show-close="false"--> -<!-- :before-close="beforeClose">--> -<!-- <div class="body" style="max-height: 60vh;" v-for="(item, index) in bsm1DiaList" :key="index">--> -<!-- <el-row v-if="item.bsm1">--> -<!-- <el-col class="search_thing" :span="22" style="height: initial;margin: 5px 0;">--> -<!-- <div class="search_label"><span class="required-span">* </span>閫夐」锛�</div>--> -<!-- <div class="search_input">--> -<!-- <el-radio-group v-model="item.bsm1Val" @input="upBsmAll(item)">--> -<!-- <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.section)" :key="ai" :label="a" style="margin-bottom: 2px;margin-top: 2px;"></el-radio>--> -<!-- </el-radio-group>--> -<!-- </div>--> -<!-- </el-col>--> -<!-- <el-col class="search_thing" :span="22" style="height: initial;margin: 5px 0;">--> -<!-- <div class="search_label">瑕佹眰鍊硷細</div>--> -<!-- <div class="search_input" v-show="item.bsm1Val!==null&&item.bsm1Val!==''">--> -<!-- <el-radio-group v-model="item.bsm1Val" @input="upBsmAll(item)">--> -<!-- <el-radio v-for="(a, ai) in JSON.parse(item.bsmRow.section)" :key="ai"--> -<!-- :label="a">{{JSON.parse(item.bsmRow.ask)[ai]}}</el-radio>--> -<!-- </el-radio-group>--> -<!-- </div>--> -<!-- </el-col>--> -<!-- </el-row>--> -<!-- <el-row v-if="item.bsm2">--> -<!-- <el-col class="search_thing" :span="22">--> -<!-- <div class="search_label" style="width: 220px;"><span class="required-span">* </span>鏍峰搧鐔旀帴閰嶅鏁伴噺锛�</div>--> -<!-- <div class="search_input">--> -<!-- <el-input-number size="medium" v-model="item.bsm2Val" :min="1" :max="item.bsm2Val3.length" :precision="0"--> -<!-- style="width: 70%;" :controls="false" @change="bsm2Up"></el-input-number>--> -<!-- <span>MAX锛歿{item.bsm2Val3.length}}</span>--> -<!-- </div>--> -<!-- </el-col>--> -<!-- <el-col style="margin-top: 6px;">--> -<!-- <el-col v-for="(a,ai) in item.bsm2Val2" :key="ai">--> -<!-- <el-col :span="10">--> -<!-- <el-select v-model="a[0]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;">--> -<!-- <el-option v-for="(item,index) in item.sampleList" :key="index" :label="index+1" :value="index+1">--> -<!-- </el-option>--> -<!-- </el-select>--> -<!-- </el-col>--> -<!-- <!– <el-col :span="10" class="pairing">{{a[0]}}</el-col> –>--> -<!-- <el-col :span="4" class="pairing" style="border: 0;color: rgba(0, 0, 0, 0.2);">鈥斺��</el-col>--> -<!-- <el-col :span="10">--> -<!-- <el-select v-model="a[1]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;">--> -<!-- <el-option v-for="(item,index) in item.sampleList" :key="index" :label="index+1" :value="index+1">--> -<!-- </el-option>--> -<!-- </el-select>--> -<!-- </el-col>--> -<!-- <!– <el-col :span="10" class="pairing">{{a[1]}}</el-col> –>--> -<!-- </el-col>--> -<!-- </el-col>--> -<!-- </el-row>--> -<!-- </div>--> -<!-- </el-dialog>--> -<!-- <el-dialog title="鐗规畩鍊煎~鍐�" :visible.sync="bsm3Dia" width="800px" :show-close="false">--> -<!-- <el-table--> -<!-- :data="editTable"--> -<!-- style="width: 100%">--> -<!-- <!– inspectionItemList –>--> -<!-- <el-table-column--> -<!-- prop="inspectionItemList"--> -<!-- label="妫�楠岄」"--> -<!-- width="180">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="sampleCode"--> -<!-- label="鏍峰搧缂栧彿"--> -<!-- width="180">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="model"--> -<!-- label="鏍峰搧鍨嬪彿"--> -<!-- width="180">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="symbolItem"--> -<!-- label="璇嗗埆绗﹀彿">--> -<!-- </el-table-column>--> -<!-- <el-table-column--> -<!-- prop="value"--> -<!-- label="璇嗗埆绗﹀��">--> -<!-- <template slot-scope="scope">--> -<!-- <el-input v-model="scope.row.value" placeholder="璇疯緭鍏�" size="small"></el-input>--> -<!-- </template>--> -<!-- </el-table-column>--> -<!-- </el-table>--> -<!-- <span slot="footer" class="dialog-footer">--> -<!-- <el-row>--> -<!-- <el-button @click="bsm3Dia=false">鍙� 娑�</el-button>--> -<!-- <el-button type="primary" @click="save0" :loading="saveLoad">纭� 瀹�</el-button>--> -<!-- </el-row>--> -<!-- </span>--> -<!-- </el-dialog>--> -<!-- <el-dialog title="娓╁害寰幆瑕佹眰濉啓" :visible.sync="circulateShow" width="900px" :before-close="beforeCirculateShowClose" :show-close="false">--> -<!-- <div class="search" style="display: flex;background: transparent;">--> -<!-- <div class="search_thing">--> -<!-- <div class="search_label">淇濇俯鏃堕棿锛�</div>--> -<!-- <div class="search_input">--> -<!-- <el-input v-model="circulateForm.entrustTime" size="small" placeholder="" type="number"></el-input>--> -<!-- </div>--> -<!-- </div>--> -<!-- <div class="search_thing">--> -<!-- <div class="search_label">寰幆娆℃暟锛�</div>--> -<!-- <div class="search_input">--> -<!-- <el-input v-model="circulateForm.entrustNum" size="small" placeholder="" type="number"></el-input>--> -<!-- </div>--> -<!-- </div>--> -<!-- <div class="search_thing">--> -<!-- <div class="search_label">娓╁害鐐癸細</div>--> -<!-- <div class="search_input">--> -<!-- <el-input @blur="changeTemperatureData" v-model="circulateForm.entrustPoint" size="small" placeholder="" type="number"></el-input>--> -<!-- </div>--> -<!-- </div>--> -<!-- </div>--> -<!-- <div class="circulateTable">--> -<!-- <div class="opticalProject">--> -<!-- <div style="line-height: 30px;">鍏夌氦椤圭洰</div>--> -<!-- <el-divider></el-divider>--> -<!-- <div>--> -<!-- <el-table--> -<!-- ref="multipleTable"--> -<!-- border--> -<!-- :header-cell-style="{'text-align':'center'}"--> -<!-- :cell-style="{'text-align':'center'}"--> -<!-- :data="opticalProject"--> -<!-- tooltip-effect="dark"--> -<!-- style="width: 100%"--> -<!-- @row-click="rowClickOptical"--> -<!-- @select="selectOpticalProject"--> -<!-- @select-all="selectAllOptical"--> -<!-- @selection-change="handleSelectionChange">--> -<!-- <el-table-column--> -<!-- type="selection"--> -<!-- width="55">--> -<!-- </el-table-column>--> -<!-- <el-table-column prop="value" label="鍏夌氦椤圭洰" show-overflow-tooltip></el-table-column>--> -<!-- </el-table>--> -<!-- </div>--> -<!-- </div>--> -<!-- <div class="temperatureList">--> -<!-- <div class="temperatureListTitle">--> -<!-- <span>娓╁害鐐归泦鍚�</span>--> -<!-- <span>--> -<!-- <el-button type="primary" size="mini" @click="addTemperatureData">鏂板</el-button>--> -<!-- <el-button size="mini" @click="deleteTemperatureData">鍒犻櫎</el-button>--> -<!-- </span>--> -<!-- </div>--> -<!-- <el-divider></el-divider>--> -<!-- <el-table--> -<!-- :data="temperatureData"--> -<!-- border--> -<!-- :header-cell-style="{'text-align':'center'}"--> -<!-- :cell-style="{'text-align':'center'}"--> -<!-- style="width: 100%">--> -<!-- <el-table-column prop="date" label="娓╁害鐐�(鈩�)" width="120px">--> -<!-- <template slot-scope="scope">--> -<!-- <el-input size="small" v-model="scope.row.temperaturePoint" clearable placeholder="璇疯緭鍏�" @change="changeTemperature"></el-input>--> -<!-- </template>--> -<!-- </el-table-column>--> -<!-- <el-table-column prop="name" label="瑕佹眰(dB/Km)">--> -<!-- <template slot-scope="scope">--> -<!-- <span>x</span>--> -<!-- <el-select v-model="scope.row.askSymbol" placeholder="璇烽�夋嫨" size="small" style="width: 120px" @change="changeTemperature">--> -<!-- <el-option v-for="item in temperatureDataList" :key="item.value" :label="item.label" :value="item.value">--> -<!-- </el-option>--> -<!-- </el-select>--> -<!-- <el-input size="small" v-model="scope.row.askNum" clearable placeholder="璇疯緭鍏�" style="width: 120px" @change="changeTemperature"></el-input>--> -<!-- </template>--> -<!-- </el-table-column>--> -<!-- </el-table>--> -<!-- </div>--> -<!-- </div>--> -<!-- <span slot="footer" class="dialog-footer">--> -<!-- <el-button @click="cleanSpliceData">鍙栨秷</el-button>--> -<!-- <el-button type="primary" @click="spliceData">淇濆瓨</el-button>--> -<!-- </span>--> -<!-- </el-dialog>--> -<!-- <el-dialog :title="temperatureTitle" :visible.sync="temperatureShow" width="260px" :before-close="temperatureShowClose" :show-close="false">--> -<!-- <div>--> -<!-- <div v-if="isShowInput" style="margin-bottom: 6px">--> -<!-- <span>寰幆娆℃暟:</span>--> -<!-- <!– <el-input size="small" type="number" v-model="temperatureTestNum" style="width: 120px"></el-input> –>--> -<!-- <el-input-number v-model="temperatureTestNum" :min="2" :max="1000000" size="small" label=""></el-input-number>--> -<!-- </div>--> -<!-- <el-checkbox-group v-model="temperatureTest" @change="handleTemperatureTestChange" style="display: flex;flex-direction: column;">--> -<!-- <el-checkbox v-for="item in temperatureList" :label="item" :key="item" style="margin-bottom: 6px">{{item}}</el-checkbox>--> -<!-- </el-checkbox-group>--> -<!-- </div>--> -<!-- <span slot="footer" class="dialog-footer">--> -<!-- <el-button @click="cleanTemperatureTest">鍙栨秷</el-button>--> -<!-- <el-button type="primary" @click="spliceTemperatureTest">淇濆瓨</el-button>--> -<!-- </span>--> -<!-- </el-dialog>--> - </div> -</template> - -<script> -import ValueTable from '../../tool/value-table.vue' -import fiberOpticConfig from './material-fiberoptic-config.vue' -import equipConfig from './material-equip-config.vue' -import cableConfig from './material-cable-config.vue' -import Vue from 'vue' - -export default { - components: { - ValueTable, - fiberOpticConfig, - equipConfig, - cableConfig - }, - props: { - active: { - type: Number, - default: () => 0 - }, - currentId: { - type: Number, - default: () => 0 - } - }, - data() { - return { - editTable:[], - template: null, - templates: [], - addObj: { - entrustCode: null, - custom: null, - userId: null, - type: '0', - code: null, - appointed: null, - remark: null, - otcCode: null, - mating: 0, - sample: null, - factory: null, - laboratory: null, - sampleType: null, - sampleNum: 1, - unit: null, - model: null, - method: null, - phone: null, - processing: 1, - isLeave: 0, - orderType: null, - send: 1, - formType: '閫佹', - engineering: null, - engineeringEn: null, - production: null, - productionEn: null, - companyId: null, - prepareUser:null - }, - sample: { - sampleCode: null, - laboratory: null, - factory: null, - sampleType: null, - sample: null, - model: null, - modelNum: null, - sampleNum: 1, - isLeave: 0, - unit: null - }, - type: [], - selectUserDia: false, - componentData2: { - entity: { - orderBy: { - field: 'id', - order: 'asc' - } - }, - isIndex: true, - showSelect: true, - select: false, - do: [], - tagField: { - state: { - select: [{ - value: 1, - type: 'success', - label: '鍚敤' - }, { - value: 0, - type: 'danger', - label: '鍋滅敤' - }] - } - }, - selectField: {}, - }, - selectStandardTree: false, - search: null, - list: [], - selectTree: null, - expandedKeys: [], - sampleList: [], - sampleIds: [], - methodList: [], - addSampleDia: false, - count: 1, - productList: [], - productList0: [], - bsm1DiaList: [], - productIds: [], - productListSelected: [], - getProductLoad: false, - saveLoad: false, - templateDia: false, - templateLoading: false, - templateName: '', - issuedDialogVisible: false, - distributeData: { - appointed: '', - userId: '' - }, - personList: [], - upLoad: false, - units: [], - models: [], - methods: [], - methodLoad: false, - noDialogVisible: false, - tell: '', - noLoading: false, - orderType: [], - filters: [], - formType: [], - configShow: false, - currentMethod: null, - isAskOnlyRead: false, - sampleId: null, - // bsmRow: null, - // bsm1: false, - // bsm1Val: null, - // bsm1Dia: false, - // bsm1DiaAll: false, - equipConfigShow: false, - cableConfigShow: false, - // bsm2: false, - // bsm2Val: null, - // bsm2Dia: false, - // bsm2Val2: [], - // bsm2Val3: [], - // bsmRow3: null, - // bsm3Val: null, - // bsm3Dia: false, - total: 0, - RTS: '', - totalArr: [], - model: null, - standardMethodListId: null, - symbolList:[ - 'RTS','A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'], - inspectionItem:null, - inspectionItemSubclass:null, - methodS:null, - // circulateShow:false, - // circulateForm:{ - // entrustTime: '', - // entrustNum: '', - // entrustPoint: '' - // }, - // isBsm2Val2:false, - // opticalProject: [], // 娓╁害寰幆寮规鍏夌氦椤圭洰鍒楄〃 - // opticalProjectList: [], // 娓╁害寰幆寮规鍏夌氦椤圭洰閫変腑鐨勬暟缁� - // temperatureData: [], // 娓╁害寰幆寮规娓╁害鐐归泦鍚堝垪琛� - // temperatureDataList: [ - // {label: '<', value: '<'}, - // {label: '鈮�', value: '鈮�'}, - // {label: '=', value: '='}, - // {label: '鈮�', value: '鈮�'}, - // {label: '>', value: '>'}, - // ], - // temperatureShow: false, // 娓╁崌璇曢獙妫�楠岄」寮规 - // temperatureTest: [], - // temperatureList: [], - // temperatureEngList: [], - // temperatureTitle: '', - // temperatureTestNum: '', - // isShowInput: false, - temId: '' - } - }, - watch: { - sampleList() { - this.addObj.method = null - this.productList = [] - }, - productList: { - deep: true, - handler(val) { - if (val && val.length > 0) { - let arr = []; - val.forEach(item => { - if (item.sonLaboratory && !arr.find(a => a.value == item.sonLaboratory)) { - arr.push({ - text: item.sonLaboratory, - value: item.sonLaboratory - }) - } - }) - this.filters = arr - } - } - }, - sampleList: { - deep: true, - handler(val) { - this.getTotal() - } - }, - 'addObj.sample'(val) { - this.model = null - this.standardMethodListId = null - }, - 'addObj.sampleNum'(val) { - this.model = null - this.standardMethodListId = null - } - }, - mounted() { - this.selectEnumByCategoryForType() - this.getUserNow() - this.selectStandardTreeList() - this.selectInsOrderTemplate() - this.getAuthorizedPerson(); - this.selectEnumByCategoryForUnit() - this.selectStandardMethods() - this.selectEnumByCategoryForOrderType() - // this.selectEnumByCategoryForSonLaboratory() - this.selectEnumByCategoryForSampleForm() - if (this.active != 1) { - // 鏌ョ湅/瀹℃牳娴佺▼ - // 璇锋眰鎺ュ彛锛屽洖鏄炬暟鎹� - this.$axios.post(this.$api.insOrder.getInsOrder, { - orderId: this.currentId - }).then(res => { - this.addObj = { - ...res.data.insOrder - }; - this.addObj.type = String(this.addObj.type) - this.sampleList = this.HaveJson(res.data.sampleProduct); - this.getProNum() - this.addObj.sampleNum = this.sampleList.length - this.$nextTick(() => { - this.$refs.sampleTable.doLayout() - if (this.addObj.sampleNum > 0) { - this.$refs.sampleTable.setCurrentRow(this.sampleList[0], true) - this.rowClick(this.sampleList[0]) - } - }) - }) - } - }, - methods: { - spliceData () { - if (!this.circulateForm.entrustNum || !this.circulateForm.entrustTime || !this.circulateForm.entrustPoint || this.opticalProjectList.length === 0 || this.temperatureData.length === 0) { - this.$message.error('璇峰~鍐欏畬鏁存暟鎹�') - return - } - // 鎷兼帴瑕佹眰鍊糰sk - const opticalProjectList = JSON.parse(JSON.stringify(this.opticalProjectList)) - opticalProjectList.forEach(o => { - o.temperatureData.forEach(t => { - if (!t.temperaturePoint || !t.askSymbol || !t.askNum) { - throw this.$message.error('璇峰~鍐欏畬鏁存暟鎹�') - } - }) - if (!o.temperatureData.some(item => item.temperaturePoint == '20')) { - throw this.$message.error(`${o.value + '娉㈤暱娌℃湁閰嶇疆20鈩冩俯搴︾偣'}`) - } - }) - let entrustTime = this.circulateForm.entrustTime - let entrustNum = this.circulateForm.entrustNum - let opticalProjectList2 = JSON.parse(JSON.stringify(this.opticalProjectList)) - let askArr = [] - let opticalProjectArr = [] - opticalProjectList.forEach(o => { - opticalProjectArr.push(o.value) - o.temperatureData.unshift({temperaturePoint: 20}) - o.temperatureData.forEach(t => { - if (!t.askSymbol) { - const askObj = t.temperaturePoint + '鈩�(甯告俯)' + ',' + o.value + ',' + null - askArr.push(askObj) - } else { - const askObj = t.temperaturePoint + '鈩�' + ',' + o.value + ',' + t.askSymbol + t.askNum - askArr.push(askObj) - } - }) - }) - askArr.push(this.circulateForm.entrustNum) - const ask = askArr.join(';') - // 鎷兼帴瑕佹眰鎻忚堪tell - let askNum = [] - let temperaturePointList = [] - let temperaturePointList2 = [] - entrustTime = entrustTime + 'h' - entrustNum = entrustNum + '娆�' - opticalProjectList2.forEach(o => { - o.temperatureData.forEach(t => { - t.temperaturePoint = t.temperaturePoint + '鈩�' - temperaturePointList2.push(t.temperaturePoint) - temperaturePointList.push(t.temperaturePoint) - askNum.push(t.askSymbol + t.askNum + 'dB/Km') - }) - }) - temperaturePointList = Array.from(new Set(temperaturePointList)) - temperaturePointList2 = Array.from(new Set(temperaturePointList2)) - temperaturePointList2.unshift(20 + '鈩�(甯告俯)') - let additionArr = [] - askNum.forEach(a => { - additionArr.push(temperaturePointList.join(',') + a) - }) - additionArr = Array.from(new Set(additionArr)) - const tell = '娓╁害鑼冨洿:' + temperaturePointList2.join(',') + ';' + '淇濇俯鏃堕棿:' + entrustTime + ';' + '寰幆娆℃暟:' - + entrustNum + ';' + '鍏夌氦(' + opticalProjectArr.join(',') + ')' + '闄勫姞琛板噺缁濆鍊�:' + additionArr.join(';') - this.productList.forEach(item => { - if (item.inspectionItem === '娓╁害寰幆') { - item.ask = ask - item.tell = tell - } - }) - this.circulateShow = false - }, - spliceTemperatureTest () { - if (this.temperatureTest.length === 0) { - this.$message.error('璇烽�夋嫨') - return - } - let askStr = '' - let askArr1 = [] - let askArr2 = '' - let ask = '' - let index = '' - this.temperatureTest.map(val => { - index = this.temperatureEngList.findIndex(item => item.label === val) - if (index > -1) { - askStr = val + ',' + this.temperatureEngList[index].value - } - askArr1.push(askStr) - }) - - if (this.temperatureTitle === '娓╁崌璇曢獙瑕佹眰濉啓') { - askArr2 = askArr1.join(';') - ask = askArr2 + ';1' - } else { - if (!this.temperatureTestNum) { - this.$message.error('璇峰~鍐欏惊鐜鏁�') - return - } - askArr2 = askArr1.join(';') - ask = askArr2 + ';' + this.temperatureTestNum - } - this.productList.forEach(item => { - if (item.id === this.temId) { - item.ask = ask - item.tell = ask - } - }) - console.log('ask---', ask) - this.temperatureShow = false - }, - temperatureShowClose () { - if (this.temperatureTitle === '鐑惊鐜姹傚~鍐�' && !this.temperatureTestNum) { - this.$message.error('璇峰~鍐欏惊鐜鏁�') - return - } - if (this.temperatureTest.length === 0) { - this.$message.error('璇烽�夋嫨') - return - } - // this.spliceTemperatureTest() - }, - cleanTemperatureTest () { - this.temperatureTest = [] - this.temperatureTestNum = '' - this.temperatureShow = false - }, - cleanSpliceData () { - this.circulateForm.entrustNum = null - this.circulateForm.entrustTime = null - this.circulateForm.entrustPoint = null - this.opticalProjectList = [] - this.$refs.multipleTable.clearSelection() - this.temperatureData = [] - this.circulateShow = false - }, - beforeCirculateShowClose () { - if (!this.circulateForm.entrustNum || !this.circulateForm.entrustTime || !this.circulateForm.entrustPoint || this.opticalProjectList.length === 0 || this.temperatureData.length === 0) { - this.$message.error('璇峰~鍐欏畬鏁存暟鎹�') - return - } - // 鎷兼帴瑕佹眰鍊糰sk - const opticalProjectList = JSON.parse(JSON.stringify(this.opticalProjectList)) - opticalProjectList.forEach(o => { - o.temperatureData.forEach(t => { - if (!t.temperaturePoint || !t.askSymbol || !t.askNum) { - throw this.$message.error('璇峰~鍐欏畬鏁存暟鎹�') - } - }) - if (!o.temperatureData.some(item => item.temperaturePoint == '20')) { - throw this.$message.error(`${o.value + '娉㈤暱娌℃湁閰嶇疆20鈩冩俯搴︾偣'}`) - } - }) - // this.spliceData() - }, - - handleTemperatureTestChange (value) { - console.log('value---', value) - }, - handleSelectionChange(val) { - this.opticalProjectList = val; - }, - selectAllOptical (val) { - if (val.length > 0) { - if (val[val.length-1].temperatureData) { - this.temperatureData = this.HaveJson(val.temperatureData) - } else { - this.temperatureData = [] - } - } else { - this.temperatureData = [] - } - this.circulateForm.entrustPoint = this.temperatureData.length - }, - selectOpticalProject (val) { - if (val.temperatureData) { - this.temperatureData = this.HaveJson(val.temperatureData) - } else { - this.temperatureData = [] - } - this.circulateForm.entrustPoint = this.temperatureData.length - }, - rowClickOptical (val) { - const index = this.opticalProjectList.findIndex(item => item.value === val.value) - if (index > -1 && val.temperatureData) { - this.temperatureData = this.HaveJson(val.temperatureData) - } - this.circulateForm.entrustPoint = this.temperatureData.length - }, - changeTemperature () { - this.opticalProjectList.forEach(item => { - item.temperatureData = this.HaveJson(this.temperatureData) - }) - }, - addTemperatureData () { - const obj = {} - this.temperatureData.push(obj) - this.circulateForm.entrustPoint = this.temperatureData.length - }, - deleteTemperatureData () { - if (this.temperatureData.length > 0) { - this.temperatureData = this.temperatureData.slice(0,-1) - } - this.circulateForm.entrustPoint = this.temperatureData.length - }, - changeTemperatureData () { - const length = this.temperatureData.length - const entrustPoint = Number(this.circulateForm.entrustPoint) - if (entrustPoint > length) { - for (let i = 0; i < (entrustPoint - length); i++) { - const obj = {} - this.temperatureData.push(obj) - } - } else if (entrustPoint < length) { - const deleteNum = length - entrustPoint - this.temperatureData = this.temperatureData.slice(0,-deleteNum) - } - }, - searchFilterList () { - const vtw = { - inspectionItem: this.inspectionItem, // 妫�楠岄」 - inspectionItemSubclass: this.inspectionItemSubclass, // 妫�楠岄」瀛愰」 - methodS: this.methodS, // 璇曢獙鏂规硶 - } - const isHaveValue = Object.values(vtw).some(item => { - return item - }) - if (isHaveValue) { - for(let i in vtw) { - if (vtw[i]) { - this.productList = this.productList0.filter((item) => { - return item[i] && item[i].includes(vtw[i]) - }) - } - } - } else { - // 娌℃湁鏌ヨ鏉′欢鏃舵覆鏌撴墍鏈夋暟鎹� - this.productList = this.productList0 - } - }, - getAuthorizedPerson() { - this.$axios.get(this.$api.user.getUserMenu).then(res => { - let data = [] - res.data.forEach(a => { - data.push({ - label: a.name, - value: a.id - }) - }) - this.personList = data - }) - }, - selectEnumByCategoryForType() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "绱ф�ョ▼搴�" - }).then(res => { - this.type = res.data - }) - }, - selectUser() { - let selects = this.$refs.ValueTable2.multipleSelection - if (selects.length == 0) { - this.$message.error('鏈�夋嫨鏁版嵁') - return - } - this.addObj.code = selects.code - this.addObj.companyId = selects.id - this.selectUserDia = false - }, - containsValue(str) { - if(str){ - let symbolItem = '' - this.symbolList.some(value =>{ - if(str.includes(value)){ - symbolItem = value - return true - } - }) - return symbolItem - } - }, - handleAsk(ask,symbolItem, value) { - try{ - let code = [">", "<", "=", "锛�", "锛�", "鈮�", "鈮�", "卤"]; - if (ask.includes('&')) { - // 澶氫釜鏉′欢 - let arr0 = ask.split('&') - let arr1 = [] - arr0.forEach(m => { - let index = code.findIndex(b => m.includes(b)) - if (index > -1) { - let arr = m.split(code[index]).filter(b => !!b) - let num = eval(this.replaceAll(arr[0], symbolItem, value)) - m = code[index] + '' + num - arr1.push(m) - } - }) - return arr1.join('&') - } else { - // 鍗曚釜鏉′欢 - let index = code.findIndex(b => ask.includes(b)) - if (index > -1) { - let arr = ask.split(code[index]).filter(b => !!b) - let num = eval(this.replaceAll(arr[0], symbolItem, value)) - return code[index] + '' + num - } - } - }catch(e){} - }, - handleTell(tell,symbolItem, value){ - try{ - let num = this.replaceAll(tell, symbolItem, value) - return num - }catch(e){} - }, - replaceAll(str,find,value) { - if (str === undefined) { - return str - } - return str.replace(find, value); - }, - save() { - if (!this.addObj.companyId) { - this.$message.error('鏈�夋嫨瀹㈡埛鍗曚綅') - return - } - if (!this.addObj.type) { - this.$message.error('鏈�夋嫨绱ф�ョ▼搴�') - } else if (!this.addObj.formType) { - this.$message.error('璇疯緭鍏ヨ鍗曠被鍨�') - } else if (!this.addObj.orderType) { - this.$message.error('璇烽�夋嫨妫�楠岀被鍒�') - } else if (!this.addObj.production) { - this.$message.error('璇疯緭鍏ョ敓浜у崟浣�') - } else if (!this.addObj.productionEn) { - this.$message.error('璇疯緭鍏ョ敓浜у崟浣岴N') - } else if (this.sampleList.length < 1) { - this.$message.error('璇锋坊鍔犱竴涓牱鍝�') - } else if (!this.sampleList.every(m => m.sample)) { - this.$message.error('璇疯緭鍏ユ牱鍝佸悕绉�') - } else if (!this.sampleList.every(m => m.model)) { - this.$message.error('璇疯緭鍏ユ牱鍝佸瀷鍙�') - } else if (!this.sampleList.every(m => m.standardMethodListId)) { - this.$message.error('璇烽�夋嫨妫�楠屾爣鍑�') - } else { - // const select = this.selectTree.split(' - ') - // const productListSelected = this.productListSelected.some(item => item.inspectionItem === '娓╁害寰幆') - // let isHaveBushing = '' - // this.sampleList.forEach(item => { - // if (!item.bushing || item.bushing.length === 0) { - // isHaveBushing = false - // } - // }) - // console.log('isHaveBushing===', isHaveBushing) - // if (productListSelected && select[2] === '鍏夌紗' && isHaveBushing === false) { - // this.$message.error('鍏夌紗娓╁害寰幆椤圭洰蹇呴』杩涜鍏夌氦閰嶇疆') - // - // this.$refs.sampleTable.setCurrentRow(this.currentMethod, true) - // this.rowClick(this.currentMethod) - // this.sampleIds = [this.currentMethod.id] - // this.openConfig() - // return - // } - let sampleList = this.HaveJson(this.sampleList) - let projectNum = this.totalArr.filter(a => a.state == 1).length - if(projectNum==0){ - this.$confirm('妫�楠岄」鐩负绌猴紝鏄惁纭鎻愪氦?', "鎻愮ず", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }).then(() => { - this.saveMethod(sampleList) - }).catch(() => {}) - }else{ - let isRTS = this.totalArr.find(a => a.ask != null && this.symbolList.find(b=>a.ask.includes(b)) && a.state == 1) - if (isRTS&&this.PROJECT=='妫�娴嬩腑蹇�') { - this.editTable = this.handleData(sampleList,this.containsValue, 0) - this.editTable.forEach(item => { - item.value = item.modelNum - }) - this.bsm3Dia = true; - return - } - this.saveMethod(sampleList) - } - } - }, - save0(){ - if(this.editTable.every(m=>m.value)){ - let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1) - this.saveMethod(sampleList) - }else{ - this.$message.error('璇峰~鍐欒瘑鍒鍊�') - } - }, - handleData(sampleList,calBack,type){ - let editTable = [] - sampleList.forEach(item => { - let obj = { - sampleCode:item.sampleCode, - model:item.model, - symbolList:[], - sampleId:item.id, - modelNum:item.modelNum, - } - if (item.insProduct && item.insProduct.length > 0) { - item.insProduct.forEach(a => { - if (a.state == 1) { - if(type==0){ - let str = calBack(a.ask) - str&&obj.symbolList.push({ - symbolItem:str, - inspectionItem:a.inspectionItem, - }) - }else if(type==1){ - let arr = this.editTable.filter(b => b.sampleId == item.id) - for (var i=0;i<arr.length;i++){ - if(a.ask){ - if(a.ask.includes(arr[i].symbolItem)){ - let ask = calBack(a.ask, arr[i].symbolItem,arr[i].value) - if (ask) { - a.ask = ask - } - let tell = this.handleTell(a.tell, arr[i].symbolItem,arr[i].value) - if (tell) { - a.tell = tell - } - } - }else{ - this.$message.error('瑕佹眰鍊间负绌猴紝闇�瑕佸幓鏍囧噯搴撶淮鎶わ紒') - } - } - // arr.forEach(f => { - // if(a.ask){ - // if(a.ask.includes(f.symbolItem)){ - // let ask = calBack(a.ask, f.symbolItem,f.value) - // if (ask) { - // a.ask = ask - // } - // let tell = this.handleTell(a.tell, f.symbolItem,f.value) - // if (tell) { - // a.tell = tell - // } - // } - // }else{} - // }) - } - } - }) - } - // 鍏夌氦甯﹂」鐩� - if (item.bushing && item.bushing.length > 0) { - item.bushing.forEach(a => { - if (a.fiber && a.fiber.length > 0) { - a.fiber.forEach(b => { - if (b.productList && b.productList.length > 0) { - b.productList.forEach(c => { - if (c.state == 1) { - if(type==0){ - let str = calBack(c.ask) - str&&obj.symbolList.push({ - symbolItem:str, - inspectionItem:c.inspectionItem, - }) - }else if(type==1){ - let arr = this.editTable.filter(b => b.sampleId == item.id) - arr.forEach(f => { - if(c.ask.includes(f.symbolItem)){ - let ask = calBack(c.ask, f.symbolItem,f.value) - if (ask) { - c.ask = ask - } - let tell = this.handleTell(c.tell, f.symbolItem,f.value) - if (tell) { - c.tell = tell - } - } - }) - } - } - }) - } - }) - } - if (a.fibers && a.fibers.length > 0) { - a.fibers.forEach(b => { - if (b.productList && b.productList.length > 0) { - b.productList.forEach(c => { - if (c.state == 1) { - if(type==0){ - let str = calBack(c.ask) - str&&obj.symbolList.push({ - symbolItem:str, - inspectionItem:c.inspectionItem, - }) - }else if(type==1){ - // let ask = calBack(c.ask, c.rts) - // if (ask && c.state == 1) { - // c.ask = csk - // } - let arr = this.editTable.filter(b => b.sampleId == item.id) - arr.forEach(f => { - if(c.ask.includes(f.symbolItem)){ - let ask = calBack(c.ask, f.symbolItem,f.value) - if (ask) { - c.ask = ask - } - let tell = this.handleTell(c.tell, f.symbolItem,f.value) - if (tell) { - c.tell = tell - } - } - }) - } - } - }) - } - if (b.fiber && b.fiber.length > 0) { - b.fiber.forEach(c => { - if (c.productList && c.productList.length > 0) { - c.productList.forEach(d => { - if (d.state == 1) { - if(type==0){ - let str = calBack(d.ask) - str&&obj.symbolList.push({ - symbolItem:str, - inspectionItem:d.inspectionItem, - }) - }else if(type==1){ - // let ask = calBack(d.ask, d.rts) - // if (ask && d.state == 1) { - // d.ask = ask - // } - let arr = this.editTable.filter(b => b.sampleId == item.id) - arr.forEach(f => { - if(d.ask.includes(f.symbolItem)){ - let ask = calBack(d.ask, f.symbolItem,f.value) - if (ask) { - d.ask = ask - } - let tell = this.handleTell(d.tell, f.symbolItem,f.value) - if (tell) { - d.tell = tell - } - } - }) - } - } - }) - } - }) - } - }) - } - }) - } - if(type==0){ - editTable.push(obj) - } - }) - if(type==0){ - editTable.forEach(a => { - a.symbolList.forEach(b => { - let arr = a.symbolList.filter(c => c.symbolItem == b.symbolItem); - b.inspectionItemList = arr.map(c => c.inspectionItem).join(',') - }) - }) - editTable.forEach(a => { - let mySet = new Set(); - a.symbolList = a.symbolList.filter(b =>{ - let num0 = mySet.size; - mySet.add(b.symbolItem); - let num1 = mySet.size; - if(num0!=num1){ - return true; - }else{ - return false - } - }) - }) - let editTableNew = [] - editTable.forEach(a => { - a.symbolList.forEach(b => { - let obj = { - sampleCode:a.sampleCode, - model:a.model, - symbolItem:b.symbolItem, - sampleId:a.sampleId, - value:null, - inspectionItemList:b.inspectionItemList, - modelNum:a.modelNum, - } - editTableNew.push(obj) - }) - }) - return editTableNew - }else{ - return sampleList - } - }, - saveMethod(sampleList){ - this.saveLoad = true - this.$axios.post(this.$api.insOrder.addInsOrder, { - str: JSON.stringify({ - insOrder: this.addObj, - list: JSON.stringify(sampleList.map(a => { - a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? - '' : ( - '-' + a.modelNum)) - a.insProduct = a.insProduct.filter(b=>b.state === 1) - return a - })), - pairing: JSON.stringify(this.bsm2Val2) - }) - }).then(res => { - this.saveLoad = false - if (res.code == 201) return - this.$message.success('宸叉彁浜�') - this.bsm3Dia = false; - this.$parent.playOrder(0) - }).catch(e=>{ - this.saveLoad = false - }) - }, - upInsOrderOfState(state) { - if (state == 1) { - this.saveLoad = true - this.$axios.post(this.$api.insOrder.upInsOrderOfState, { - state, - id: this.currentId, - companyId:this.addObj.companyId, - laboratory:this.addObj.laboratory - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - this.saveLoad = false - if (res.code == 201) return - this.$message.success('鎻愪氦鎴愬姛') - // this.$parent.multipleSelection = [{id: this.currentId}] - // this.$parent.print() - // 濡傛灉绱ф�ョ▼搴︿负绱ф�ワ紝闇�瑕佺洿鎺ヤ笅鍙戜汉鍛� - // if (this.addObj.type == 2) { - // this.issuedDialogVisible = true; - // this.$axios.post(this.$api.insOrder.selectOrderManDay, { - // id: this.currentId - // }).then(ress => { - // this.distributeData.orderId = this.currentId - // this.distributeData.appointed = ress.data - // }) - // } else { - // this.$parent.playOrder(0) - // } - this.$axios.post(this.$api.insOrder.selectOrderManDay, { - id: this.currentId - }).then(ress => { - this.distributeData.orderId = this.currentId - this.distributeData.appointed = ress.data - }) - setTimeout(() => { - this.issuedDialogVisible = true; - }, 1000) - }) - } else { - // 涓嶉�氳繃 - this.noDialogVisible = true - } - }, - // 涓嬪彂 - submitForm2() { - if (this.distributeData.appointed == null || this.distributeData.appointed == '') { - this.$message.error('绾﹀畾鏃堕棿鏈~鍐�') - return - } - if (this.addObj.type == 2 && (this.distributeData.userId == null || this.distributeData.userId == '')) { - this.$message.error('鎸囨淳浜哄憳鏈~鍐�') - return - } - this.upLoad = true; - this.$axios.post(this.$api.insOrder.upInsOrder, { - orderId: this.distributeData.orderId, - appointed: this.distributeData.appointed, - userId: this.distributeData.userId - }).then(res => { - if (res.code === 201) { - this.upLoad = false - return - } - this.$message.success('鎻愪氦鎴愬姛') - this.upLoad = false - this.issuedDialogVisible = false - this.$parent.playOrder(0) - }).catch(e => { - this.$message.error('鎻愪氦澶辫触') - this.upLoad = false - }) - }, - getUserNow() { - this.$axios.get(this.$api.user.getUserNow).then(res => { - let selects = res.data - if (selects == null) return - this.addObj.userId = selects.id - this.addObj.custom = selects.name - this.addObj.code = selects.code - this.addObj.phone = selects.phone - this.addObj.companyId = selects.departId - this.addObj.production = '/' - this.addObj.productionEn = '/' - }) - }, - getProNum() { - this.sampleList.forEach((m, i) => { - Vue.set(this.sampleList[i], 'proNum', m.insProduct.filter(a => a.state == 1).length) - }) - this.$refs.sampleTable.doLayout() - }, - searchFilter() { - this.$refs.tree.filter(this.search) - }, - nodeOpen(data, node, el) { - $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder-opened') - }, - nodeClose(data, node, el) { - $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder') - }, - handleNodeClick(val, node, el) { - this.selectTree = '' - this.models = val.children - this.getNodeParent(node) - this.selectTree = this.selectTree.replace(' - ', '') - let data = this.selectTree.split(' - ') - let data2 = '' - for (let index = data.length - 1; index >= 0; index--) { - data2 += " - " + data[index] - } - this.selectTree = data2.replace(' - ', '') - }, - getNodeParent(val) { - if (val.parent != null) { - if (val.data.children === null) { - this.selectTree += ' - ' + val.label + ' - ' + '' - } else { - this.selectTree += ' - ' + val.label - } - this.getNodeParent(val.parent) - } - }, - selectStandardTreeList() { - this.$axios.get(this.$api.standardTree.selectStandardTreeList2).then(res => { - this.list = res.data - this.list.forEach(a => { - this.expandedKeys.push(a.label) - }) - }) - }, - filterNode(value, data) { - if (!value) return true; - return data.label.indexOf(value) !== -1; - }, - activeStandardTree() { - let trees = this.selectTree.split(" - ") - if (trees.length < 3) { - this.$message.error('鏈�夋嫨瀵硅薄') - return - } - this.addObj.factory = trees[0] - this.addObj.laboratory = trees[1] - this.addObj.sampleType = trees[2] - if (trees[3] === undefined || trees[3] === '') { - this.addObj.sample = trees[2] - } else { - this.addObj.sample = trees[3] - } - this.addObj.model = (trees[4] == undefined ? null : trees[4]) - this.selectStandardTree = false - this.sampleList = [] - for (var i = 0; i < this.addObj.sampleNum; i++) { - this.sample.joinName = null - this.sample.joinModel = null - this.sample.joinNum = 1 - this.sample.sample = this.addObj.sample - this.sample.model = this.addObj.model - this.sample.unit = this.addObj.unit - this.sample.standardMethodListId = null - this.sample.insProduct = [] - this.sample.id = this.count - this.sample.childSampleList = [] - this.sample.insulating = null - this.sample.sheath = null - this.sampleList.push(this.HaveJson(this.sample)) - this.count++ - } - this.$refs.sampleTable.doLayout() - // this.selectsStandardMethodByFLSSM() - }, - selectsStandardMethodByFLSSM() { - this.methodLoad = true - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: this.selectTree - }).then(res => { - this.methodLoad = false - try { - if (res.data.standardMethodList.length == 0 && this.selectTree.split('-').length == 5) { - let arr = this.selectTree.split('-') - let arr0 = arr.slice(0, arr.length - 1) - let selectTree = arr0.join('-').substring(0, arr0.join('-').length - 1) - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: selectTree - }).then(ress => { - this.methods = ress.data.standardMethodList - }) - } else { - this.methods = res.data.standardMethodList - } - } catch (e) {} - }) - }, - addStandardTree() { - if (this.selectTree == null) return - this.sampleList = [] - this.productList = [] - for (var i = 0; i < this.addObj.sampleNum; i++) { - this.sample.joinName = null - this.sample.joinModel = null - this.sample.joinNum = 1 - this.sample.sample = this.addObj.sample - this.sample.model = this.addObj.model - this.sample.unit = this.addObj.unit - this.sample.standardMethodListId = null - this.sample.insProduct = [] - this.sample.id = this.count - this.sample.childSampleList = [] - this.sample.insulating = null - this.sample.sheath = null - this.sampleList.push(this.HaveJson(this.sample)) - this.count++ - } - this.computationalPairing(this.sampleList.length) - this.bsm2Val2 = this.HaveJson(this.bsm2Val3) - }, - selectSample(val) { - this.sampleIds = [] - val.forEach(a => { - this.sampleIds.push(a.id) - }) - }, - delSample() { - this.sampleIds.forEach(a => { - for (var i = 0; i < this.sampleList.length; i++) { - if (this.sampleList[i].id == a) { - this.sampleList.splice(i, 1) - i -= 1 - break - } - } - }) - this.$refs.sampleTable.doLayout() - }, - selectProduct(val) { - this.productListSelected = val - this.productIds = [] - val.forEach(a => { - this.productIds.push(a.id) - }) - }, - rowClick(row, column, event) { - this.currentMethod = row - let obj = this.methods.find(a => a.id == this.currentMethod.standardMethodListId) - if (obj && obj.code == '濮旀墭瑕佹眰') { - this.isAskOnlyRead = true - } else { - this.isAskOnlyRead = false - } - this.sampleId = row.id - if (this.active !== 1) { - this.sampleIds = [] - this.sampleIds.push(row.id) - } - this.productList = row.insProduct - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }, - toggleSelection(row) { - this.$refs.productTable.toggleRowSelection(row, true); - }, - upProductSelect(selection, row) { - // this.bsm1DiaList = [] - // row.state = row.state == 1 ? 0 : 1 - // if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 1) { - // if (row.section.indexOf('[') > -1) { - // row.bsmRow = this.HaveJson(row) - // } - // row.bsm1 = true - // this.bsm1DiaList.push(row) - // this.bsm1DiaAll = true - // } else if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 0) { - // row.bsm1 = false - // } - // if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length > 1 && row.state === 1&&!this.isBsm2Val2) { - // this.bsm2 = true - // this.bsm1Dia = true - // if (this.bsm2Val2.length === 0) { - // this.bsm2Val = (this.sampleList.length - 1) * this.sampleList.length / 2 - // this.computationalPairing(this.sampleList.length) - // this.bsm2Val2 = this.HaveJson(this.bsm2Val3) - // } - // } else if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && row.state === 1 && this.sampleList.length > 1) { - // this.bsm2 = false - // } else if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length < 2) { - // this.$message.error('鏍峰搧鏁伴噺涓嶈冻澶熻繘琛岄厤瀵规搷浣�') - // row.state = row.state == 1 ? 0 : 1 - // this.$refs.productTable.toggleRowSelection(row, false) - // return - // } - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - if (m.id == row.id) { - m.state = row.state; - } - return m; - }) - } - return item - }) - // const select = this.selectTree.split(' - ') - // if (row.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && row.state === 1) { - // this.circulateShow = true; - // return - // } else if (row.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && row.state === 0) { - // this.circulateShow = false; - // } - // if ((row.inspectionItem === '娓╁崌璇曢獙' || row.inspectionItem === '鐑惊鐜�') && row.state === 1) { - // console.log('row---', row) - // this.temperatureTitle = `${row.inspectionItem}瑕佹眰濉啓` - // this.isShowInput = row.inspectionItem === '鐑惊鐜�' - // this.temId = row.id - // this.temperatureShow = true; - // return - // } else if ((row.inspectionItem === '娓╁崌璇曢獙' || row.inspectionItem === '鐑惊鐜�') && row.state === 0) { - // this.temperatureShow = false; - // } - this.getProNum() - }, - searchProject () { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鍏夌氦椤圭洰" - }).then(res => { - this.opticalProject = res.data - }) - }, - permute(nums) { - const result = []; - - function backtrack(temp, nums) { - if (temp.length === 2) { - result.push([...temp]); - return; - } - for (let i = 0; i < nums.length; i++) { - if (temp.includes(nums[i])) continue; - // 閬垮厤閲嶅鏁板瓧 - if (temp.length > 0 && nums[i] < temp[temp.length - 1]) continue; // 瑙勫畾椤哄簭锛岄伩鍏嶉噸澶嶇粍鍚� - temp.push(nums[i]); - backtrack(temp, nums); - temp.pop(); - } - } - backtrack([], nums); - return result; - }, - computationalPairing(n) { - const nums = []; - for (let i = 1; i <= n; i++) { - nums.push(i); - } - this.bsm2Val3 = this.HaveJson(this.permute(nums)) - }, - tableRowClassName({ - row, - rowIndex - }) { - if (row.state === 0) { - return 'warning-row'; - } - return ''; - }, - selectInsOrderTemplate() { - this.$axios.get(this.$api.insOrder.selectInsOrderTemplate).then(res => { - if (res.code == 201) return - this.templates = res.data - }) - }, - // 鍒犻櫎妯℃澘--璋冪敤鎺ュ彛 - handleDelete(row) { - this.$confirm('鏄惁鍒犻櫎褰撳墠鏁版嵁?', "璀﹀憡", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning" - }).then(() => { - this.$axios.post(this.$api.insOrder.delInsOrderTemplate, { - id: row.id - }).then(res => { - if (res.code === 201) { - return - } - this.$message.success('鍒犻櫎鎴愬姛') - this.selectInsOrderTemplate() - }).catch(e => { - this.$message.error('鍒犻櫎澶辫触') - }) - }).catch(() => {}) - }, - // 淇濆瓨妯℃澘 - addTemplateDia() { - if (this.templateName) { - this.templateLoading = true; - this.$axios.post(this.$api.insOrder.addInsOrderTemplate, { - name: this.templateName, - thing: JSON.stringify({ - addObj: this.addObj, - sampleList: this.sampleList - }) - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - if (res.code == 201) return - this.templateLoading = false; - this.templateDia = false; - this.$message.success('淇濆瓨鎴愬姛') - this.selectInsOrderTemplate() - this.templateName = '' - }) - } else { - this.$message.error('璇峰~鍐欐ā鏉垮悕绉�') - } - }, - // 鏌ヨ妯℃澘 - selectInsOrderTemplateById(e) { - this.$axios.post(this.$api.insOrder.selectInsOrderTemplateById + '?id=' + e).then(res => { - if (res.code == 201) return - let obj = JSON.parse(res.data) - this.addObj = obj.addObj; - this.sampleList = obj.sampleList; - }) - }, - delSampleAndProduct() { - this.sampleList.splice(scope.$index, 1) - this.productList = [] - }, - selectEnumByCategoryForUnit() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鍗曚綅" - }).then(res => { - this.units = res.data - }) - }, - selectEnumByCategoryForOrderType() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "妫�楠岀被鍒�" - }).then(res => { - this.orderType = res.data - if (res.data.length > 0) { - this.addObj.orderType = res.data[0].value - } - }) - }, - selectEnumByCategoryForSampleForm() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "璁㈠崟绫诲瀷" - }).then(res => { - this.formType = res.data - if (this.formType.length > 0) { - this.addObj.formType = this.formType[0].value - } - }) - }, - methodChange(val, row) { - if (val === null || val === '') return - this.currentMethod = row - let obj = this.methods.find(a => a.id == this.currentMethod.standardMethodListId) - if (obj && obj.code == '濮旀墭瑕佹眰') { - this.isAskOnlyRead = true - } else { - this.isAskOnlyRead = false - } - this.getProductLoad = true - this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: row.model + '-' + row.modelNum, - standardMethodListId: val, - factory: this.selectTree, - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - res.data.forEach(a => { - a.state = 0 - }) - row.insProduct = this.HaveJson(res.data) - this.getProductLoad = false - this.productList = row.insProduct - this.productList0 = JSON.parse(JSON.stringify(this.productList)) - this.$refs.sampleTable.setCurrentRow(row) - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }) - this.searchProject() - this.searchTemList() - }, - searchTemList () { - this.temperatureList = [] - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鐢靛姏娓╁害寰幆妫�楠�" - }).then(res => { - if (res.data.length > 0) { - this.temperatureEngList = res.data - res.data.forEach(item => { - this.temperatureList.push(item.label) - }) - } - }) - }, - changeModel() { - this.sampleList.forEach(a => { - let obj = this.sampleIds.find(b => b == a.id) - if (obj) { - a.model = this.model - } - }) - }, - changeStandardMethodListId() { - this.sampleList.forEach(a => { - let obj = this.sampleIds.find(b => b == a.id) - if (obj) { - a.standardMethodListId = this.standardMethodListId - this.methodChange(this.standardMethodListId, a) - } - }) - }, - methodFocus() { - this.selectsStandardMethodByFLSSM() - }, - handleChangeModel(e) { - this.productList = [] - let num = this.selectTree.split('-').length; - if (num != 5) { - this.selectTree = this.selectTree + ' - ' + e - } else { - let arr = this.selectTree.split('-') - let arr0 = arr.slice(0, arr.length - 1) - this.selectTree = arr0.join('-') + '- ' + e - } - }, - // 瑕佹眰鍊煎彉鍖栨椂 - requestChange(e, row) { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - if (m.id == row.id) { - m.ask = e; - } - return m; - }) - } - return item - }) - }, - selectStandardMethods() { - this.$axios.get(this.$api.standardTree.selectStandardMethodEnum).then(res => { - this.methods = res.data - }) - }, - selectable() { - if (this.active > 1) { - return false - } else { - return true - } - }, - handleAll(e) { - console.log('e---', e) - if (e.length > 0) { - this.productList.map(m => { - if(e.find(a=>a.id == m.id)){ - m.state = 1 - } - return m - }) - } else { - this.productList.map(m => { - m.state = 0 - return m - }) - } - // this.bsmRow3 = []; - // this.bsm1DiaList = [] - // this.productList.forEach(p => { - // if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 1) { - // if (p.section.indexOf('[') > -1) { - // p.bsmRow = this.HaveJson(p) - // } - // p.bsm1 = true - // this.bsm1DiaList.push(p) - // this.bsm1DiaAll = true - // } else if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 0) { - // p.bsm1 = false - // } - // if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length > 1 && p.state === 1&&!this.isBsm2Val2) { - // this.bsm2 = true - // this.bsm1Dia = true - // if (this.bsm2Val2.length === 0) { - // this.bsm2Val = (this.sampleList.length - 1) * this.sampleList.length / 2 - // this.computationalPairing(this.sampleList.length) - // this.bsm2Val2 = this.HaveJson(this.bsm2Val3) - // } - // } else if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && p.state === 1 && this.sampleList.length > 1) { - // this.bsm2 = false - // } else if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length < 2) { - // this.$message.error('鏍峰搧鏁伴噺涓嶈冻澶熻繘琛岄厤瀵规搷浣�') - // this.$refs.productTable.clearSelection() - // return - // } - // const select = this.selectTree.split(' - ') - // if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 1) { - // this.circulateShow = true; - // return - // } else if (p.inspectionItem === '娓╁害寰幆' && select[2] === '鍏夌紗' && p.state === 0) { - // this.circulateShow = false; - // } - // if ((p.inspectionItem === '娓╁崌璇曢獙' || p.inspectionItem === '鐑惊鐜�') && p.state === 1) { - // console.log('p---', p) - // this.temperatureTitle = `${p.inspectionItem}瑕佹眰濉啓` - // this.isShowInput = p.inspectionItem === '鐑惊鐜�' - // this.temId = p.id - // this.temperatureShow = true; - // return - // } else if ((p.inspectionItem === '娓╁崌璇曢獙' || p.inspectionItem === '鐑惊鐜�') && p.state === 0) { - // this.temperatureShow = false; - // } - // }) - if (e.length > 0) { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - m.state = 1 - return m; - }) - } - return item - }) - } else { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - m.state = 0 - return m; - }) - } - return item - }) - } - this.getProNum() - this.$nextTick(() => { - this.$refs.productTable.doLayout() - }) - }, - submitTell() { - if (!this.tell) { - this.$message.error('璇疯緭鍏ヤ笉閫氳繃鍘熷洜') - return - } - this.noLoading = true; - this.$axios.post(this.$api.insOrder.upInsOrderOfState, { - state: 2, - id: this.currentId, - tell: this.tell - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - this.noLoading = false; - this.tell = ''; - if (res.code == 201) return - this.$message.success('鎻愪氦鎴愬姛') - this.issuedDialogVisible = false; - this.$parent.playOrder(0) - }) - }, - selectEnumByCategoryForSonLaboratory() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "瀛愬疄楠屽" - }).then(res => { - this.factory = [] - res.data.forEach(a => { - this.filters.push({ - text: a.label, - value: a.value - }) - }) - }) - }, - filterHandler(value, row, column) { - const property = column['property']; - return row[property] === value; - }, - openConfig() { - if (this.active === 1) { - if (this.sampleIds.length === 0) { - this.$message.error("鏈�夋嫨鏍峰搧") - return - } - this.configShow = true - } else { - if (this.sampleId === null) { - this.$message.error('鏈�変腑鏍峰搧') - return - } - this.$axios.post(this.$api.insBushing.selectBushingBySampleId, { - sampleId: this.sampleId - }).then(res => { - if (res.data.length === 0) { - this.$message.error('璇ユ牱鍝佹病鏈夐厤缃厜绾�') - return - } - for (var i in this.sampleList) { - if (this.sampleList[i].id = this.sampleId) { - this.sampleList[i].bushing = res.data - break - } - } - this.configShow = true - }) - } - }, - openEquipConfig() { - if (this.active === 1) { - if (this.sampleIds.length === 0) { - this.$message.error("鏈�夋嫨鏍峰搧") - return - } - this.equipConfigShow = true - } else { - if (this.sampleId === null) { - this.$message.error('鏈�変腑鏍峰搧') - return - } - } - }, - openCableConfig() { - if (this.active === 1) { - if (this.sampleIds.length === 0) { - this.$message.error("鏈�夋嫨鏍峰搧") - return - } - this.cableConfigShow = true - } else { - if (this.sampleId === null) { - this.$message.error('鏈�変腑鏍峰搧') - return - } - } - }, - upBsm1(val) { - let sections = JSON.parse(this.bsmRow.section); - let asks = JSON.parse(this.bsmRow.ask); - let tells = JSON.parse(this.bsmRow.tell); - let manHours = JSON.parse(this.bsmRow.manHour); - let prices = JSON.parse(this.bsmRow.price); - for (var a in sections) { - if (val === sections[a]) { - this.productList.forEach(p => { - if (p.id === this.bsmRow.id) { - p.section = sections[a] - p.ask = asks[a] - p.tell = tells[a] - p.manHour = manHours[a] - p.price = prices[a] - } - }) - break - } - } - }, - upBsmAll (item) { - let sections = JSON.parse(item.bsmRow.section); - let asks = JSON.parse(item.bsmRow.ask); - let tells = JSON.parse(item.bsmRow.tell); - let manHours = JSON.parse(item.bsmRow.manHour); - let prices = JSON.parse(item.bsmRow.price); - for (var a in sections) { - if (item.bsm1Val === sections[a]) { - this.productList.forEach(p => { - if (p.id === item.bsmRow.id) { - p.section = sections[a] - p.ask = asks[a] - p.tell = tells[a] - p.manHour = manHours[a] - p.price = prices[a] - } - }) - break - } - } - }, - beforeClose(done) { - if (this.bsm1DiaList.length > 0) { - this.bsm1DiaList.forEach(item => { - if (!item.bsm1Val) { - throw this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') - } - }) - } - if (this.bsm2) { - if (this.bsm2Val2.length === 0) { - this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') - return - } - let set = new Set() - for (let i = 0; i < this.bsm2Val2.length; i++) { - let num0 = set.size - set.add(JSON.stringify(this.bsm2Val2[i])) - let num1 = set.size - if (num1 == num0) { - this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') - return - } - set.add(JSON.stringify(this.bsm2Val2[i].reverse())) - let num2 = set.size - if (num1 == num2) { - this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') - return - } - } - this.isBsm2Val2 = true; - } - done() - }, - beforeClose0(done) { - if (!this.bsm3Val) { - this.$message.error('RST蹇呴』濉啓') - return - } else { - if (Array.isArray(this.bsmRow3)) { - this.bsmRow3.forEach(item => { - item.rts = this.bsm3Val - }) - } else { - this.bsmRow3.rts = this.bsm3Val - } - } - done() - }, - getTotal() { - this.totalArr = [] - this.total = 0; - console.log(this.sampleList) - this.sampleList.forEach(item => { - if (item.insProduct && item.insProduct.length > 0) { - item.insProduct.forEach(a => { - this.totalArr.push(a) - }) - } - if (item.bushing && item.bushing.length > 0) { - item.bushing.forEach(a => { - if (a.fiber && a.fiber.length > 0) { - a.fiber.forEach(b => { - if (b.productList && b.productList.length > 0) { - b.productList.forEach(c => { - this.totalArr.push(c) - }) - } - }) - } - if (a.fibers && a.fibers.length > 0) { - a.fibers.forEach(b => { - if (b.productList && b.productList.length > 0) { - b.productList.forEach(c => { - this.totalArr.push(c) - }) - } - if (b.fiber && b.fiber.length > 0) { - b.fiber.forEach(c => { - if (c.productList && c.productList.length > 0) { - c.productList.forEach(d => { - this.totalArr.push(d) - }) - } - }) - } - }) - } - }) - } - }) - let mySet = new Set(); - let arr0 = this.totalArr.filter(item => { - if (item.state == 1) { - let num1 = mySet.size - if (item.manHourGroup === '' || !item.manHourGroup) { - return true - } else { - console.log(item) - mySet.add(item.manHourGroup) - let num2 = mySet.size - if (num2 > num1) { - return true - } else { - return false - } - } - } - }) - arr0.forEach(item => { - this.total += Number(item.price) - }) - }, - bsm2Up(val) { - let list = [] - for (let a = 1; a < this.bsm2Val3.length + 1; a++) { - list.push(a) - } - let set = new Set() - let size1 = set.length - while (set.size < val) { - set.add(Math.ceil(Math.random() * this.bsm2Val3.length)) - } - this.bsm2Val2 = [] - for (let a of set) { - this.bsm2Val2.push(this.HaveJson(this.bsm2Val3[a - 1])) - } - } - } -} -</script> - -<style scoped> -.ins_order_add { - width: 100%; - height: 100%; - overflow-y: auto; - overflow-x: hidden; -} - -.ins_order_add::-webkit-scrollbar { - width: 0; -} - -.title { - height: 60px; - line-height: 60px; -} - -.search { - width: calc(100% - 40px); - background-color: #fff; - padding: 5px 40px 5px 0; -} - -.search_thing { - display: flex; - align-items: center; - height: 50px; -} - -.search_label { - width: 120px; - font-size: 14px; - text-align: right; -} - -.search_input { - width: calc(100% - 120px); -} - -.node_i { - color: orange; - font-size: 18px; -} - -.el-select-dropdown__item { - display: flex; - align-items: center; - justify-content: space-between; -} - -.pairing { - text-align: center; - line-height: 36px; - margin: 3px 0; - border: 1px solid rgba(0, 0, 0, 0.1); - border-radius: 4px; -} - -.askRts { - width: 100px; - font-size: 12px; - border-top: 0; - border-left: 0; - border-right: 0; - border-bottom: 2px solid rgba(0, 0, 0, 0.3); - text-align: center; - background-color: rgba(0, 0, 0, 0.1); - outline: none; - border-radius: 2px; - line-height: 24px; - margin-top: 5px; -} -.circulateTable { - display: flex; - flex-direction: row; - justify-content: space-between; - .opticalProject { - width: 38%; - } - .temperatureList { - width: 60%; - .temperatureListTitle { - display: flex; - flex-direction: row; - justify-content: space-between; - line-height: 30px; - } - } -} -</style> -<style> -.ins_order_add .el-input-group__append, -.el-input-group__prepend { - padding: 0 10px; -} - -.ins_order_add .el-tree-node__content { - height: 32px; - font-size: 14px; - border-radius: 2px; -} - -.ins_order_add .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content { - color: #3A7BFA; -} - -.ins_order_add .has-gutter .el-table__cell .cell { - line-height: 30px; - background-color: #fafafa; -} - -.ins_order_add .has-gutter .el-table__cell { - background-color: #fafafa !important; -} - -.ins_order_add .el-table__row .cell { - font-size: 12px; -} - -.ins_order_add .el-table .warning-row .cell { - color: #bababa; -} - -.ins_order_add .el-select .is-disabled { - background: transparent !important; -} - -.ins_order_add .el-select .is-disabled .el-input__inner { - background: transparent !important; -} -</style> diff --git a/src/components/do/b1-material-ins-order/material-cable-config.vue b/src/components/do/b1-material-ins-order/material-cable-config.vue deleted file mode 100644 index 575fc95..0000000 --- a/src/components/do/b1-material-ins-order/material-cable-config.vue +++ /dev/null @@ -1,311 +0,0 @@ -<template> - <div class="ins_order_config"> - <div> - <el-row class="title"> - <el-col :span="6" style="padding-left: 20px;text-align: left;">鐢电紗閰嶇疆</el-col> - <el-col :span="18" style="text-align: right;"> - <el-button size="medium" @click="outConfig"> - <span style="color: #3A7BFA;">杩� 鍥�</span> - </el-button> - <el-button size="medium" type="primary" @click="save">淇� 瀛�</el-button> - </el-col> - </el-row> - </div> - <div class="search"> - <el-radio-group v-model="currentTab" size="small" style="margin-left: 20px;" @input="changeTab"> - <el-radio-button label="缁濈紭">缁� 缂�</el-radio-button> - <el-radio-button label="鎶ゅ">鎶� 濂�</el-radio-button> - </el-radio-group> - <div class="search_thing" v-if="currentTab=='缁濈紭'"> - <div class="search_label">鑺暟锛�</div> - <el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="insulating.num"></el-input> - </div> - <div class="search_thing" v-if="currentTab=='缁濈紭'"> - <div class="search_label">妫�楠屾爣鍑嗭細</div> - <el-select v-model="insulating.standardMethodListId" placeholder="璇烽�夋嫨妫�楠屾爣鍑�" size="small" - @change="(value)=>methodChange(value)"> - <el-option v-for="item in standards" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </div> - <div class="search_thing" v-if="currentTab=='鎶ゅ'"> - <div class="search_label">妫�楠屾爣鍑嗭細</div> - <el-select v-model="sheath.standardMethodListId" placeholder="璇烽�夋嫨妫�楠屾爣鍑�" size="small" - @change="(value)=>methodChange(value)"> - <el-option v-for="item in standards" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </div> - </div> - <div class="table"> - <el-table class="el-table" ref="productTable" :data="productList" height="100%" tooltip-effect="dark" border - @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" - :row-class-name="tableRowClassName" @select-all="handleAll"> - <el-table-column type="selection" width="65" :selectable="selectable"></el-table-column> - <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip></el-table-column> - <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140" - show-overflow-tooltip></el-table-column> - <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip></el-table-column> - <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip> - </el-table-column> - <el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column> - <el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column> - <el-table-column prop="section" label="鍖洪棿" min-width="120" show-overflow-tooltip></el-table-column> - <el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px"> - <template slot-scope="scope"> - <el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea" - :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row)" - v-if="active==1&&isAskOnlyRead"></el-input> - <span v-else>{{ scope.row.ask }}</span> - </template> - </el-table-column> - </el-table> - </div> - </div> -</template> - -<script> -import { Tree } from 'element-ui' -export default { - props: { - active: { - type: Number, - default: () => 0 - }, - }, - data(vm) { - return { - standardList:[], - vaule0:'', - currentTab:'缁濈紭', - upIndex:0, - productList: [], - productIds: [], - sample: [], - tree: '', - standards: [], - insulating: { - standardMethodListId: null, - insProduct: [], - num: 1 - }, - sheath: { - standardMethodListId: null, - insProduct: [] - }, - isAskOnlyRead: false - } - }, - mounted() { - this.$parent.sampleIds.forEach(a => { - for (var i = 0; i < this.$parent.sampleList.length; i++) { - if (this.$parent.sampleList[i].id == a) { - this.sample.push(this.$parent.sampleList[i]) - if(this.$parent.sampleList[i].insulating !== undefined && this.$parent.sampleList[i].insulating !== null){ - this.insulating = this.$parent.sampleList[i].insulating - } - if(this.$parent.sampleList[i].sheath !== undefined && this.$parent.sampleList[i].sheath !== null){ - this.sheath = this.$parent.sampleList[i].sheath - } - break - } - } - }) - let obj = this.$parent.addObj - this.tree = obj.factory + ' - ' + obj.laboratory + ' - ' + obj.sampleType + ' - ' + obj.sample - this.selectsStandardMethodByFLSSM2() - this.productList = this.insulating.insProduct - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }, - methods: { - outConfig() { - this.$parent.cableConfigShow = false - }, - selectProduct(val) { - this.productIds = [] - val.forEach(a => { - this.productIds.push(a.id) - }) - }, - upProductSelect(selection, row) { - row.state = row.state == 1 ? 0 : 1 - }, - handleAll(e) { - if (e.length > 0) { - this.productList.map(m => { - m.state = 1 - return m - }) - } else { - this.productList.map(m => { - m.state = 0 - return m - }) - } - this.$nextTick(() => { - this.$refs.productTable.doLayout() - }) - }, - tableRowClassName({ - row, - rowIndex - }) { - if (row.state === 0) { - return 'warning-row'; - } - return ''; - }, - selectable() { - if (this.active > 1) { - return false - } else { - return true - } - }, - selectsStandardMethodByFLSSM2() { - this.standards = [] - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: this.tree - }).then(res => { - this.standards = res.data.standardMethodList - }) - }, - methodChange(val) { - if (val === null || val === '') return - let standard = this.standards.find(a => a.id === val) - if(standard!=null && standard.code==='濮旀墭瑕佹眰'){ - this.isAskOnlyRead = true - }else{ - this.isAskOnlyRead = false - } - this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: this.$parent.addObj.model, - standardMethodListId: val, - factory: this.tree + ' - ' - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - res.data.forEach(a => { - a.state = 0 - }) - if(this.currentTab==='缁濈紭'){ - this.insulating.insProduct = res.data - }else if(this.currentTab==='鎶ゅ'){ - this.sheath.insProduct = res.data - } - this.productList = res.data - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }) - }, - toggleSelection(row) { - this.$refs.productTable.toggleRowSelection(row, true); - }, - save(){ - if(this.insulating.insProduct.length === 0 && this.sheath.insProduct.length === 0){ - this.$message.error('缂哄皯閰嶇疆鏃犳硶淇濆瓨') - return - } - if(this.insulating.insProduct.length !== 0){ - if(this.insulating.num === null || this.insulating.num === '' || this.insulating.num <= 0){ - this.$message.error('缂哄皯鑺暟鏃犳硶淇濆瓨') - return - } - } - this.sample.forEach(a=>{ - a.insulating = this.insulating - a.sheath = this.sheath - }) - this.$message.success('宸蹭繚瀛�') - }, - changeTab(val){ - if(val==='缁濈紭'){ - this.productList = this.insulating.insProduct - }else if(val==='鎶ゅ'){ - this.productList = this.sheath.insProduct - } - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - } - } -} -</script> - -<style scoped> -.ins_order_config { - width: 100%; - height: 100%; - overflow-y: auto; - overflow-x: hidden; - } - - .ins_order_config::-webkit-scrollbar { - width: 0; - } - - .title { - height: 60px; - line-height: 60px; - } - - .search { - background-color: #fff; - height: 80px; - display: flex; - align-items: center; - } - - .search_thing { - width: 300px; - display: flex; - align-items: center; - } - - .search_label { - width: 100px; - font-size: 14px; - text-align: right; - } - - .search_input { - width: calc(100% - 70px); - } - .table { - margin-top: 10px; - background-color: #fff; - width: calc(100% - 40px); - height: calc(100% - 60px - 80px - 26px - 24px); - padding: 20px; - } -</style> -<style> - .ins_order_config .has-gutter .el-table__cell .cell { - line-height: 30px; - background-color: #fafafa; - } - - .ins_order_config .has-gutter .el-table__cell { - background-color: #fafafa !important; - } - - .ins_order_config .el-table__row .cell { - font-size: 12px; - } - - .ins_order_config .el-table .warning-row .cell { - color: #bababa; - } -</style> diff --git a/src/components/do/b1-material-ins-order/material-equip-config.vue b/src/components/do/b1-material-ins-order/material-equip-config.vue deleted file mode 100644 index ddf3fbd..0000000 --- a/src/components/do/b1-material-ins-order/material-equip-config.vue +++ /dev/null @@ -1,591 +0,0 @@ -<template> - <div class="ins_order_config"> - <div> - <el-row class="title"> - <el-col :span="6" style="padding-left: 20px;text-align: left;">瀛愭牱鍝侀厤缃�</el-col> - <el-col :span="18" style="text-align: right;"> - <el-button size="medium" type="primary" @click="addChild" v-if="active==1">娣诲姞瀛愭牱鍝�</el-button> - <el-button size="medium" type="primary" @click="save" :loading="saveLoad" v-if="active==1">淇� 瀛�</el-button> - <el-button size="medium" @click="outConfig"> - <span style="color: #3A7BFA;">杩� 鍥�</span> - </el-button> - </el-col> - </el-row> - </div> - <div class="center"> - <el-table class="el-table sampleTable" ref="sampleTable" :data="sampleList" height="50%" tooltip-effect="dark" - border highlight-current-row @row-click="rowClick" @current-change="selectSample"> - <!-- <el-table-column type="selection" width="60" :selectable="selectable" v-if="active==1"></el-table-column> --> - <el-table-column type="index" label="搴忓彿" width="65" align="center"></el-table-column> - <el-table-column prop="sample" label="鏍峰搧鍚嶇О" align="center" min-width="100"> - <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.sample" clearable :readonly="active>1"></el-input> - </template> - </el-table-column> - <el-table-column prop="sampleCode" label="鏍峰搧缂栧彿" min-width="140" align="center"> - <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.sampleCode" clearable placeholder="涓嶅~鍐欏垯绯荤粺鑷姩鐢熸垚" - :readonly="active>1"></el-input> - </template> - </el-table-column> - <el-table-column prop="model" label="鏍峰搧鍨嬪彿" align="center" min-width="100"> - <template slot-scope="scope"> - <el-select v-model="scope.row.model" filterable allow-create default-first-option placeholder="鏍峰搧鍨嬪彿" - size="small" @change="handleChangeModel" :disabled="active>1" style="width: 100%;"> - <el-option v-for="item in models" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </template> - </el-table-column> - <el-table-column prop="modelNum" label="鍨嬪彿鍙傛暟" width="130" align="center" v-if="!(active>1)"> - <template slot-scope="scope"> - <el-input size="small" v-model="scope.row.modelNum" clearable placeholder="闈炲繀濉�" - @keyup.enter.native="methodChange(scope.row.standardMethodListId, scope.row)" - @clear="methodChange(scope.row.standardMethodListId, scope.row)"></el-input> - </template> - </el-table-column> - <el-table-column prop="standardMethodListId" label="妫�楠屾爣鍑�" align="center" min-width="100"> - <template slot-scope="scope"> - <el-select v-model="scope.row.standardMethodListId" :disabled="scope.row.model==null||active>1" - placeholder="妫�楠屾爣鍑�" size="small" :loading="methodLoad" @change="(value)=>methodChange(value, scope.row)" - @focus="methodFocus" :readonly="active>1" style="width: 100%;"> - <el-option v-for="item in methods" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </template> - </el-table-column> - <el-table-column prop="num" label="鏍峰搧鏁伴噺" align="center" width="90"> - </el-table-column> - <el-table-column label="鎿嶄綔" width="120"> - <template slot-scope="scope"> - <el-button @click.native.prevent="deleteRow(scope.$index, sampleList)" type="text" - size="small">鍒犻櫎</el-button> - </template> - </el-table-column> - </el-table> - <el-table class="el-table" ref="productTable" :data="productList" height="50%" tooltip-effect="dark" border - @selection-change="selectProduct" style="margin-bottom: 10px;" @select="upProductSelect" - :row-class-name="tableRowClassName" v-loading="getProductLoad" @select-all="handleAll"> - <el-table-column type="selection" width="65" :selectable="selectable" v-if="active==1"></el-table-column> - <el-table-column prop="inspectionItem" label="妫�楠岄」" min-width="140" show-overflow-tooltip></el-table-column> - <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" min-width="140" - show-overflow-tooltip></el-table-column> - <el-table-column prop="sonLaboratory" label="瀛愬疄楠屽" min-width="130" show-overflow-tooltip :filters="filters" - :filter-method="filterHandler"></el-table-column> - <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="120" show-overflow-tooltip> - </el-table-column> - <el-table-column prop="unit" label="璁¢噺鍗曚綅" width="100" show-overflow-tooltip></el-table-column> - <el-table-column prop="price" label="鍗曚环" width="100" show-overflow-tooltip></el-table-column> - <el-table-column prop="section" label="鍖洪棿" min-width="120" show-overflow-tooltip></el-table-column> - <el-table-column prop="ask" label="瑕佹眰鍊�" min-width="220px"> - <template slot-scope="scope"> - <el-input size="small" placeholder="瑕佹眰鍊�" v-model="scope.row.ask" clearable type="textarea" - :autosize="{ minRows: 1, maxRows: 3}" @change="e=>requestChange(e,scope.row)" - v-if="active==1&&isAskOnlyRead"></el-input> - <span v-else>{{ scope.row.ask }}</span> - </template> - </el-table-column> - </el-table> - </div> - <el-dialog title="閫夋嫨瀛愭牱鍝�" :visible.sync="selectStandardTree" width="400px" @closed="addObj.sampleNum = 1"> - <div class="body" style="height: 60vh;overflow-y: auto;user-select: none;" v-if="selectStandardTree"> - <el-row style="margin-bottom: 10px;"> - <el-col :span="24"> - <label>鏍峰搧鏁伴噺锛�</label> - <el-input-number v-model="addObj.sampleNum" :min="1" label="璇疯緭鍏ユ暟閲�" size="small"></el-input-number> - </el-col> - </el-row> - <el-row> - <el-col :span="24"> - <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛屾悳绱�" suffix-icon="el-icon-search" v-model="search" size="small" - style="margin-bottom: 5px;" clearable @blur="searchFilter" @clear="searchFilter" - @keyup.enter.native="searchFilter"></el-input> - </el-col> - </el-row> - <el-tree :data="list" ref="tree" :props="{ children: 'children', label: 'label' }" node-key="label" - :filter-node-method="filterNode" @node-click="handleNodeClick" highlight-current @node-expand="nodeOpen" - @node-collapse="nodeClose" :default-expanded-keys="expandedKeys" @dblclick.native="activeStandardTree"> - <div class="custom-tree-node" slot-scope="{ node, data }"> - <el-row> - <el-col :span="24"> - <span><i - :class="`node_i ${data.children != undefined ? (data.code==='[1]'?'el-icon-folder-opened':'el-icon-folder') : 'el-icon-tickets'}`"></i> - {{ data.code }} {{ data.label }}</span> - </el-col> - </el-row> - </div> - </el-tree> - </div> - <span slot="footer" class="dialog-footer"> - <el-button @click="selectStandardTree = false">鍙� 娑�</el-button> - <el-button type="primary" @click="activeStandardTree">纭� 瀹�</el-button> - </span> - </el-dialog> - <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" width="500px" :show-close="false" - :before-close="beforeClose"> - <div class="body" style="max-height: 60vh;"> - <el-row v-if="bsm1"> - <el-col class="search_thing" :span="22"> - <div class="search_label"><span class="required-span">* </span>鎶ゅ瀵嗗害锛�</div> - <div class="search_input"> - <el-radio-group v-model="bsm1Val" @input="upBsm1"> - <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai" :label="a"></el-radio> - </el-radio-group> - </div> - </el-col> - <el-col class="search_thing" :span="22"> - <div class="search_label">瑕佹眰鍊硷細</div> - <div class="search_input" v-show="bsm1Val!==null&&bsm1Val!==''"> - <el-radio-group v-model="bsm1Val" @input="upBsm1"> - <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai" - :label="a">{{JSON.parse(bsmRow.ask)[ai]}}</el-radio> - </el-radio-group> - </div> - </el-col> - </el-row> - </div> - </el-dialog> - </div> -</template> - -<script> - export default { - props: { - active: { - type: Number, - default: () => 0 - }, - }, - data() { - return { - saveLoad: false, - sampleList: [], - productList: [], - getProductLoad: false, - filters: [], - sampleIds: [], - isAskOnlyRead: false, - selectStandardTree: false, - search: '', - expandedKeys: [], - addObj: { - sampleNum: 1, - }, - selectTree: null, - models: [], - sample: { - sampleCode: null, - laboratory: null, - factory: null, - sampleType: null, - sample: null, - model: null, - modelNum: null, - sampleNum: 1, - isLeave: 0, - unit: null - }, - currentMethod: null, - methods: [], - methodLoad: false, - sampleId: null, - bsmRow: null, - bsm1: false, - bsm1Val: null, - bsm1Dia: false, - list: [], - parentSample: [] - } - }, - mounted() { - this.selectStandardTreeList() - this.selectStandardMethods() - this.$parent.sampleIds.forEach(a => { - for (var i = 0; i < this.$parent.sampleList.length; i++) { - if (this.$parent.sampleList[i].id == a) { - this.sampleList = this.$parent.sampleList[i].childSampleList - this.parentSample.push(this.$parent.sampleList[i]) - break - } - } - }) - }, - methods: { - selectStandardTreeList() { - this.$axios.get(this.$api.standardTree.selectStandardTreeList).then(res => { - this.list = res.data - this.list.forEach(a => { - this.expandedKeys.push(a.label) - }) - }) - }, - save() { - if (this.sampleList.length === 0) { - this.$message.error('缂哄皯閰嶇疆鏃犳硶淇濆瓨') - return - } - this.parentSample.forEach(a => { - a.childSampleList = this.sampleList - }) - this.$message.success('宸蹭繚瀛�') - }, - deleteRow(index, rows) { - this.productList = [] - rows.splice(index, 1); - }, - outConfig() { - this.$parent.equipConfigShow = false - }, - addChild() { - this.selectStandardTree = true - }, - selectSample(val) { - if (val === null) return - this.sampleIds = [val.id] - }, - rowClick(row, column, event) { - this.currentMethod = row - let obj = this.methods.find(a => a.id == this.currentMethod.standardMethodListId) - if (obj && obj.code == '濮旀墭瑕佹眰') { - this.isAskOnlyRead = true - } else { - this.isAskOnlyRead = false - } - this.sampleId = row.id - if (this.active !== 1) { - this.sampleIds = [] - this.sampleIds.push(row.id) - } - this.productList = row.insProduct - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }, - toggleSelection(row) { - this.$refs.productTable.toggleRowSelection(row, true); - }, - selectable() { - if (this.active > 1) { - return false - } else { - return true - } - }, - handleChangeModel(e) { - let num = this.selectTree.split('-').length; - if (num != 5) { - this.selectTree = this.selectTree + ' - ' + e - } else { - let arr = this.selectTree.split('-') - let arr0 = arr.slice(0, arr.length - 1) - this.selectTree = arr0.join('-') + '- ' + e - } - }, - methodChange(val, row) { - if (val === null || val === '') return - this.currentMethod = row - let obj = this.methods.find(a => a.id == this.currentMethod.standardMethodListId) - if (obj && obj.code == '濮旀墭瑕佹眰') { - this.isAskOnlyRead = true - } else { - this.isAskOnlyRead = false - } - this.getProductLoad = true - this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: row.model + '-' + row.modelNum, - standardMethodListId: val, - factory: this.selectTree, - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - res.data.forEach(a => { - a.state = 0 - }) - row.insProduct = this.HaveJson(res.data) - this.getProductLoad = false - this.productList = row.insProduct - this.$refs.sampleTable.setCurrentRow(row) - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }) - }, - methodFocus() { - this.selectsStandardMethodByFLSSM() - }, - selectStandardMethods() { - this.$axios.get(this.$api.standardTree.selectStandardMethodEnum).then(res => { - this.methods = res.data - }) - }, - selectsStandardMethodByFLSSM() { - this.methodLoad = true - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: this.selectTree - }).then(res => { - this.methodLoad = false - try { - if (res.data.standardMethodList.length == 0 && this.selectTree.split('-').length == 5) { - let arr = this.selectTree.split('-') - let arr0 = arr.slice(0, arr.length - 1) - let selectTree = arr0.join('-').substring(0, arr0.join('-').length - 1) - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: selectTree - }).then(ress => { - this.methods = ress.data.standardMethodList - }) - } else { - this.methods = res.data.standardMethodList - } - } catch (e) {} - }) - }, - selectProduct(val) { - this.productIds = [] - val.forEach(a => { - this.productIds.push(a.id) - }) - }, - upProductSelect(selection, row) { - row.state = row.state == 1 ? 0 : 1 - if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 1) { - if (row.section.indexOf('[') > -1) { - this.bsmRow = this.HaveJson(row) - } - this.bsm1 = true - this.bsm1Dia = true - } else if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 0) { - this.bsm1 = false - } - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - if (m.id == row.id) { - m.state = row.state; - } - return m; - }) - } - return item - }) - }, - tableRowClassName({ - row, - rowIndex - }) { - if (row.state === 0) { - return 'warning-row'; - } - return ''; - }, - handleAll(e) { - if (e.length > 0) { - this.productList.map(m => { - m.state = 1 - return m - }) - } else { - this.productList.map(m => { - m.state = 0 - return m - }) - } - this.productList.forEach(p => { - if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 1) { - if (p.section.indexOf('[') > -1) { - this.bsmRow = this.HaveJson(p) - } - this.bsm1 = true - this.bsm1Dia = true - } else if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 0) { - this.bsm1 = false - } - }) - if (e.length > 0) { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - m.state = 1 - return m; - }) - } - return item - }) - } else { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - m.state = 0 - return m; - }) - } - return item - }) - } - this.$nextTick(() => { - this.$refs.productTable.doLayout() - }) - }, - filterHandler(value, row, column) { - const property = column['property']; - return row[property] === value; - }, - requestChange(e, row) { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - if (m.id == row.id) { - m.ask = e; - } - return m; - }) - } - return item - }) - }, - activeStandardTree() { - let trees = this.selectTree.split(" - ") - if (trees.length < 4) { - this.$message.error('鏈�夋嫨瀛愪骇鍝�') - return - } - this.addObj.factory = trees[0] - this.addObj.laboratory = trees[1] - this.addObj.sampleType = trees[2] - if(trees[3]===''){ - this.addObj.sample = (trees[4] == undefined ? null : trees[4]) - }else if(trees[3]===undefined){ - this.addObj.sample = trees[2] - }else{ - this.addObj.sample = trees[3] - } - this.addObj.model = (trees[4] == undefined ? null : trees[4]) - this.selectStandardTree = false - this.sample.joinName = null - this.sample.joinModel = null - this.sample.joinNum = 1 - this.sample.sample = this.addObj.sample - this.sample.model = this.addObj.model - this.sample.unit = this.addObj.unit - this.sample.standardMethodListId = null - this.sample.insProduct = [] - this.sample.id = this.count - this.sample.num = this.addObj.sampleNum - this.sampleList.push(this.HaveJson(this.sample)) - this.count++ - this.$refs.sampleTable.doLayout() - }, - searchFilter() { - this.$refs.tree.filter(this.search) - }, - filterNode(value, data) { - if (!value) return true; - return data.label.indexOf(value) !== -1; - }, - handleNodeClick(val, node, el) { - this.selectTree = '' - this.models = val.children - this.getNodeParent(node) - this.selectTree = this.selectTree.replace(' - ', '') - let data = this.selectTree.split(' - ') - let data2 = '' - for (let index = data.length - 1; index >= 0; index--) { - data2 += " - " + data[index] - } - this.selectTree = data2.replace(' - ', '') - }, - getNodeParent(val) { - if (val.parent != null) { - if (val.data.children === null) { - this.selectTree += ' - ' + val.label + ' - ' + '' - } else { - this.selectTree += ' - ' + val.label - } - this.getNodeParent(val.parent) - } - }, - nodeOpen(data, node, el) { - $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder-opened') - }, - nodeClose(data, node, el) { - $($(el.$el).find('.node_i')[0]).attr('class', 'node_i el-icon-folder') - }, - beforeClose(done) { - if (this.bsm1) { - if (this.bsm1Val === null || this.bsm1Val === '') { - this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') - return - } - } - done() - }, - upBsm1(val) { - let sections = JSON.parse(this.bsmRow.section); - let asks = JSON.parse(this.bsmRow.ask); - let tells = JSON.parse(this.bsmRow.tell); - let manHours = JSON.parse(this.bsmRow.manHour); - let prices = JSON.parse(this.bsmRow.price); - for (var a in sections) { - if (val === sections[a]) { - this.productList.forEach(p => { - if (p.id === this.bsmRow.id) { - p.section = sections[a] - p.ask = asks[a] - p.tell = tells[a] - p.manHour = manHours[a] - p.price = prices[a] - } - }) - break - } - } - }, - } - } -</script> -<style scoped> - .ins_order_config { - width: 100%; - height: 100%; - overflow-y: auto; - overflow-x: hidden; - } - - .ins_order_config::-webkit-scrollbar { - width: 0; - } - - .title { - height: 60px; - line-height: 60px; - } - - .center { - width: 100%; - height: calc(100% - 60px); - } - - - >>>.all-disabled .el-checkbox__input .el-checkbox__inner { - background-color: #edf2fc; - border-color: #dcdfe6; - cursor: not-allowed; - } - - .node_i { - color: orange; - font-size: 18px; - } - - .el-select-dropdown__item { - display: flex; - align-items: center; - justify-content: space-between; - } -</style> diff --git a/src/components/do/b1-material-ins-order/material-fiberoptic-config.vue b/src/components/do/b1-material-ins-order/material-fiberoptic-config.vue deleted file mode 100644 index 94f73f9..0000000 --- a/src/components/do/b1-material-ins-order/material-fiberoptic-config.vue +++ /dev/null @@ -1,1049 +0,0 @@ -<template> - <div class="ins_order_config"> - <div> - <el-row class="title"> - <el-col :span="6" style="padding-left: 20px;text-align: left;">鍏夌氦閰嶇疆</el-col> - <el-col :span="18" style="text-align: right;"> - <el-button size="medium" type="primary" @click="save" :loading="saveLoad" v-if="active==1">淇� 瀛�</el-button> - <el-button size="medium" @click="outConfig"> - <span style="color: #3A7BFA;">杩� 鍥�</span> - </el-button> - </el-col> - </el-row> - </div> - <div class="center"> - <el-row :gutter="10" style="margin-bottom: 10px;"> - <el-col :span="9"> - <div class="grid-content"> - <h5>濂楃</h5> - <div - style="display: flex;align-items: center;justify-content: space-between;padding: 0 12px;box-sizing: border-box;"> - <div class="search-item"> - <label style="width: 70px;">鏍峰搧鍨嬪彿</label> - <span style="font-size: 14px;">{{models}}</span> - </div> - <el-radio-group v-model="packageInfo.radio" size="small" @change="upNum()" :disabled="active!=1"> - <el-radio :label="0">鍏ㄦ</el-radio> - <el-radio :label="1">鎶芥</el-radio> - </el-radio-group> - </div> - <div - style="display: flex;align-items: center;justify-content: space-between;margin-bottom: 8px;padding: 0 12px;box-sizing: border-box;"> - <div class="search-item" style="margin-right: 10px;"> - <label>濂楃鏁扮洰</label> - <el-input v-model="packageInfo.num1" placeholder="璇疯緭鍏�" size="small" @change="upNum" :disabled="active!=1"></el-input> - </div> - <div class="search-item" style="margin-right: 10px;"> - <label style="width: 70px;">鏍囧噯閲�</label> - <el-input v-model="packageInfo.standNum" placeholder="璇疯緭鍏�" size="small" @change="upNum" :disabled="active!=1"></el-input> - </div> - <div class="search-item"> - <label style="width: 70px;">妫�娴嬮噺</label> - <el-input v-model="packageInfo.testNum" placeholder="璇疯緭鍏�" size="small" @change="upNum" - :disabled="packageInfo.radio===0||active!=1"></el-input> - </div> - </div> - <el-table ref="table0" :data="bushing" tooltip-effect="dark" style="width: 100%" height="203px" size="small" - @selection-change="handleSelectionChange1" - :header-cell-class-name="setClassName0"> - <el-table-column - type="selection" - width="45" - :selectable="()=>(active==1)"> - </el-table-column> - <el-table-column label="绠¤壊鏍�" show-overflow-tooltip> - <template slot-scope="scope"> - <el-select v-model="scope.row.color" size="mini" :disabled="active!=1" allow-create filterable > - <el-option v-for="(color,i) in colors" :key="i" :label="color.lable" - :value="color.value"></el-option> - </el-select> - </template> - </el-table-column> - <el-table-column prop="standNum" label="鏍囬噺" show-overflow-tooltip align="center"> - </el-table-column> - <el-table-column prop="testNum" label="娴嬭瘯閲�" show-overflow-tooltip align="center"> - </el-table-column> - </el-table> - </div> - </el-col> - <el-col :span="15"> - <div class="grid-content"> - <h5>妫�娴嬮」淇℃伅</h5> - <el-table ref="productTable" :data="detectionItems" tooltip-effect="dark" style="width: 100%" - :row-class-name="tableRowClassName" - :header-cell-class-name="setClassName" - height="283px" - size="small" @selection-change="handleSelectionChange2" - @select-all="handleAll" - @select="upProductSelect" - > - <el-table-column type="selection" width="55" - :selectable="()=>((currentDetectionItems||this.multiFiberList.length > 0)&&active==1)"> - </el-table-column> - <el-table-column label="瀹為獙瀹�" show-overflow-tooltip prop="sonLaboratory" ></el-table-column> - <el-table-column prop="inspectionItem" label="妫�楠岄」" show-overflow-tooltip> - </el-table-column> - <el-table-column prop="inspectionItemSubclass" label="妫�楠岄」瀛愰」" show-overflow-tooltip width="100px"> - </el-table-column> - <el-table-column prop="methodS" label="璇曢獙鏂规硶" min-width="90" show-overflow-tooltip> - </el-table-column> - <el-table-column prop="price" label="鍗曚环" width="70" show-overflow-tooltip> - </el-table-column> - <el-table-column prop="unit" label="鍗曚綅" width="70" show-overflow-tooltip> - </el-table-column> - <!-- <el-table-column prop="manDay" label="棰勮鏃堕棿" width="90" show-overflow-tooltip> - </el-table-column> --> - <el-table-column prop="ask" label="妫�娴嬭姹�" show-overflow-tooltip width="200px"> - <template slot-scope="scope"> - <el-input v-model="scope.row.ask" placeholder="璇疯緭鍏�" size="small" :disabled="active!=1" v-if="!isAskOnlyRead"></el-input> - <span v-else>{{ scope.row.ask }}</span> - </template> - </el-table-column> - </el-table> - </div> - </el-col> - </el-row> - <el-row :gutter="10"> - <el-col :span="12" v-if="packageInfo.ismiers"> - <div class="grid-content"> - <h5>鍏夌氦甯� - <!-- <el-button size="mini" type="primary" class="btns" @click="addFibers" - :disabled="miresModel===null||miresStandard===null" v-if="active==1">鐢熸垚鍏夌氦甯�</el-button> --> - <el-button size="mini" class="btns" @click="clearFibers" :disabled="selectBushing.length === 0" v-if="active==1">娓呴櫎</el-button> - </h5> - <div - style="display: flex;align-items: center;justify-content: space-between;margin:4px 0 6px 0;padding: 0 12px;box-sizing: border-box;"> - <div class="search-item" style="width: 50%;margin-right: 16px;"> - <label style="width: 80px;">绾ゅ甫绫诲瀷</label> - <el-select v-model="miresModel" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" - :disabled="selectBushing.length===0||active!=1"> - <el-option v-for="(item,a) in miresModels" :key="a" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </div> - <div class="search-item" style="width: 50%;"> - <label style="width: 80px;">鍙傝�冩爣鍑�</label> - <el-select v-model="miresStandard" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" - :disabled="miresModel===null||active!=1" @focus="selectsStandardMethodByFLSSM2()" - @change="(value)=>methodChange2(value)"> - <el-option v-for="item in miresStandards" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </div> - </div> - <el-table ref="table2" :data="fibersList" tooltip-effect="dark" style="width: 100%" height="270px" - size="small" @selection-change="handleSelectionChange" highlight-current-row @row-click="(row, column, event)=>rowClickFiber(row, column, event,0)" - :header-cell-class-name="setClassName0"> - <el-table-column - type="selection" - width="55" - :selectable="()=>(active==1)"> - </el-table-column> - <el-table-column prop="code" label="鍏夌氦甯︾紪鍙�" show-overflow-tooltip align="center"> - </el-table-column> - <el-table-column prop="model" label="鍏夌氦甯﹁鏍�" show-overflow-tooltip align="center"> - </el-table-column> - <el-table-column prop="standard" label="鍙傝�冩爣鍑�" show-overflow-tooltip align="center"> - </el-table-column> - <el-table-column prop="num" label="鍏夌氦妫�娴嬮噺" show-overflow-tooltip align="center"> - </el-table-column> - </el-table> - </div> - </el-col> - <el-col :span="!packageInfo.ismiers?24:12"> - <div class="grid-content"> - <h5>鍏夌氦 - <!-- <el-button size="mini" type="primary" class="btns" @click="addFiber" - :disabled="mireModel===null||mireStandard===null" v-if="active==1">鍏夌氦閰嶈壊</el-button> --> - </h5> - <div - style="display: flex;align-items: center;justify-content: space-between;margin: 4px 0 6px 0;padding: 0 12px;box-sizing: border-box;"> - <div class="search-item" style="width: 50%;margin-right: 16px;"> - <label style="width: 80px;">鍏夌氦绫诲瀷</label> - <el-select v-model="mireModel" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" - :disabled="selectBushing.length===0||active!=1"> - <el-option v-for="(item,a) in mireModels" :key="a" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </div> - <div class="search-item" style="width: 50%;"> - <label style="width: 80px;">鍙傝�冩爣鍑�</label> - <el-select v-model="mireStandard" placeholder="璇烽�夋嫨" size="small" style="width: 100%;" - :disabled="mireModel===null||active!=1" @focus="selectsStandardMethodByFLSSM()" - @change="(value)=>methodChange(value)" :loading="mireStandardLoading"> - <el-option v-for="item in mireStandards" :key="item.id" :label="item.code" :value="item.id"> - </el-option> - </el-select> - </div> - </div> - <el-table ref="table3" :data="fiberList" tooltip-effect="dark" style="width: 100%" height="270px" - size="small" highlight-current-row @selection-change="handleSelectionChange4" - @row-click="(row, column, event)=>rowClickFiber(row, column, event,1)" - :header-cell-class-name="setClassName0"> - <el-table-column - type="selection" - width="55" - :selectable="()=>(active==1)"> - </el-table-column> - <el-table-column prop="bushColor" label="绠″鑹叉爣" width="90" align="center"> - </el-table-column> - <el-table-column prop="color" label="鍏夌氦鑹叉爣" width="120"> - <template slot-scope="scope"> - <el-select v-model="scope.row.color" size="mini" :disabled="active!=1" allow-create filterable > - <el-option v-for="(color,i) in colors" :key="i" :label="color.lable" - :value="color.value"></el-option> - </el-select> - </template> - </el-table-column> - <el-table-column prop="model" label="鍏夌氦瑙勬牸" show-overflow-tooltip align="center"> - </el-table-column> - <el-table-column prop="standard" label="鍙傝�冩爣鍑�" show-overflow-tooltip align="center"> - </el-table-column> - </el-table> - </div> - </el-col> - </el-row> - </div> - <el-dialog title="妫�娴嬪埌鐗规畩椤癸紝璇蜂綔鍑轰互涓嬮�夋嫨" :visible.sync="bsm1Dia" width="500px" :show-close="false" :before-close="beforeClose"> - <div class="body" style="max-height: 60vh;"> - <el-row v-if="bsm1"> - <el-col class="search_thing" :span="22"> - <div class="search_label"><span class="required-span">* </span>鎶ゅ瀵嗗害锛�</div> - <div class="search_input"> - <el-radio-group v-model="bsm1Val" @input="upBsm1"> - <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai" :label="a"></el-radio> - </el-radio-group> - </div> - </el-col> - <el-col class="search_thing" :span="22"> - <div class="search_label">瑕佹眰鍊硷細</div> - <div class="search_input" v-show="bsm1Val!==null&&bsm1Val!==''"> - <el-radio-group v-model="bsm1Val" @input="upBsm1"> - <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai" - :label="a">{{JSON.parse(bsmRow.ask)[ai]}}</el-radio> - </el-radio-group> - </div> - </el-col> - <el-col class="search_thing" :span="22"> - <div class="search_label">鍗曚环锛�</div> - <div class="search_input" v-show="bsm1Val!==null&&bsm1Val!==''"> - <el-radio-group v-model="bsm1Val" @input="upBsm1"> - <el-radio v-for="(a, ai) in JSON.parse(bsmRow.section)" :key="ai" - :label="a">{{JSON.parse(bsmRow.price)[ai]}}</el-radio> - </el-radio-group> - </div> - </el-col> - </el-row> - <el-row v-if="bsm2"> - <el-col class="search_thing" :span="22"> - <div class="search_label" style="width: 220px;"><span class="required-span">* </span>鏍峰搧鐔旀帴閰嶅鏁伴噺锛�</div> - <div class="search_input"> - <el-input-number size="medium" v-model="bsm2Val" :min="1" :max="bsm2Val3.length" :precision="0" style="width: 70%;" - :controls="false" @change="bsm2Up"></el-input-number> - <span>MAX锛歿{bsm2Val3.length}}</span> - </div> - </el-col> - <el-col style="margin-top: 6px;"> - <el-col v-for="(a,ai) in bsm2Val2" :key="ai"> - <el-col :span="10"> - <el-select v-model="a[0]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;"> - <el-option - v-for="(item,index) in sampleList" - :key="index" - :label="index+1" - :value="index+1"> - </el-option> - </el-select> - </el-col> - <!-- <el-col :span="10" class="pairing">{{a[0]}}</el-col> --> - <el-col :span="4" class="pairing" style="border: 0;color: rgba(0, 0, 0, 0.2);">鈥斺��</el-col> - <el-col :span="10"> - <el-select v-model="a[1]" placeholder="璇烽�夋嫨" size="small" style="width: 100%;"> - <el-option - v-for="(item,index) in sampleList" - :key="index" - :label="index+1" - :value="index+1"> - </el-option> - </el-select> - </el-col> - <!-- <el-col :span="10" class="pairing">{{a[1]}}</el-col> --> - </el-col> - </el-col> - </el-row> - <!-- <el-row v-if="bsm3"> - <el-col class="search_thing" :span="22" style="display: flex;align-items: center;"> - <div class="search_label"><span class="required-span">* </span>RTS锛�</div> - <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="bsm3Val"></el-input> - </div> - </el-col> - </el-row> --> - </div> - </el-dialog> - <el-dialog title="RTS濉啓" :visible.sync="bsm3Dia" width="500px" :show-close="false" :before-close="beforeClose0"> - <el-row> - <el-col class="search_thing" :span="22" style="display: flex;align-items: center;"> - <div class="search_label"><span class="required-span">* </span>RTS锛�</div> - <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="bsm3Val"></el-input> - </div> - </el-col> - </el-row> - </el-dialog> - </div> -</template> - -<script> - export default { - props: { - active: { - type: Number, - default: () => 0 - }, - }, - data() { - return { - type:1, - saveLoad: false, - packageInfo: { - radio: 1, - num1: null, - standNum: null, - testNum: null, - ismiers: false - }, - tableData: [], - tape: { - value: '' - }, - options: [], - sample: [], - models: '', - colors: [], - wires: [], - bushing: [], - mireModels: [], - mireModel: null, - mireStandard: [], - mireStandards: null, - miresModels: [], - miresModel: null, - miresStandard: [], - miresStandards: null, - selectBushing: [], - productList: [], - productList2: [], - fiberList: [], - fibersList: [], - selectFibers: [], - detectionItems:[], - currentDetectionItems:null, - mireStandardLoading:false, - multiFiberList:[], - isAskOnlyRead:true, - bsm1Dia: false, - bsmRow: null, - bsm1: false, - bsm1Val: null, - bsm2: false, - bsm2Val: null, - bsm2Dia: false, - bsm2Val2: [], - bsm2Val3: [], - sampleIds:[], - bsm3Val: null, - bsmRow3: null, - bsm3Dia: false, - } - }, - computed: { - isAllDisabled() { - return this.multiFiberList.length > 0||this.currentDetectionItems||this.active!=1 - }, - }, - watch: { - mireModel(val1,val0) { - if(val1!=val0){ - this.mireStandards = [] - this.fiberList = [] - this.multiFiberList = [] - this.detectionItems = [] - this.currentDetectionItems = null; - } - }, - mireStandard(val1,val0) { - if(val1!=val0){ - this.fiberList = [] - this.multiFiberList = [] - this.detectionItems = [] - this.currentDetectionItems = null; - } - } - }, - mounted() { - this.$parent.sampleIds.forEach(a => { - for (var i = 0; i < this.$parent.sampleList.length; i++) { - if (this.$parent.sampleList[i].id == a) { - this.sample.push(this.$parent.sampleList[i]) - this.models += (',' + this.$parent.sampleList[i].model) - break - } - } - }) - this.models = this.models.replace(',', '') - this.packageInfo.ismiers = this.models.split(',').every(e=>(e.indexOf('d')>-1||e.indexOf('D')>-1)) - if(this.sample[0].bushing === undefined || this.sample[0].bushing === null){ - this.bushing = [] - }else{ - this.bushing = this.HaveJson(this.sample[0].bushing) - this.packageInfo.num1 = this.sample[0].bushing.length - this.packageInfo.standNum = this.sample[0].bushing[0].standNum - this.packageInfo.testNum = this.sample[0].bushing[0].testNum - this.bushing.forEach(a=>{ - if(a.fibers===null)a.fibers=[] - if(a.fiber===null)a.fiber=[] - if(this.packageInfo.ismiers){ - a.fibers.forEach(b=>{ - this.fibersList.push(b) - b.fiber.forEach(c=>{ - this.fiberList.push(c) - }) - }) - }else{ - a.fiber.forEach(b=>{ - this.fiberList.push(b) - }) - } - }) - } - this.getTypeDicts1() - this.getStandTreeBySampleType() - this.getStandTreeBySampleType2() - }, - methods: { - handleSelectionChange(val) { - this.selectFibers = val - this.multiFiberList = val - }, - handleSelectionChange1(val) { - this.selectBushing = val - }, - handleSelectionChange2(val){}, - handleSelectionChange4(val){ - this.multiFiberList = val - }, - outConfig() { - this.$parent.configShow = false - }, - getTypeDicts1() { - this.$axios.post(this.$api.enums.selectEnumByCategory, { - category: "鑹叉爣" - }).then(res => { - this.colors = res.data - }) - }, - upNum() { - this.fiberList = [] - this.fibersList = [] - this.detectionItems = [] - if (this.packageInfo.radio === 0) { - this.packageInfo.testNum = this.packageInfo.standNum - } - if (parseInt(this.packageInfo.standNum) < parseInt(this.packageInfo.testNum)) { - this.packageInfo.testNum = this.packageInfo.standNum - } - if (this.packageInfo.num1 !== null && this.packageInfo.num1 !== '' && - this.packageInfo.standNum !== null && this.packageInfo.standNum !== '' && - this.packageInfo.testNum != null && this.packageInfo.testNum !== '') { - let colors2 = [] - if (this.packageInfo.num1 / this.colors.length > 1) { - let num = this.packageInfo.num1 / this.colors.length - if (this.packageInfo.num1 % this.colors.length > 0) num += 1 - for (var i = 0; i < num; i++) { - colors2 = colors2.concat(this.colors) - } - } else { - colors2 = colors2.concat(this.colors) - } - this.bushing = [] - for (var i = 0; i < this.packageInfo.num1; i++) { - let bushing = { - color: colors2[i].label, - standNum: this.packageInfo.standNum, - testNum: this.packageInfo.testNum, - fibers: [], - fiber: [] - } - this.bushing.push(bushing) - } - } else { - this.bushing = [] - } - }, - getStandTreeBySampleType() { - this.$axios.post(this.$api.standardTree.getStandTreeBySampleType, { - laboratory: '閫氫俊浜у搧瀹為獙瀹�', - sampleType: '鍏夌氦' - }).then(res => { - this.mireModels = [] - res.data.forEach(a => { - this.mireModels.push({ - label: a.model, - value: a.sample + ' - ' + a.model - }) - }) - }) - }, - getStandTreeBySampleType2() { - this.$axios.post(this.$api.standardTree.getStandTreeBySampleType, { - laboratory: '閫氫俊浜у搧瀹為獙瀹�', - sampleType: '鍏夌氦甯�' - }).then(res => { - this.miresModels = [] - res.data.forEach(a => { - this.miresModels.push({ - label: a.model, - value: a.model - }) - }) - }) - }, - selectsStandardMethodByFLSSM() { - this.mireStandards = [] - this.mireStandardLoading = true - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: '涓ぉ绉戞妧妫�娴嬩腑蹇� - 閫氫俊浜у搧瀹為獙瀹� - 鍏夌氦 - ' + this.mireModel - }).then(res => { - this.mireStandardLoading = false - this.mireStandards = res.data.standardMethodList - }) - }, - selectsStandardMethodByFLSSM2() { - this.miresStandards = [] - this.$axios.post(this.$api.standardTree.selectsStandardMethodByFLSSM, { - tree: '涓ぉ绉戞妧妫�娴嬩腑蹇� - 閫氫俊浜у搧瀹為獙瀹� - 鍏夌氦甯� - ' + this.miresModel - }).then(res => { - this.miresStandards = res.data.standardMethodList - }) - }, - methodChange(val) { - if (val === null || val === '') return - this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: this.mireModel.split(' - ')[1], - standardMethodListId: val, - factory: '' - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - res.data.forEach(a => { - a.state = 0 - }) - this.productList = res.data - setTimeout(() => { - this.productList.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - this.addFiber() - }, 200) - }) - }, - methodChange2(val) { - if (val === null || val === '') return - this.$axios.post(this.$api.standardTree.selectStandardProductList, { - model: '', - standardMethodListId: val, - factory: '涓ぉ绉戞妧妫�娴嬩腑蹇� - 閫氫俊浜у搧瀹為獙瀹� - 鍏夌氦甯� - ' + this.miresModel + ' - ', - }, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { - res.data.forEach(a => { - a.state = 0 - }) - this.productList2 = res.data - setTimeout(() => { - this.productList2.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - this.addFibers() - }, 200) - }) - }, - addFiber() { - let colors2 = [] - if (this.packageInfo.num1 / this.colors.length > 1) { - let num = this.packageInfo.num1 / this.colors.length - if (this.packageInfo.num1 % this.colors.length > 0) num += 1 - for (var i = 0; i < num; i++) { - colors2 = colors2.concat(this.colors) - } - } else { - colors2 = colors2.concat(this.colors) - } - this.fiberList = [] - let model = this.mireModel.split(' - ')[1] - let standard = this.mireStandards.find(a => a.id == this.mireStandard).code - if (this.packageInfo.ismiers) { - if(this.selectFibers.length === 0){ - this.$message.error('鏈�夋嫨鍏夌氦甯�') - return - } - this.selectFibers.forEach((a,index) => { - a.fiber = [] - for (var i = 0; i < parseInt(a.num); i++) { - let fiber = { - bushColor: a.color, - color: colors2[(i+(parseInt(a.num)*index))>colors2.length?0:i+(parseInt(a.num)*index)*index].label, - model: model, - standard: standard, - productList: this.HaveJson(this.productList) - } - a.fiber.push(fiber) - this.fiberList.push(fiber) - } - }) - } else { - this.selectBushing.forEach((a,index) => { - a.fiber = [] - for (var i = 0; i < parseInt(a.testNum); i++) { - let fiber = { - bushColor: a.color, - color: colors2[(i+(parseInt(a.testNum))*index)>colors2.length?0:i+(parseInt(a.testNum))*index].label, - model: model, - standard: standard, - productList: this.HaveJson(this.productList) - } - a.fiber.push(fiber) - this.fiberList.push(fiber) - } - }) - } - }, - addFibers() { - if(this.selectBushing.length===0){ - this.$message.error('鏈�夋嫨濂楃') - return - } - this.fibersList = [] - let standard = this.miresStandards.find(a => a.id == this.miresStandard).code - this.packageInfo.ismiers = true - this.fiberList = [] - this.selectBushing.forEach(a => { - a.fiber = [] - a.fibers = [] - for (var i = 0; i < parseInt(a.testNum); i++) { - let fibers = { - code: null, - color: a.color, - model: this.miresModel, - standard: standard, - num: a.testNum, - productList: this.HaveJson(this.productList2), - fiber: [] - } - a.fibers.push(fibers) - this.fibersList.push(fibers) - } - }) - }, - rowClickFiber(row, column, event,type){ - this.type = type - if(this.active===1){ - if(type==0){ - let standard = null; - try{ - standard = this.miresStandards.find(a => a.id == this.miresStandards) - }catch(e){} - if(standard&&standard.code=='濮旀墭瑕佹眰'){ - this.isAskOnlyRead = false; - }else{ - this.isAskOnlyRead = true; - } - }else{ - let standard = null; - try{ - standard = this.mireStandards.find(a => a.id == this.mireStandard) - }catch(e){} - if(standard&&standard.code=='濮旀墭瑕佹眰'){ - this.isAskOnlyRead = false; - }else{ - this.isAskOnlyRead = true; - } - } - } - if(this.type==1){ - if (this.active !== 1) { - this.sampleIds = [] - this.sampleIds.push(row.id) - } - } - this.currentDetectionItems = row - this.detectionItems = row.productList - if(this.detectionItems === null) return - setTimeout(() => { - this.detectionItems.forEach(a => { - if (a.state == 1) this.toggleSelection(a) - }) - }, 200) - }, - toggleSelection(row) { - this.$refs.productTable.toggleRowSelection(row, true); - }, - tableRowClassName({ - row, - rowIndex - }) { - if (row.state === 0) { - return 'warning-row'; - } - return ''; - }, - handleAll(e) { - if (e.length > 0) { - this.detectionItems.map(m => { - m.state = 1 - return m - }) - } else { - this.detectionItems.map(m => { - m.state = 0 - return m - }) - } - if (e.length > 0) { - if(this.multiFiberList.length > 0){ - this.multiFiberList.map(item => { - item.productList.map(m=>{ - m.state = 1; - return m; - }) - return item - }) - }else{ - this.currentDetectionItems.productList.map(m=>{ - m.state = 1; - return m; - }) - } - } else { - if(this.multiFiberList.length > 0){ - this.multiFiberList.map(item => { - item.productList.map(m=>{ - m.state = 0; - return m; - }) - return item - }) - }else{ - this.currentDetectionItems.productList.map(m=>{ - m.state = 0; - return m; - }); - } - } - this.bsmRow3 = [] - this.detectionItems.forEach(p => { - if(this.type==1){ - if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 1) { - if (p.section.indexOf('[') > -1) { - this.bsmRow = this.HaveJson(p) - } - this.bsm1 = true - this.bsm1Dia = true - } else if (p.bsm === '1' && p.section !== '' && p.section !== null && p.state === 0) { - this.bsm1 = false - } - if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length > 1 && p.state === 1) { - this.bsm2 = true - this.bsm1Dia = true - if(this.bsm2Val2.length === 0){ - this.bsm2Val = (this.sampleList.length - 1) * this.sampleList.length / 2 - this.computationalPairing(this.sampleList.length) - this.bsm2Val2 = this.HaveJson(this.bsm2Val3) - } - } else if (p.bsm === '1' && p.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && p.state === 1) { - this.bsm2 = false - } - } - // if (p.ask.includes('RTS')&&p.state === 1) { - // p.rts = '' - // this.bsm3Val = '' - // this.bsm3Dia = true - // this.bsmRow3.push(p) - // } - }) - - if (e.length > 0) { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - m.state = 1 - return m; - }) - } - return item - }) - } else { - this.sampleList.map(item => { - if (this.sampleIds.indexOf(item.id) > -1) { - item.insProduct.map(m => { - m.state = 0 - return m; - }) - } - return item - }) - } - this.$nextTick(() => { - this.$refs.productTable.doLayout() - }) - }, - upProductSelect(selection, row) { - row.state = row.state == 1 ? 0 : 1 - if(this.multiFiberList.length > 0){ - this.multiFiberList.map(item => { - item.productList.map(m=>{ - if(m.id == row.id){ - m.state = row.state; - } - return m - }) - return item - }) - }else{ - this.currentDetectionItems.productList.map(m=>{ - if(m.id == row.id){ - m.state = row.state; - } - return m; - }); - } - if(this.type==1){ - if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 1) { - if (row.section.indexOf('[') > -1) { - this.bsmRow = this.HaveJson(row) - } - this.bsm1 = true - this.bsm1Dia = true - } else if (row.bsm === '1' && row.section !== '' && row.section !== null && row.state === 0) { - this.bsm1 = false - } - if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && this.sampleList.length > 1 && row.state === 1) { - this.bsm2 = true - this.bsm1Dia = true - if(this.bsm2Val2.length === 0){ - this.bsm2Val = (this.sampleList.length - 1) * this.sampleList.length / 2 - this.computationalPairing(this.sampleList.length) - this.bsm2Val2 = this.HaveJson(this.bsm2Val3) - } - } else if (row.bsm === '1' && row.inspectionItem === '鍏夌氦鎺ュご鎹熻��' && row.state === 1) { - this.bsm2 = false - } - }else{ - this.bsm1Dia = false - } - // if (row.ask.includes('RTS')&&row.state === 1) { - // this.bsmRow3 = null; - // row.rts = '' - // this.bsm3Val = '' - // this.bsm3Dia = true - // this.bsmRow3 = row - // }else{ - // this.bsm3Dia = false - // } - }, - computationalPairing(n){ - const nums = []; - for (let i = 1; i <= n; i++) { - nums.push(i); - } - this.bsm2Val3 = this.HaveJson(this.permute(nums)) - }, - setClassName({ column }) { - if (column.type == 'selection' && !this.isAllDisabled) { - return 'all-disabled' - } - }, - setClassName0({ column }){ - if (column.type == 'selection' && this.active!=1) { - return 'all-disabled' - } - }, - clearFibers(){ - this.packageInfo.ismiers = false - this.fibersList = [] - this.bushing.forEach(a=>{ - a.fibers = [] - }) - }, - save(){ - if(this.bushing.length === 0){ - this.$message.error('缂哄皯閰嶇疆鏃犳硶淇濆瓨') - return - } - for(let a in this.bushing){ - if(this.bushing[a].fibers.length===0&&this.bushing[a].fiber.length===0){ - this.$message.error(this.bushing[a].color+'绠¤壊鏍囧绠$己灏戦厤缃棤娉曚繚瀛�') - return - } - } - this.sample.forEach(a=>{ - a.bushing = this.bushing - }) - this.$message.success('宸蹭繚瀛�') - this.$emit('saveFiberopticConfig') - }, - beforeClose(done){ - if (this.bsm1) { - if (this.bsm1Val === null || this.bsm1Val === '') { - this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') - return - } - } - if (this.bsm2) { - if (this.bsm2Val2.length === 0) { - this.$message.error('鐗规畩椤圭洰蹇呴』澶勭悊') - return - } - let set = new Set() - for (let i=0;i<this.bsm2Val2.length;i++){ - let num0 = set.size - set.add(JSON.stringify(this.bsm2Val2[i])) - let num1 = set.size - if(num1==num0){ - this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') - return - } - set.add(JSON.stringify(this.bsm2Val2[i].reverse())) - let num2 = set.size - if(num1==num2){ - this.$message.error('鍏宠仈椤圭洰涓嶈兘閲嶅') - return - } - } - } - done() - }, - beforeClose0(done){ - if(!this.bsm3Val){ - this.$message.error('RST蹇呴』濉啓') - return - }else{ - if(Array.isArray(this.bsmRow3)){ - this.bsmRow3.forEach(item=>{ - item.rts = this.bsm3Val - }) - }else{ - this.bsmRow3.rts = this.bsm3Val - } - } - done() - }, - upBsm1(val) { - let sections = JSON.parse(this.bsmRow.section); - let asks = JSON.parse(this.bsmRow.ask); - let tells = JSON.parse(this.bsmRow.tell); - let manHours = JSON.parse(this.bsmRow.manHour); - let prices = JSON.parse(this.bsmRow.price); - for (var a in sections) { - if (val === sections[a]) { - this.productList.forEach(p => { - if (p.id === this.bsmRow.id) { - p.section = sections[a] - p.ask = asks[a] - p.tell = tells[a] - p.manHour = manHours[a] - p.price = prices[a] - } - }) - break - } - } - }, - bsm2Up(val){ - let list = [] - for(let a=1;a < this.bsm2Val3.length + 1;a++){ - list.push(a) - } - let set = new Set() - let size1 = set.length - while(set.size < val){ - set.add(Math.ceil(Math.random() * this.bsm2Val3.length)) - } - this.bsm2Val2 = [] - for(let a of set){ - this.bsm2Val2.push(this.HaveJson(this.bsm2Val3[a-1])) - } - } - } - } -</script> - -<style scoped> - .ins_order_config { - width: 100%; - height: 100%; - overflow-y: auto; - overflow-x: hidden; - } - - .ins_order_config::-webkit-scrollbar { - width: 0; - } - - .title { - height: 60px; - line-height: 60px; - } - - .center { - width: 100%; - height: calc(100% - 60px); - } - - .grid-content { - background: #fff; - border-radius: 4px; - box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.05); - } - - .grid-content h5 { - color: #3A7BFA; - font-weight: 400; - line-height: 32px; - padding-left: 16px; - box-sizing: border-box; - border-bottom: 1px solid #eee; - } - - .search-item { - display: flex; - align-items: center; - line-height: 36px; - } - - .search-item label { - width: 90px; - font-size: 12px; - color: #606266; - /* text-align: right; */ - } - - .btns { - margin: 8px 0 8px 10px; - } - - >>>.el-table th.el-table__cell>.cell { - padding-top: 2px !important; - padding-bottom: 2px !important; - } - >>>.all-disabled .el-checkbox__input .el-checkbox__inner { - background-color: #edf2fc; - border-color: #dcdfe6; - cursor: not-allowed; - } -</style> diff --git a/src/components/view/b1-inspect-order-plan.vue b/src/components/view/b1-inspect-order-plan.vue index 511bc20..d544a33 100644 --- a/src/components/view/b1-inspect-order-plan.vue +++ b/src/components/view/b1-inspect-order-plan.vue @@ -367,7 +367,6 @@ </el-table-column> </el-table> </el-dialog> - <input type="text" id="ScanCodeInfo" v-model="codeInfo" @keyup.enter="keyup" style="opacity: 0;height: 0px;margin: 0px;padding: 0px;position: absolute;top: 0;" autocomplete="off"></input> <el-dialog title="鎵爜妫�楠�" :visible.sync="qrCodeVisible" width="350px"> <el-row> <el-col class="search_thing" :span="24"> @@ -677,36 +676,6 @@ this.initializeSortable(); } }, - watch:{ - qrCodeVisible(newVal){ - if(newVal){ - // this.$message.success('鎵爜锛氭墦寮�') - let input = document.getElementById('ScanCodeInfo'); - input.focus(); - this.startTime = setInterval(()=>{ - input.focus() - },1000) - }else{ - // this.$message.warning('鎵爜锛氬叧闂�') - clearInterval(this.startTime) - this.sampleCode = '' - } - }, - exportVisible(newVal){ - if(newVal){ - // this.$message.success('鎵爜锛氭墦寮�') - let input = document.getElementById('ScanCodeInfo'); - input.focus(); - this.startTime = setInterval(()=>{ - input.focus() - },1000) - }else{ - // this.$message.warning('鎵爜锛氬叧闂�') - clearInterval(this.startTime) - this.sampleCode = '' - } - }, - }, methods: { selectList () { this.$axios.get(this.$api.warehouse.selectWarehouse).then(res => { diff --git a/src/components/view/b1-material-inspection-order.vue b/src/components/view/b1-material-inspection-order.vue deleted file mode 100644 index ce7051b..0000000 --- a/src/components/view/b1-material-inspection-order.vue +++ /dev/null @@ -1,273 +0,0 @@ -<template> - <div> - <div style="width: 100%;height: 100%;" v-show="active === 0"> - <div> - <el-row class="title"> - <el-col :span="12" style="padding-left: 20px;text-align: left;">鍘熸潗鏂欐楠屼笅鍗�</el-col> - <el-col :span="12" style="text-align: right;"> - <el-button size="medium" type="primary" v-if="tabIndex === 0" @click="openIFS">鑾峰彇IFS璁㈠崟</el-button> - <el-button size="medium" type="primary" v-if="tabIndex === 0" @click="playOrder(1)">鎶ユ</el-button> - </el-col> - </el-row> - </div> - <div class="search"> - <div class="search_thing"> - <div class="search_label">閲囪喘璁㈠崟鍙凤細</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="componentData.entity.entrustCode" @keyup.enter.native="refreshTable()"></el-input></div> - </div> - <div class="search_thing"> - <div class="search_label">鏍峰搧缂栧彿锛�</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="componentData.entity.sample" @keyup.enter.native="refreshTable()"></el-input></div> - </div> - <div class="search_thing"> - <div class="search_label">鏍峰搧鍚嶇О锛�</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="componentData.entity.sampleModel" @keyup.enter.native="refreshTable()"></el-input></div> - </div> - <div class="search_thing" style="padding-left: 30px;"> - <el-button size="small" @click="refresh()">閲� 缃�</el-button> - <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</el-button> - </div> - </div> - <div class="table"> - <ul class="tab"> - <li v-for="(m,i) in tabList" :key="i" :class="{active:i==tabIndex}" @click="handleTab(m,i)">{{m.label}}</li> - </ul> - <ValueTable :style="getStyle()" ref="ValueTable" - :url="$api.insOrder.selectSampleAndProductByOrderId" - :componentData="componentData" - :key="'b'+ upIndex" /> - </div> - </div> - <div style="width: 100%;height: 100%;" v-if="active >0"> - <CustomsInspection :active="active" :currentId="currentId" v-if="active<4" /> - </div> - <el-dialog title="鑾峰彇IFS璁㈠崟琛�" :visible.sync="IFSDialog" width="70%"> - <div class="search"> - <div class="search_thing"> - <div class="search_label">閲囪喘璁㈠崟鍙凤細</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="componentData.entity.sampleModel" @keyup.enter.native="refreshTable()"></el-input></div> - </div> - <div class="search_thing" style="padding-left: 30px;"> - <el-button size="small" @click="refreshIFS()">閲� 缃�</el-button> - <el-button size="small" type="primary" @click="refreshTableIFS()">鏌� 璇�</el-button> - </div> - </div> - <div style="height: 70vh;overflow-y: auto;"> - <ValueTable ref="ValueTableIFS" - :url="$api.insOrder.selectSampleAndProductByOrderId" - :componentData="componentDataIFS"/> - </div> - <span slot="footer" class="dialog-footer"> - <el-row> - <el-button @click="IFSDialog=false">鍙� 娑�</el-button> - <el-button type="primary" @click="submitPrint" :loading="IFSGetLoading">鑾峰彇</el-button> - </el-row> - </span> - </el-dialog> - </div> -</template> - -<script> -import ValueTable from "../tool/value-table.vue"; -import CustomsInspection from "../do/b1-material-ins-order/customs-inspection.vue"; - -export default { - name: "b1-material-inspection-order", - // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� - components: {CustomsInspection, ValueTable}, - data() { - // 杩欓噷瀛樻斁鏁版嵁 - return { - componentData: { // 琛ㄦ牸鏁版嵁 - entity: { - entrustCode: null, - sample: null, - sampleModel: null, - }, - isIndex: true, - showSelect: true, - select: true, - selectMethod:'selectMethod', - do: [ - { - id: 'update', - font: '缂栬緫', - type: 'text', - method: 'doDiy', - }, - { - id: 'verify', - font: '鏌ョ湅', - type: 'text', - method: 'doDiy', - }, - { - id: 'dataLook', - font: '鎾ら攢鎶ユ', - type: 'text', - method: 'handleDataLook', - } - ], - tagField: {}, - selectField: {}, - requiredAdd: [], - requiredUp: [] - }, - componentDataIFS: { - entity: { - entrustCode: null, - sample: null, - sampleModel: null, - }, - isIndex: true, - showSelect: true, - select: true, - selectMethod:'selectMethod', - do: [], - tagField: {}, - selectField: {}, - requiredAdd: [], - requiredUp: [] - }, - tabList: [{ - label: '寰呮姤妫�', - value: 0 - }, { - label: '寰呭埗鍗�', - value: 1 - }], - upIndex: 0, - tabIndex: 0, - multipleSelection:[], - entityCopy: {}, - entityCopyIFS: {}, - IFSDialog: false, - IFSGetLoading: false, - active: 0, //1锛氭姤妫�锛�2锛氭煡鐪嬶紝3锛氬鏍革紝4锛氬厜绾ら厤缃�,榛樿涓�0 - currentId: null, - } - }, - mounted () { - this.entityCopy = this.HaveJson(this.componentData.entity) - this.entityCopyIFS = this.HaveJson(this.componentDataIFS.entity) - }, - // 鏂规硶闆嗗悎 - methods: { - refreshTable(e) { - this.$refs.ValueTable.selectList(e) - }, - refresh() { - this.componentData.entity = this.HaveJson(this.entityCopy) - this.refreshTable() - }, - refreshIFS() { - this.componentDataIFS.entity = this.HaveJson(this.entityCopyIFS) - this.refreshTableIFS() - }, - refreshTableIFS(e) { - this.$refs.ValueTableIFS.selectList(e) - }, - // 鑾峰彇IFS璁㈠崟 - submitPrint () { - - }, - // 鎶ユ - playOrder(num) { - // if (this.multipleSelection.length < 1) { - // this.$message.error('璇烽�夋嫨闇�瑕佹姤妫�鐨勬暟鎹�') - // return - // } - this.active = num - if (num === 0) { - this.refreshTable('page') - } - }, - // 鍒囨崲tab琛ㄦ牸 - handleTab(m, i) { - this.tabIndex = i; - this.componentData.entity.state = m.value - this.refreshTable() - }, - // 琛ㄦ牸閫夋嫨鏂规硶 - selectMethod(val){ - this.multipleSelection = val - }, - openIFS () { - this.IFSDialog = true - }, - getStyle(){ - return 'height: calc(100% - '+(this.more?'94':'44')+'px)' - } - }, -} -</script> - -<style scoped> -.title { - height: 60px; - line-height: 60px; -} - -.search { - background-color: #fff; - height: 80px; - display: flex; - align-items: center; - overflow: hidden; -} - -.search_thing { - display: flex; - align-items: center; - height: 50px; - width: 250px; -} - -.search_label { - width: 110px; - font-size: 14px; - text-align: right; -} - -.search_input { - width: calc(100% - 90px); -} -.table { - margin-top: 10px; - background-color: #fff; - width: calc(100% - 40px); - height: calc(100% - 60px - 80px - 10px - 40px); - padding: 20px; -} -.tab { - list-style-type: none; - display: flex; - margin-bottom: 12px; -} - -.tab li { - line-height: 24px; - padding: 6px 14px; - font-size: 14px; - color: #333333; - border: 1px solid #EEEEEE; - cursor: pointer; -} - -.tab li:nth-child(1) { - border-radius: 8px 0 0 8px; -} - -.tab li:nth-child(2) { - border-radius: 0 8px 8px 0; -} - -.tab li.active { - border-color: #3A7BFA; - color: #3A7BFA; -} -</style> diff --git a/src/components/view/b1-sample.vue b/src/components/view/b1-sample.vue index c7a18b0..1db786b 100644 --- a/src/components/view/b1-sample.vue +++ b/src/components/view/b1-sample.vue @@ -366,7 +366,7 @@ <el-button type="primary" @click="confirmShelves" :loading="upLoadShelves">纭� 瀹�</el-button> </span> </el-dialog> - <input type="password" id="ScanCodeInfo" v-model="codeInfo" @keyup.enter="keyup" style="opacity: 0;height: 0px;margin: 0px;padding: 0px;position: absolute;top: 0;"></input> + <!-- <input type="password" id="ScanCodeInfo" v-model="codeInfo" @keyup.enter="keyup" style="opacity: 0;height: 0px;margin: 0px;padding: 0px;position: absolute;top: 0;"></input> --> </div> </template> @@ -412,39 +412,39 @@ codeInfo:null, } }, - watch:{ - storageVisible(newVal){ - if(newVal){ - // this.$message.success('鎵爜锛氭墦寮�') - let input = document.getElementById('ScanCodeInfo'); - input.focus(); - this.startTime = setInterval(()=>{ - input.focus() - },1000) - }else{ - // this.$message.warning('鎵爜锛氬叧闂�') - clearInterval(this.startTime) - } - }, - exportVisible(newVal){ - if(newVal){ - // this.$message.success('鎵爜锛氭墦寮�') - let input = document.getElementById('ScanCodeInfo'); - input.focus(); - this.startTime = setInterval(()=>{ - input.focus() - },1000) - }else{ - // this.$message.warning('鎵爜锛氬叧闂�') - clearInterval(this.startTime) - } - }, - isEdit(newVal){ - if(!newVal){ - this.shelves = {} - } - } - }, + // watch:{ + // storageVisible(newVal){ + // if(newVal){ + // // this.$message.success('鎵爜锛氭墦寮�') + // let input = document.getElementById('ScanCodeInfo'); + // input.focus(); + // this.startTime = setInterval(()=>{ + // input.focus() + // },1000) + // }else{ + // // this.$message.warning('鎵爜锛氬叧闂�') + // clearInterval(this.startTime) + // } + // }, + // exportVisible(newVal){ + // if(newVal){ + // // this.$message.success('鎵爜锛氭墦寮�') + // let input = document.getElementById('ScanCodeInfo'); + // input.focus(); + // this.startTime = setInterval(()=>{ + // input.focus() + // },1000) + // }else{ + // // this.$message.warning('鎵爜锛氬叧闂�') + // clearInterval(this.startTime) + // } + // }, + // isEdit(newVal){ + // if(!newVal){ + // this.shelves = {} + // } + // } + // }, mounted() { this.selectList() }, diff --git a/src/main.js b/src/main.js index ab48d7d..9be5ec0 100644 --- a/src/main.js +++ b/src/main.js @@ -21,11 +21,15 @@ //鏈湴 // Vue.prototype.LOCATIONVUE = "http://127.0.0.1:80"; // const javaApi = 'http://127.0.0.1:8001'; -const javaApi = 'http://172.20.10.5:8001'; +// const javaApi = 'http://172.20.10.5:8001'; // //閫氫俊娴嬭瘯搴� // Vue.prototype.LOCATIONVUE = "http://10.1.13.77:8080"; -// const javaApi = 'http://10.1.13.77:8001'; +const javaApi = 'http://10.1.13.77:8001'; + +// //閫氫俊姝e紡搴� +// Vue.prototype.LOCATIONVUE = "https://ztwxlims.ztt.cn:7443"; +// const javaApi = 'https://ztwxlims.ztt.cn:7443/lims/'; //浜� // Vue.prototype.LOCATIONVUE = "http://114.132.189.42:8080"; -- Gitblit v1.9.3