diff --git a/ruoyi-admin/src/main/java/com/ruoyi/purchase/controller/PurchaseOrderController.java b/ruoyi-admin/src/main/java/com/ruoyi/purchase/controller/PurchaseOrderController.java index b7e2c69b..9fd46716 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/purchase/controller/PurchaseOrderController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/purchase/controller/PurchaseOrderController.java @@ -93,7 +93,6 @@ public class PurchaseOrderController extends BaseController @ResponseBody public TableDataInfo list(PurchaseOrder purchaseOrder) { - // 采购角色只能看到自己创建的数据 startPage(); List list = purchaseOrderService.selectPurchaseOrderList(purchaseOrder); return getDataTable(list); @@ -101,7 +100,7 @@ public class PurchaseOrderController extends BaseController /** - * 导出全部采购订单子表列表 + * 导出全部采购订单列表 */ @RequiresPermissions("purchase:purchaseOrderChild:export") @Log(title = "采购订单子表", businessType = BusinessType.EXPORT) @@ -117,7 +116,7 @@ public class PurchaseOrderController extends BaseController /** - * 导出采购订单子表列表 + * 导出采购订单列表 */ @RequiresPermissions("purchase:purchaseOrderChild:export") @Log(title = "采购订单子表", businessType = BusinessType.EXPORT) @@ -209,17 +208,11 @@ public class PurchaseOrderController extends BaseController @PostMapping("/addPurchaseOrder") @ResponseBody public AjaxResult addPurchasePlanToPurchaseOrder(@RequestBody AddPurchaseOrder addPurchaseOrder) { -// purchaseOrder.setAuditStatus("0"); -// purchaseOrder.setUseStatus("0"); -// purchaseOrder.setDelFlag("0"); -// purchaseOrderService.submitApply(purchaseOrder); + // purchaseOrderService.insertPurchaseOrder(purchaseOrder); // purchaseOrderService.addPurchaseOrderPayable(purchaseOrder); - // 数据校验,确保前端传入数据格式正确 - // 执行主表插入操作 - - - return toAjax(purchaseOrderService.addPurchasePlanToPurchaseOrder(addPurchaseOrder)); + purchaseOrderService.submitApply(addPurchaseOrder); + return AjaxResult.success(); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/purchase/domain/PurchaseOrderVo.java b/ruoyi-admin/src/main/java/com/ruoyi/purchase/domain/PurchaseOrderVo.java index 2e4dd356..2effe766 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/purchase/domain/PurchaseOrderVo.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/purchase/domain/PurchaseOrderVo.java @@ -17,6 +17,10 @@ public class PurchaseOrderVo extends PurchaseOrder { private String taskId; /** 任务名称 */ private String taskName; + + // 当前状态 + private String taskStatus; + /** 办理时间 */ private Date doneTime; /** 创建人 */ @@ -104,12 +108,22 @@ public class PurchaseOrderVo extends PurchaseOrder { this.keyword = keyword; } + + public String getTaskStatus() { + return taskStatus; + } + + public void setTaskStatus(String taskStatus) { + this.taskStatus = taskStatus; + } + @Override public String toString() { return "PurchaseOrderVo{" + "applyUserName='" + applyUserName + '\'' + ", taskId='" + taskId + '\'' + ", taskName='" + taskName + '\'' + + ", taskStatus='" + taskStatus + '\'' + ", doneTime=" + doneTime + ", createUserName='" + createUserName + '\'' + ", suspendState='" + suspendState + '\'' + diff --git a/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/IPurchaseOrderService.java b/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/IPurchaseOrderService.java index cc56fd33..40052372 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/IPurchaseOrderService.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/IPurchaseOrderService.java @@ -104,7 +104,7 @@ public interface IPurchaseOrderService Integer addPurchaseOrderPayable(PurchaseOrder purchaseOrder); - ProcessInstance submitApply(PurchaseOrder purchaseOrder); + ProcessInstance submitApply(AddPurchaseOrder addPurchaseOrder); @Transactional(rollbackFor = Exception.class) public ProcessInstance cancelPurchaseOrderById(Long id); @@ -122,10 +122,4 @@ public interface IPurchaseOrderService AjaxResult uploadSingleFile(MultipartFile file,String purchaseOrderCode); - /** - * 采购计划添加采购订单 - * */ - int addPurchasePlanToPurchaseOrder(AddPurchaseOrder addPurchaseOrder); - - } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java b/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java index 4589d900..f3fcaee8 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/purchase/service/impl/PurchaseOrderServiceImpl.java @@ -220,6 +220,12 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService } else { purchaseOrderVo.setTaskName("未启动"); } + purchaseOrderVo.setTaskStatus(purchaseOrderVo.getTaskName()); + if(purchaseOrderVo.getAuditStatus()!=null && purchaseOrderVo.getAuditStatus().equals("1")){ + purchaseOrderVo.setTaskStatus("审核通过"); + }else if(purchaseOrderVo.getAuditStatus()!=null && purchaseOrderVo.getAuditStatus().equals("2")){ + purchaseOrderVo.setTaskStatus("审核拒绝"); + } returnList.add(purchaseOrderVo); } returnList.setTotal(CollectionUtils.isEmpty(list) ? 0 : list.getTotal()); @@ -323,9 +329,7 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService /** * 采购计划添加采购订单 * */ - @Transactional(rollbackFor = Exception.class) - @Override - public int addPurchasePlanToPurchaseOrder(AddPurchaseOrder addPurchaseOrder) { + public int addPurchasePlanToPurchaseOrder(AddPurchaseOrder addPurchaseOrder,PurchaseOrder purchaseOrder) { String loginName = ShiroUtils.getLoginName(); PurchasePlanTwo purchasePlanTwo = addPurchaseOrder.getPurchasePlanTwo(); PurchasePlanOne purchasePlanOne = addPurchaseOrder.getPurchasePlanOne(); @@ -339,7 +343,6 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService throw new BusinessException("请填写本次采购数量"); } - PurchaseOrder purchaseOrder = new PurchaseOrder(); purchaseOrder.setPurchaseOrderCode(redisCache.generateBillNo("CG")); purchaseOrder.setPurchasePlanCode(purchasePlanOne.getPurchasePlanCodes()); purchaseOrder.setPaymentStatus("0"); @@ -367,11 +370,7 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService updatePurchasePlanByAddPurchaseOrder(addPurchaseOrder,purchasePlanChildList); buildPurchaseChild(purchasePlanSelectMaterialVoList, purchaseOrder); - int result = purchaseOrderMapper.insertPurchaseOrder(purchaseOrder); - if (result <= 0){ - throw new BusinessException("添加采购订单数据失败"); - } - return result; + return purchaseOrderMapper.insertPurchaseOrder(purchaseOrder); } //处理采购计划子表 @@ -750,13 +749,14 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService } @Transactional(rollbackFor = Exception.class) @Override - public ProcessInstance submitApply(PurchaseOrder purchaseOrder) { + public ProcessInstance submitApply(AddPurchaseOrder addPurchaseOrder) { + PurchaseOrder purchaseOrder = new PurchaseOrder(); + purchaseOrder.setAuditStatus("0"); + purchaseOrder.setUseStatus("0"); SysUser user = ShiroUtils.getSysUser(); purchaseOrder.setApplyUser(user.getLoginName()); purchaseOrder.setApplyTime(DateUtils.getNowDate()); - if(purchaseOrder.getPurchaseOrderId()==null) { - insertPurchaseOrder(purchaseOrder); - } + addPurchasePlanToPurchaseOrder(addPurchaseOrder,purchaseOrder); // 启动流程 String applyTitle = user.getUserName()+"发起了采购订单信息提交审批-"+DateUtils.dateTimeNow(); String instanceType = "submit"; @@ -993,9 +993,12 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService } + /** + * 启动流程实例 + * */ private ProcessInstance startProcessInstance(String applyTitle, String instanceType, PurchaseOrder purchaseOrder, SysUser user) { - Long materialId = purchaseOrder.getPurchaseOrderId(); - String businessKey = materialId.toString(); // 实体类 ID,作为流程的业务 key + Long purchaseOrderId = purchaseOrder.getPurchaseOrderId(); + String businessKey = purchaseOrderId.toString(); // 实体类 ID,作为流程的业务 key String key = "purchaseOrder"; Map variables = new HashMap<>(); // 构造authority传参 @@ -1010,14 +1013,19 @@ public class PurchaseOrderServiceImpl implements IPurchaseOrderService return processInstance; } + /** + * 角色校验 + * */ private void buildAuthority(SysUser user, Map variables) { Set roleKeys = roleService.selectRoleKeys(user.getUserId()); + variables.put("cgjlExist",false); + // 角色不同审核人不同 if(roleKeys.contains("cgyRole")){ variables.put("authority",1); }else if(roleKeys.contains("cgjlRole")){ - variables.put("authority",2); - }else if(roleKeys.contains("cgzgRole")|| roleKeys.contains("admin")){ + variables.put("cgjlExist",true); + }else if(roleKeys.contains("admin")){ variables.put("authority",3); }else if(roleKeys.contains("fzjlRole")){ variables.put("authority",4); diff --git a/ruoyi-admin/src/main/resources/mapper/purchase/PurchaseOrderMapper.xml b/ruoyi-admin/src/main/resources/mapper/purchase/PurchaseOrderMapper.xml index 600cd364..5b3c6b1d 100644 --- a/ruoyi-admin/src/main/resources/mapper/purchase/PurchaseOrderMapper.xml +++ b/ruoyi-admin/src/main/resources/mapper/purchase/PurchaseOrderMapper.xml @@ -59,6 +59,7 @@ and supplier_name like concat('%', #{supplierName}, '%') and create_time between #{params.beginCreateTime} and #{params.endCreateTime} + order by create_time desc