Преглед изворни кода

提交修改质检系统计划与工单页面

PC-202503171525\Administrator пре 1 година
родитељ
комит
aefe62e2ad

+ 11 - 1
src/api/inspectionPlan/index.js

@@ -68,7 +68,7 @@ export async function removeItem(data) {
   return Promise.reject(new Error(res.data.message));
 }
 
-// 清单列表接口
+// 清单列表接口 1
 
 export async function getPurchaseWarehouseGoods(params) {
   const res = await request.get(`/wms/outInDetailRecordTwo/getPurchaseWarehouseGoods`, {
@@ -79,6 +79,16 @@ export async function getPurchaseWarehouseGoods(params) {
   }
   return Promise.reject(new Error(res.data.message));
 }
+// 清单列表接口 2
+export async function outInRecordsPage(params) {
+  const res = await request.get(`/wms/outInDetailRecordTwo/outInRecordsPage`, {
+    params
+  });
+  if (res.data.code == 0) {
+    return res.data.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}
 // 方案列表
 export async function getQualityTemplateList(params) {
   const res = await request.get(`/qms/qualitytemplate/getQualityTemplateList`, {

+ 7 - 4
src/views/inspectionPlan/components/edit.vue

@@ -95,7 +95,8 @@ import {
   getQualityTemplateList,
   getTemplateListByPlanId,
   getSampleListByPlanId,
-  getInventoryListByPlanId
+  getInventoryListByPlanId,
+  outInRecordsPage
 } from '@/api/inspectionPlan/index.js';
 export default {
   components: {
@@ -342,10 +343,12 @@ export default {
       this.getQualityTemplate(productCode);
     },
     async getGoodsList(receiveNo, productCode, ids, productCategoryId, productCategoryName) {
-      let res = await getPurchaseWarehouseGoods({
-        receiveNo: receiveNo,
+      let res = await outInRecordsPage({
+        // receiveNo: receiveNo,
+        sourceBizNo: receiveNo,
         categoryCode: productCode,
-        qualityQlanId: ids
+        qualityQlanId: ids,
+        size:-1
       });
       console.log(res, '来料清单');
       if (Array.isArray(res?.list)) {

+ 20 - 1
src/views/inspectionWork/components/baseInfo.vue

@@ -142,6 +142,22 @@
         </el-form-item>
       </el-col>
     </el-row>
+    <el-row>
+      <el-col :span="6">
+        <el-form-item label="检验方式:" prop="qualityMode">
+          <DictSelection dictName="取样类型" v-model="form.qualityMode" disabled></DictSelection>
+        </el-form-item>
+      </el-col>
+      <el-col :span="6">
+        <el-form-item label="质检状态:" prop="qualityResults">
+          <el-select v-model="form.qualityResults" placeholder="请选择" style="width: 100%"
+                     :disabled="btnType == 'detail' || btnType == 'issued'" clearable>
+            <el-option label="合格" :value=1 />
+            <el-option label="不合格" :value=2 />
+          </el-select>
+        </el-form-item>
+      </el-col>
+    </el-row>
     <el-row>
       <el-col :span="24">
         <el-form-item label="备注:" prop="remark">
@@ -213,6 +229,9 @@ export default {
         ],
         qualityId: [
           { required: true, message: '请选择质检人', trigger: 'change' }
+        ],
+        qualityResults: [
+          { required: true, message: '请选择质检状态', trigger: 'change' }
         ]
       },
       produceTaskList: []
@@ -301,7 +320,7 @@ export default {
         this.form.total = val;
         this.form.qualifiedNumber = val;
       }
-    }
+    },
   }
 };
 </script>

+ 5 - 5
src/views/inspectionWork/components/sampleListDialog.vue

@@ -132,14 +132,14 @@ export default {
         async openDia(index, row, type, list) {
             this.rowIndex = index
             this.type = type;
-
-            for (let i = 0; i < list.length; i++) {
-
+            if (row.isStatus) {
+              for (let i = 0; i < list.length; i++) {
                 const arr = list[i].children
                 for (let j = 0; j < arr.length; j++) {
-                    arr[j].qualityResults = 1
+                  arr[j].qualityResults = 1
                 }
 
+              }
             }
             this.tableData = list;
 
@@ -160,4 +160,4 @@ export default {
         },
     }
 };
-</script>
+</script>

+ 31 - 12
src/views/inspectionWork/edit.vue

@@ -30,11 +30,11 @@
         <el-table v-show="activeName === '2'" v-if="sampleList.length > 0" ref="showSampleListTable"
           :data="paginatedSampleList" tooltip-effect="dark" :max-height="300" border row-key="id"
           @selection-change="handleSelectionChange">
-          <el-table-column type="selection" width="55" align="center"></el-table-column>
-          <el-table-column label="序号" type="index" width="50" align="center"></el-table-column>
+          <el-table-column type="selection" width="55" align="center" fixed="left"></el-table-column>
+          <el-table-column label="序号" type="index" width="50" align="center" fixed="left"></el-table-column>
 
           <template v-for="column in tableColumns">
-            <el-table-column :key="column.prop" :label="column.label" :prop="column.prop" :show-overflow-tooltip="true"
+            <el-table-column :key="column.prop" :label="column.label" :prop="column.prop" :fixed="column.fixed" :show-overflow-tooltip="true"
               :width="column.width" :align="column.align">
               <template slot-scope="scope">
                 <template v-if="column.prop === 'categoryCode'">
@@ -42,16 +42,28 @@
                     {{ scope.row.categoryCode }}
                   </el-link>
                 </template>
-                <template v-else-if="column.prop === 'weight'">
-                  <el-input v-model="scope.row.weight"></el-input>
-                </template>
+<!--                <template v-else-if="column.prop === 'weight'">-->
+<!--                  <el-input v-model="scope.row.weight"></el-input>-->
+<!--                </template>-->
                 <template v-else>
                   {{ scope.row[column.prop] }}
                 </template>
               </template>
             </el-table-column>
           </template>
-          <el-table-column label="质检结果" prop="qualityResults" align="center" width="120">
+          <el-table-column label="重量" prop="weight" align="center" width="100" fixed="right">
+            <template slot-scope="scope">
+              <el-input type="number" v-model="scope.row.weight" :min="0"></el-input>
+            </template>
+          </el-table-column>
+          <el-table-column label="重量单位" prop="weightUnit" align="center" width="80" fixed="right"></el-table-column>
+          <el-table-column label="质检状态" prop="qualityStatus" align="center" width="120" fixed="right">
+            <template slot-scope="scope">
+              <span v-if="scope.row.qualityStatus == 0 ">未质检</span>
+              <span v-if="scope.row.qualityStatus == 1 ">已质检</span>
+            </template>
+          </el-table-column>
+          <el-table-column label="质检结果" prop="qualityResults" align="center" width="120" fixed="right">
             <template slot-scope="scope">
               <el-select v-model="scope.row.qualityResults" placeholder="请选择" style="width: 100%;"
                 :disabled="type == 'detail'" size="mini">
@@ -183,7 +195,8 @@ export default {
           label: '编码',
           prop: 'categoryCode',
           width: '160',
-          align: 'center'
+          align: 'center',
+          fixed:'left'
         },
         {
           label: '名称',
@@ -201,15 +214,14 @@ export default {
         { label: '物料代号', prop: 'materielDesignation', align: 'center' },
         { label: '客户代号', prop: 'clientCode', align: 'center' },
         { label: '刻码', prop: 'engrave', align: 'center' },
-        { label: '重量', prop: 'weight', align: 'center' },
-        { label: '重量单位', prop: 'weightUnit', align: 'center' },
+        // { label: '重量', prop: 'weight', align: 'center' },
+        // { label: '重量单位', prop: 'weightUnit', align: 'center' },
         { label: '仓库', prop: 'warehouseName', align: 'center' },
         { label: '货区', prop: 'areaName', align: 'center' },
         { label: '货架', prop: 'goodsShelfName', align: 'center' },
         { label: '货位', prop: 'goodsAllocationName', align: 'center' },
         { label: '生产日期', prop: 'productionDate', align: 'center' },
         { label: '采购日期', prop: 'purchaseDate', align: 'center' },
-        { label: '报工状态', prop: '', align: 'center' },
       ],
 
       packingList: [],
@@ -325,6 +337,7 @@ export default {
       let addStatus = res.map((item) => {
         item.isValid = true;
         item.qualityResults = 1;
+        item.qualityStatus = 0;
         return {
           ...item
         }
@@ -405,6 +418,11 @@ export default {
       this.$router.go(-1);
     },
     handleDetail(index, row, type) {
+      if (row.isStatus == undefined) {
+        row.isStatus = true;
+      }else {
+        row.isStatus = false;
+      }
       if (!this.sampleList[index] || !this.schemeList) {
         return;
       }
@@ -479,6 +497,7 @@ export default {
 
       const processedList = list.map(item => {
         item.qualityResults = hasInvalidItem ? 2 : 1;
+        item.qualityStatus = 1;
         item.qualitySampleTemplateList = item.children;
         item.isValid = !hasInvalidItem
         delete item.children;
@@ -493,7 +512,7 @@ export default {
 
       this.SampleListbyReportList = processedList;
 
-    }
+    },
   }
 };
 </script>