From 54d3d3244aaf344b05d37352efd3288505efe253 Mon Sep 17 00:00:00 2001 From: chenhc <2369838784@qq.com> Date: Thu, 14 Mar 2024 10:38:07 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E5=AE=A1=E6=A0=B8=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E9=85=8D=E7=BD=AE=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/auth/AuthUserController.java | 8 + .../SysApprovalFlowConfigController.java | 74 ++++ .../basic/SysApprovalFlowController.java | 37 ++ .../com/glxp/api/dao/auth/AuthAdminDao.java | 2 + .../basic/SysApprovalFlowConfigMapper.java | 61 +++ .../basic/SysApprovalFlowConfigMxMapper.java | 61 +++ .../api/dao/basic/SysApprovalFlowMapper.java | 61 +++ .../dao/basic/SysApprovalFlowMxMapper.java | 61 +++ .../api/entity/basic/SysApprovalFlow.java | 74 ++++ .../entity/basic/SysApprovalFlowConfig.java | 63 +++ .../entity/basic/SysApprovalFlowConfigMx.java | 68 +++ .../api/entity/basic/SysApprovalFlowMx.java | 87 ++++ .../com/glxp/api/enums/ApprovalFlowEnum.java | 23 + .../glxp/api/enums/ApprovalStatusEnum.java | 22 + .../req/basic/SubmitApprovalFlowRequest.java | 34 ++ .../SysApprovalFlowAddDetailRequest.java | 39 ++ .../basic/SysApprovalFlowDetailRequest.java | 14 + .../basic/SysApprovalFlowFilterRequest.java | 22 + .../basic/SysApprovalFlowDetailResponse.java | 100 +++++ .../api/service/auth/AuthAdminService.java | 3 + .../auth/impl/AuthAdminServiceImpl.java | 10 +- .../basic/SysApprovalFlowConfigMxService.java | 30 ++ .../basic/SysApprovalFlowConfigService.java | 42 ++ .../basic/SysApprovalFlowMxService.java | 30 ++ .../service/basic/SysApprovalFlowService.java | 39 ++ .../SysApprovalFlowConfigMxServiceImpl.java | 67 +++ .../SysApprovalFlowConfigServiceImpl.java | 147 +++++++ .../impl/SysApprovalFlowMxServiceImpl.java | 67 +++ .../impl/SysApprovalFlowServiceImpl.java | 269 ++++++++++++ .../mybatis/mapper/auth/AuthAdminDao.xml | 18 + .../basic/SysApprovalFlowConfigMapper.xml | 297 +++++++++++++ .../basic/SysApprovalFlowConfigMxMapper.xml | 323 ++++++++++++++ .../mapper/basic/SysApprovalFlowMapper.xml | 352 +++++++++++++++ .../mapper/basic/SysApprovalFlowMxMapper.xml | 407 ++++++++++++++++++ src/main/resources/schemas/schema_v2.4.sql | 93 ++++ 35 files changed, 3101 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java create mode 100644 src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java create mode 100644 src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMapper.java create mode 100644 src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMxMapper.java create mode 100644 src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMapper.java create mode 100644 src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMxMapper.java create mode 100644 src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java create mode 100644 src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfig.java create mode 100644 src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java create mode 100644 src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java create mode 100644 src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java create mode 100644 src/main/java/com/glxp/api/enums/ApprovalStatusEnum.java create mode 100644 src/main/java/com/glxp/api/req/basic/SubmitApprovalFlowRequest.java create mode 100644 src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java create mode 100644 src/main/java/com/glxp/api/req/basic/SysApprovalFlowDetailRequest.java create mode 100644 src/main/java/com/glxp/api/req/basic/SysApprovalFlowFilterRequest.java create mode 100644 src/main/java/com/glxp/api/res/basic/SysApprovalFlowDetailResponse.java create mode 100644 src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigMxService.java create mode 100644 src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigService.java create mode 100644 src/main/java/com/glxp/api/service/basic/SysApprovalFlowMxService.java create mode 100644 src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java create mode 100644 src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigMxServiceImpl.java create mode 100644 src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigServiceImpl.java create mode 100644 src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowMxServiceImpl.java create mode 100644 src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java create mode 100644 src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMapper.xml create mode 100644 src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMxMapper.xml create mode 100644 src/main/resources/mybatis/mapper/basic/SysApprovalFlowMapper.xml create mode 100644 src/main/resources/mybatis/mapper/basic/SysApprovalFlowMxMapper.xml diff --git a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java index db7b1c5c1..5ec09997d 100644 --- a/src/main/java/com/glxp/api/controller/auth/AuthUserController.java +++ b/src/main/java/com/glxp/api/controller/auth/AuthUserController.java @@ -135,6 +135,14 @@ public class AuthUserController extends BaseController { return ResultVOUtils.success(authAdmin); } + //查询用户名信息 + @AuthRuleAnnotation("") + @GetMapping("/admin/auth/companyUser/list") + public BaseResponse companyUser(FilterInvLinkDataRequest filterInvLinkDataRequest) { + List hospitalUserList =authAdminService.companyUserList(filterInvLinkDataRequest); + return ResultVOUtils.success(hospitalUserList); + } + //修改用户信息 @AuthRuleAnnotation("") @PostMapping("/admin/auth/admin/updateUser") diff --git a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java new file mode 100644 index 000000000..a89338cd0 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowConfigController.java @@ -0,0 +1,74 @@ +package com.glxp.api.controller.basic; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.glxp.api.common.enums.ResultEnum; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.entity.basic.SysApprovalFlowConfig; +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; +import com.glxp.api.req.basic.SysApprovalFlowAddDetailRequest; +import com.glxp.api.req.basic.SysApprovalFlowDetailRequest; +import com.glxp.api.req.basic.SysApprovalFlowFilterRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.service.basic.SysApprovalFlowConfigService; +import io.swagger.annotations.ApiOperation; +import jodd.util.StringUtil; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; +import java.util.List; + +/** + * 审批配置页面相关接口 + */ +@Slf4j +@RestController +public class SysApprovalFlowConfigController { + + @Resource + SysApprovalFlowConfigService sysApprovalFlowConfigService; + + @ApiOperation(value = "获取配置列表") + @GetMapping("/udiwms/sysApprovalFlowConfig/filter") + public BaseResponse filterSysApprovalFlowConfig(SysApprovalFlowFilterRequest sysApprovalFlowFilterRequest, + BindingResult bindingResult) { + if (bindingResult.hasErrors()) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, bindingResult.getFieldError().getDefaultMessage()); + } + IPage page = sysApprovalFlowConfigService.filterList(sysApprovalFlowFilterRequest); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(page.getTotal()); + pageSimpleResponse.setList(page.getRecords()); + return ResultVOUtils.success(pageSimpleResponse); + } + + @ApiOperation(value = "获取配置详情") + @GetMapping("/udiwms/sysApprovalFlowConfig/detail") + public BaseResponse getDetailList(SysApprovalFlowDetailRequest sysApprovalFlowDetailRequest) { + String type = sysApprovalFlowDetailRequest.getType(); + if (StringUtil.isEmpty(type)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + List list = sysApprovalFlowConfigService.getDetailList(type); + return ResultVOUtils.success(list); + } + + @ApiOperation(value = "新增配置详情") + @PostMapping("/udiwms/sysApprovalFlowConfig/addConfigDetail") + public BaseResponse addConfigDetail(@RequestBody @Valid SysApprovalFlowAddDetailRequest sysApprovalFlowAddDetailRequest) { + int i = sysApprovalFlowConfigService.addConfigDetail(sysApprovalFlowAddDetailRequest); + return ResultVOUtils.success(); + } + + @ApiOperation(value = "删除配置详情") + @DeleteMapping("/udiwms/sysApprovalFlowConfig/removeDetail/{id}") + public BaseResponse removeDetail(@PathVariable String id) { + int i = sysApprovalFlowConfigService.removeDetail(id); + return ResultVOUtils.successMsg("移除成功"); + } + + +} diff --git a/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java new file mode 100644 index 000000000..a71e3e6f6 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/basic/SysApprovalFlowController.java @@ -0,0 +1,37 @@ +package com.glxp.api.controller.basic; + +import com.glxp.api.common.res.BaseResponse; +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 io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; +import java.util.List; + +@Slf4j +@RestController +public class SysApprovalFlowController { + + @Resource + private SysApprovalFlowService sysApprovalFlowService; + + @ApiOperation(value = "获取流程审批过程") + @GetMapping("/udiwms/sysApprovalFlow/approvalFlowDetailList/{approvalFlowId}") + public BaseResponse getDetailList(@PathVariable String approvalFlowId) { + List list = sysApprovalFlowService.getDetailList(approvalFlowId); + return ResultVOUtils.success(list); + } + + @ApiOperation(value = "提交节点审批") + @PostMapping("/udiwms/sysApprovalFlow/submitApprovalFlow") + public BaseResponse submitApprovalFlow(@RequestBody @Valid SubmitApprovalFlowRequest submitApprovalFlowRequest) { + sysApprovalFlowService.submitApprovalFlow(submitApprovalFlowRequest); + return ResultVOUtils.success(); + } + +} diff --git a/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java b/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java index 7ddf8ebdb..2f78c596b 100644 --- a/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java +++ b/src/main/java/com/glxp/api/dao/auth/AuthAdminDao.java @@ -3,6 +3,7 @@ package com.glxp.api.dao.auth; import com.glxp.api.dao.BaseMapperPlus; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.req.auth.FilterAuthUserRequest; +import com.glxp.api.req.auth.FilterInvLinkDataRequest; import com.glxp.api.req.auth.UpdateUserRequset; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -85,4 +86,5 @@ public interface AuthAdminDao extends BaseMapperPlus selectUnallocatedList(FilterAuthUserRequest filterAuthUserRequest); + List companyUserList(@Param("param")FilterInvLinkDataRequest filterInvLinkDataRequest); } diff --git a/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMapper.java b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMapper.java new file mode 100644 index 000000000..5b056f7f9 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMapper.java @@ -0,0 +1,61 @@ +package com.glxp.api.dao.basic; + +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.basic.SysApprovalFlowConfig; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface SysApprovalFlowConfigMapper extends BaseMapperPlus { + /** + * delete by primary key + * @param id primaryKey + * @return deleteCount + */ + int deleteByPrimaryKey(String id); + + /** + * insert record to table + * @param record the record + * @return insert count + */ + int insert(SysApprovalFlowConfig record); + + boolean insertOrUpdate(SysApprovalFlowConfig record); + + int insertOrUpdateSelective(SysApprovalFlowConfig record); + + /** + * insert record to table selective + * @param record the record + * @return insert count + */ + int insertSelective(SysApprovalFlowConfig record); + + /** + * select by primary key + * @param id primary key + * @return object by primary key + */ + SysApprovalFlowConfig selectByPrimaryKey(String id); + + /** + * update record selective + * @param record the updated record + * @return update count + */ + int updateByPrimaryKeySelective(SysApprovalFlowConfig record); + + /** + * update record + * @param record the updated record + * @return update count + */ + int updateByPrimaryKey(SysApprovalFlowConfig record); + + int updateBatch(List list); + + int batchInsert(@Param("list") List list); +} diff --git a/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMxMapper.java b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMxMapper.java new file mode 100644 index 000000000..969367e9f --- /dev/null +++ b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowConfigMxMapper.java @@ -0,0 +1,61 @@ +package com.glxp.api.dao.basic; + +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface SysApprovalFlowConfigMxMapper extends BaseMapperPlus { + /** + * delete by primary key + * @param id primaryKey + * @return deleteCount + */ + int deleteByPrimaryKey(String id); + + /** + * insert record to table + * @param record the record + * @return insert count + */ + int insert(SysApprovalFlowConfigMx record); + + boolean insertOrUpdate(SysApprovalFlowConfigMx record); + + int insertOrUpdateSelective(SysApprovalFlowConfigMx record); + + /** + * insert record to table selective + * @param record the record + * @return insert count + */ + int insertSelective(SysApprovalFlowConfigMx record); + + /** + * select by primary key + * @param id primary key + * @return object by primary key + */ + SysApprovalFlowConfigMx selectByPrimaryKey(String id); + + /** + * update record selective + * @param record the updated record + * @return update count + */ + int updateByPrimaryKeySelective(SysApprovalFlowConfigMx record); + + /** + * update record + * @param record the updated record + * @return update count + */ + int updateByPrimaryKey(SysApprovalFlowConfigMx record); + + int updateBatch(List list); + + int batchInsert(@Param("list") List list); +} diff --git a/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMapper.java b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMapper.java new file mode 100644 index 000000000..79fbcb7e7 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMapper.java @@ -0,0 +1,61 @@ +package com.glxp.api.dao.basic; + +import com.glxp.api.entity.basic.SysApprovalFlow; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + + +@Mapper +public interface SysApprovalFlowMapper { + /** + * delete by primary key + * @param id primaryKey + * @return deleteCount + */ + int deleteByPrimaryKey(String id); + + /** + * insert record to table + * @param record the record + * @return insert count + */ + int insert(SysApprovalFlow record); + + int insertOrUpdate(SysApprovalFlow record); + + int insertOrUpdateSelective(SysApprovalFlow record); + + /** + * insert record to table selective + * @param record the record + * @return insert count + */ + int insertSelective(SysApprovalFlow record); + + /** + * select by primary key + * @param id primary key + * @return object by primary key + */ + SysApprovalFlow selectByPrimaryKey(String id); + + /** + * update record selective + * @param record the updated record + * @return update count + */ + int updateByPrimaryKeySelective(SysApprovalFlow record); + + /** + * update record + * @param record the updated record + * @return update count + */ + int updateByPrimaryKey(SysApprovalFlow record); + + int updateBatch(List list); + + int batchInsert(@Param("list") List list); +} diff --git a/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMxMapper.java b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMxMapper.java new file mode 100644 index 000000000..a683bfc92 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/basic/SysApprovalFlowMxMapper.java @@ -0,0 +1,61 @@ +package com.glxp.api.dao.basic; + +import com.glxp.api.dao.BaseMapperPlus; +import com.glxp.api.entity.basic.SysApprovalFlowMx; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface SysApprovalFlowMxMapper extends BaseMapperPlus { + /** + * delete by primary key + * @param id primaryKey + * @return deleteCount + */ + int deleteByPrimaryKey(String id); + + /** + * insert record to table + * @param record the record + * @return insert count + */ + int insert(SysApprovalFlowMx record); + + boolean insertOrUpdate(SysApprovalFlowMx record); + + int insertOrUpdateSelective(SysApprovalFlowMx record); + + /** + * insert record to table selective + * @param record the record + * @return insert count + */ + int insertSelective(SysApprovalFlowMx record); + + /** + * select by primary key + * @param id primary key + * @return object by primary key + */ + SysApprovalFlowMx selectByPrimaryKey(String id); + + /** + * update record selective + * @param record the updated record + * @return update count + */ + int updateByPrimaryKeySelective(SysApprovalFlowMx record); + + /** + * update record + * @param record the updated record + * @return update count + */ + int updateByPrimaryKey(SysApprovalFlowMx record); + + int updateBatch(List list); + + int batchInsert(@Param("list") List list); +} diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java new file mode 100644 index 000000000..22e20d131 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlow.java @@ -0,0 +1,74 @@ +package com.glxp.api.entity.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +/** + * 审批主表 + */ +@Data +@TableName(value = "sys_approval_flow") +public class SysApprovalFlow { + /** + * 主键,可作为审批编号 + */ + @TableField(value = "id") + private String id; + + /** + * 标题(王五的请假申请) + */ + @TableField(value = "title") + private String title; + + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + private String type; + + /** + * 审核状态(1:待审核;2:通过;3:驳回;4:撤销) + */ + @TableField(value = "status") + private Integer status; + + /** + * 申请人主键 + */ + @TableField(value = "userId") + private String userId; + /** + * 申请人名称 + */ + @TableField(value = "userName") + private String userName; + + /** + * 创建人 + */ + @TableField(value = "createUser") + private String createUser; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + + /** + * 更新人 + */ + @TableField(value = "updateUser") + private String updateUser; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + +} diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfig.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfig.java new file mode 100644 index 000000000..c12c75a85 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfig.java @@ -0,0 +1,63 @@ +package com.glxp.api.entity.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +/** + * 审批配置表 + */ +@Data +@TableName(value = "sys_approval_flow_config") +public class SysApprovalFlowConfig { + /** + * 审核配置表主键 + */ + @TableField(value = "id") + private String id; + + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + private String type; + + /** + * 审批单据名称 + */ + @TableField(value = "typeName") + private String typeName; + + /** + * 排序 + */ + @TableField(value = "approvalSort") + private Integer approvalSort; + + /** + * 创建人 + */ + @TableField(value = "createUser") + private String createUser; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + + /** + * 更新人 + */ + @TableField(value = "updateUser") + private String updateUser; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + +} diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java new file mode 100644 index 000000000..dbdb1d214 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowConfigMx.java @@ -0,0 +1,68 @@ +package com.glxp.api.entity.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +/** + * 审批配置表 + */ +@Data +@TableName(value = "sys_approval_flow_config_mx") +public class SysApprovalFlowConfigMx { + /** + * 审核配置表主键 + */ + @TableField(value = "id") + private String id; + + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + private String type; + + /** + * 审批人主键 + */ + @TableField(value = "approvalUserId") + private String approvalUserId; + /** + * 审批人名称 + */ + @TableField(value = "approvalUserName") + private String approvalUserName; + + /** + * 排序 + */ + @TableField(value = "approvalSort") + private Integer approvalSort; + + /** + * 创建人 + */ + @TableField(value = "createUser") + private String createUser; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + + /** + * 更新人 + */ + @TableField(value = "updateUser") + private String updateUser; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + +} diff --git a/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java new file mode 100644 index 000000000..4134113c4 --- /dev/null +++ b/src/main/java/com/glxp/api/entity/basic/SysApprovalFlowMx.java @@ -0,0 +1,87 @@ +package com.glxp.api.entity.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +/** + * 审批明细表 + */ +@Data +@TableName(value = "sys_approval_flow_mx") +public class SysApprovalFlowMx { + /** + * 明细表主键 + */ + @TableField(value = "id") + private String id; + + /** + * 审批表主键 + */ + @TableField(value = "approvalFlowId") + private String approvalFlowId; + + /** + * 审批人主键 + */ + @TableField(value = "approvalUserId") + private String approvalUserId; + + /** + * 审批人名称 + */ + @TableField(value = "approvalUserName") + private String approvalUserName; + + /** + * 审批时间 + */ + @TableField(value = "approvalTime") + private Date approvalTime; + + /** + * 审批意见 + */ + @TableField(value = "approvalOpinion") + private String approvalOpinion; + + /** + * 审核状态(1:审核中;2:等待我审核;3:通过;4:驳回) + */ + @TableField(value = "approvalStatus") + private Integer approvalStatus; + + /** + * 排序 + */ + @TableField(value = "approvalSort") + private Integer approvalSort; + + /** + * 创建人 + */ + @TableField(value = "createUser") + private String createUser; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + + /** + * 更新人 + */ + @TableField(value = "updateUser") + private String updateUser; + + /** + * 更新时间 + */ + @TableField(value = "updateTime") + private Date updateTime; + +} diff --git a/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java b/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java new file mode 100644 index 000000000..8040d17a1 --- /dev/null +++ b/src/main/java/com/glxp/api/enums/ApprovalFlowEnum.java @@ -0,0 +1,23 @@ +package com.glxp.api.enums; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import lombok.AllArgsConstructor; +import lombok.Getter; + + +@Getter +@AllArgsConstructor +public enum ApprovalFlowEnum { + + DSH(1, "待审核"), + TG(2, "通过"), + BH(3, "驳回"), + CX(4, "撤销") + ; + + + @EnumValue + private final Integer code; + + private final String name; +} diff --git a/src/main/java/com/glxp/api/enums/ApprovalStatusEnum.java b/src/main/java/com/glxp/api/enums/ApprovalStatusEnum.java new file mode 100644 index 000000000..905f1c4ab --- /dev/null +++ b/src/main/java/com/glxp/api/enums/ApprovalStatusEnum.java @@ -0,0 +1,22 @@ +package com.glxp.api.enums; + +import com.baomidou.mybatisplus.annotation.EnumValue; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum ApprovalStatusEnum { + + SHZ(1, "审核中"), + DWSH(2, "等待我审核"), + TG(3, "通过"), + BH(4, "驳回") + ; + + + @EnumValue + private final Integer code; + + private final String name; +} diff --git a/src/main/java/com/glxp/api/req/basic/SubmitApprovalFlowRequest.java b/src/main/java/com/glxp/api/req/basic/SubmitApprovalFlowRequest.java new file mode 100644 index 000000000..1ff9e5bc1 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/SubmitApprovalFlowRequest.java @@ -0,0 +1,34 @@ +package com.glxp.api.req.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +@Data +public class SubmitApprovalFlowRequest { + + /** + * 明细表主键 + */ + @TableField(value = "id") + @NotEmpty(message = "审批明细id不可以为空!") + private String id; + + + /** + * 审批意见 + */ + @TableField(value = "approvalOpinion") + @NotEmpty(message = "审批意见不可以为空!") + private String approvalOpinion; + + /** + * 审核状态(1:审核中;2:等待我审核;3:通过;4:驳回) + */ + @TableField(value = "approvalStatus") + @NotNull(message = "审核状态不可以为空!") + private Integer approvalStatus; + +} diff --git a/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java new file mode 100644 index 000000000..653b90983 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowAddDetailRequest.java @@ -0,0 +1,39 @@ +package com.glxp.api.req.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.Data; + +import javax.validation.constraints.NotEmpty; +import javax.validation.constraints.NotNull; + +@Data +public class SysApprovalFlowAddDetailRequest { + + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + @NotEmpty(message = "审批类型不可以为空!") + private String type; + + /** + * 审批人主键 + */ + @TableField(value = "approvalUserId") + @NotEmpty(message = "审批人主键不可以为空!") + private String approvalUserId; + /** + * 审批人名称 + */ + @TableField(value = "approvalUserName") + @NotEmpty(message = "审批人名称不可以为空!") + private String approvalUserName; + + /** + * 排序 + */ + @TableField(value = "approvalSort") + @NotNull(message = "排序不可以为空!") + private Integer approvalSort; + +} diff --git a/src/main/java/com/glxp/api/req/basic/SysApprovalFlowDetailRequest.java b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowDetailRequest.java new file mode 100644 index 000000000..3753d0f93 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowDetailRequest.java @@ -0,0 +1,14 @@ +package com.glxp.api.req.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +@Data +public class SysApprovalFlowDetailRequest extends ListPageRequest { + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + private String type; +} diff --git a/src/main/java/com/glxp/api/req/basic/SysApprovalFlowFilterRequest.java b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowFilterRequest.java new file mode 100644 index 000000000..b61103509 --- /dev/null +++ b/src/main/java/com/glxp/api/req/basic/SysApprovalFlowFilterRequest.java @@ -0,0 +1,22 @@ +package com.glxp.api.req.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +@Data +public class SysApprovalFlowFilterRequest extends ListPageRequest { + + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + private String type; + + /** + * 审批单据名称 + */ + @TableField(value = "typeName") + private String typeName; + +} diff --git a/src/main/java/com/glxp/api/res/basic/SysApprovalFlowDetailResponse.java b/src/main/java/com/glxp/api/res/basic/SysApprovalFlowDetailResponse.java new file mode 100644 index 000000000..ac86f1d1c --- /dev/null +++ b/src/main/java/com/glxp/api/res/basic/SysApprovalFlowDetailResponse.java @@ -0,0 +1,100 @@ +package com.glxp.api.res.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.Data; + +import java.util.Date; + +@Data +public class SysApprovalFlowDetailResponse { + + /** + * 明细表主键 + */ + @TableField(value = "id") + private String id; + + /** + * 审批表主键 + */ + @TableField(value = "approvalFlowId") + private String approvalFlowId; + + /** + * 审批人主键 + */ + @TableField(value = "approvalUserId") + private String approvalUserId; + + /** + * 审批人名称 + */ + @TableField(value = "approvalUserName") + private String approvalUserName; + + /** + * 审批时间 + */ + @TableField(value = "approvalTime") + private Date approvalTime; + + /** + * 审批意见 + */ + @TableField(value = "approvalOpinion") + private String approvalOpinion; + + /** + * 审核状态(1:审核中;2:等待我审核;3:通过;4:驳回) + */ + @TableField(value = "approvalStatus") + private Integer approvalStatus; + + /** + * 排序 + */ + @TableField(value = "approvalSort") + private Integer approvalSort; + + /** + * 节点类型 1 申请人 ; 2 审批人 + */ + private Integer nodeType; + + + /** + * 标题(王五的请假申请) + */ + @TableField(value = "title") + private String title; + + /** + * 审批类型(字典表设置code用作区分类型) + */ + @TableField(value = "type") + private String type; + + /** + * 审核状态(1:待审核;2:通过;3:驳回;4:撤销) + */ + @TableField(value = "status") + private Integer status; + + /** + * 申请人主键 + */ + @TableField(value = "userId") + private String userId; + /** + * 申请人名称 + */ + @TableField(value = "userName") + private String userName; + + /** + * 创建时间 + */ + @TableField(value = "createTime") + private Date createTime; + +} diff --git a/src/main/java/com/glxp/api/service/auth/AuthAdminService.java b/src/main/java/com/glxp/api/service/auth/AuthAdminService.java index 9eee80df9..12120b190 100644 --- a/src/main/java/com/glxp/api/service/auth/AuthAdminService.java +++ b/src/main/java/com/glxp/api/service/auth/AuthAdminService.java @@ -4,6 +4,7 @@ package com.glxp.api.service.auth; import com.baomidou.mybatisplus.extension.service.IService; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.req.auth.FilterAuthUserRequest; +import com.glxp.api.req.auth.FilterInvLinkDataRequest; import com.glxp.api.req.auth.FilterNoSelectUserRequest; import com.glxp.api.req.auth.UpdateUserRequset; @@ -45,4 +46,6 @@ public interface AuthAdminService extends IService { void insertUserAuth(Long userId, List roleIds); + + List companyUserList(FilterInvLinkDataRequest filterInvLinkDataRequest); } diff --git a/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java b/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java index 941828667..de1d281f4 100644 --- a/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java +++ b/src/main/java/com/glxp/api/service/auth/impl/AuthAdminServiceImpl.java @@ -9,10 +9,7 @@ import com.glxp.api.dao.auth.SysUserRoleMapper; import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.auth.SysUserRole; import com.glxp.api.exception.JsonException; -import com.glxp.api.req.auth.FilterAuthUserRequest; -import com.glxp.api.req.auth.FilterNoSelectUserRequest; -import com.glxp.api.req.auth.FilterUserRoleRequest; -import com.glxp.api.req.auth.UpdateUserRequset; +import com.glxp.api.req.auth.*; import com.glxp.api.service.auth.AuthAdminService; import com.glxp.api.common.enums.ResultEnum; import org.springframework.stereotype.Service; @@ -186,6 +183,11 @@ public class AuthAdminServiceImpl extends ServiceImpl i insertUserRole(userId, roleIds); } + @Override + public List companyUserList(FilterInvLinkDataRequest filterInvLinkDataRequest) { + return authAdminDao.companyUserList(filterInvLinkDataRequest); + } + public void insertUserRole(Long userId, List roleIds) { if (ArrayUtil.isNotEmpty(roleIds)) { diff --git a/src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigMxService.java b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigMxService.java new file mode 100644 index 000000000..d3881e476 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigMxService.java @@ -0,0 +1,30 @@ +package com.glxp.api.service.basic; + +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; + +import java.util.List; + +public interface SysApprovalFlowConfigMxService { + + + int deleteByPrimaryKey(String id); + + int insert(SysApprovalFlowConfigMx record); + + boolean insertOrUpdate(SysApprovalFlowConfigMx record); + + int insertOrUpdateSelective(SysApprovalFlowConfigMx record); + + int insertSelective(SysApprovalFlowConfigMx record); + + SysApprovalFlowConfigMx selectByPrimaryKey(String id); + + int updateByPrimaryKeySelective(SysApprovalFlowConfigMx record); + + int updateByPrimaryKey(SysApprovalFlowConfigMx record); + + int updateBatch(List list); + + int batchInsert(List list); + +} diff --git a/src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigService.java b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigService.java new file mode 100644 index 000000000..7cabeecb4 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowConfigService.java @@ -0,0 +1,42 @@ +package com.glxp.api.service.basic; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.glxp.api.entity.basic.SysApprovalFlowConfig; +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; +import com.glxp.api.req.basic.SysApprovalFlowAddDetailRequest; +import com.glxp.api.req.basic.SysApprovalFlowFilterRequest; + +import java.util.List; + +public interface SysApprovalFlowConfigService{ + + + int deleteByPrimaryKey(String id); + + int insert(SysApprovalFlowConfig record); + + boolean insertOrUpdate(SysApprovalFlowConfig record); + + int insertOrUpdateSelective(SysApprovalFlowConfig record); + + int insertSelective(SysApprovalFlowConfig record); + + SysApprovalFlowConfig selectByPrimaryKey(String id); + + int updateByPrimaryKeySelective(SysApprovalFlowConfig record); + + int updateByPrimaryKey(SysApprovalFlowConfig record); + + int updateBatch(List list); + + int batchInsert(List list); + + IPage filterList(SysApprovalFlowFilterRequest sysApprovalFlowFilterRequest); + + List getDetailList(String type); + + int addConfigDetail(SysApprovalFlowAddDetailRequest sysApprovalFlowAddDetailRequest); + + int removeDetail(String id); + +} diff --git a/src/main/java/com/glxp/api/service/basic/SysApprovalFlowMxService.java b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowMxService.java new file mode 100644 index 000000000..153ff5f05 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowMxService.java @@ -0,0 +1,30 @@ +package com.glxp.api.service.basic; + +import com.glxp.api.entity.basic.SysApprovalFlowMx; + +import java.util.List; + +public interface SysApprovalFlowMxService{ + + + int deleteByPrimaryKey(String id); + + int insert(SysApprovalFlowMx record); + + boolean insertOrUpdate(SysApprovalFlowMx record); + + int insertOrUpdateSelective(SysApprovalFlowMx record); + + int insertSelective(SysApprovalFlowMx record); + + SysApprovalFlowMx selectByPrimaryKey(String id); + + int updateByPrimaryKeySelective(SysApprovalFlowMx record); + + int updateByPrimaryKey(SysApprovalFlowMx record); + + int updateBatch(List list); + + int batchInsert(List list); + +} diff --git a/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java new file mode 100644 index 000000000..8d7fb7cdd --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/SysApprovalFlowService.java @@ -0,0 +1,39 @@ +package com.glxp.api.service.basic; + +import com.glxp.api.entity.basic.SysApprovalFlow; +import com.glxp.api.req.basic.SubmitApprovalFlowRequest; +import com.glxp.api.res.basic.SysApprovalFlowDetailResponse; + +import java.util.List; + +public interface SysApprovalFlowService{ + + + int deleteByPrimaryKey(String id); + + int insert(SysApprovalFlow record); + + int insertOrUpdate(SysApprovalFlow record); + + int insertOrUpdateSelective(SysApprovalFlow record); + + int insertSelective(SysApprovalFlow record); + + SysApprovalFlow selectByPrimaryKey(String id); + + int updateByPrimaryKeySelective(SysApprovalFlow record); + + int updateByPrimaryKey(SysApprovalFlow record); + + int updateBatch(List list); + + int batchInsert(List list); + + String getApprovalFlowId(); + + void generateFlow(String approvalFlowId, String billNo, String type); + + List getDetailList(String approvalFlowId); + + void submitApprovalFlow(SubmitApprovalFlowRequest submitApprovalFlowRequest); +} diff --git a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigMxServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigMxServiceImpl.java new file mode 100644 index 000000000..3f2ab4560 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigMxServiceImpl.java @@ -0,0 +1,67 @@ +package com.glxp.api.service.basic.impl; + +import com.glxp.api.dao.basic.SysApprovalFlowConfigMxMapper; +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; +import com.glxp.api.service.basic.SysApprovalFlowConfigMxService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class SysApprovalFlowConfigMxServiceImpl implements SysApprovalFlowConfigMxService{ + + @Resource + private SysApprovalFlowConfigMxMapper sysApprovalFlowConfigMxMapper; + + @Override + public int deleteByPrimaryKey(String id) { + return sysApprovalFlowConfigMxMapper.deleteByPrimaryKey(id); + } + + @Override + public int insert(SysApprovalFlowConfigMx record) { + return sysApprovalFlowConfigMxMapper.insert(record); + } + + @Override + public boolean insertOrUpdate(SysApprovalFlowConfigMx record) { + return sysApprovalFlowConfigMxMapper.insertOrUpdate(record); + } + + @Override + public int insertOrUpdateSelective(SysApprovalFlowConfigMx record) { + return sysApprovalFlowConfigMxMapper.insertOrUpdateSelective(record); + } + + @Override + public int insertSelective(SysApprovalFlowConfigMx record) { + return sysApprovalFlowConfigMxMapper.insertSelective(record); + } + + @Override + public SysApprovalFlowConfigMx selectByPrimaryKey(String id) { + return sysApprovalFlowConfigMxMapper.selectByPrimaryKey(id); + } + + @Override + public int updateByPrimaryKeySelective(SysApprovalFlowConfigMx record) { + return sysApprovalFlowConfigMxMapper.updateByPrimaryKeySelective(record); + } + + @Override + public int updateByPrimaryKey(SysApprovalFlowConfigMx record) { + return sysApprovalFlowConfigMxMapper.updateByPrimaryKey(record); + } + + @Override + public int updateBatch(List list) { + return sysApprovalFlowConfigMxMapper.updateBatch(list); + } + + @Override + public int batchInsert(List list) { + return sysApprovalFlowConfigMxMapper.batchInsert(list); + } + +} diff --git a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigServiceImpl.java new file mode 100644 index 000000000..dc565b177 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowConfigServiceImpl.java @@ -0,0 +1,147 @@ +package com.glxp.api.service.basic.impl; + +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.glxp.api.dao.basic.SysApprovalFlowConfigMapper; +import com.glxp.api.dao.basic.SysApprovalFlowConfigMxMapper; +import com.glxp.api.entity.basic.SysApprovalFlowConfig; +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; +import com.glxp.api.exception.JsonException; +import com.glxp.api.req.basic.SysApprovalFlowAddDetailRequest; +import com.glxp.api.req.basic.SysApprovalFlowFilterRequest; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.SysApprovalFlowConfigService; +import jodd.util.StringUtil; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Date; +import java.util.List; +import java.util.UUID; + +@Service +public class SysApprovalFlowConfigServiceImpl implements SysApprovalFlowConfigService { + + @Resource + private SysApprovalFlowConfigMapper sysApprovalFlowConfigMapper; + @Resource + private SysApprovalFlowConfigMxMapper sysApprovalFlowConfigMxMapper; + @Resource + CustomerService customerService; + + @Override + public int deleteByPrimaryKey(String id) { + return sysApprovalFlowConfigMapper.deleteByPrimaryKey(id); + } + + @Override + public int insert(SysApprovalFlowConfig record) { + return sysApprovalFlowConfigMapper.insert(record); + } + + @Override + public boolean insertOrUpdate(SysApprovalFlowConfig record) { + return sysApprovalFlowConfigMapper.insertOrUpdate(record); + } + + @Override + public int insertOrUpdateSelective(SysApprovalFlowConfig record) { + return sysApprovalFlowConfigMapper.insertOrUpdateSelective(record); + } + + @Override + public int insertSelective(SysApprovalFlowConfig record) { + return sysApprovalFlowConfigMapper.insertSelective(record); + } + + @Override + public SysApprovalFlowConfig selectByPrimaryKey(String id) { + return sysApprovalFlowConfigMapper.selectByPrimaryKey(id); + } + + @Override + public int updateByPrimaryKeySelective(SysApprovalFlowConfig record) { + return sysApprovalFlowConfigMapper.updateByPrimaryKeySelective(record); + } + + @Override + public int updateByPrimaryKey(SysApprovalFlowConfig record) { + return sysApprovalFlowConfigMapper.updateByPrimaryKey(record); + } + + @Override + public int updateBatch(List list) { + return sysApprovalFlowConfigMapper.updateBatch(list); + } + + @Override + public int batchInsert(List list) { + return sysApprovalFlowConfigMapper.batchInsert(list); + } + + @Override + public IPage filterList(SysApprovalFlowFilterRequest sysApprovalFlowFilterRequest) { + if (sysApprovalFlowFilterRequest == null) { + return new Page<>(); + } + IPage page = new Page<>(); + page.setSize(sysApprovalFlowFilterRequest.getLimit()); + page.setCurrent(sysApprovalFlowFilterRequest.getPage()); + QueryWrapper qw = new QueryWrapper<>(); + qw.orderByAsc("approvalSort"); + String type = sysApprovalFlowFilterRequest.getType(); + String typeName = sysApprovalFlowFilterRequest.getTypeName(); + if (StringUtil.isNotEmpty(type)){ + qw.like("type",type); + } + if (StringUtil.isNotEmpty(typeName)){ + qw.like("typeName",typeName); + } + IPage sysApprovalFlowConfigIPage = sysApprovalFlowConfigMapper.selectPage(page, qw); + return sysApprovalFlowConfigIPage; + } + + @Override + public List getDetailList(String type) { + QueryWrapper qw = new QueryWrapper<>(); + qw.orderByAsc("approvalSort"); + qw.eq("type",type); + return sysApprovalFlowConfigMxMapper.selectList(qw); + } + + @Override + public int addConfigDetail(SysApprovalFlowAddDetailRequest sysApprovalFlowAddDetailRequest) { + SysApprovalFlowConfigMx sysApprovalFlowConfigMx = new SysApprovalFlowConfigMx(); + BeanUtils.copyProperties(sysApprovalFlowAddDetailRequest,sysApprovalFlowConfigMx); + Integer approvalSort = sysApprovalFlowConfigMx.getApprovalSort(); + String type = sysApprovalFlowConfigMx.getType(); + + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("approvalSort",approvalSort); + qw.eq("type",type); + List sysApprovalFlowConfigMxes = sysApprovalFlowConfigMxMapper.selectList(qw); + if (CollUtil.isNotEmpty(sysApprovalFlowConfigMxes)){ + throw new JsonException("该单据的审核节点排序号重复!"); + } + + Date date = new Date(); + Long userId = customerService.getUserId(); + sysApprovalFlowConfigMx.setCreateTime(date); + sysApprovalFlowConfigMx.setUpdateUser(userId + ""); + sysApprovalFlowConfigMx.setCreateUser(userId + ""); + sysApprovalFlowConfigMx.setUpdateTime(date); + sysApprovalFlowConfigMx.setId(UUID.randomUUID().toString().replace("-", "")); + + return sysApprovalFlowConfigMxMapper.insert(sysApprovalFlowConfigMx); + } + + @Override + public int removeDetail(String id) { + return sysApprovalFlowConfigMxMapper.deleteByPrimaryKey(id); + } + + +} diff --git a/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowMxServiceImpl.java b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowMxServiceImpl.java new file mode 100644 index 000000000..b3ab7dd08 --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowMxServiceImpl.java @@ -0,0 +1,67 @@ +package com.glxp.api.service.basic.impl; + +import com.glxp.api.dao.basic.SysApprovalFlowMxMapper; +import com.glxp.api.entity.basic.SysApprovalFlowMx; +import com.glxp.api.service.basic.SysApprovalFlowMxService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +@Service +public class SysApprovalFlowMxServiceImpl implements SysApprovalFlowMxService { + + @Resource + private SysApprovalFlowMxMapper sysApprovalFlowMxMapper; + + @Override + public int deleteByPrimaryKey(String id) { + return sysApprovalFlowMxMapper.deleteByPrimaryKey(id); + } + + @Override + public int insert(SysApprovalFlowMx record) { + return sysApprovalFlowMxMapper.insert(record); + } + + @Override + public boolean insertOrUpdate(SysApprovalFlowMx record) { + return sysApprovalFlowMxMapper.insertOrUpdate(record); + } + + @Override + public int insertOrUpdateSelective(SysApprovalFlowMx record) { + return sysApprovalFlowMxMapper.insertOrUpdateSelective(record); + } + + @Override + public int insertSelective(SysApprovalFlowMx record) { + return sysApprovalFlowMxMapper.insertSelective(record); + } + + @Override + public SysApprovalFlowMx selectByPrimaryKey(String id) { + return sysApprovalFlowMxMapper.selectByPrimaryKey(id); + } + + @Override + public int updateByPrimaryKeySelective(SysApprovalFlowMx record) { + return sysApprovalFlowMxMapper.updateByPrimaryKeySelective(record); + } + + @Override + public int updateByPrimaryKey(SysApprovalFlowMx record) { + return sysApprovalFlowMxMapper.updateByPrimaryKey(record); + } + + @Override + public int updateBatch(List list) { + return sysApprovalFlowMxMapper.updateBatch(list); + } + + @Override + public int batchInsert(List list) { + return sysApprovalFlowMxMapper.batchInsert(list); + } + +} 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 new file mode 100644 index 000000000..cfb3dcd7c --- /dev/null +++ b/src/main/java/com/glxp/api/service/basic/impl/SysApprovalFlowServiceImpl.java @@ -0,0 +1,269 @@ +package com.glxp.api.service.basic.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.glxp.api.dao.basic.SysApprovalFlowMapper; +import com.glxp.api.dao.basic.SysApprovalFlowMxMapper; +import com.glxp.api.entity.basic.SysApprovalFlow; +import com.glxp.api.entity.basic.SysApprovalFlowConfigMx; +import com.glxp.api.entity.basic.SysApprovalFlowMx; +import com.glxp.api.enums.ApprovalFlowEnum; +import com.glxp.api.enums.ApprovalStatusEnum; +import com.glxp.api.exception.JsonException; +import com.glxp.api.req.basic.SubmitApprovalFlowRequest; +import com.glxp.api.res.basic.SysApprovalFlowDetailResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.SysApprovalFlowConfigService; +import com.glxp.api.service.basic.SysApprovalFlowService; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.*; +import java.util.stream.Collectors; + +@Service +@Transactional(rollbackFor = Exception.class) +public class SysApprovalFlowServiceImpl implements SysApprovalFlowService{ + + @Resource + private SysApprovalFlowMapper sysApprovalFlowMapper; + @Resource + private SysApprovalFlowMxMapper sysApprovalFlowMxMapper; + @Resource + private SysApprovalFlowConfigService sysApprovalFlowConfigService; + @Resource + CustomerService customerService; + + @Override + public int deleteByPrimaryKey(String id) { + return sysApprovalFlowMapper.deleteByPrimaryKey(id); + } + + @Override + public int insert(SysApprovalFlow record) { + return sysApprovalFlowMapper.insert(record); + } + + @Override + public int insertOrUpdate(SysApprovalFlow record) { + return sysApprovalFlowMapper.insertOrUpdate(record); + } + + @Override + public int insertOrUpdateSelective(SysApprovalFlow record) { + return sysApprovalFlowMapper.insertOrUpdateSelective(record); + } + + @Override + public int insertSelective(SysApprovalFlow record) { + return sysApprovalFlowMapper.insertSelective(record); + } + + @Override + public SysApprovalFlow selectByPrimaryKey(String id) { + return sysApprovalFlowMapper.selectByPrimaryKey(id); + } + + @Override + public int updateByPrimaryKeySelective(SysApprovalFlow record) { + return sysApprovalFlowMapper.updateByPrimaryKeySelective(record); + } + + @Override + public int updateByPrimaryKey(SysApprovalFlow record) { + return sysApprovalFlowMapper.updateByPrimaryKey(record); + } + + @Override + public int updateBatch(List list) { + return sysApprovalFlowMapper.updateBatch(list); + } + + @Override + public int batchInsert(List list) { + return sysApprovalFlowMapper.batchInsert(list); + } + + + @Override + public String getApprovalFlowId() { + return UUID.randomUUID().toString().replace("-", ""); + } + + @Override + public void generateFlow(String approvalFlowId, String title, String type) { + SysApprovalFlow sysApprovalFlow = new SysApprovalFlow(); + sysApprovalFlow.setId(approvalFlowId); + sysApprovalFlow.setTitle(title); + sysApprovalFlow.setType(type); + sysApprovalFlow.setStatus(ApprovalFlowEnum.DSH.getCode()); + + Long userId = customerService.getUserId(); + String userName = customerService.getUserName(); + Date date = new Date(); + + sysApprovalFlow.setUserId(userId + ""); + sysApprovalFlow.setUserName(userName); + sysApprovalFlow.setCreateUser(userId + ""); + sysApprovalFlow.setCreateTime(date); + sysApprovalFlow.setUpdateUser(userId + ""); + sysApprovalFlow.setUpdateTime(date); + + ArrayList mxs = new ArrayList<>(); + generateFlowMx(type,approvalFlowId,userId,date,mxs); + + sysApprovalFlowMapper.insert(sysApprovalFlow); + sysApprovalFlowMxMapper.batchInsert(mxs); + + } + + @Override + public List getDetailList(String approvalFlowId) { + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("approvalFlowId",approvalFlowId); + List sysApprovalFlowMxes = sysApprovalFlowMxMapper.selectList(qw); + SysApprovalFlow sysApprovalFlow = sysApprovalFlowMapper.selectByPrimaryKey(approvalFlowId); + ArrayList listRes = new ArrayList<>(); + SysApprovalFlowDetailResponse sysApprovalFlowDetailResponse = new SysApprovalFlowDetailResponse(); + BeanUtil.copyProperties(sysApprovalFlow,sysApprovalFlowDetailResponse); + sysApprovalFlowDetailResponse.setApprovalSort(-1); + sysApprovalFlowDetailResponse.setApprovalStatus(ApprovalStatusEnum.TG.getCode()); + sysApprovalFlowDetailResponse.setNodeType(1); + listRes.add(sysApprovalFlowDetailResponse); + + if (CollectionUtil.isNotEmpty(sysApprovalFlowMxes)){ + sysApprovalFlowMxes.forEach( item -> { + SysApprovalFlowDetailResponse sysApprovalFlowDetailResponsei = new SysApprovalFlowDetailResponse(); + BeanUtil.copyProperties(item,sysApprovalFlowDetailResponsei); + sysApprovalFlowDetailResponsei.setNodeType(2); + listRes.add(sysApprovalFlowDetailResponsei); + }); + } + + List collect = listRes.stream().sorted(Comparator.comparing(SysApprovalFlowDetailResponse::getApprovalSort)).collect(Collectors.toList()); + return collect; + } + + @Override + public void submitApprovalFlow(SubmitApprovalFlowRequest submitApprovalFlowRequest) { + + Long userId = customerService.getUserId(); + String id = submitApprovalFlowRequest.getId(); + SysApprovalFlowMx sysApprovalFlowMx = sysApprovalFlowMxMapper.selectByPrimaryKey(id); + if (ObjectUtil.isNull(sysApprovalFlowMx)){ + throw new JsonException("审批id有误,未找到记录!"); + } + String approvalUserId = sysApprovalFlowMx.getApprovalUserId(); + if (!approvalUserId.equals(String.valueOf(userId))){ + throw new JsonException("当前账号不可对此审批节点进行审批!"); + } + String approvalFlowId = sysApprovalFlowMx.getApprovalFlowId(); + SysApprovalFlow sysApprovalFlow = sysApprovalFlowMapper.selectByPrimaryKey(approvalFlowId); + + if (sysApprovalFlow.getStatus() != ApprovalFlowEnum.DSH.getCode()){ + throw new JsonException("该单据未处于待审核状态无法审核!"); + } + Integer approvalSort = sysApprovalFlowMx.getApprovalSort(); + Integer approvalStatus = sysApprovalFlowMx.getApprovalStatus(); + if (approvalStatus != ApprovalStatusEnum.DWSH.getCode()){ + throw new JsonException("审批节点未处于待审核状态无法审核!"); + } + + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("approvalFlowId",approvalFlowId); + qw.orderByAsc("approvalSort"); + List sysApprovalFlowMxes = sysApprovalFlowMxMapper.selectList(qw); + + for (int i = 0; i < sysApprovalFlowMxes.size(); i++) { + SysApprovalFlowMx sysApprovalFlowMx1 = sysApprovalFlowMxes.get(i); + String id1 = sysApprovalFlowMx1.getId(); + Integer approvalSort1 = sysApprovalFlowMx1.getApprovalSort(); + Integer approvalStatus1 = sysApprovalFlowMx1.getApprovalStatus(); + if (!id1.equals(id) && approvalStatus1 == ApprovalStatusEnum.DWSH.getCode() && approvalSort1 <= approvalSort){ + throw new JsonException("请先完成前面节点审批!"); + } + } + + Date date = new Date(); + sysApprovalFlowMx.setApprovalTime(date); + sysApprovalFlowMx.setApprovalOpinion(submitApprovalFlowRequest.getApprovalOpinion()); + sysApprovalFlowMx.setApprovalStatus(submitApprovalFlowRequest.getApprovalStatus()); + sysApprovalFlowMx.setUpdateTime(date); + sysApprovalFlowMx.setUpdateUser(approvalUserId); + sysApprovalFlowMxMapper.updateById(sysApprovalFlowMx); + + //进行单据状态更新 + updateDocumentStatus(approvalFlowId); + } + + private void updateDocumentStatus(String approvalFlowId) { + //子状态有一个驳回 为 驳回;全部审核通过 为通过 ;其他为 审核中 + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("approvalFlowId",approvalFlowId); + qw.orderByAsc("approvalSort"); + List sysApprovalFlowMxes = sysApprovalFlowMxMapper.selectList(qw); + SysApprovalFlow sysApprovalFlow = sysApprovalFlowMapper.selectByPrimaryKey(approvalFlowId); + int shz = 0; + int tg = 0; + int bh = 0; + for (SysApprovalFlowMx sysApprovalFlowMx : sysApprovalFlowMxes) { + Integer approvalStatus = sysApprovalFlowMx.getApprovalStatus(); + if (approvalStatus.equals(ApprovalStatusEnum.SHZ.getCode())){ + shz++; + }else if (approvalStatus.equals(ApprovalStatusEnum.TG.getCode())){ + tg++; + }else if (approvalStatus.equals(ApprovalStatusEnum.BH.getCode())){ + bh++; + } + } + Integer status = sysApprovalFlow.getStatus(); + Integer newStatus; + if (bh>0){ + newStatus = ApprovalFlowEnum.BH.getCode(); + }else if (tg == sysApprovalFlowMxes.size()){ + newStatus = ApprovalFlowEnum.TG.getCode(); + }else { + newStatus = ApprovalFlowEnum.DSH.getCode(); + } + + if (status != newStatus){ + sysApprovalFlow.setStatus(newStatus); + sysApprovalFlowMapper.updateByPrimaryKey(sysApprovalFlow); + } + + } + + /** + * 生成明细列表 + * @param type + * @param approvalFlowId + * @param userId + * @param date + * @param mxs + */ + private void generateFlowMx(String type,String approvalFlowId, Long userId, Date date, ArrayList mxs) { + List list = sysApprovalFlowConfigService.getDetailList(type); + if (CollectionUtil.isNotEmpty(list)){ + list.forEach( item -> { + SysApprovalFlowMx sysApprovalFlowMx = new SysApprovalFlowMx(); + sysApprovalFlowMx.setId(UUID.randomUUID().toString().replace("-", "")); + sysApprovalFlowMx.setApprovalFlowId(approvalFlowId); + sysApprovalFlowMx.setApprovalUserId(item.getApprovalUserId()); + sysApprovalFlowMx.setApprovalUserName(item.getApprovalUserName()); + sysApprovalFlowMx.setApprovalStatus(ApprovalStatusEnum.DWSH.getCode()); + sysApprovalFlowMx.setApprovalSort(item.getApprovalSort()); + + sysApprovalFlowMx.setCreateUser(userId + ""); + sysApprovalFlowMx.setCreateTime(date); + sysApprovalFlowMx.setUpdateUser(userId + ""); + sysApprovalFlowMx.setUpdateTime(date); + + mxs.add(sysApprovalFlowMx); + }); + } + } + +} diff --git a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml index e6282df41..631c00a14 100644 --- a/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml +++ b/src/main/resources/mybatis/mapper/auth/AuthAdminDao.xml @@ -247,4 +247,22 @@ + + + + diff --git a/src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMapper.xml b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMapper.xml new file mode 100644 index 000000000..8d7585c6a --- /dev/null +++ b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMapper.xml @@ -0,0 +1,297 @@ + + + + + + + + + + + + + + + + + + id, `type`, typeName, approvalSort, `createUser`, createTime, updateUser, updateTime + + + + + delete from sys_approval_flow_config + where id = #{id,jdbcType=VARCHAR} + + + + insert into sys_approval_flow_config (id, `type`, typeName, + approvalSort, `createUser`, createTime, + updateUser, updateTime) + values (#{id,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{typeName,jdbcType=VARCHAR}, + #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + + + + insert into sys_approval_flow_config + + + id, + + + `type`, + + + typeName, + + + approvalSort, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + + + #{id,jdbcType=VARCHAR}, + + + #{type,jdbcType=VARCHAR}, + + + #{typeName,jdbcType=VARCHAR}, + + + #{approvalSort,jdbcType=INTEGER}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + + + + update sys_approval_flow_config + + + `type` = #{type,jdbcType=VARCHAR}, + + + typeName = #{typeName,jdbcType=VARCHAR}, + + + approvalSort = #{approvalSort,jdbcType=INTEGER}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow_config + set `type` = #{type,jdbcType=VARCHAR}, + typeName = #{typeName,jdbcType=VARCHAR}, + approvalSort = #{approvalSort,jdbcType=INTEGER}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow_config + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.type,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.typeName,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalSort,jdbcType=INTEGER} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP} + + + + where id in + + #{item.id,jdbcType=VARCHAR} + + + + + insert into sys_approval_flow_config + (id, `type`, typeName, approvalSort, `createUser`, createTime, updateUser, + updateTime) + values + + (#{item.id,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR}, #{item.typeName,jdbcType=VARCHAR}, + #{item.approvalSort,jdbcType=INTEGER}, #{item.createUser,jdbcType=VARCHAR}, #{item.createTime,jdbcType=TIMESTAMP}, + #{item.updateUser,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP}) + + + + + insert into sys_approval_flow_config + (id, `type`, typeName, approvalSort, `createUser`, createTime, updateUser, + updateTime) + values + (#{id,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{typeName,jdbcType=VARCHAR}, + #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + on duplicate key update + id = #{id,jdbcType=VARCHAR}, + `type` = #{type,jdbcType=VARCHAR}, + typeName = #{typeName,jdbcType=VARCHAR}, + approvalSort = #{approvalSort,jdbcType=INTEGER}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + + + + insert into sys_approval_flow_config + + + id, + + + `type`, + + + typeName, + + + approvalSort, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + values + + + #{id,jdbcType=VARCHAR}, + + + #{type,jdbcType=VARCHAR}, + + + #{typeName,jdbcType=VARCHAR}, + + + #{approvalSort,jdbcType=INTEGER}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + on duplicate key update + + + id = #{id,jdbcType=VARCHAR}, + + + `type` = #{type,jdbcType=VARCHAR}, + + + typeName = #{typeName,jdbcType=VARCHAR}, + + + approvalSort = #{approvalSort,jdbcType=INTEGER}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + + diff --git a/src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMxMapper.xml b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMxMapper.xml new file mode 100644 index 000000000..b813ecc64 --- /dev/null +++ b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowConfigMxMapper.xml @@ -0,0 +1,323 @@ + + + + + + + + + + + + + + + + + + + id, `type`, approvalUserId,approvalUserName, approvalSort, `createUser`, createTime, updateUser, updateTime + + + + + delete from sys_approval_flow_config_mx + where id = #{id,jdbcType=VARCHAR} + + + + insert into sys_approval_flow_config_mx (id, `type`, approvalUserId,approvalUserName, + approvalSort, `createUser`, createTime, + updateUser, updateTime) + values (#{id,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{approvalUserId,jdbcType=VARCHAR}, #{approvalUserName,jdbcType=VARCHAR}, + #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + + + + insert into sys_approval_flow_config_mx + + + id, + + + `type`, + + + approvalUserId, + + + approvalUserName, + + + approvalSort, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + + + #{id,jdbcType=VARCHAR}, + + + #{type,jdbcType=VARCHAR}, + + + #{approvalUserId,jdbcType=VARCHAR}, + + + #{approvalUserName,jdbcType=VARCHAR}, + + + #{approvalSort,jdbcType=INTEGER}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + + + + update sys_approval_flow_config_mx + + + `type` = #{type,jdbcType=VARCHAR}, + + + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + + + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + + + approvalSort = #{approvalSort,jdbcType=INTEGER}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow_config_mx + set `type` = #{type,jdbcType=VARCHAR}, + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + approvalSort = #{approvalSort,jdbcType=INTEGER}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow_config_mx + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.type,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalUserId,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalUserName,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalSort,jdbcType=INTEGER} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP} + + + + where id in + + #{item.id,jdbcType=VARCHAR} + + + + + insert into sys_approval_flow_config_mx + (id, `type`, approvalUserId, approvalUserName, approvalSort, `createUser`, createTime, updateUser, + updateTime) + values + + (#{item.id,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR}, #{item.approvalUserId,jdbcType=VARCHAR}, + #{item.approvalSort,jdbcType=INTEGER}, #{item.createUser,jdbcType=VARCHAR}, #{item.createTime,jdbcType=TIMESTAMP}, + #{item.updateUser,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP}) + + + + + insert into sys_approval_flow_config_mx + (id, `type`, approvalUserId,approvalUserName, approvalSort, `createUser`, createTime, updateUser, + updateTime) + values + (#{id,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{approvalUserId,jdbcType=VARCHAR},#{approvalUserName,jdbcType=VARCHAR}, + #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + on duplicate key update + id = #{id,jdbcType=VARCHAR}, + `type` = #{type,jdbcType=VARCHAR}, + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + approvalSort = #{approvalSort,jdbcType=INTEGER}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + + + + insert into sys_approval_flow_config_mx + + + id, + + + `type`, + + + approvalUserId, + + + approvalUserName, + + + approvalSort, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + values + + + #{id,jdbcType=VARCHAR}, + + + #{type,jdbcType=VARCHAR}, + + + #{approvalUserId,jdbcType=VARCHAR}, + + + #{approvalUserName,jdbcType=VARCHAR}, + + + #{approvalSort,jdbcType=INTEGER}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + on duplicate key update + + + id = #{id,jdbcType=VARCHAR}, + + + `type` = #{type,jdbcType=VARCHAR}, + + + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + + + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + + + approvalSort = #{approvalSort,jdbcType=INTEGER}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + + diff --git a/src/main/resources/mybatis/mapper/basic/SysApprovalFlowMapper.xml b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowMapper.xml new file mode 100644 index 000000000..7fad3b283 --- /dev/null +++ b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowMapper.xml @@ -0,0 +1,352 @@ + + + + + + + + + + + + + + + + + + + + id, title, `type`, `status`, userId, userName, `createUser`, createTime, updateUser, updateTime + + + + + delete from sys_approval_flow + where id = #{id,jdbcType=VARCHAR} + + + + insert into sys_approval_flow (id, title, `type`, + `status`, userId, userName, `createUser`, + createTime, updateUser, updateTime + ) + values (#{id,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, + #{status,jdbcType=INTEGER}, #{userId,jdbcType=VARCHAR},#{userName,jdbcType=VARCHAR}, #{createUser,jdbcType=VARCHAR}, + #{createTime,jdbcType=TIMESTAMP}, #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP} + ) + + + + insert into sys_approval_flow + + + id, + + + title, + + + `type`, + + + `status`, + + + userId, + + + userName, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + + + #{id,jdbcType=VARCHAR}, + + + #{title,jdbcType=VARCHAR}, + + + #{type,jdbcType=VARCHAR}, + + + #{status,jdbcType=INTEGER}, + + + #{userId,jdbcType=VARCHAR}, + + + #{userName,jdbcType=VARCHAR}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + + + + update sys_approval_flow + + + title = #{title,jdbcType=VARCHAR}, + + + `type` = #{type,jdbcType=VARCHAR}, + + + `status` = #{status,jdbcType=INTEGER}, + + + userId = #{userId,jdbcType=VARCHAR}, + + + userName = #{userName,jdbcType=VARCHAR}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow + set title = #{title,jdbcType=VARCHAR}, + `type` = #{type,jdbcType=VARCHAR}, + `status` = #{status,jdbcType=INTEGER}, + userId = #{userId,jdbcType=VARCHAR}, + userName = #{userName,jdbcType=VARCHAR}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.title,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.type,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.status,jdbcType=INTEGER} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.userId,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.userName,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP} + + + + where id in + + #{item.id,jdbcType=VARCHAR} + + + + + insert into sys_approval_flow + (id, title, `type`, `status`, userId, userName, `createUser`, createTime, updateUser, updateTime + ) + values + + (#{item.id,jdbcType=VARCHAR}, #{item.title,jdbcType=VARCHAR}, #{item.type,jdbcType=VARCHAR}, + #{item.status,jdbcType=INTEGER}, #{item.userId,jdbcType=VARCHAR},#{item.userName,jdbcType=VARCHAR}, #{item.createUser,jdbcType=VARCHAR}, + #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateUser,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP} + ) + + + + + insert into sys_approval_flow + (id, title, `type`, `status`, userId, userName, `createUser`, createTime, updateUser, updateTime + ) + values + (#{id,jdbcType=VARCHAR}, #{title,jdbcType=VARCHAR}, #{type,jdbcType=VARCHAR}, #{status,jdbcType=INTEGER}, + #{userId,jdbcType=VARCHAR}, #{userName,jdbcType=VARCHAR}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + on duplicate key update + id = #{id,jdbcType=VARCHAR}, + title = #{title,jdbcType=VARCHAR}, + `type` = #{type,jdbcType=VARCHAR}, + `status` = #{status,jdbcType=INTEGER}, + userId = #{userId,jdbcType=VARCHAR}, + userName = #{userName,jdbcType=VARCHAR}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + + + + insert into sys_approval_flow + + + id, + + + title, + + + `type`, + + + `status`, + + + userId, + + + userName, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + values + + + #{id,jdbcType=VARCHAR}, + + + #{title,jdbcType=VARCHAR}, + + + #{type,jdbcType=VARCHAR}, + + + #{status,jdbcType=INTEGER}, + + + #{userId,jdbcType=VARCHAR}, + + + #{userName,jdbcType=VARCHAR}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + on duplicate key update + + + id = #{id,jdbcType=VARCHAR}, + + + title = #{title,jdbcType=VARCHAR}, + + + `type` = #{type,jdbcType=VARCHAR}, + + + `status` = #{status,jdbcType=INTEGER}, + + + userId = #{userId,jdbcType=VARCHAR}, + + + userName = #{userName,jdbcType=VARCHAR}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + + diff --git a/src/main/resources/mybatis/mapper/basic/SysApprovalFlowMxMapper.xml b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowMxMapper.xml new file mode 100644 index 000000000..e60645451 --- /dev/null +++ b/src/main/resources/mybatis/mapper/basic/SysApprovalFlowMxMapper.xml @@ -0,0 +1,407 @@ + + + + + + + + + + + + + + + + + + + + + + id, approvalFlowId, approvalUserId, approvalUserName, approvalTime, approvalOpinion, approvalStatus, + approvalSort, `createUser`, createTime, updateUser, updateTime + + + + + delete from sys_approval_flow_mx + where id = #{id,jdbcType=VARCHAR} + + + + insert into sys_approval_flow_mx (id, approvalFlowId, approvalUserId,approvalUserName, + approvalTime, approvalOpinion, approvalStatus, + approvalSort, `createUser`, createTime, + updateUser, updateTime) + values (#{id,jdbcType=VARCHAR}, #{approvalFlowId,jdbcType=VARCHAR}, #{approvalUserId,jdbcType=VARCHAR}, #{approvalUserName,jdbcType=VARCHAR}, + #{approvalTime,jdbcType=TIMESTAMP}, #{approvalOpinion,jdbcType=VARCHAR}, #{approvalStatus,jdbcType=INTEGER}, + #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + + + + insert into sys_approval_flow_mx + + + id, + + + approvalFlowId, + + + approvalUserId, + + + approvalUserName, + + + approvalTime, + + + approvalOpinion, + + + approvalStatus, + + + approvalSort, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + + + #{id,jdbcType=VARCHAR}, + + + #{approvalFlowId,jdbcType=VARCHAR}, + + + #{approvalUserId,jdbcType=VARCHAR}, + + + #{approvalUserName,jdbcType=VARCHAR}, + + + #{approvalTime,jdbcType=TIMESTAMP}, + + + #{approvalOpinion,jdbcType=VARCHAR}, + + + #{approvalStatus,jdbcType=INTEGER}, + + + #{approvalSort,jdbcType=INTEGER}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + + + + update sys_approval_flow_mx + + + approvalFlowId = #{approvalFlowId,jdbcType=VARCHAR}, + + + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + + + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + + + approvalTime = #{approvalTime,jdbcType=TIMESTAMP}, + + + approvalOpinion = #{approvalOpinion,jdbcType=VARCHAR}, + + + approvalStatus = #{approvalStatus,jdbcType=INTEGER}, + + + approvalSort = #{approvalSort,jdbcType=INTEGER}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow_mx + set approvalFlowId = #{approvalFlowId,jdbcType=VARCHAR}, + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + approvalTime = #{approvalTime,jdbcType=TIMESTAMP}, + approvalOpinion = #{approvalOpinion,jdbcType=VARCHAR}, + approvalStatus = #{approvalStatus,jdbcType=INTEGER}, + approvalSort = #{approvalSort,jdbcType=INTEGER}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=VARCHAR} + + + + update sys_approval_flow_mx + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalFlowId,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalUserId,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalUserName,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalOpinion,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalStatus,jdbcType=INTEGER} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.approvalSort,jdbcType=INTEGER} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.createTime,jdbcType=TIMESTAMP} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateUser,jdbcType=VARCHAR} + + + + + when id = #{item.id,jdbcType=VARCHAR} then #{item.updateTime,jdbcType=TIMESTAMP} + + + + where id in + + #{item.id,jdbcType=VARCHAR} + + + + + insert into sys_approval_flow_mx + (id, approvalFlowId, approvalUserId, approvalUserName, approvalTime, approvalOpinion, approvalStatus, + approvalSort, `createUser`, createTime, updateUser, updateTime) + values + + (#{item.id,jdbcType=VARCHAR}, #{item.approvalFlowId,jdbcType=VARCHAR}, #{item.approvalUserId,jdbcType=VARCHAR},#{item.approvalUserName,jdbcType=VARCHAR}, + #{item.approvalTime,jdbcType=TIMESTAMP}, #{item.approvalOpinion,jdbcType=VARCHAR}, + #{item.approvalStatus,jdbcType=INTEGER}, #{item.approvalSort,jdbcType=INTEGER}, + #{item.createUser,jdbcType=VARCHAR}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.updateUser,jdbcType=VARCHAR}, + #{item.updateTime,jdbcType=TIMESTAMP}) + + + + + insert into sys_approval_flow_mx + (id, approvalFlowId, approvalUserId,approvalUserName, approvalTime, approvalOpinion, approvalStatus, + approvalSort, `createUser`, createTime, updateUser, updateTime) + values + (#{id,jdbcType=VARCHAR}, #{approvalFlowId,jdbcType=VARCHAR}, #{approvalUserId,jdbcType=VARCHAR}, #{approvalUserName,jdbcType=VARCHAR}, + #{approvalTime,jdbcType=TIMESTAMP}, #{approvalOpinion,jdbcType=VARCHAR}, #{approvalStatus,jdbcType=INTEGER}, + #{approvalSort,jdbcType=INTEGER}, #{createUser,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, + #{updateUser,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP}) + on duplicate key update + id = #{id,jdbcType=VARCHAR}, + approvalFlowId = #{approvalFlowId,jdbcType=VARCHAR}, + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + approvalTime = #{approvalTime,jdbcType=TIMESTAMP}, + approvalOpinion = #{approvalOpinion,jdbcType=VARCHAR}, + approvalStatus = #{approvalStatus,jdbcType=INTEGER}, + approvalSort = #{approvalSort,jdbcType=INTEGER}, + `createUser` = #{createUser,jdbcType=VARCHAR}, + createTime = #{createTime,jdbcType=TIMESTAMP}, + updateUser = #{updateUser,jdbcType=VARCHAR}, + updateTime = #{updateTime,jdbcType=TIMESTAMP} + + + + insert into sys_approval_flow_mx + + + id, + + + approvalFlowId, + + + approvalUserId, + + + approvalUserName, + + + approvalTime, + + + approvalOpinion, + + + approvalStatus, + + + approvalSort, + + + `createUser`, + + + createTime, + + + updateUser, + + + updateTime, + + + values + + + #{id,jdbcType=VARCHAR}, + + + #{approvalFlowId,jdbcType=VARCHAR}, + + + #{approvalUserId,jdbcType=VARCHAR}, + + + #{approvalUserName,jdbcType=VARCHAR}, + + + #{approvalTime,jdbcType=TIMESTAMP}, + + + #{approvalOpinion,jdbcType=VARCHAR}, + + + #{approvalStatus,jdbcType=INTEGER}, + + + #{approvalSort,jdbcType=INTEGER}, + + + #{createUser,jdbcType=VARCHAR}, + + + #{createTime,jdbcType=TIMESTAMP}, + + + #{updateUser,jdbcType=VARCHAR}, + + + #{updateTime,jdbcType=TIMESTAMP}, + + + on duplicate key update + + + id = #{id,jdbcType=VARCHAR}, + + + approvalFlowId = #{approvalFlowId,jdbcType=VARCHAR}, + + + approvalUserId = #{approvalUserId,jdbcType=VARCHAR}, + + + approvalUserName = #{approvalUserName,jdbcType=VARCHAR}, + + + approvalTime = #{approvalTime,jdbcType=TIMESTAMP}, + + + approvalOpinion = #{approvalOpinion,jdbcType=VARCHAR}, + + + approvalStatus = #{approvalStatus,jdbcType=INTEGER}, + + + approvalSort = #{approvalSort,jdbcType=INTEGER}, + + + `createUser` = #{createUser,jdbcType=VARCHAR}, + + + createTime = #{createTime,jdbcType=TIMESTAMP}, + + + updateUser = #{updateUser,jdbcType=VARCHAR}, + + + updateTime = #{updateTime,jdbcType=TIMESTAMP}, + + + + diff --git a/src/main/resources/schemas/schema_v2.4.sql b/src/main/resources/schemas/schema_v2.4.sql index 0d573d49a..39d542550 100644 --- a/src/main/resources/schemas/schema_v2.4.sql +++ b/src/main/resources/schemas/schema_v2.4.sql @@ -730,3 +730,96 @@ VALUES (200322, 0, '收费出库是否过滤一对多', 'fee_out_filter_cp', '0' CALL Pro_Temp_ColumnWork('io_order', 'fromPatientCode',' varchar(30) NULL DEFAULT NULL COMMENT ''往来患者code'' AFTER `sickerAdNum`', 1); + + + +CREATE TABLE if not exists `sys_approval_flow` +( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NOT NULL COMMENT '主键,可作为审批编号', + `title` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '标题(王五的请假申请)', + `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批类型(字典表设置code用作区分类型)', + `status` int(0) NULL DEFAULT NULL COMMENT '审核状态(1:待审核;2:通过;3:驳回;4:撤销)', + `userId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '申请人主键', + `userName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '申请人名称', + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '创建人', + `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '更新人', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + AUTO_INCREMENT = 20 + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_as_cs COMMENT = '审批主表' + ROW_FORMAT = Dynamic; + +CREATE TABLE if not exists `sys_approval_flow_mx` +( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NOT NULL COMMENT '明细表主键', + `approvalFlowId` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NOT NULL COMMENT '审批表主键', + `approvalUserId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批人主键', + `approvalUserName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批人名称', + `approvalTime` datetime(0) NULL DEFAULT NULL COMMENT '审批时间', + `approvalOpinion` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批意见', + `approvalStatus` int(0) NULL DEFAULT NULL COMMENT '审核状态(1:审核中;2:等待我审核;3:通过;4:驳回)', + `approvalSort` int(0) NULL DEFAULT NULL COMMENT '排序', + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '创建人', + `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '更新人', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + AUTO_INCREMENT = 20 + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_as_cs COMMENT = '审批明细表' + ROW_FORMAT = Dynamic; + +CREATE TABLE if not exists `sys_approval_flow_config` +( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NOT NULL COMMENT '审核配置表主键', + `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批单据名称', + `typeName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批人主键', + `approvalSort` int(0) NULL DEFAULT NULL COMMENT '排序', + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '创建人', + `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '更新人', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + AUTO_INCREMENT = 20 + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_as_cs COMMENT = '审批配置表' + ROW_FORMAT = Dynamic; + + + +CREATE TABLE if not exists `sys_approval_flow_config_mx` +( + `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NOT NULL COMMENT '审核配置表主键', + `type` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批类型(字典表设置code用作区分类型)', + `approvalUserId` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批人主键', + `approvalUserName` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '审批人名称', + `approvalSort` int(0) NULL DEFAULT NULL COMMENT '排序', + `createUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '创建人', + `createTime` datetime(0) NULL DEFAULT NULL COMMENT '创建时间', + `updateUser` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_as_cs NULL DEFAULT NULL COMMENT '更新人', + `updateTime` datetime(0) NULL DEFAULT NULL COMMENT '更新时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE = InnoDB + AUTO_INCREMENT = 20 + CHARACTER SET = utf8mb4 + COLLATE = utf8mb4_0900_as_cs COMMENT = '审批配置明细表' + ROW_FORMAT = Dynamic; + + +INSERT IGNORE INTO auth_menu(`menu_id`, `menu_name`, `parent_id`, `order_num`, `path`, `component`, `query_param`, `is_frame`, `is_cache`, `menu_type`, `visible`, `status`, `perms`, `icon`, `create_by`, `create_time`, `update_by`, `update_time`, `remark`) +VALUES (2090, '审批配置', 1643, 7, 'basic/approval/SysApprovalFlowConfig', 'basic/approval/SysApprovalFlowConfig', NULL, 1, 0, 'C', '0', '0', NULL, NULL, '超级用户', '2024-03-14 09:57:58', NULL, NULL, NULL); + +INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) +VALUES ('1', 'ly', '领用单据', 1, NULL, NULL, NULL, NULL); +INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) +VALUES ('2', 'sg', '申购单据', 2, NULL, NULL, NULL, NULL); +INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) +VALUES ('3', 'cgjh', '采购计划单据', 3, NULL, NULL, NULL, NULL); +INSERT IGNORE INTO sys_approval_flow_config(`id`, `type`, `typeName`, `approvalSort`, `createUser`, `createTime`, `updateUser`, `updateTime`) +VALUES ('4', 'cgdd', '采购订单单据', 4, NULL, NULL, NULL, NULL); +