ysy 2 лет назад
Родитель
Сommit
b067d58043

+ 7 - 83
src/api/bpm/components/outsourcedWarehousing/index.js

@@ -1,39 +1,8 @@
 import request from '@/utils/request';
 
-/**
- * 列表
- */
-export async function getList (data) {
-  const res = await request.post('/aps/batchingplan/page', data);
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
-/**
- * 保存
- */
-export async function save (data) {
-  const res = await request.post('/aps/batchingplan/save', data);
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
 
 /**
- * 修改
- */
-export async function del (data) {
-  const res = await request.delete('/aps/batchingplan/delete', { data });
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
-
-/**
- * 发布信息返显  /
+ * 详情  
  */
 export async function getById (id) {
   const res = await request.get(`/mes/applyoutsource/getById/${id}`);
@@ -42,47 +11,10 @@ export async function getById (id) {
   }
   return Promise.reject(new Error(res.data.message));
 }
-/**
- * 详情
- */
-export async function getPlanInfoById (id) {
-  const res = await request.get(`/aps/batchingplan/getPlanInfoById/${id}`);
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
-/**
- * 发布信息返显
- */
-export async function getReleaseInfoById (id) {
-  const res = await request.get(`/aps/batchingplan/getReleaseInfoById/${id}`);
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
-
-
-// 获取列表
-export async function getMaterialList(data) {
-  const res = await request.get(`/wms/outin/getRealTimeInventory`, {
-    params: data
-  });
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
-
-
-
-
 
-// 批量根据生产计划计算bom列表信息
-
-export async function listBomBySalesOrderIds(data) {
-  const res = await request.post(`/aps/batchingplandetail/listBomBySalesOrderIds`,data);
+// 指派
+export async function outsourceAssign(data) {
+  const res = await request.post(`/bpm/outsource/assign`, data);
   if (res.data.code == 0) {
     return res.data.data;
   }
@@ -90,21 +22,13 @@ export async function listBomBySalesOrderIds(data) {
 }
 
 
-// 根据销售订单计算bom列表信息
-export async function listBomBySalesOrderId(data) {
-  const res = await request.post(`/aps/batchingplandetail/listBomBySalesOrderId`,data);
+// 不通过任务,关闭流程
+export async function outsourceNotPass(data) {
+  const res = await request.post(`/bpm/outsource/notPass`, data);
   if (res.data.code == 0) {
     return res.data.data;
   }
   return Promise.reject(new Error(res.data.message));
 }
 
-// 提交
-export async function submit(data) {
-  const res = await request.post(`/bpm/apspurchaseplan/submit`,data);
-  if (res.data.code == 0) {
-    return res.data.data;
-  }
-  return Promise.reject(new Error(res.data.message));
-}
 

+ 2 - 2
src/views/bpm/handleTask/components/outsourcedWarehousing/detailDialog.vue

@@ -4,7 +4,7 @@
     <headerTitle title="委外入库申请单"></headerTitle>
 
     <!-- 数据表格 -->
-    <ele-pro-table ref="table" :columns="columns" :datasource="datasource" cache-key="workOrderTable">
+    <ele-pro-table ref="table" :columns="columns"    row-key="id" cache-key="outsourcedWarehousing">
 
 
       <template v-slot:requireDeliveryTime="{ row }">
@@ -33,7 +33,7 @@
 
 
       <template v-slot:files="{ row }">
-        <div v-if="row.files && row.technicalDrawings?.length">
+        <div v-if="row.files && row.files?.length">
           <el-link v-for="link in row.files" :key="link.id" type="primary" :underline="false" @click="downloadFile(link)">
             {{ link.name }}</el-link>
         </div>

+ 47 - 53
src/views/bpm/handleTask/components/outsourcedWarehousing/submit.vue

@@ -1,16 +1,18 @@
 <template>
   <el-col :span="16" :offset="6">
     <el-form label-width="100px" ref="formRef" :model="form">
-      <el-form-item label="采购员" prop="technicianId" style="margin-bottom: 20px" :rules="{
-        required: true,
-        message: '请选择',
-        trigger: 'change'
-      }">
+      <el-form-item label="采购员" v-if="taskDefinitionKey == 'purchaseLeader'" prop="technicianId"
+        style="margin-bottom: 20px" :rules="{
+          required: true,
+          message: '请选择',
+          trigger: 'change'
+        }">
         <el-select v-model="form.technicianId" clearable style="width: 100%" :filterable="true">
           <el-option v-for="item in userOptions" @click.native="form.userName = item.name" :key="item.id"
             :label="item.name" :value="item.id" />
         </el-select>
       </el-form-item>
+
       <el-form-item label="审批建议" prop="reason" style="margin-bottom: 20px" :rules="{
         required: true,
         message: '请选择',
@@ -26,14 +28,6 @@
       <el-button icon="el-icon-circle-close" type="danger" size="mini" @click="handleAudit(0)">驳回
       </el-button>
 
-      <el-dropdown @command="(command) => handleCommand(command)" style="margin-left: 30px;">
-        <span class="el-dropdown-link">更多<i class="el-icon-arrow-down el-icon--right"></i></span>
-        <el-dropdown-menu slot="dropdown">
-          <el-dropdown-item command="cancel">作废</el-dropdown-item>
-        </el-dropdown-menu>
-      </el-dropdown>
-
-
     </div>
 
   </el-col>
@@ -41,9 +35,10 @@
 
 <script>
 
-import { apspurchaseplan, cancel } from '@/api/bpm/components/apsMeterialPlan';
+
 import { approveTaskWithVariables } from '@/api/bpm/task';
 import { listAllUserBind } from '@/api/system/organization';
+import { outsourceAssign, outsourceNotPass } from '@/api/bpm/components/outsourcedWarehousing/index';
 
 // 流程实例的详情页,可用于审批
 export default {
@@ -72,35 +67,60 @@ export default {
         technicianId: '',
         reason: ''
       },
+
       userOptions: []
+
     };
   },
   created() {
-    this.userOptions = [];
-    listAllUserBind().then((data) => {
-      this.userOptions.push(...data);
-    });
+    if (this.taskDefinitionKey == 'purchaseLeader')
+      this.userOptionsFn()
   },
   methods: {
 
+    userOptionsFn() {
+      this.userOptions = [];
+      listAllUserBind().then((data) => {
+        this.userOptions.push(...data);
+      });
+    },
 
-    async handleAudit(status, type) {
-      //生产主管审批选择技术员
+    async handleAudit(status) {
 
-      if (!this.form.technicianId && status == 1) {
-        this.$message.warning(`请选择采购员!`);
-        return;
+      if (this.taskDefinitionKey == 'purchaseLeader') {
+        this._approveTaskPurchaseLeader(status)
+      } else {
+        this._approveTaskWithVariables(status);
       }
 
 
-      this._approveTaskWithVariables(status);
     },
     async _approveTaskWithVariables(status) {
+      let variables = {
+        pass: !!status
+      };
+
+      approveTaskWithVariables({
+        id: this.taskId,
+        reason: this.form.reason,
+        variables
+      }).then((res) => {
+        if (res.data.code != '-1') {
+          this.$emit('handleAudit', {
+            status,
+            title: status === 0 ? '驳回' : ''
+          });
+        }
+      });
+    },
+
+
+    async _approveTaskPurchaseLeader(status) {
 
 
       if (status == 1) {
 
-        apspurchaseplan({
+        outsourceAssign({
           businessId: this.businessId,
           id: this.taskId,
           userId: this.form.technicianId,
@@ -117,7 +137,7 @@ export default {
           }
         });
       } else if (status == 0) {
-        approveTaskWithVariables({
+        outsourceNotPass({
           id: this.taskId,
           reason: this.form.reason,
           pass: false
@@ -133,34 +153,8 @@ export default {
 
     },
 
-    getTableValue() {
-      return new Promise((resolve, reject) => {
-        this.$emit('getTableValue', async (data) => {
-          resolve(await data);
-        });
-      });
-    },
 
-    //更多
-    handleCommand(command) {
-      if (command === 'cancel') {
-        this.$confirm("是否确认作废?", {
-          type: 'warning',
-          cancelButtonText: '取消',
-          confirmButtonText: '确定'
-        }).then(() => {
-          cancel({
-            id: this.taskId,
-            reason: this.form.reason,
-            businessId: this.businessId,
-          }).then(() => {
-            this.$emit('handleClose');
-          }).catch(() => {
-            this.$message.error("流程作废失败");
-          });
-        }).catch(() => {});
-      }
-    },
+
 
   }
 };