695593266@qq.com před 7 měsíci
rodič
revize
90330b5d7b

+ 2 - 3
src/views/workOrder/components/details.vue

@@ -361,6 +361,7 @@
       }
     },
     mixins: [releaseMixin],
+    mixinOptions: { type: 'detail' },
     data() {
       return {
         processId: '',
@@ -418,9 +419,7 @@
             { label: '派单人:', prop: 'dispatcher' },
             { label: '派单时间:', prop: 'dispatchTime' }
           ],
-          [
-            { label: '生产要求:', prop: 'productionRequirements' },
-          ]
+          [{ label: '生产要求:', prop: 'productionRequirements' }]
         ],
         shiftList: [],
         dateValue: '',

+ 19 - 6
src/views/workOrder/components/releaseDialog.vue

@@ -85,7 +85,10 @@
         </el-row>
         <el-row>
           <el-form-item label="报工类型:" required>
-            <el-radio-group v-model="form.singleReport">
+            <el-radio-group
+              v-model="form.singleReport"
+              :disabled="form.isDisable"
+            >
               <!-- v-if="clientEnvironmentId != 2" -->
               <el-radio :label="1" :disabled="singleDis">单件报工</el-radio>
               <el-radio :label="0" :disabled="batchDis">批量报工</el-radio>
@@ -95,7 +98,7 @@
         <el-row>
           <el-form-item label="派单方式:" prop="taskAss">
             <!-- @change="changeDispatch" -->
-            <el-radio-group v-model="form.taskAss">
+            <el-radio-group v-model="form.taskAss" :disabled="form.isDisable">
               <el-radio :label="1" :disabled="orderDis">生产订单派单</el-radio>
               <el-radio :label="0" :disabled="procTaskDis"
                 >工序任务派单</el-radio
@@ -110,6 +113,7 @@
                 v-model="form.assignType"
                 size="mini"
                 @change="assignRadio"
+                :disabled="form.isDisable"
               >
                 <el-radio-button :label="1">工位</el-radio-button>
                 <el-radio-button :label="2">人员</el-radio-button>
@@ -125,6 +129,7 @@
               size="mini"
               multiple
               filterable
+              :disabled="form.isDisable"
             >
               <el-option
                 v-for="item in stationList"
@@ -348,8 +353,14 @@
     </div>
 
     <div slot="footer">
-      <el-button plain @click="cancel">取消</el-button>
-      <el-button type="primary" @click="confirm" :loading="toolbarLoading"
+      <el-button plain @click="cancel" :disabled="form.isDisable"
+        >取消</el-button
+      >
+      <el-button
+        type="primary"
+        @click="confirm"
+        :loading="toolbarLoading"
+        :disabled="form.isDisable"
         >确定</el-button
       >
     </div>
@@ -372,6 +383,7 @@
       }
     },
     mixins: [releaseMixin],
+    mixinOptions: { type: 'add' },
     data() {
       return {
         processId: '',
@@ -386,7 +398,8 @@
           workCenterId: '',
           taskAss: '',
           factoryName: '',
-          factoryLineIds: ''
+          factoryLineIds: '',
+          isDisable: false
         },
 
         processingRequired: 0,
@@ -630,7 +643,7 @@
                 : res.value == '1'
                 ? 1
                 : '';
-                console.log(this.form.singleReport, 'this.form.singleReport');
+            console.log(this.form.singleReport, 'this.form.singleReport');
           }
         });
       },

+ 37 - 4
src/views/workOrder/mixins/release.js

@@ -17,12 +17,21 @@ import {
 } from '@/api/mainData/index.js';
 import {
   releaseWorkOrder,
-  getcheckLoginUserIsTeamLeader
+  getcheckLoginUserIsTeamLeader,
+  getUserInfo
 } from '@/api/workOrder/index.js';
 export default {
   data() {
-    return {};
+    return {
+      isTpye: ''
+    };
   },
+
+  created() {
+    // console.log('组件传入的选项:', this.$options.mixinOptions);
+    this.isTpye = this.$options.mixinOptions.type;
+  },
+
   methods: {
     // 查询班次
     getClassesData() {
@@ -89,13 +98,37 @@ export default {
         this.form.factoryName = this.current.factoryName;
       }
       // this.current.taskId || this.current.firstTaskId;
-      console.log(id, 'id 查询工作中心');
       const res = await listWorkCenter(id);
+      console.log(res, 'ressss');
+      const userData = await getUserInfo(this.$store.state.user.info.userId);
+
       this.workCenterList = res;
-      console.log(this.workCenterList, 'res 333');
       if (res.length > 0) {
         // this.form.factoryName = res[0].factoryName;
         this.form.workCenterId = res[0].id;
+
+        if (this.isTpye == 'add') {
+          if (userData.centerList.length == 0) {
+            this.form.isDisable = true;
+            return this.$message.warning(
+              `当前登录人没有配置所中心,请先去主数据给该登录人配置所属中心`
+            );
+          }
+
+          if (userData.centerList.length != 0) {
+            // centerId
+            if (res.length != 0) {
+              const data = userData.centerList.filter(
+                (it) => it.centerId == res[0].id
+              );
+
+              if (data.length == 0) {
+                this.form.isDisable = true;
+                return this.$message.warning(`当前登录人没有权限给该工单派单`);
+              }
+            }
+          }
+        }
         // 查首工序
         await this.changeWork(res[0].id); // 选择工作中心
         this.getProductionData(res[0].id); // 查询产线