gaoluyang
11 小时以前 7c863257d23fd7f01c84a8996677e682d9d50b07
src/views/productionManagement/productionReporting/components/formDia.vue
@@ -13,8 +13,15 @@
              <el-input v-model="form.schedulingNum" placeholder="请输入" clearable disabled/>
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="本次生产数量:" prop="finishedNum">
               <el-col :span="12">
                  <el-form-item label="待生产数量:" prop="pendingNum">
                     <el-input v-model="form.pendingNum" placeholder="请输入" clearable disabled/>
                  </el-form-item>
               </el-col>
        </el-row>
        <el-row :gutter="30">
               <el-col :span="12">
                  <el-form-item label="本次生产数量:" prop="finishedNum">
                     <el-input-number
                        v-model="form.finishedNum"
                        placeholder="请输入"
@@ -25,13 +32,18 @@
                        style="width: 100%"
                        @change="changeNum"
                     />
                  </el-form-item>
               </el-col>
          <el-col :span="12">
            <el-form-item label="单价(元):" prop="unitPrice">
              <el-input v-model="form.unitPrice" placeholder="请输入" clearable @input="calculateTotalPrice"/>
            </el-form-item>
          </el-col>
        </el-row>
        <el-row :gutter="30">
          <el-col :span="12">
            <el-form-item label="待生产数量:" prop="pendingNum">
              <el-input v-model="form.pendingNum" placeholder="请输入" clearable disabled/>
            <el-form-item label="总价(元):" prop="totalPrice">
              <el-input v-model="form.totalPrice" placeholder="请输入" clearable disabled/>
            </el-form-item>
          </el-col>
        </el-row>
@@ -95,9 +107,12 @@
  form: {
      successNum: "",
      schedulingNum: "",
    pendingNum: "",
      finishedNum: "",
      schedulingUserId: "",
      schedulingDate: "",
      unitPrice: "",
      totalPrice: "",
  },
  rules: {
      schedulingNum: [{ required: true, message: "请输入", trigger: "blur" },],
@@ -113,6 +128,12 @@
      userList.value = res.data;
   });
   form.value = {...row}
  const total = Number(row?.schedulingNum ?? 0);
  const pendingFinish = Number(row?.pendingFinishNum ?? 0);
  const autoFill = pendingFinish > 0 ? Math.min(pendingFinish, total) : total;
  form.value.finishedNum = autoFill;
  form.value.pendingNum = Math.max(total - autoFill, 0);
  changeNum(form.value.finishedNum);
}
const changeNum = (value) => {
@@ -121,6 +142,19 @@
      proxy.$modal.msgWarning('本次生产数量不可大于排产数量')
   }
   form.value.pendingNum = form.value.schedulingNum - form.value.finishedNum;
   calculateTotalPrice();
}
// 计算总价
const calculateTotalPrice = () => {
   const quantity = Number(form.value.finishedNum ?? 0);
   const unitPrice = Number(form.value.unitPrice ?? 0);
   if (quantity > 0 && unitPrice > 0) {
      form.value.totalPrice = (quantity * unitPrice).toFixed(2);
   } else {
      form.value.totalPrice = '0.00';
   }
}
// 提交产品表单
const submitForm = () => {