chenlu
2025-11-24 1e31f9f7fe6f04236e97f72c0df3ce051d5f867e
north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
@@ -119,16 +119,16 @@
  //   label: t('reportingWorks.nightShift'),
  // },
   {
    value: '木箱',
    label: '木箱',
    value: t('reportingWorks.woodenBox'),
    label: t('reportingWorks.woodenBox'),
  },
  {
    value: '铁架',
    label: '铁架',
    value: t('reportingWorks.brandreth'),
    label: t('reportingWorks.brandreth'),
  },
  {
    value: '倒架',
    label: '倒架',
    value: t('reportingWorks.tilting'),
    label: t('reportingWorks.tilting'),
  },
]
@@ -152,6 +152,7 @@
   //route.query.reportingWorkId = 'BG2403150004'
  //判断是否传入报工编号
  if(route.query.reportingWorkId !== '' && route.query.reportingWorkId!=null){
    gridOptions.loading = true
    request.post(`reportingWork/selectUpdateReportingWork/${route.query.reportingWorkId}`).then(res=>{
      if(res.code === '200'){
        titleUploadData.value = res.data.reportingWork
@@ -206,6 +207,7 @@
        }
      }
     // getQuantity()
      gridOptions.loading = false
      inputDisabled.value = true
    })
  }
@@ -305,14 +307,14 @@
          },
          {
            code: 'SecondaryBreakage',
            name: "序号次破相同",
            name: t('reportingWorks.secondaryBreakage'),
            prefixIcon: 'vxe-icon-indicator',
            visible: true,
            disabled: false
          },
          {
            code: 'checkedBreakage',
            name: "选中次破相同",
            name: t('reportingWorks.checkedBreakage'),
            prefixIcon: 'vxe-icon-indicator',
            visible: true,
            disabled: false
@@ -431,8 +433,15 @@
          }else  if(row.quantity_card<row.completedQuantity){
            return new Error(t('reportingWorks.pleaseNumber10'))
          }
          const nextProcess = titleUploadData.value.nextProcess//下工序
          const completedSum = Number(row.thisQuantitySum) //总完工数量
          const nextQuantitySum = Number(row.nextQuantitySum) //总下工序完工数量
          let nextQuantitySum = ''
          if (nextProcess!=''){
             nextQuantitySum = Number(row.nextQuantitySum) //总下工序完工数量
          }else {
             nextQuantitySum = Number(row.received_quantity) //总下工序完工数量
          }
          const totalQuantity = Number(row.quantity) //可完工数量
          const val = Number(cellValue) //输入值
