Przeglądaj źródła

Merge branch 'dev' of http://110.41.163.243:9980/kd-aiot/kd-aiot-frontend-mes into dev

2213980799@qq.com 1 rok temu
rodzic
commit
ff6ae9a649

+ 1 - 1
src/api/produce/workOrder.js

@@ -25,7 +25,7 @@ export async function workorderPage(data) {
 // 查询库存台账首页列表
 
 export async function pageeLedgerMain(data) {
-  const res = await request.get('/wms/outin/getRealTimeInventory', {
+  const res = await request.get('/wms/outInDetailPda/page', {
     params: data
   });
   if (res.data.code == 0) {

+ 1 - 0
src/layout/index.vue

@@ -172,6 +172,7 @@
       screenSizeChange () {
         this.$store.dispatch('theme/updateScreenSize');
         this.fullscreen = isFullscreen();
+
       },
       /* 全屏切换 */
       onFullscreen () {

+ 7 - 7
src/views/produce/components/jobBooking/details.vue

@@ -33,12 +33,12 @@
           ></jobBom>
 
           <deviceBom
-            v-if="objData.equipmentList.length != 0"
+            v-if="objData.equipmentList && objData.equipmentList.length != 0"
             :list="objData.equipmentList"
           ></deviceBom>
 
           <modelBom
-            v-if="objData.modelList.length != 0"
+            v-if="objData.modelList && objData.modelList.length != 0"
             :list="objData.modelList"
           >
           </modelBom>
@@ -56,14 +56,14 @@
           ></sampleBom> -->
 
           <palletBom
-            v-if="objData.palletList.length != 0"
+            v-if="objData.palletList && objData.palletList.length != 0"
             :palletList="objData.palletList"
             :isDetails="true"
           >
           </palletBom>
 
           <revolvingDiskBom
-            v-if="objData.revolvingDiskList.length > 0"
+            v-if="objData.revolvingDiskList && objData.revolvingDiskList.length > 0"
             pattern="job"
             :revolvingDiskList="objData.revolvingDiskList"
           ></revolvingDiskBom>
@@ -90,14 +90,14 @@
           ></oneJobQualityBom>
 
           <byProductBom
-            v-if="objData.productRecycleList.length != 0"
+            v-if="objData.productRecycleList && objData.productRecycleList.length != 0"
             :list="objData.productRecycleList"
             :isDetails="true"
           >
           </byProductBom>
 
           <turnoverBom
-            v-if="objData.turnover.length != 0"
+            v-if="objData.turnover && objData.turnover.length != 0"
             :list="objData.turnover"
             :wordItem="objData"
             pattern="job"
@@ -106,7 +106,7 @@
           </turnoverBom>
 
           <aridRegion
-            v-if="objData.aridRegionList.length != 0"
+            v-if="objData.aridRegionList && objData.aridRegionList.length != 0"
             :list="objData.aridRegionList"
             :remainingTime="0"
             :isType="true"

+ 9 - 1
src/views/produce/components/picking/index.vue

@@ -167,7 +167,15 @@
                 </div>
 
                 <div v-else>
-                  {{ row.pathName }}
+                  <el-select v-model="row.warehouseId" placeholder="请选择" filterable>
+                    <el-option
+                      v-for="item in row.warehouseLists"
+                      :label="item.warehouse_name"
+                      :value="item.warehouse_id"
+                      :key="item.warehouse_id"
+                    >
+                    </el-option>
+                  </el-select>
                 </div>
               </template>
             </el-table-column>

+ 116 - 11
src/views/produce/components/produceOrder.vue

@@ -4,7 +4,7 @@
       ref="table"
       :columns="columns"
       width="100%"
-      height="300px"
+      :height="internalIsFullscreen ? '400px' : '300px'"
       :datasource="datasource"
       :selection.sync="selection"
       @selection-change="handleSelectionChange"
@@ -14,22 +14,43 @@
       :need-page="false"
     >
       <template v-slot:toolbar>
-        <div class="c_title">工单列表 </div>
+        <div class="c_title">工单列表 {{ internalIsFullscreen }}</div>
       </template>
 
       <template v-slot:code="{ row }">
-        <el-link type="primary" @click="handRoute(row)" :underline="false" >{{ row.code }}</el-link>
+        <el-link type="primary" @click="handRoute(row)" :underline="false">{{
+          row.code
+        }}</el-link>
       </template>
+
+
+      <template v-slot:formingNum="{ row }">
+          <span >
+            {{ row.formingNum }}  {{ row.unit }}
+          </span>
+        </template>
+
+        <template v-slot:formingWeight="{ row }">
+          <span >
+            {{ row.formingNum }}  {{ row.weightUnit }}
+          </span>
+        </template>
+
+        
     </ele-pro-table>
 
-    <routings v-if="routingShow" :routeObj="routeObj" @closeRoute="closeRoute"></routings>
+    <routings
+      v-if="routingShow"
+      :routeObj="routeObj"
+      @closeRoute="closeRoute"
+    ></routings>
   </div>
 </template>
 
 <script>
   import { workorderPage } from '@/api/produce/workOrder.js';
   import routings from './routings.vue';
-
+  import { isFullscreen } from 'ele-admin';
   export default {
     components: { routings },
     data() {
@@ -38,7 +59,9 @@
         selection: [],
 
         routeObj: {},
-        routingShow: false
+        routingShow: false,
+
+        internalIsFullscreen: isFullscreen() // 初始值
       };
     },
     computed: {
@@ -104,7 +127,77 @@
             prop: 'model',
             label: '型号',
             align: 'center'
-          }
+          },
+
+          {
+            prop: 'priority',
+            label: '优先级',
+            align: 'center',
+            minWidth: 120,
+ 
+          },
+
+
+          {
+            prop: 'formingNum',
+            label: '要求生产数量',
+            align: 'center',
+            slot: 'formingNum',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'formingWeight',
+            label: '要求生产重量',
+            slot: 'formingWeight',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'formedNum',
+            label: '已生产数量',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'formedWeight',
+            label: '已生产重量',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'planStartTime',
+            label: '计划开始时间',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'planCompleteTime',
+            label: '计划结束时间',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+          {
+            prop: 'startTime',
+            label: '实际开始时间',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
+
+        
+          {
+            prop: 'createTime',
+            label: '创建时间',
+            align: 'center',
+            showOverflowTooltip: true,
+            minWidth: 110
+          },
         ];
       },
 
@@ -123,6 +216,16 @@
       }
     },
     created() {},
+
+    mounted() {
+      // 添加窗口resize事件监听器
+      window.addEventListener('resize', this.handleResize);
+    },
+
+    beforeDestroy() {
+      // 组件销毁前移除事件监听器,防止内存泄漏
+      window.removeEventListener('resize', this.handleResize);
+    },
     methods: {
       /* 表格数据源 */
       datasource({ page, where }) {
@@ -152,15 +255,17 @@
       rowClick() {},
 
       handRoute(row) {
-         this.routeObj = row;
-         this.routingShow = true;
+        this.routeObj = row;
+        this.routingShow = true;
       },
 
       closeRoute() {
         this.routingShow = false;
-      }
-
+      },
 
+      handleResize() {
+        this.internalIsFullscreen = isFullscreen();
+      }
     }
   };
 </script>

+ 17 - 10
src/views/produce/index.vue

@@ -36,12 +36,18 @@
               <feeding :workListIds="workListIds"></feeding>
             </div>
 
-
             <div v-if="operationType == 'job'">
-
-              <warehousing v-if="taskObj.id == -1" :workListIds="workListIds" ref="wareRef"></warehousing>
-          
-              <jobBooking v-else :workListIds="workListIds" ref="jobRef"></jobBooking>
+              <warehousing
+                v-if="taskObj.id == -1"
+                :workListIds="workListIds"
+                ref="wareRef"
+              ></warehousing>
+
+              <jobBooking
+                v-else
+                :workListIds="workListIds"
+                ref="jobRef"
+              ></jobBooking>
             </div>
           </div>
         </template>
@@ -71,7 +77,9 @@
   import feeding from './components/feeding/index.vue';
 
   import jobBooking from './components/jobBooking/index.vue';
-  import warehousing from './components/warehousing/index.vue'
+  import warehousing from './components/warehousing/index.vue';
+
+
   export default {
     components: {
       Search,
@@ -97,13 +105,10 @@
       };
     },
 
-
     computed: {
       taskObj() {
         return this.$store.state.user.taskObj;
-      },
-
-   
+      }
     },
 
     created() {
@@ -144,6 +149,8 @@
         }
       },
 
+  
+
       pickingClose(val) {
         if (val) {
           this.$nextTick(() => {

+ 2 - 2
vue.config.js

@@ -32,8 +32,8 @@ module.exports = {
       // 当我们的本地的请求 有/api的时候,就会代理我们的请求地址向另外一个服务器发出请求
       '/api': {
         // target: 'http://124.71.68.31:50001',
-        target: 'http://192.168.1.125:18086',
-        // target: 'http://192.168.1.107:18086',
+        // target: 'http://192.168.1.125:18086',
+        target: 'http://192.168.1.116:18086',
 
         changeOrigin: true, // 只有这个值为true的情况下 才表示开启跨域
         pathRewrite: {