cz 1 سال پیش
والد
کامیت
7306bfe681
5فایلهای تغییر یافته به همراه41 افزوده شده و 3 حذف شده
  1. 5 0
      src/main.js
  2. 11 0
      src/utils/util.js
  3. 5 1
      src/views/JXSK/mes/task/add.vue
  4. 7 0
      src/views/MES/produce/plan/add.vue
  5. 13 2
      src/views/MES/produce/task/add.vue

+ 5 - 0
src/main.js

@@ -7,6 +7,7 @@ import i18n from '@/lang/'
 import {
   moneyFormat,
   getDictOne,
+  compareTime
 } from '@/utils/util'
 const app = createApp(App)
 app.use(router)
@@ -19,7 +20,11 @@ import {
 
 app.config.globalProperties.get = get
 app.config.globalProperties.post = post
+// 金额千分符
 app.config.globalProperties.moneyFormat = moneyFormat
+// 获取字典
 app.config.globalProperties.getDictOne = getDictOne
+// 比较时间大小
+app.config.globalProperties.compareTime = compareTime
 app.config.globalProperties.uploadDdRightBtn = uploadDdRightBtn
 export default app

+ 11 - 0
src/utils/util.js

@@ -56,4 +56,15 @@ export function moneyFormat(s, n) {
   } else {
     return "0.00";
   }
+}
+
+// 比较时间大小
+export function compareTime(date1, date2) {
+  var oDate1 = new Date(date1);
+  var oDate2 = new Date(date2);
+  if (oDate1.getTime() > oDate2.getTime()) {
+    return true; //第一个大
+  } else {
+    return false; //第二个大
+  }
 }

+ 5 - 1
src/views/JXSK/mes/task/add.vue

@@ -95,6 +95,7 @@ const formConfig = reactive([
         formData.data.productName = option.selectedOptions[0].productName;
         formData.data.waitQuantity =
           option.selectedOptions[0].remainingQuantity;
+        formData.data.startDate = option.selectedOptions[0].startDate;
         formConfig[index].showPicker = false;
       } else {
         formConfig[index].showPicker = false;
@@ -150,7 +151,7 @@ const getDict = () => {
       formConfig[0].data = res.data.rows.map((item) => {
         return {
           ...item,
-          label: item.productName,
+          label: item.code,
           value: item.id,
         };
       });
@@ -171,6 +172,9 @@ const onSubmit = () => {
   if (Number(formData.data.quantity) > Number(formData.data.waitQuantity)) {
     return showFailToast("任务数量不可大于待排程数量");
   }
+  if (proxy.compareTime(formData.data.startDate, formData.data.dueDate)) {
+    return showFailToast("完成期限不能早于计划开始时间");
+  }
   proxy.post("/productionTask/addByJxst", formData.data).then(
     (res) => {
       setTimeout(() => {

+ 7 - 0
src/views/MES/produce/plan/add.vue

@@ -66,6 +66,7 @@
           v-model="formData.quantity"
           label="计划数量"
           placeholder="请输入计划数量"
+          type="number"
           :rules="[{ required: true, message: '计划数量不能为空' }]"
           required
         />
@@ -156,6 +157,12 @@ const onConfirmTime = ({ selectdValues, selectedOptions }) => {
 const onClickLeft = () => history.back();
 
 const onSubmit = () => {
+  if (Number(formData.value.quantity) > Number(formData.value.waitQuantity)) {
+    return showFailToast("计划数量不可大于待排程数量");
+  }
+  if (proxy.compareTime(formData.value.startDate, formData.value.stopDate)) {
+    return showFailToast("时间选择存在问题");
+  }
   proxy.post("/productionPlan/add", formData.value).then(
     (res) => {
       setTimeout(() => {

+ 13 - 2
src/views/MES/produce/task/add.vue

@@ -10,7 +10,7 @@
     <van-form @submit="onSubmit" label-align="top" style="margin-top: 20px">
       <van-cell-group inset>
         <van-field
-          v-model="formData.productionPlanId"
+          v-model="formData.productionPlanIdName"
           is-link
           readonly
           label="生产计划"
@@ -39,6 +39,7 @@
           v-model="formData.quantity"
           label="任务数量"
           placeholder="请输入任务数量"
+          type="number"
           :rules="[{ required: true, message: '任务数量不能为空' }]"
           required
         />
@@ -101,6 +102,7 @@ const formData = ref({
   productName: "",
   waitQuantity: "",
   productionPlanId: "",
+  productionPlanIdName: "",
   personLiableId: "",
   personLiableName: "",
   status: "",
@@ -115,7 +117,7 @@ const getDict = () => {
       columns.value = res.data.rows.map((item) => {
         return {
           ...item,
-          text: item.productName,
+          text: item.code,
           value: item.id,
         };
       });
@@ -137,8 +139,10 @@ const columnsOne = ref([]);
 
 const onConfirm = ({ selectedOptions }) => {
   formData.value.productionPlanId = selectedOptions[0].value;
+  formData.value.productionPlanIdName = selectedOptions[0].code;
   formData.value.productName = selectedOptions[0].productName;
   formData.value.waitQuantity = selectedOptions[0].remainingQuantity;
+  formData.value.startDate = selectedOptions[0].startDate;
   typeModal.value = false;
 };
 
@@ -159,6 +163,13 @@ const onConfirmOne = ({ selectedOptions }) => {
 const onClickLeft = () => history.back();
 
 const onSubmit = () => {
+  if (Number(formData.value.quantity) > Number(formData.value.waitQuantity)) {
+    return showFailToast("任务数量不可大于待生产数量");
+  }
+  if (proxy.compareTime(formData.value.startDate, formData.value.dueDate)) {
+    return showFailToast("完成期限不能早于计划开始时间");
+  }
+
   proxy.post("/productionTask/add", formData.value).then(
     (res) => {
       setTimeout(() => {