gaoluyang
2025-03-03 de411af0c3e5a760e38782c1a932836fa9bff7d9
src/views/business/materialOrder/copperOrder.vue
@@ -99,7 +99,7 @@
            </el-col>
            <el-col :span="6">
              <el-form-item class="addObj-form-item" label="备注:">
                <el-input v-model="addObj.remark" :autosize="{ minRows: 2, maxRows: 2}" :placeholder="active>1 ? '' : '请输入'" :readonly="active>1" clearable
                <el-input v-model="addObj.remark" :autosize="{ minRows: 2, maxRows: 2}" :placeholder="active>1 ? '' : '请输入'" :disabled="active>1" clearable
                          size="small" type="textarea"></el-input>
              </el-form-item>
            </el-col>
@@ -421,17 +421,13 @@
}
export default {
  name: 'CopperOrder',
  components: {},
  dicts: ['check_type', 'urgency_level'],
  props: {
    currentId: {
      type: Number,
      default: () => 0
    }
  },
  data() {
    return {
      active: '',
      currentId: '',
      sampleSelectionList: [],//样品表格选中数据
      editTable:[],
      noNeedCheckLoad: false, // 免检按钮loading
@@ -515,8 +511,6 @@
      bsm2: false,
      bsm2Val: null,
      bsm2Dia: false,
      bsm2Val2: [],
      bsm2Val3: [],
      bsmRow3: null,
      bsm3Val: null,
      bsm3Dia: false,
@@ -622,12 +616,20 @@
  },
  mounted() {
    this.active = this.$route.query.active
    this.getUserNowInfo()
    this.selectStandardTreeList()
    this.selectStandardMethods()
    this.getInfo() // 获取数据
    this.currentId = this.$route.query.currentId
  },
  activated() {
    if (this.active==1) {
      this.getInfoRow();
    }
  },
  methods: {
    getInfoRow() {
      this.getUserNowInfo()
      this.selectStandardTreeList()
      this.selectStandardMethods()
      this.getInfo() // 获取数据
    },
    // 拆分
    handleSplitCountNum () {
      this.sample.joinName = null
@@ -649,7 +651,6 @@
        item.quantity = 1
      })
      this.count++
      this.computationalPairing(this.sampleList.length)
    },
    noNeedCheck () {
      this.$refs['addObj'].validate((valid) => {
@@ -686,7 +687,6 @@
      if (projectNum!=0){
        this.$message.error('免检不可选择检验项')
      } else {
        const pairing = []
        let trees = this.selectTree.split(" - ")
        if (trees.length < 3) {
          this.$message.error('未选择对象')
@@ -703,33 +703,35 @@
        this.addObj.model = (trees[4] == undefined ? null : trees[4])
        this.noNeedCheckLoad = true
        addRawCopperOrderExemptionOrder({
          str: JSON.stringify({
            insOrder: this.addObj,
            list: JSON.stringify(sampleList.map(a => {
              if (a.modelNum) {
                // 根据x号判断型号参数与样品型号的拼接位置
                // 例如×4,就为500ML×4;4×,就为4×500ML
                const index = a.modelNum.indexOf('×')
                if (index === 0) {
                  a.model = a.model + a.modelNum
                } else if (index === -1) {
                  a.model = a.model + '-' + a.modelNum
                } else {
                  a.model = a.modelNum + a.model
                }
          copperInsOrder: this.addObj,
          sampleList: sampleList.map(a => {
            if (a.insProduct.length > 0) {
              a.insProduct.forEach(c => {
                delete c.id
              })
            }
            if (a.modelNum) {
              // 根据x号判断型号参数与样品型号的拼接位置
              // 例如×4,就为500ML×4;4×,就为4×500ML
              const index = a.modelNum.indexOf('×')
              if (index === 0) {
                a.model = a.model + a.modelNum
              } else if (index === -1) {
                a.model = a.model + '-' + a.modelNum
              } else {
                a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
                a.model = a.modelNum + a.model
              }
              a.insProduct = a.insProduct.filter(b=>b.state === 1)
              return a
            })),
            pairing: JSON.stringify(pairing)
            } else {
              a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
            }
            a.insProduct = a.insProduct.filter(b=>b.state === 1)
            return a
          })
        }).then(res => {
          this.noNeedCheckLoad = false
          if (res.code == 201) return
          this.$message.success('已提交')
          this.goBack()
          this.closeOpenPage()
        }).catch(e=>{
          this.noNeedCheckLoad = false
        })
@@ -902,10 +904,6 @@
            this.$message.error('请选择检验标准')
            return
          }
          // if (!this.sampleList.every(m => m.quantity)) {
          //   this.$message.error('请选择待检项数量')
          //   return
          // }
          const sampleList = this.HaveJson(this.sampleList)
          sampleList.forEach(item => {
            item.quantity = 1
@@ -1148,32 +1146,34 @@
    saveMethod(sampleList){
      this.saveLoad = true
      addRawCopperOrder({
        str: JSON.stringify({
          insOrder: this.addObj,
          list: JSON.stringify(sampleList.map(a => {
            if (a.modelNum) {
              const index = a.modelNum.indexOf('×')
              if (index === 0) {
                a.model = a.model + a.modelNum
              } else if (index === -1) {
                a.model = a.model + '-' + a.modelNum
              } else {
                a.model = a.modelNum + a.model
              }
        copperInsOrder: this.addObj,
        sampleList: sampleList.map(a => {
          if (a.insProduct.length > 0) {
            a.insProduct.forEach(c => {
              delete c.id
            })
          }
          if (a.modelNum) {
            const index = a.modelNum.indexOf('×')
            if (index === 0) {
              a.model = a.model + a.modelNum
            } else if (index === -1) {
              a.model = a.model + '-' + a.modelNum
            } else {
              a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
              a.model = a.modelNum + a.model
            }
            a.insProduct = a.insProduct.filter(b=>b.state === 1)
            return a
          })),
          pairing: JSON.stringify(this.bsm2Val2)
          } else {
            a.model = a.model + ((a.modelNum == null || a.modelNum == '' || a.modelNum == 'null') ? '' : ('-' + a.modelNum))
          }
          a.insProduct = a.insProduct.filter(b=>b.state === 1)
          return a
        })
      }).then(res => {
        this.saveLoad = false
        if (res.code == 201) return
        this.$message.success('已提交')
        this.bsm3Dia = false;
        this.goBack()
        this.closeOpenPage()
      }).catch(e=>{
        this.saveLoad = false
      })
@@ -1333,8 +1333,6 @@
        this.sampleList.push(this.HaveJson(this.sample))
        // this.count++
      }
      this.computationalPairing(this.sampleList.length)
      this.bsm2Val2 = this.HaveJson(this.bsm2Val3)
    },
    selectSample(val) {
      this.sampleIds = []
@@ -1463,13 +1461,6 @@
      }
      backtrack([], nums);
      return result;
    },
    computationalPairing(n) {
      const nums = [];
      for (let i = 1; i <= n; i++) {
        nums.push(i);
      }
      this.bsm2Val3 = this.HaveJson(this.permute(nums))
    },
    tableRowClassName({row, rowIndex}) {
      if (row.state === 0) {
@@ -1798,9 +1789,16 @@
    },
    goBack () {
      const obj = { path: "/business/materialOrder" };
      this.$tab.closeOpenPage(obj);
    }
      if (this.active == 1) {
        this.$router.go(-1)
      } else {
        this.closeOpenPage()
      }
    },
    closeOpenPage() {
      this.$router.go(-1)
      this.$tab.closeOpenPage()
    },
  }
}
</script>