@@ -450,21 +459,37 @@
            `)
          }
          if(titleUploadData.value.reportingWorkId!=null){
            if(row.completedQuantityComputed>=row.minQuantity ){
              if((val<(row.completedQuantityComputed-row.minQuantity || val>=row.completedQuantityComputed))){
                return new Error(`${row.completedQuantityComputed-row.minQuantity}
            if (nextProcess!=''){//非最后一道工序
              if(row.completedQuantityComputed>=row.minQuantity ){
                if((val<(row.completedQuantityComputed-row.minQuantity || val>=row.completedQuantityComputed))){
                  return new Error(`${row.completedQuantityComputed-row.minQuantity}
                                  <=val<=
                                  ${row.completedQuantityComputed}`)
              }
            }else{
              if((val>row.completedQuantityComputed)){
                return new Error(`val
                }
              }else{
                if((val>row.completedQuantityComputed)){
                  return new Error(`val
                                  <=
                                  ${row.completedQuantityComputed}`)
                }
              }
            }else {//最后一道工序
              if (val<row.completedQuantityComputed){
                         //库存数量、已入库数量
                if (val>(row.inventory_quantity-row.received_quantity)){
                  return new Error(`val
                                  <=
                                  ${row.inventory_quantity-row.received_quantity}`)
                }else {
                  if (val < (row.inventory_quantity-row.received_quantity)){
                        //完工总数、本次完工数、已入库数量
                    if (completedSum-row.completedQuantityComputed <row.received_quantity){
                      return new Error(`${t('reportingWorks.pleaseNumber15')}`)
                    }
                  }
                }
              }
            }
          }
        }
@@ -585,7 +610,7 @@
          //层号
          let technologyStr = resultProcessId[2];
          if (last != titleUploadData.value.thisProcess){
            ElMessage.error('请选择最后工序报工入库')
            ElMessage.error(t('reportingWorks.pleaseNumber16'))
            return
          }
          storageBtn.value = true
@@ -797,7 +822,7 @@
    },
    {
      field: 'responsiblePersonnel',
      title: '责任信息',
      title: t('rework.responsibilityInformation'),
      editRender: {name: 'input', attrs: {placeholder: ''}}
    },
@@ -1013,7 +1038,7 @@
    const diffMs = currentTime - targetTime
    // 转换为天数
    const diffDays = diffMs / (1000 * 60 * 60 * 24)
    if (diffDays > 15) {
    if (diffDays > 396 && saveType!="update") {
      ElMessage.error(t('reportingWorks.longTime'))
      return
    }
@@ -1068,6 +1093,7 @@
  }
  gridOptions.toolbarConfig.buttons[0].disabled=true
  gridOptions.toolbarConfig.buttons[1].disabled=true
  gridOptions.loading=true
  //判断保存还是修改
  if(saveType==='save'){
    saveReportingWorkRequest(requestData)
@@ -1085,6 +1111,7 @@
      if(storageBtn.value == true){
        getStorageWork();
      }
      gridOptions.loading=false
      router.push({path:'/main/reportingWorks/AddReportingWork',query:{processId:titleUploadData.value.processId,random:Math.random()}})
    }else{
      const errorObj = JSON.parse(res.msg)
@@ -1093,15 +1120,16 @@
          +t('reportingWorks.pleaseNumber3')+':'+errorObj.processNum+'<'+
          +t('reportingWorks.pleaseNumber4')+':'+errorObj.sumNum+'\n'
          +t('reportingWorks.pleaseNumber5')
      gridOptions.loading=false
      ElMessage.error(msg)
    }
  }).catch(err =>{
    ElMessage.error('提交失败,请刷新后重试')
    ElMessage.error(t('basicData.msg.ServerConnectionError'))
    gridOptions.loading=false
  }).finally(()=>{
    gridOptions.toolbarConfig.buttons[0].disabled=false
    gridOptions.toolbarConfig.buttons[1].disabled=false
    gridOptions.loading=false
  })
}
@@ -1296,7 +1324,7 @@
      //判断早晚班
      titleUploadData.value.classes=t('reportingWorks.early')
      titleUploadData.value.reportingWorkTime = formatCurrentTime()
      titleUploadData.value.reportingWorkTime = res.data.reportingWorkTiem
      //绑定下方表格
@@ -1304,10 +1332,10 @@
      // 使用map方法来处理每个对象
      let modifiedCollection = res.data.Detail.map(item => {
        if (item.reviewed_state === 1) {
          return { ...item, reviewed_state: "已审核" };
          return { ...item, reviewed_state: t('productStock.approved') };
        }
        else if (item.reviewed_state === 0) {
          return { ...item, reviewed_state: "未审核" };
          return { ...item, reviewed_state: t('reportingWorks.unreviewed') };
        }
        else {
          // 其他情况保持不变
@@ -1523,7 +1551,8 @@
      orderId: titleUploadData.value.orderId
    },
    processId:processIdStr,
    orderNumber:item.order_number
    orderNumber:item.order_number,
    inventoryQuantity:item.completedQuantity
  }));
  let flowData = ref({
    decValue:company.decValue,
@@ -1533,6 +1562,7 @@
    remark: remark.value,
    container: container.value,
    flowCard: resultData,
    createTime: titleUploadData.value.reportingWorkTime
  })
  //调用入库接口
  request.post("/finishedGoodsInventory/addSelectWarehousing",flowData.value).then((res) => {
@@ -2041,8 +2071,7 @@
}
::v-deep(.mytable-scrollbar .col-red) {
  background-color: rgb(66,159,254);
  color: #fff;
  background-color: rgb(66,159,254)!important;
}