gaoluyang
2024-07-24 cc6914dff1a91dd00e3a86d5daae2c3dba2d6ba8
src/components/do/b1-ins-order/fiberoptic-config.vue
@@ -2,7 +2,7 @@
  <div class="ins_order_config">
    <div>
      <el-row class="title">
        <el-col :span="6" style="padding-left: 20px;">光纤配置</el-col>
        <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">
@@ -53,7 +53,7 @@
              </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">
                  <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>
@@ -104,11 +104,11 @@
        </el-col>
      </el-row>
      <el-row :gutter="10">
        <el-col :span="12">
        <el-col :span="12" v-if="packageInfo.ismiers">
          <div class="grid-content">
            <h5>光纤带
              <el-button size="mini" type="primary" class="btns" @click="addFibers"
                :disabled="packageInfo.ismiers===false||miresModel===null||miresStandard===null" v-if="active==1">生成光纤带</el-button>
              <!-- <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
@@ -150,10 +150,12 @@
            </el-table>
          </div>
        </el-col>
        <el-col :span="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></h5>
            <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;">
@@ -187,7 +189,7 @@
              </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">
                  <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>
@@ -269,7 +271,25 @@
            </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>
@@ -331,7 +351,10 @@
        bsm2Dia: false,
        bsm2Val2: [],
        bsm2Val3: [],
        sampleIds:[]
        sampleIds:[],
        bsm3Val: null,
        bsmRow3: null,
        bsm3Dia: false,
      }
    },
    computed: {
@@ -480,8 +503,8 @@
          this.miresModels = []
          res.data.forEach(a => {
            this.miresModels.push({
              label: a.sample,
              value: a.sample
              label: a.model,
              value: a.model
            })
          })
        })
@@ -523,6 +546,7 @@
            this.productList.forEach(a => {
              if (a.state == 1) this.toggleSelection(a)
            })
            this.addFiber()
          }, 200)
        })
      },
@@ -545,6 +569,7 @@
            this.productList2.forEach(a => {
              if (a.state == 1) this.toggleSelection(a)
            })
            this.addFibers()
          }, 200)
        })
      },
@@ -567,12 +592,12 @@
            this.$message.error('未选择光纤带')
            return
          }
          this.selectFibers.forEach(a => {
          this.selectFibers.forEach((a,index) => {
            a.fiber = []
            for (var i = 0; i < parseInt(a.num); i++) {
              let fiber = {
                bushColor: a.color,
                color: colors2[i].label,
                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)
@@ -582,12 +607,12 @@
            }
          })
        } else {
          this.selectBushing.forEach(a => {
          this.selectBushing.forEach((a,index) => {
            a.fiber = []
            for (var i = 0; i < parseInt(a.testNum); i++) {
              let fiber = {
                bushColor: a.color,
                color: colors2[i].label,
                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)
@@ -720,8 +745,9 @@
            });
          }
        }
        if(this.type==1){
          this.detectionItems.forEach(p => {
        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)
@@ -731,7 +757,7 @@
            } 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) {
            if (p.bsm === '1' && p.inspectionItem === '光纤接头损耗' && this.sampleList.length > 1 && p.state === 1) {
              this.bsm2 = true
              this.bsm1Dia = true
              if(this.bsm2Val2.length === 0){
@@ -739,31 +765,38 @@
                this.computationalPairing(this.sampleList.length)
                this.bsm2Val2 = this.HaveJson(this.bsm2Val3)
              }
            } else if (p.bsm === '1' && p.inspectionItem === '熔接损耗' && p.state === 1) {
            } else if (p.bsm === '1' && p.inspectionItem === '光纤接头损耗' && p.state === 1) {
              this.bsm2 = 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
            })
          }
          // 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()
@@ -799,7 +832,7 @@
          } 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) {
          if (row.bsm === '1' && row.inspectionItem === '光纤接头损耗' && this.sampleList.length > 1 && row.state === 1) {
          this.bsm2 = true
          this.bsm1Dia = true
            if(this.bsm2Val2.length === 0){
@@ -807,12 +840,21 @@
              this.computationalPairing(this.sampleList.length)
              this.bsm2Val2 = this.HaveJson(this.bsm2Val3)
            }
          } else if (row.bsm === '1' && row.inspectionItem === '熔接损耗' && row.state === 1) {
          } 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 = [];
@@ -886,6 +928,21 @@
        }
        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);