From 9acdef9af4e0df5afe968635a1de6ce6b76b24d3 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Mon, 18 Mar 2024 11:23:23 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=A1=E6=A0=B8=E5=BC=80=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basic/SysApprovalFlowController.java | 10 +++ .../purchase/PurApplyController.java | 18 +++++ .../purchase/PurOrderController.java | 16 +++++ .../purchase/PurOrderReceiveController.java | 9 ++- .../purchase/PurPlanController.java | 16 +++++ .../api/entity/purchase/PurApplyEntity.java | 6 ++ .../api/entity/purchase/PurOrderEntity.java | 5 ++ .../api/entity/purchase/PurPlanEntity.java | 7 ++ .../com/glxp/api/enums/ApprovalFlowEnum.java | 8 +-- .../api/req/inout/FilterReceiveRequest.java | 2 + .../api/res/basic/BasicSkProjectResponse.java | 2 - .../glxp/api/res/inout/ReceiveResponse.java | 11 +++ .../api/res/purchase/PurApplyResponse.java | 11 +++ .../api/res/purchase/PurOrderResponse.java | 12 ++++ .../api/res/purchase/PurPlanResponse.java | 12 ++++ .../impl/SysApprovalFlowServiceImpl.java | 2 +- .../mybatis/mapper/inout/ReceiveDao.xml | 31 +++++--- .../mybatis/mapper/purchase/PurApplyDao.xml | 13 ++-- .../mybatis/mapper/purchase/PurOrderDao.xml | 4 +- .../mybatis/mapper/purchase/PurPlanDao.xml | 7 +- src/main/resources/schemas/schema_v2.4.sql | 70 +++++++++++++++++-- 21 files changed, 244 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java index a71e3e6f6..50ccba404 100644 --- a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java +++ b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java @@ -5,6 +5,7 @@ import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.req.basic.SubmitApprovalFlowRequest; import com.glxp.api.res.basic.SysApprovalFlowDetailResponse; import com.glxp.api.service.basic.SysApprovalFlowService; +import com.glxp.api.service.system.SystemParamConfigService; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; @@ -19,6 +20,8 @@ public class SysApprovalFlowController { @Resource private SysApprovalFlowService sysApprovalFlowService; + @Resource + private SystemParamConfigService systemParamConfigService; @ApiOperation(value = "获取流程审批过程") @GetMapping("/udiwms/sysApprovalFlow/approvalFlowDetailList/{approvalFlowId}") @@ -34,4 +37,11 @@ public class SysApprovalFlowController { return ResultVOUtils.success(); } + @ApiOperation(value = "获取流程审批开关参数") + @GetMapping("/udiwms/sysApprovalFlow/config") + public BaseResponse getConfig() { + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); + return ResultVOUtils.success(sys_approval_flow); + } + } diff --git a/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java b/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java index 99401ac70..24d16f33f 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java @@ -1,9 +1,12 @@ package com.glxp.api.controller.purchase; +import com.glxp.api.service.basic.SysApprovalFlowService; import com.glxp.api.service.purchase.impl.PurApplyDetailService; import com.glxp.api.service.purchase.impl.PurApplyService; import com.glxp.api.service.purchase.impl.PurOrderDetailService; import com.glxp.api.service.purchase.impl.PurPlanDetailService; +import com.glxp.api.service.system.SystemParamConfigService; +import com.glxp.api.util.IntUtil; import org.springframework.beans.BeanUtils; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; @@ -82,6 +85,12 @@ public class PurApplyController { IoOrderDetailBizService ioOrderDetailBizService; @Resource IoPurChangeService purChangeService; + @Resource + SysApprovalFlowService sysApprovalFlowService; + @Resource + SystemParamConfigService systemParamConfigService; + + final String type = "sg"; /** * 新增申购单 @@ -102,6 +111,15 @@ public class PurApplyController { String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SG_ORDER, "yyyyMMdd")); purApplyEntity.setBillNo(billNo); } + + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); + Integer editStatus = postPurApplyRequest.getEditStatus(); + if (editStatus == 2 && sys_approval_flow){//提交审核 + String approvalFlowId = sysApprovalFlowService.getApprovalFlowId(); + purApplyEntity.setApprovalFlowId(approvalFlowId); + sysApprovalFlowService.generateFlow(approvalFlowId,purApplyEntity.getBillNo(),type); + } + if (purApplyEntity.getId() == null) { purApplyService.insert(purApplyEntity); } else { diff --git a/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java b/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java index f8df56c8b..de4cde890 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurOrderController.java @@ -1,7 +1,9 @@ package com.glxp.api.controller.purchase; +import com.glxp.api.service.basic.SysApprovalFlowService; import com.glxp.api.service.purchase.impl.PurOrderDetailService; import com.glxp.api.service.purchase.impl.PurPlanDetailService; +import com.glxp.api.service.system.SystemParamConfigService; import org.springframework.beans.BeanUtils; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; @@ -70,6 +72,12 @@ public class PurOrderController { IoOrderDetailBizService ioOrderDetailBizService; @Resource IoPurChangeService purChangeService; + @Resource + SysApprovalFlowService sysApprovalFlowService; + @Resource + SystemParamConfigService systemParamConfigService; + + final String type = "cgdd"; /** * 新增采购计划 @@ -96,6 +104,14 @@ public class PurOrderController { purOrderEntity.setBillNo(billNo); } + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); + Integer editStatus = postPurOrderRequest.getEditStatus(); + if (editStatus == 2 && sys_approval_flow){//提交审核 + String approvalFlowId = sysApprovalFlowService.getApprovalFlowId(); + purOrderEntity.setApprovalFlowId(approvalFlowId); + sysApprovalFlowService.generateFlow(approvalFlowId,purOrderEntity.getBillNo(),type); + } + if (purOrderEntity.getId() == null) { purOrderService.insert(purOrderEntity); } else { diff --git a/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java b/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java index d621105d1..815d20fe1 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurOrderReceiveController.java @@ -59,6 +59,7 @@ import com.glxp.api.service.purchase.impl.PurApplyDetailService; import com.glxp.api.service.purchase.impl.PurApplyService; import com.glxp.api.service.purchase.impl.PurOrderDetailService; import com.glxp.api.service.purchase.impl.PurPlanDetailService; +import com.glxp.api.service.system.SystemParamConfigService; import com.glxp.api.util.*; import com.glxp.api.util.udi.FilterUdiUtils; import org.springframework.validation.BindingResult; @@ -116,6 +117,8 @@ public class PurOrderReceiveController extends BaseController { InvProductController invProductController; @Resource SysApprovalFlowService sysApprovalFlowService; + @Resource + SystemParamConfigService systemParamConfigService; final String type = "ly"; @@ -150,8 +153,9 @@ public class PurOrderReceiveController extends BaseController { Long userId = customerService.getUserId(); purReceiveEntity.setStatus(purReceiveEntity.getStatus()); + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); Integer editStatus = purReceiveEntity.getStatus(); - if (editStatus == 2){//提交审核 + if (editStatus == 2 && sys_approval_flow){//提交审核 String approvalFlowId = sysApprovalFlowService.getApprovalFlowId(); purReceiveEntity.setApprovalFlowId(approvalFlowId); sysApprovalFlowService.generateFlow(approvalFlowId,purReceiveEntity.getBillNo(),type); @@ -178,6 +182,9 @@ public class PurOrderReceiveController extends BaseController { // filterReceiveRequest.setTargetInvCode("1000000"); } + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); + filterReceiveRequest.setSysApprovalFlow(sys_approval_flow); + List data = receiveService.filterList(filterReceiveRequest); PageInfo pageInfo = new PageInfo<>(data); PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); diff --git a/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java b/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java index 862ba3227..a9631fc9b 100644 --- a/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java +++ b/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java @@ -1,9 +1,11 @@ package com.glxp.api.controller.purchase; +import com.glxp.api.service.basic.SysApprovalFlowService; import com.glxp.api.service.purchase.impl.PurApplyDetailService; import com.glxp.api.service.purchase.impl.PurApplyService; import com.glxp.api.service.purchase.impl.PurOrderDetailService; import com.glxp.api.service.purchase.impl.PurPlanDetailService; +import com.glxp.api.service.system.SystemParamConfigService; import org.springframework.beans.BeanUtils; import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; @@ -82,6 +84,12 @@ public class PurPlanController { PurOrderDetailService purOrderDetailService; @Resource IoPurChangeService purChangeService; + @Resource + SysApprovalFlowService sysApprovalFlowService; + @Resource + SystemParamConfigService systemParamConfigService; + + final String type = "cgjh"; /** * 新增采购计划 @@ -105,6 +113,14 @@ public class PurPlanController { purPlanEntity.setBillNo(billNo); } + Boolean sys_approval_flow = "1".equals(systemParamConfigService.selectValueByParamKey("sys_approval_flow")); + Integer editStatus = postPurPlanRequest.getEditStatus(); + if (editStatus == 2 && sys_approval_flow){//提交审核 + String approvalFlowId = sysApprovalFlowService.getApprovalFlowId(); + purPlanEntity.setApprovalFlowId(approvalFlowId); + sysApprovalFlowService.generateFlow(approvalFlowId,purPlanEntity.getBillNo(),type); + } + if (purPlanEntity.getId() == null) { purPlanService.insert(purPlanEntity); } else { diff --git a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java index 4741e25b3..ec11f930e 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java @@ -131,6 +131,12 @@ public class PurApplyEntity { @TableField(value = "arrivalTime") private Date arrivalTime; + /** + * 审批表主键 + */ + @TableField(value = "approvalFlowId") + private String approvalFlowId; + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java index 77fe55250..0357540b3 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurOrderEntity.java @@ -148,6 +148,11 @@ public class PurOrderEntity { @TableField(value = "arrivalTime") private Date arrivalTime; + /** + * 审批表主键 + */ + @TableField(value = "approvalFlowId") + private String approvalFlowId; public static final String COL_ID = "id"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java index 094320736..5047816fd 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java @@ -144,6 +144,13 @@ public class PurPlanEntity { @TableField(value = "arrivalTime") private Date arrivalTime; + /** + * 审批表主键 + */ + @TableField(value = "approvalFlowId") + private String approvalFlowId; + + public static final String COL_ID = "id"; public static final String COL_BILLNO = "billNo"; diff --git a/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java b/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java index 8040d17a1..203e56e0d 100644 --- a/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java +++ b/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java @@ -9,10 +9,10 @@ import lombok.Getter; @AllArgsConstructor public enum ApprovalFlowEnum { - DSH(1, "待审核"), - TG(2, "通过"), - BH(3, "驳回"), - CX(4, "撤销") + CG(1, "草稿"), + DSH(2, "待审核"), + TG(3, "通过"), + BH(4, "拒绝") ; diff --git a/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java b/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java index 25a8d31b9..daa2af2e7 100644 --- a/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java +++ b/src/main/java/com/glxp/api/req/inout/FilterReceiveRequest.java @@ -41,5 +41,7 @@ public class FilterReceiveRequest extends ListPageRequest { private Boolean isInvCode; private String createUser; + private Boolean sysApprovalFlow; + } diff --git a/src/main/java/com/glxp/api/res/basic/BasicSkProjectResponse.java b/src/main/java/com/glxp/api/res/basic/BasicSkProjectResponse.java index 2055c7b3a..14d22804a 100644 --- a/src/main/java/com/glxp/api/res/basic/BasicSkProjectResponse.java +++ b/src/main/java/com/glxp/api/res/basic/BasicSkProjectResponse.java @@ -42,8 +42,6 @@ public class BasicSkProjectResponse { */ private String remark; - private BigDecimal price; - private Date createTime; private String createUser; diff --git a/src/main/java/com/glxp/api/res/inout/ReceiveResponse.java b/src/main/java/com/glxp/api/res/inout/ReceiveResponse.java index 32af8f727..704d273bd 100644 --- a/src/main/java/com/glxp/api/res/inout/ReceiveResponse.java +++ b/src/main/java/com/glxp/api/res/inout/ReceiveResponse.java @@ -106,4 +106,15 @@ public class ReceiveResponse { */ private String approvalFlowId; + + /** + * 状态(1.草稿,2.未审核,3.已审核,4.拒绝) + */ + private int flowStatus; + + /** + * 审核时间 + */ + private Date flowAuditTime; + } diff --git a/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java b/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java index 63f225700..e8940b5ec 100644 --- a/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java +++ b/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java @@ -81,4 +81,15 @@ public class PurApplyResponse { private Integer emergency; private Date arrivalTime; + /** + * 状态(1.草稿,2.未审核,3.已审核,4.拒绝) + */ + private int flowStatus; + + + /** + * 审核时间 + */ + private Date flowAuditTime; + } diff --git a/src/main/java/com/glxp/api/res/purchase/PurOrderResponse.java b/src/main/java/com/glxp/api/res/purchase/PurOrderResponse.java index c6002e99d..4be909f49 100644 --- a/src/main/java/com/glxp/api/res/purchase/PurOrderResponse.java +++ b/src/main/java/com/glxp/api/res/purchase/PurOrderResponse.java @@ -76,4 +76,16 @@ public class PurOrderResponse { private Date arrivalTime; private String supId; private String supName; + + + /** + * 状态(1.草稿,2.未审核,3.已审核,4.拒绝) + */ + private int flowStatus; + + /** + * 审核时间 + */ + private Date flowAuditTime; + } diff --git a/src/main/java/com/glxp/api/res/purchase/PurPlanResponse.java b/src/main/java/com/glxp/api/res/purchase/PurPlanResponse.java index b5c85a002..7d7ca37f1 100644 --- a/src/main/java/com/glxp/api/res/purchase/PurPlanResponse.java +++ b/src/main/java/com/glxp/api/res/purchase/PurPlanResponse.java @@ -75,4 +75,16 @@ public class PurPlanResponse { private String auditUserName; private Integer emergency; private Date arrivalTime; + + + /** + * 状态(1.草稿,2.未审核,3.已审核,4.拒绝) + */ + private int flowStatus; + + + /** + * 审核时间 + */ + private Date flowAuditTime; } diff --git a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java index 4c9db653c..035e72f7b 100644 --- a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java +++ b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java @@ -53,7 +53,7 @@ public class SysApprovalFlowServiceImpl extends ServiceImpl - SELECT pur_apply.*, + SELECT IFNULL(saf.status,1) as flowStatus,saf.updateTime as flowAuditTime, + pur_apply.*, cb.employeeName createByName, ab.employeeName auditByName, auth_warehouse.`name` targetInvName, @@ -18,6 +19,7 @@ LEFT JOIN auth_dept ON auth_dept.`code` = pur_apply.targetDeptCode LEFT JOIN auth_warehouse aw1 ON pur_apply.invCode = aw1.`code` LEFT JOIN auth_dept ad1 ON ad1.`code` = pur_apply.deptCode + Left Join sys_approval_flow as saf ON pur_apply.approvalFlowId = saf.id AND billNo = #{billNo} @@ -46,13 +48,13 @@ and pur_apply.status = #{status} - and (pur_apply.status = 3 or pur_apply.status = 2 or pur_apply.status = 4) + and (saf.status=2 or saf.status=1 or saf.status=3) - and (pur_apply.status = 1 or pur_apply.status = 2 or pur_apply.status = 4) + and (saf.status is null or saf.status=0 or saf.status=1 or saf.status=3) - and (pur_apply.status = 3 or pur_apply.status = 4) + and (saf.status=2 or saf.status=3) AND deptCode = #{deptCode} @@ -168,6 +170,9 @@ arrivalTime=#{arrivalTime}, + + approvalFlowId=#{approvalFlowId}, + WHERE id = #{id} diff --git a/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml b/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml index b8dc44954..654a05aef 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurOrderDao.xml @@ -42,7 +42,8 @@ auth_warehouse.NAME invName, aw1.name applyInvName, auth_dept.`name` deptName, - basic_corp.name supName + basic_corp.name supName, + IFNULL(saf.status,1) as flowStatus,saf.updateTime as flowAuditTime FROM pur_order LEFT JOIN auth_user cb ON pur_order.createUser = cb.id LEFT JOIN auth_user ab ON pur_order.auditUser = ab.id @@ -51,6 +52,7 @@ LEFT JOIN auth_dept ON auth_dept.CODE = pur_order.deptCode left join basic_corp on pur_order.supId = basic_corp.erpId left join auth_warehouse aw1 on pur_order.applyInv = aw1.`code` + Left Join sys_approval_flow as saf ON pur_order.approvalFlowId = saf.id AND billNo = #{billNo} diff --git a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml index f53b2c97a..af0741c3d 100644 --- a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml +++ b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml @@ -4,13 +4,15 @@