Forráskód Böngészése

fix:5357【盘点工单】计划下发来,点击去报工,提示我不是盘点人员,此校验基本都复现,时而又会好

mlchen 4 napja
szülő
commit
98f7b4e34b

+ 12 - 0
src/api/inventory/index.js

@@ -63,6 +63,18 @@ export async function getPlanOrderList(params) {
   return Promise.reject(new Error(res.data.message));
 }
 
+// 校验当前用户是否可以报工
+export async function checkReportWork(planOrderId) {
+  const res = await request.get(
+    `/wms/planOrder/checkReportWork/${planOrderId}`,
+    { showErrorToast: false }
+  );
+  if (res.data.code == 0) {
+    return res.data;
+  }
+  return Promise.reject(new Error(res.data.message));
+}
+
 // 盘点工单详情
 export async function getOrderInfoByPlanId(params) {
   const res = await request.get('/wms/plan/getOrderInfoByPlanId', {

+ 9 - 12
src/views/warehouseManagement/stocktaking/work/index.vue

@@ -35,7 +35,7 @@
 <script>
   import DisposeDialog from './components/disposeDialog.vue';
   import WorkSearch from './components/work-search.vue';
-  import { getPlanOrderList } from '@/api/inventory';
+  import { checkReportWork, getPlanOrderList } from '@/api/inventory';
   export default {
     components: {
       WorkSearch,
@@ -146,18 +146,15 @@
     },
     methods: {
       control(row) {
-        const currentUserId = localStorage.getItem('userId');
-        if (
-          !currentUserId ||
-          String(row.executorId) !== String(currentUserId)
-        ) {
-          this.$message({
-            type: 'error',
-            message: '您不是盘点人员,不能报工!',
+        checkReportWork(row.id)
+          .then(() => {
+            this.$refs.disposeDialogRef.open(row.id);
+          })
+          .catch((error) => {
+            this.$message.error(
+              error.message || '校验报工权限失败,请稍后重试!'
+            );
           });
-          return;
-        }
-        this.$refs.disposeDialogRef.open(row.id);
       },
       /* 表格数据源 */
       datasource({ page, limit, where, order }) {