.nvmdrc | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b1-ins-order/add.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b1-ins-order/fiberoptic-config-two.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b1-ins-order/fiberoptic-config.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/do/b1-inspect-order-plan/Inspection.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/view/b1-inspect-order-plan.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/view/b1-inspection-order.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/view/enter.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
.nvmdrc
ÎļþÒÑɾ³ý src/components/do/b1-ins-order/add.vue
@@ -906,6 +906,7 @@ <script> import ValueTable from '../../tool/value-table.vue' import fiberOpticConfig from './fiberoptic-config.vue' import fiberOpticConfigTwo from './fiberoptic-config-two.vue' import equipConfig from './equip-config.vue' import cableConfig from './cable-config.vue' import Vue from 'vue' @@ -915,10 +916,15 @@ components: { ValueTable, fiberOpticConfig, fiberOpticConfigTwo, equipConfig, cableConfig }, props: { examine: { type: Number, default: () => 0 }, active: { type: Number, default: () => 0 @@ -1585,24 +1591,18 @@ } return true }) /* //æ ¡éªæ£éªé¡¹çè¦æ±å¼åè¦æ±æè¿° const isTrue = this.checkRequiredValueAndRemark(filterProductList) if(!isTrue){ this.$message.error('æ£éªé¡¹çè¦æ±å¼ä¸è¦æ±æè¿°ä¸å¹é ï¼ è¯·æ£æ¥') return } */ //æ ¡éªæ£éªé¡¹çè¦æ±å¼åè¦æ±æè¿°,ä» å§æè¦æ± if(this.isAskOnlyRead){ //æ ¡éªæ£éªé¡¹çè¦æ±å¼åè¦æ±æè¿°,ä» å§æè¦æ± if(this.active==1&&this.isAskOnlyRead){ const isTrue = this.checkRequiredValueAndRemark(filterProductList) if(!isTrue){ this.$message.error('æ£éªé¡¹çè¦æ±å¼ä¸è¦æ±æè¿°ä¸å¹é ï¼ è¯·æ£æ¥') return } if(!isTrue){ this.$message.error('æ£éªé¡¹çè¦æ±å¼ä¸è¦æ±æè¿°ä¸å¹é ï¼ è¯·æ£æ¥') return } } console.log('isHaveBushing===', this.totalArr) // inspectionItem let spcialItem = this.totalArr.find(a => a.state == 1 && a.inspectionItem.includes('æ¾å¥ç®¡')) let spcialItem = null//this.totalArr.find(a => a.state == 1 && a.inspectionItem.includes('æ¾å¥ç®¡')) // console.log('isHaveBushing===', isHaveBushing) if (productListSelected && select[2] === 'å ç¼' && isHaveBushing === false) { this.$message.error('å ç¼æ¸©åº¦å¾ªç¯é¡¹ç®å¿ é¡»è¿è¡å 纤é ç½®') @@ -1643,56 +1643,12 @@ } } }, /* checkRequiredValueAndRemark(data){ let isTrue = true try{ data.forEach(ele=>{ if(['â¤','â¥','>','<','='].includes(ele.ask[0])){ const askVal = ele.ask.substring(1,ele.ask.length) if(isNaN(askVal) || ele.tell.indexOf(askVal)<0){ isTrue = false } } if(ele.ask.indexOf('-')>0 && ele.ask.length>1){ let tell = ele.tell if(ele.tell.indexOf('~')>0){ tell = ele.tell.replace('~','-') } const splits = ele.ask.split('-') if(splits.length==2 && !isNaN(splits[0]) && !isNaN(splits[1])){ let min = Math.min(...splits) let max = Math.max(...splits) if(ele.tell.indexOf('±')<0&&tell.indexOf(ele.ask)<0){ isTrue = false }else if(ele.tell.indexOf('±')>0&&ele.tell!=ele.ask){ let splitNums = ele.tell.split('±') if(splitNums.length<2){ isTrue = false }else{ let minTell = Number(splitNums[0])-Number(splitNums[1]) let maxTell = Number(splitNums[0])+Number(splitNums[1]) if(minTell!=min || maxTell!=max){ isTrue = false } } } }else{ isTrue = false } } }) }catch(error){ console.log(error); isTrue = false } return isTrue }, */ /**     * æ ¡éªå§æè¦æ±çæ£éªé¡¹çè¦æ±æè¿°åè¦æ±å¼     *     */ * æ ¡éªå§æè¦æ±çæ£éªé¡¹çè¦æ±æè¿°åè¦æ±å¼ * */ checkRequiredValueAndRemark(data){ let isTrue = true let isTrue = true try{ data.forEach(ele=>{ //夿ï¼â¤,â¥,>,<,=ï¼è¿å ç§æ åµ @@ -1705,7 +1661,7 @@ } //夿èå´(10-25),è¦æ±å¼å¿ é¡»æ¯- if(ele.ask.indexOf('-')>0 && ele.ask.length>1){ //è¦æ±æè¿°ç~åè¦æ±å¼ç-ï¼çæ //è¦æ±æè¿°ç~åè¦æ±å¼ç-ï¼çæ let tell = ele.tell if(ele.tell.indexOf('~')>0){ tell = ele.tell.replace('~','-') @@ -1713,12 +1669,31 @@ const splits = ele.ask.split('-') //æ»¡è¶³æ ¼å¼è¦æ±ï¼å¹¶ä¸ä¸¤ä¸ªé½æ¯æ°å if(splits.length==2 && !isNaN(splits[0]) && !isNaN(splits[1])){ let min = Math.min(...splits) let max = Math.max(...splits) //å¤æÂ±çæ åµ if(ele.tell.indexOf('±')<0&&tell.indexOf(ele.ask)<0){ /** * 夿æ åµ * 1.è¦æ±æè¿°ä¸è¦æ±æè¿°ç¸å * 2.è¦æ±æè¿°å å«è¦æ±å¼ * 3.è¦æ±æè¿°ä¸º3N-10Nè¿ç§æ åµ * 4.è¦æ±æè¿°ä¸º10±5è¿ç§æ åµ * 5. */ let min = Math.min(...splits) let max = Math.max(...splits) if(min==max){ isTrue = false }else if(ele.tell.indexOf('±')>0&&ele.tell!=ele.ask){ } //è¦æ±æè¿°ä¸ä¸å å«Â±ä»¥ååºé´çæ°åï¼åè¿åfalse if((tell.indexOf('±')<0&&tell.indexOf('-')<0)){ isTrue = false }else if(ele.tell.indexOf('-')==0){ isTrue = false }else if(tell.indexOf('-')>0){ const splitTells = tell.split('-') if(splitTells[0].indexOf(min)<0 || splitTells[1].indexOf(max)<0){ isTrue = false } }else if(tell.indexOf('±')>0&&tell!=ele.ask){ //æ ¡éªè¦æ±æè¿°ä¸º10±5è¿ç§åæ³çæ åµ let splitNums = ele.tell.split('±') if(splitNums.length<2){ isTrue = false @@ -1741,7 +1716,6 @@ } return isTrue }, save0(){ if(this.editTable.every(m=>m.value)){ let sampleList = this.handleData(this.HaveJson(this.sampleList),this.handleAsk,1) src/components/do/b1-ins-order/fiberoptic-config-two.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,1585 @@ <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="isInspection()" :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" @blur="addBushing" :disabled="active!=1"></el-input> </div> <div class="search-item" style="margin-right: 10px;"> <label style="width: 100px">æ¯æ ¹ç®¡æ½æ£æ åé</label> <el-input v-model="packageInfo.standNum" placeholder="请è¾å ¥" size="small" @blur="addStandNum" :disabled="active!=1" style="width:100px"></el-input> </div> <div class="search-item"> <label style="width: 100px">æ¯æ ¹ç®¡æ½æ£æ£æµé</label> <el-input v-model="packageInfo.testNum" placeholder="请è¾å ¥" size="small" @blur="addTestNum" style="width:100px" :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.selectFiberList.length > 0 || 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" 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 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,1)" :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"> <template slot-scope="scope"> <el-input v-model="scope.row.code" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> <el-table-column prop="model" label="å çº¤å¸¦è§æ ¼" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.model" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> <el-table-column prop="standard" label="åèæ å" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.standard" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> <el-table-column prop="num" label="å çº¤æ£æµé" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.num" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </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" 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 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%;" > <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,0)" :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> import { set } from 'vue' export default { props: { active: { type: Number, default: () => 0 }, }, data() { return { detectionType: null, detectionSelect: [], selectFiberList: [], 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 } } }) console.log(111, this.sample); 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.length ==0)a.fibers=[] if(a.fiber==null || a.fiber.length == 0)a.fiber=[] // 夿æ¯å¦å«æå 纤带 if(this.packageInfo.ismiers){ this.fibersList = [] // æ°å¢ this.fiberList = [] // æ°å¢ if(a.fibers.length>0){ 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) }) } }else{ this.fiberList = [] a.fiber.forEach(b=>{ this.fiberList.push(b) }) } }) } this.getTypeDicts1() this.getStandTreeBySampleType() this.getStandTreeBySampleType2() this.selectsStandardMethodByFLSSM2() }, methods: { handleSelectionChange(val) { // this.selectFibers = val this.multiFiberList = val }, handleSelectionChange1(val) { this.selectBushing = val }, handleSelectionChange2(val){ this.detectionSelect = val // èµå¼æ£æµé¡¹ä¿¡æ¯ å 纤带 if(this.detectionItems.type == 1) { this.multiFiberList.forEach(item => { this.fibersList.forEach(a => { if(a.ident == item.ident){ a.productList = [] this.fibersList.find(a => a.ident == item.ident).productList = this.detectionSelect } }) }) } if(this.detectionItems.type == 0) { // èµå¼æ£æµé¡¹ä¿¡æ¯ å 纤 console.log('000',this.selectFiberList); this.selectFiberList.forEach(item => { this.fiberList.forEach(a => { if(a.ident == item.ident){ a.productList = [] this.fiberList.find(a => a.ident == item.ident).productList = this.detectionSelect } }) }) } }, handleSelectionChange4(val){ this.selectFiberList = val }, outConfig() { this.$parent.configShow = false }, getTypeDicts1() { this.$axios.post(this.$api.enums.selectEnumByCategory, { category: "è²æ " }).then(res => { this.colors = res.data }) }, // å¥ç®¡æ°ç®çæè¡¨æ ¼æ°æ® addBushing() { this.bushing = [] for(let i = 0; i < this.packageInfo.num1; i++){ let bushing = { ident: this.bushing.length + 1, color: this.colors[i].label, standNum: null, testNum: null, fibers: [], fiber: [] } this.bushing.push(bushing) } }, // å¥ç®¡æ åéèµå¼ addStandNum() { if(this.selectBushing.length > 0) { this.bushing.forEach(item => { this.selectBushing.forEach(a => { if(item.ident == a.ident) { item.standNum = this.packageInfo.standNum } }) }) } }, // å¥ç®¡æ£æµéèµå¼ addTestNum() { if(this.selectBushing.length > 0) { this.bushing.forEach(item => { this.selectBushing.forEach(a => { if(item.ident == a.ident) { item.testNum = this.packageInfo.testNum } }) }) } }, isInspection() { this.fiberList = [] this.fibersList = [] this.detectionItems = [] // 页颿¯å¦å«æå 纤带 if(this.packageInfo.ismiers) { // å ¨æ£ if (this.packageInfo.radio == 0) { // æ ¹æ®æ åéèµå¼æ£æµé if(parseInt(this.packageInfo.standNum) > 0 ) { // ç»å 纤带èµå¼ this.packageInfo.testNum = this.packageInfo.standNum this.selectBushing = this.bushing this.addFibers() this.multiFiberList = this.fibersList // é»è®¤å¾é setTimeout(() => { this.selectBushing.forEach(item =>{ let rowToSelect = this.bushing.find(a => a.ident == item.ident) this.$refs.table0.toggleRowSelection(rowToSelect, true) }) this.multiFiberList.forEach(item =>{ let rowToSelect = this.fibersList.find(a => a.ident == item.ident) this.$refs.table2.toggleRowSelection(rowToSelect, true) }) }, 200) } } }else { if(this.packageInfo.radio == 0) { if(parseInt(this.packageInfo.standNum) > 0 ) { this.packageInfo.testNum = this.packageInfo.standNum this.selectBushing = this.bushing this.addFiber() // é»è®¤å¾é setTimeout(() => { this.selectBushing.forEach(item =>{ let rowToSelect = this.bushing.find(a => a.ident == item.ident) this.$refs.table0.toggleRowSelection(rowToSelect, true) }) }, 200) } } } }, 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) } // ç»å 纤带èµå¼ if(this.selectBushing.length===0){ this.selectBushing = this.bushing } // this.miresModels 纤带类å // this.miresStandards åèæ å this.fibersList = [] this.packageInfo.ismiers = true this.fiberList = [] this.selectBushing.forEach(a => { a.fiber = [] a.fibers = [] for(let j = 0; j < parseInt(a.testNum); j++){ let fibers = { id: this.fibersList.length + 1, code: null, color: a.color, model: null, standard: null, num: a.testNum, productList: this.HaveJson(this.productList2), fiber: [] } a.fibers.push(fibers) this.fibersList.push(fibers) } }) } 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) // }) // å°ä¸ææ¡å¼èµå¼ç»å 纤 çå¬å»é¤ if(this.selectFiberList.length == 0) { this.$message.error('è¯·éæ©æ°æ®') return } this.selectFiberList.forEach(item => { this.fiberList.forEach(a => { if(a.ident == item.ident){ a.model = this.mireModel.split(' - ')[1] // å çº¤è§æ ¼ a.noSplitModel = this.mireModel // å çº¤è§æ ¼ if(this.mireStandards != null) { a.standard = this.mireStandards.find(a => a.id == this.mireStandard).code // åèæ å } } }) }) if (val === null || val === '') return if(this.mireStandards == null ) return this.$axios.post(this.$api.standardTree.selectStandardProductList, { model: this.mireModel.split(' - ')[1], standardMethodListId: val, factory: '' }, { headers: { 'Content-Type': 'application/json' } }).then(res => { this.detectionItems = [] if(res.data != null && res.data.length != 0){ res.data.forEach(a => { a.state = 0 }) this.detectionItems = res.data this.detectionType = 0 this.$set(this.detectionItems,'type',0) } }) }, 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) // }) if(this.multiFiberList.length == 0) { this.$message.error('è¯·éæ©éè¦æ´æ¹çæ°æ®') return } 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 => { // å°è·åçæ£æµé¡¹ä¿¡æ¯èµå¼ this.detectionItems = [] if(res.data != null && res.data.length != 0){ res.data.forEach(a => { a.state = 0 }) this.detectionItems = res.data this.detectionType = 1 this.$set(this.detectionItems,'type',1) } // ç»éä¸çå 纤带èµå¼ for(let i= 0; i < this.fibersList.length; i++){ this.multiFiberList.forEach(item => { if(this.fibersList[i].ident == item.ident){ this.fibersList[i].model = this.miresModel // çº¤å¸¦è§æ ¼ this.fibersList[i].num = this.miresModel.replace('è¯','') // å çº¤æ£æµé this.fibersList[i].productList = this.detectionItems // æ£æµé¡¹ this.miresStandards.forEach(a => { if(a.id == this.miresStandard) { this.fibersList[i].standard = a.code // åèæ å } }) } }) } }) }, 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 = [] // éæ©äºå 纤带 if (this.packageInfo.ismiers) { if(this.multiFiberList.length != 0){ this.multiFiberList.forEach((a,index) => { a.fiber = [] for (var i = 0; i < parseInt(a.num); i++) { let fiber = { ident: this.fiberList.length + 1, bushColor: a.color, color: colors2[(i+(parseInt(a.num)*index))>colors2.length?0:i+(parseInt(a.num)*index)*index].label, model: null, noSplitModel: null, standard: null, fibersIdent: a.ident, productList: [] } this.fiberList.push(fiber) } }) } else { this.selectBushing.forEach((a,index) => { a.fiber = [] for (var i = 0; i < parseInt(a.testNum); i++) { let fiber = { ident: this.fiberList.length + 1, bushColor: a.color, color: colors2[(i+(parseInt(a.testNum))*index)>colors2.length?0:i+(parseInt(a.testNum))*index].label, model: null, noSplitModel: null, standard: null, productList: [] } this.fiberList.push(fiber) } }) } }else { this.fiberList = [] let flag = true // æç §é¡ºåºçæå çº¤è²æ 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.selectBushing.forEach((item,index) =>{ if(item.testNum != null && item.testNum != ''){ for(let i =0; i < parseInt(item.testNum); i++){ let fiber = { ident: this.fiberList.length + 1, bushColor: item.color, color: colors2[(i+(parseInt(item.testNum)*index))>colors2.length?0:i+(parseInt(item.testNum)*index)*index].label, model: null, standard: null, productList: [] } this.fiberList.push(fiber) } }else { flag = false } }) if(!flag){ this.$message.error('请填åå çº¤æ£æµé') return } } // äºä»£ // // æ¯å¦éæ©å¥ç®¡ // if(this.selectBushing.length == 0) { // this.$message.error('æªéæ©å¥ç®¡') // return // } // this.fiberList = [] // let flag = true // // æç §é¡ºåºçæå çº¤è²æ // 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.selectBushing.forEach((item,index) =>{ // if(item.testNum != null && item.testNum != ''){ // for(let i =0; i < parseInt(item.testNum); i++){ // let fiber = { // ident: this.fiberList.length + 1, // bushColor: item.color, // color: colors2[(i+(parseInt(item.testNum)*index))>colors2.length?0:i+(parseInt(item.testNum)*index)*index].label, // model: null, // standard: null, // productList: [] // } // this.fiberList.push(fiber) // } // }else { // flag = false // } // }) // if(!flag){ // this.$message.error('请填åå çº¤æ£æµé') // return // } // æå // 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) // } // }) if(this.selectBushing.length == 0) { this.$message.error('æªéæ©å¥ç®¡') return } // å¥ç®¡çæµè¯é * éæ©çå 纤带æ°é this.fibersList = [] this.selectBushing.forEach(item => { for(let i = 0; i < parseInt(this.packageInfo.testNum); i++){ let fibers = { ident: this.fibersList.length + 1, color: item.color, code: null, model: null, standard: null, num: null, fiber: [], productList: [] } this.fibersList.push(fibers) } }) }, rowClickFiber(row, column, event,type){ console.log('row',row); if(type == 1) { this.fiberList = row.fiber if(row.productList != null && row.productList.length > 0) { this.detectionItems = [] this.detectionItems = row.productList } if(row.fiber != null && row.fiber.length > 0) { this.fiberList = [] this.fiberList = row.fiber } }else if (type == 0){ this.detectionItems = [] this.detectionItems = row.productList } // if(type == 1) { // if((row.model == null || row.model == '') && (row.standard == null || row.standard == '')){ // this.detectionItems = [] // return // } // if(row.model != null && row.model != ''){ // this.miresModel = row.model // this.selectsStandardMethodByFLSSM2() // } // setTimeout(() => { // if(row.standard !=null && row.standard != ''){ // this.miresStandard = this.miresStandards.find(a => a.code == row.standard).id // } // this.$axios.post(this.$api.standardTree.selectStandardProductList, { // model: '', // standardMethodListId: this.miresStandard, // factory: 'ä¸å¤©ç§ææ£æµä¸å¿ - é信产åå®éªå®¤ - å 纤带 - ' + this.miresModel + ' - ', // }, { // headers: { // 'Content-Type': 'application/json' // } // }).then(res => { // // å°è·åçæ£æµé¡¹ä¿¡æ¯èµå¼ // this.detectionItems = [] // if(res.data != null && res.data.length != 0){ // this.detectionItems = res.data // this.detectionType = 1 // this.$set(this.detectionItems,'type',1) // if (row.productList != null && row.productList.length > 0) { // let product = JSON.parse(JSON.stringify(row.productList)) // setTimeout(() => { // product.forEach(p => { // let rowToSelect = this.detectionItems.find(item => item.id === p.id); // if (rowToSelect) { // this.toggleSelection(rowToSelect); // } // }); // },200) // } // } // }) // },1000) // }else if(type == 0) { // if((row.noSplitModel == null || row.noSplitModel == '') && (row.standard == null || row.standard == '')){ // this.detectionItems = [] // return // } // if(row.model != null && row.model != ''){ // this.mireModel = row.noSplitModel // this.selectsStandardMethodByFLSSM() // } // setTimeout(() => { // if(row.standard !=null && row.standard != ''){ // this.mireStandard = this.mireStandards.find(a => a.code == row.standard).id // } // this.$axios.post(this.$api.standardTree.selectStandardProductList, { // model: this.mireModel.split(' - ')[1], // standardMethodListId: this.mireStandard, // factory: '' // }, { // headers: { // 'Content-Type': 'application/json' // } // }).then(res => { // this.detectionItems = [] // if(res.data != null && res.data.length != 0){ // res.data.forEach(a => { // a.state = 0 // }) // this.detectionItems = res.data // this.detectionType = 0 // this.$set(this.detectionItems,'type',0) // if (row.productList != null && row.productList.length > 0) { // let product = JSON.parse(JSON.stringify(row.productList)) // setTimeout(() => { // product.forEach(p => { // let rowToSelect = this.detectionItems.find(item => item.id === p.id); // if (rowToSelect) { // this.toggleSelection(rowToSelect); // } // }); // },200) // } // } // }) // },1000); // } }, 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) { console.log(this.detectionItems); 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.selectFiberList.length > 0){ this.selectFiberList.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') if(this.bushing.length === 0){ this.$message.error('缺å°å¥ç®¡æ æ³ä¿å') return } this.bushing.forEach(item=>{ // 妿å 纤带æå¼ if(this.fibersList.length != 0) { this.fibersList.forEach(a=>{ a.fiber = this.fiberList.filter(b=>b.fibersIdent == a.ident) }) item.fibers = this.fibersList // å 纤带 item.fiber = [] // å 纤 }else { // 妿å 纤带没æå¼ item.fibers = [] // å 纤带 item.fiber = this.fiberList // å 纤 } }) 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> src/components/do/b1-ins-order/fiberoptic-config.vue
@@ -22,7 +22,7 @@ <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-group v-model="packageInfo.radio" size="small" @change="isInspection()" :disabled="active!=1"> <el-radio :label="0">å ¨æ£</el-radio> <el-radio :label="1">æ½æ£</el-radio> </el-radio-group> @@ -31,16 +31,16 @@ 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> <el-input v-model="packageInfo.num1" placeholder="请è¾å ¥" size="small" @blur="addBushing" :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> <label style="width: 100px">æ¯æ ¹ç®¡æ½æ£æ åé</label> <el-input v-model="packageInfo.standNum" placeholder="请è¾å ¥" size="small" @blur="addStandNum" :disabled="active!=1" style="width:100px"></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> <label style="width: 100px">æ¯æ ¹ç®¡æ½æ£æ£æµé</label> <el-input v-model="packageInfo.testNum" placeholder="请è¾å ¥" size="small" @blur="addTestNum" :disabled="packageInfo.radio===0||active!=1" style="width:100px"></el-input> </div> </div> <el-table ref="table0" :data="bushing" tooltip-effect="dark" style="width: 100%" height="203px" size="small" @@ -78,7 +78,7 @@ @select="upProductSelect" > <el-table-column type="selection" width="55" :selectable="()=>((currentDetectionItems||this.multiFiberList.length > 0)&&active==1)"> :selectable="()=>((currentDetectionItems||this.selectFiberList.length > 0 || 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> @@ -107,21 +107,22 @@ <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> <el-button size="mini" type="primary" class="btns" @click="addFibers" 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;"> <!-- <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"> :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%;"> </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()" @@ -129,10 +130,30 @@ <el-option v-for="item in miresStandards" :key="item.id" :label="item.code" :value="item.id"> </el-option> </el-select> </div> --> <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%;" > <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)" size="small" @selection-change="handleSelectionChange" highlight-current-row @row-click="(row, column, event)=>rowClickFiber(row, column, event,1)" :header-cell-class-name="setClassName0"> <el-table-column type="selection" @@ -140,12 +161,24 @@ :selectable="()=>(active==1)"> </el-table-column> <el-table-column prop="code" label="å 纤带ç¼å·" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.code" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> <el-table-column prop="model" label="å çº¤å¸¦è§æ ¼" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.model" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> <el-table-column prop="standard" label="åèæ å" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.standard" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> <el-table-column prop="num" label="å çº¤æ£æµé" show-overflow-tooltip align="center"> <template slot-scope="scope"> <el-input v-model="scope.row.num" placeholder="请è¾å ¥" size="mini" ></el-input> </template> </el-table-column> </el-table> </div> @@ -153,12 +186,12 @@ <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> --> <el-button size="mini" type="primary" class="btns" @click="addFiber" 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;"> <!-- <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"> @@ -174,11 +207,29 @@ <el-option v-for="item in mireStandards" :key="item.id" :label="item.code" :value="item.id"> </el-option> </el-select> </div> --> <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%;" > <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)" @row-click="(row, column, event)=>rowClickFiber(row, column, event,0)" :header-cell-class-name="setClassName0"> <el-table-column type="selection" @@ -295,6 +346,7 @@ </template> <script> import { set } from 'vue' export default { props: { active: { @@ -304,6 +356,9 @@ }, data() { return { detectionType: null, detectionSelect: [], selectFiberList: [], type:1, saveLoad: false, packageInfo: { @@ -337,7 +392,7 @@ fiberList: [], fibersList: [], selectFibers: [], detectionItems:[], detectionItems: [], currentDetectionItems:null, mireStandardLoading:false, multiFiberList:[], @@ -363,23 +418,23 @@ }, }, 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; } } // 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 => { @@ -391,6 +446,7 @@ } } }) console.log(111, this.sample); 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){ @@ -401,37 +457,96 @@ 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(a.fibers==null || a.fibers.length ==0)a.fibers=[] if(a.fiber==null || a.fiber.length == 0)a.fiber=[] // 夿æ¯å¦å«æå 纤带 if(this.packageInfo.ismiers){ a.fibers.forEach(b=>{ this.fibersList = [] // æ°å¢ this.fiberList = [] // æ°å¢ if(a.fibers.length>0){ a.fibers.forEach(b=>{ // å 纤带 this.fibersList.push(b) b.fiber.forEach(c=>{ this.fiberList.push(c) }) // å 纤 // this.fiberList = [] // this.fiberList = b.fiber }) } else { a.fiber.forEach(b=>{ this.fiberList.push(b) }) } }else{ this.fiberList = [] a.fiber.forEach(b=>{ this.fiberList.push(b) }) } }) } this.getTypeDicts1() this.getStandTreeBySampleType() this.getStandTreeBySampleType2() this.selectsStandardMethodByFLSSM2() }, methods: { handleSelectionChange(val) { this.selectFibers = val // this.selectFibers = val this.multiFiberList = val if(val.length > 0) { this.rowClickFiber(val[val.length-1],null,null,1) } }, handleSelectionChange1(val) { this.selectBushing = val }, handleSelectionChange2(val){}, handleSelectionChange2(val){ this.detectionSelect = val // èµå¼æ£æµé¡¹ä¿¡æ¯ å 纤带 if(this.detectionItems.type == 1) { this.multiFiberList.forEach(item => { this.fibersList.forEach(a => { if(a.ident == item.ident){ a.productList = [] this.fibersList.find(a => a.ident == item.ident).productList = this.detectionSelect } }) }) } if(this.detectionItems.type == 0) { // èµå¼æ£æµé¡¹ä¿¡æ¯ å 纤 this.selectFiberList.forEach(item => { this.fiberList.forEach(a => { if(a.ident == item.ident){ a.productList = [] this.fiberList.find(a => a.ident == item.ident).productList = this.detectionSelect } }) }) if(this.multiFiberList.length == 1) { this.multiFiberList.forEach(item => { this.fibersList.forEach(a => { if(a.ident == item.ident){ a.fiber = this.fiberList } }) }) }else if(this.multiFiberList.length > 1) { this.fibersList.forEach(item => { item.fiber = this.fiberList }) } } }, handleSelectionChange4(val){ this.multiFiberList = val this.selectFiberList = val if(val != 0) { this.rowClickFiber(val[val.length-1],null,null,0) } }, outConfig() { this.$parent.configShow = false @@ -442,6 +557,100 @@ }).then(res => { this.colors = res.data }) }, // å¥ç®¡æ°ç®çæè¡¨æ ¼æ°æ® addBushing() { this.bushing = [] for(let i = 0; i < this.packageInfo.num1; i++){ let bushing = { ident: this.bushing.length + 1, color: this.colors[i].label, standNum: null, testNum: null, fibers: [], fiber: [] } this.bushing.push(bushing) } }, // å¥ç®¡æ åéèµå¼ addStandNum() { if(this.selectBushing.length > 0) { this.bushing.forEach(item => { this.selectBushing.forEach(a => { if(item.ident == a.ident) { item.standNum = this.packageInfo.standNum } }) }) } }, // å¥ç®¡æ£æµéèµå¼ addTestNum() { if(parseInt(this.packageInfo.testNum) > parseInt(this.packageInfo.standNum)) { this.packageInfo.testNum = this.packageInfo.standNum this.$message.error('æ£æµéä¸è½å¤§äºæ åé') } if(this.selectBushing.length > 0) { this.bushing.forEach(item => { this.selectBushing.forEach(a => { if(item.ident == a.ident) { item.testNum = this.packageInfo.testNum } }) }) } }, isInspection() { this.fiberList = [] this.fibersList = [] this.detectionItems = [] // 页颿¯å¦å«æå 纤带 if(this.packageInfo.ismiers) { // å ¨æ£ if (this.packageInfo.radio == 0) { // æ ¹æ®æ åéèµå¼æ£æµé if(parseInt(this.packageInfo.standNum) > 0 ) { // ç»å 纤带èµå¼ this.packageInfo.testNum = this.packageInfo.standNum this.selectBushing = this.bushing this.addFibers() this.multiFiberList = this.fibersList // é»è®¤å¾é setTimeout(() => { this.selectBushing.forEach(item =>{ let rowToSelect = this.bushing.find(a => a.ident == item.ident) this.$refs.table0.toggleRowSelection(rowToSelect, true) }) this.multiFiberList.forEach(item =>{ let rowToSelect = this.fibersList.find(a => a.ident == item.ident) this.$refs.table2.toggleRowSelection(rowToSelect, true) }) }, 200) } } }else { if(this.packageInfo.radio == 0) { if(parseInt(this.packageInfo.standNum) > 0 ) { this.packageInfo.testNum = this.packageInfo.standNum this.selectBushing = this.bushing this.addFiber() // é»è®¤å¾é setTimeout(() => { this.selectBushing.forEach(item =>{ let rowToSelect = this.bushing.find(a => a.ident == item.ident) this.$refs.table0.toggleRowSelection(rowToSelect, true) }) }, 200) } } } }, upNum() { this.fiberList = [] @@ -477,7 +686,34 @@ } this.bushing.push(bushing) } } else { // ç»å 纤带èµå¼ if(this.selectBushing.length===0){ this.selectBushing = this.bushing } // this.miresModels 纤带类å // this.miresStandards åèæ å this.fibersList = [] this.packageInfo.ismiers = true this.fiberList = [] this.selectBushing.forEach(a => { a.fiber = [] a.fibers = [] for(let j = 0; j < parseInt(a.testNum); j++){ let fibers = { id: this.fibersList.length + 1, code: null, color: a.color, model: null, standard: null, num: a.testNum, productList: this.HaveJson(this.productList2), fiber: [] } a.fibers.push(fibers) this.fibersList.push(fibers) } }) } else { this.bushing = [] } }, @@ -528,7 +764,46 @@ }) }, methodChange(val) { if (val === null || val === '') return // 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) // }) // å°ä¸ææ¡å¼èµå¼ç»å 纤 çå¬å»é¤ if(this.selectFiberList.length == 0) { this.$message.error('è¯·éæ©æ°æ®') return } this.selectFiberList.forEach(item => { this.fiberList.forEach(a => { if(a.ident == item.ident){ a.model = this.mireModel.split(' - ')[1] // å çº¤è§æ ¼ a.noSplitModel = this.mireModel // å çº¤è§æ ¼ if(this.mireStandards != null) { a.standard = this.mireStandards.find(a => a.id == this.mireStandard).code // åèæ å } } }) }) if (val === null || val === '') return if(this.mireStandards == null ) return this.$axios.post(this.$api.standardTree.selectStandardProductList, { model: this.mireModel.split(' - ')[1], standardMethodListId: val, @@ -538,19 +813,45 @@ 'Content-Type': 'application/json' } }).then(res => { res.data.forEach(a => { this.detectionItems = [] if(res.data != null && res.data.length != 0){ 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) this.detectionItems = res.data this.detectionType = 0 this.$set(this.detectionItems,'type',0) } }) }, 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) // }) if(this.multiFiberList.length == 0) { this.$message.error('è¯·éæ©éè¦æ´æ¹çæ°æ®') return } if (val === null || val === '') return this.$axios.post(this.$api.standardTree.selectStandardProductList, { model: '', @@ -561,19 +862,36 @@ '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.detectionItems = [] if(res.data != null && res.data.length != 0){ res.data.forEach(a => { a.state = 0 }) this.addFibers() }, 200) }) this.detectionItems = res.data this.detectionType = 1 this.$set(this.detectionItems,'type',1) } // ç»éä¸çå 纤带èµå¼ for(let i= 0; i < this.fibersList.length; i++){ this.multiFiberList.forEach(item => { if(this.fibersList[i].ident == item.ident){ this.fibersList[i].model = this.miresModel // çº¤å¸¦è§æ ¼ this.fibersList[i].num = this.miresModel.replace('è¯','') // å çº¤æ£æµé this.fibersList[i].productList = this.detectionItems // æ£æµé¡¹ this.miresStandards.forEach(a => { if(a.id == this.miresStandard) { this.fibersList[i].standard = a.code // åèæ å } }) } }) } }) }, addFiber() { // ææ° let colors2 = [] if (this.packageInfo.num1 / this.colors.length > 1) { let num = this.packageInfo.num1 / this.colors.length @@ -585,25 +903,23 @@ 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) => { if(this.multiFiberList.length != 0){ this.multiFiberList.forEach((a,index) => { a.fiber = [] for (var i = 0; i < parseInt(a.num); i++) { let fiber = { ident: this.fiberList.length + 1, 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) model: null, noSplitModel: null, standard: null, fibersIdent: a.ident, productList: [] } a.fiber.push(fiber) this.fiberList.push(fiber) this.fiberList.push(fiber) } }) } else { @@ -611,85 +927,327 @@ a.fiber = [] for (var i = 0; i < parseInt(a.testNum); i++) { let fiber = { ident: this.fiberList.length + 1, 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) model: null, noSplitModel: null, standard: null, productList: [] } a.fiber.push(fiber) this.fiberList.push(fiber) } }) } }else { this.fiberList = [] let flag = true // æç §é¡ºåºçæå çº¤è²æ 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.selectBushing.forEach((item,index) =>{ if(item.testNum != null && item.testNum != ''){ for(let i =0; i < parseInt(item.testNum); i++){ let fiber = { ident: this.fiberList.length + 1, bushColor: item.color, color: colors2[(i+(parseInt(item.testNum)*index))>colors2.length?0:i+(parseInt(item.testNum)*index)*index].label, model: null, standard: null, productList: [] } this.fiberList.push(fiber) } }else { flag = false } }) if(!flag){ this.$message.error('请填åå çº¤æ£æµé') return } } // äºä»£ // // æ¯å¦éæ©å¥ç®¡ // if(this.selectBushing.length == 0) { // this.$message.error('æªéæ©å¥ç®¡') // return // } // this.fiberList = [] // let flag = true // // æç §é¡ºåºçæå çº¤è²æ // 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.selectBushing.forEach((item,index) =>{ // if(item.testNum != null && item.testNum != ''){ // for(let i =0; i < parseInt(item.testNum); i++){ // let fiber = { // ident: this.fiberList.length + 1, // bushColor: item.color, // color: colors2[(i+(parseInt(item.testNum)*index))>colors2.length?0:i+(parseInt(item.testNum)*index)*index].label, // model: null, // standard: null, // productList: [] // } // this.fiberList.push(fiber) // } // }else { // flag = false // } // }) // if(!flag){ // this.$message.error('请填åå çº¤æ£æµé') // return // } // æå // 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){ // 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) // } // }) 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) this.selectBushing.forEach(item => { for(let i = 0; i < parseInt(this.packageInfo.testNum); i++){ let fibers = { ident: this.fibersList.length + 1, color: item.color, code: null, model: null, standard: null, num: null, fiber: [], productList: [] } 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; } console.log('row',row); // 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) if(type == 1) { this.fiberList = row.fiber if((row.model == null || row.model == '') && (row.standard == null || row.standard == '')){ this.detectionItems = [] return } if(row.model != null && row.model != ''){ this.miresModel = row.model this.selectsStandardMethodByFLSSM2() } 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) if(row.standard !=null && row.standard != ''){ this.miresStandard = this.miresStandards.find(a => a.code == row.standard).id } this.$axios.post(this.$api.standardTree.selectStandardProductList, { model: '', standardMethodListId: this.miresStandard, factory: 'ä¸å¤©ç§ææ£æµä¸å¿ - é信产åå®éªå®¤ - å 纤带 - ' + this.miresModel + ' - ', }, { headers: { 'Content-Type': 'application/json' } }).then(res => { // å°è·åçæ£æµé¡¹ä¿¡æ¯èµå¼ this.detectionItems = [] if(res.data != null && res.data.length != 0){ this.detectionItems = res.data this.detectionType = 1 this.$set(this.detectionItems,'type',1) if (row.productList != null && row.productList.length > 0) { let product = JSON.parse(JSON.stringify(row.productList)) setTimeout(() => { product.forEach(p => { let rowToSelect = this.detectionItems.find(item => item.id === p.id); if (rowToSelect) { this.toggleSelection(rowToSelect); } }); },200) } } }) },1000) }else if(type == 0) { if((row.noSplitModel == null || row.noSplitModel == '') && (row.standard == null || row.standard == '')){ this.detectionItems = [] return } if(row.model != null && row.model != ''){ this.mireModel = row.noSplitModel this.selectsStandardMethodByFLSSM() } setTimeout(() => { if(row.standard !=null && row.standard != ''){ this.mireStandard = this.mireStandards.find(a => a.code == row.standard).id } this.$axios.post(this.$api.standardTree.selectStandardProductList, { model: this.mireModel.split(' - ')[1], standardMethodListId: this.mireStandard, factory: '' }, { headers: { 'Content-Type': 'application/json' } }).then(res => { this.detectionItems = [] if(res.data != null && res.data.length != 0){ res.data.forEach(a => { a.state = 0 }) }, 200) }, this.detectionItems = res.data this.detectionType = 0 this.$set(this.detectionItems,'type',0) if (row.productList != null && row.productList.length > 0) { let product = JSON.parse(JSON.stringify(row.productList)) setTimeout(() => { product.forEach(p => { let rowToSelect = this.detectionItems.find(item => item.id === p.id); if (rowToSelect) { this.toggleSelection(rowToSelect); } }); },200) } } }) },1000); } }, toggleSelection(row) { this.$refs.productTable.toggleRowSelection(row, true); }, @@ -704,6 +1262,7 @@ }, handleAll(e) { if (e.length > 0) { console.log(this.detectionItems); this.detectionItems.map(m => { m.state = 1 return m @@ -804,8 +1363,8 @@ }, upProductSelect(selection, row) { row.state = row.state == 1 ? 0 : 1 if(this.multiFiberList.length > 0){ this.multiFiberList.map(item => { if(this.selectFiberList.length > 0){ this.selectFiberList.map(item => { item.productList.map(m=>{ if(m.id == row.id){ m.state = row.state; @@ -881,16 +1440,40 @@ }) }, save(){ if(this.bushing.length === 0){ this.$message.error('缺å°é ç½®æ æ³ä¿å') return } // 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') if(this.bushing.length === 0){ this.$message.error('缺å°å¥ç®¡æ æ³ä¿å') return } this.bushing.forEach(item=>{ // 妿å 纤带æå¼ if(this.fibersList.length != 0) { // this.fibersList.forEach(a=>{ // a.fiber = this.fiberList // }) item.fibers = this.fibersList // å 纤带 item.fiber = [] // å 纤 }else { // 妿å 纤带没æå¼ item.fibers = [] // å 纤带 item.fiber = this.fiberList // å 纤 } }) this.sample.forEach(a=>{ a.bushing = this.bushing }) src/components/do/b1-inspect-order-plan/Inspection.vue
@@ -418,7 +418,7 @@ <i class="el-icon-caret-left table_caret" style="width: 16px;" @click="caretSample(-1)" v-if="!currentFiberOpticTape&&!currentFiberOptic"></i> <div :style="`font-family:${n.v.ff} !important;overflow: hidden;white-space: nowrap;width: calc(100% - 32px);`">{{currentSample.sampleCode}}</div> <i class="el-icon-caret-right table_caret" style="width: 16px;" v-if="!currentFiberOpticTape&&!currentFiberOptic"@click="caretSample(1)"></i> v-if="!currentFiberOpticTape&&!currentFiberOptic" @click="caretSample(1)"></i> </div> </template> <template v-else-if="n.v.ps!=undefined && n.v.ps.value==='æ ·ååå·'"> @@ -1150,16 +1150,16 @@ }) }, currentTable(val1, val0) { if (val0 != null && val1 != val0) { if(this.tableLists.find(m=>m.templateId==val1)&&(this.tableLists.find(m=>m.templateId==val1).templateName=='æåç¼æ£éªåå§è®°å½')){ if(this.casing.length>0){ this.handleChange(this.casing[0].id,3) } return if(val0 !=null && val1 != val0){ if(this.tableLists.find(m=>m.templateId==val1)&&(this.tableLists.find(m=>m.templateId==val1).templateName=='æåç¼æ£éªåå§è®°å½')){ if(this.casing.length>0){ this.handleChange(this.casing[0].id,3) } if(this.changeType&&this.changeType>0){ return } return } if(this.changeType && this.changeType>0){ return } this.tableLists.forEach(async (m, i) => { if (m.templateId == val1) { let list = await this.getCurrentProduct(this.currentSample.id,0) @@ -1203,6 +1203,7 @@ } } }) this.handleCasing() } }, equipForm:{ @@ -2115,7 +2116,7 @@ }) }, async handleChange(m,type){ this.changeType = type this.changeType = type; if(m){ let list = await this.getCurrentProduct(m,type) if(list.length>0){ src/components/view/b1-inspect-order-plan.vue
@@ -303,14 +303,14 @@ font: 'æ°æ®æ¥ç', type: 'text', method: 'handleDataLook', /* disabFun: (row, index) => { const user = JSON.parse(localStorage.getItem('user')) let currentUserName = '' if(user){ currentUserName = user.name } return row.userName!=currentUserName && row.checkName!=currentUserName } */ //disabFun: (row, index) => { //const user = JSON.parse(localStorage.getItem('user')) // let currentUserName = '' // if(user){ // currentUserName = user.name //} //return row.userName.indexOf(currentUserName)<0 && row.checkName.indexOf(currentUserName)<0 //} },{ id: '', font: 'æ£éª', @@ -452,7 +452,6 @@ } }, changeCheckBox(val) { console.log(111,val) this.componentData.entity.userId = val?0:null this.refreshTable() }, @@ -469,7 +468,7 @@ this.sampleUserForm = { entrustCode: row.entrustCode, insSampleId: row.id, sonLaboratory: this.componentData.entity.sonLaboratory, sonLaboratory: row.sonLaboratory, } this.claimVisible = true } src/components/view/b1-inspection-order.vue
@@ -340,7 +340,7 @@ </el-dialog> </div> <div style="width: 100%;height: 100%;" v-if="active >0"> <Add :active="active" :currentId="currentId" v-if="active<4" /> <Add :active="active" :currentId="currentId" v-if="active<4" :examine = "examine" /> </div> <el-dialog title="æ ç¾æå°" :visible.sync="printDialogVisible" width="40%" top="5vh"> <div style="width:100%;height: 400px;overflow-y: auto;" v-loading="loadPint"> @@ -461,6 +461,7 @@ data() { return { deleteTilte:'æ¤é', examine: null, deleteList:[], loadPint:false, checkAll: false, @@ -952,6 +953,7 @@ // this.verifyDialogVisible = true; this.active = 3; this.currentId = row.id this.examine = 1 }, // æ¤é handlEquash(row) { @@ -1112,6 +1114,7 @@ // ä¸å playOrder(num) { this.active = num this.examine = 0 this.refreshTable('page') }, handleTab(m, i) { src/view/enter.vue
@@ -183,7 +183,8 @@ localStorage.setItem('user', JSON.stringify({ account: this.ruleForm.account, password: this.ruleForm.pwd, name: res.data.name name: res.data.name, userId: res.data.userId })) sessionStorage.setItem('token', res.data.token) sessionStorage.setItem('reToken', res.data.reToken)