From 6ca8b975e1a91d6e435f2bc42c99f933a2586537 Mon Sep 17 00:00:00 2001 From: Yen Date: Mon, 7 Aug 2023 18:09:33 +0800 Subject: [PATCH] =?UTF-8?q?=E8=B4=B9=E7=94=A8=E7=94=B3=E8=AF=B7=E3=80=81?= =?UTF-8?q?=E6=94=BF=E7=AD=96=E5=AE=A1=E6=89=B9=E9=99=84=E4=BB=B6=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=97=A5=E5=BF=97=EF=BC=9B=20TODO=20=E6=A0=B8?= =?UTF-8?q?=E9=94=80=E8=BF=94=E5=9B=9E=E5=88=97=E8=A1=A8=E6=9C=AA=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/model/enums/SystemModule.java | 1 + .../DataAffairCommitController.java | 120 ++++++++++++++++ .../modules/data/entity/DataAffairCommit.java | 130 ++++++++++++++++++ .../data/mapper/DataAffairCommitMapper.java | 14 ++ .../data/service/DataAffairCommitService.java | 14 ++ .../impl/DataAffairCommitServiceImpl.java | 22 +++ .../modules/seeyon/SeeYonController.java | 13 +- .../service/SeeYonOperationService.java | 51 +++++-- .../controller/TbsCostApplyController.java | 2 +- .../tbs/entity/bo/TbsAffairCommitBo.java | 6 + .../modules/tbs/entity/vo/CtpAffairVo.java | 6 + .../TbsCostApplyOperationServiceImpl.java | 41 +++++- .../impl/TzcPolicyApplicationServiceImpl.java | 2 +- .../service/VtbVerificationApplication.java | 31 ++++- .../impl/VtbVerificationServiceImpl.java | 2 +- 15 files changed, 437 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/qs/serve/modules/data/controller/DataAffairCommitController.java create mode 100644 src/main/java/com/qs/serve/modules/data/entity/DataAffairCommit.java create mode 100644 src/main/java/com/qs/serve/modules/data/mapper/DataAffairCommitMapper.java create mode 100644 src/main/java/com/qs/serve/modules/data/service/DataAffairCommitService.java create mode 100644 src/main/java/com/qs/serve/modules/data/service/impl/DataAffairCommitServiceImpl.java diff --git a/src/main/java/com/qs/serve/common/model/enums/SystemModule.java b/src/main/java/com/qs/serve/common/model/enums/SystemModule.java index f7f6a631..562a402e 100644 --- a/src/main/java/com/qs/serve/common/model/enums/SystemModule.java +++ b/src/main/java/com/qs/serve/common/model/enums/SystemModule.java @@ -22,6 +22,7 @@ public enum SystemModule { GOODS("goods","商品"), SYSTEM("sys","系统"), UMS("ums","手机用户"), + DATA("data","数据"), Tag("tag","标签"); String code; diff --git a/src/main/java/com/qs/serve/modules/data/controller/DataAffairCommitController.java b/src/main/java/com/qs/serve/modules/data/controller/DataAffairCommitController.java new file mode 100644 index 00000000..fe9da945 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/data/controller/DataAffairCommitController.java @@ -0,0 +1,120 @@ +package com.qs.serve.modules.data.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.common.util.CopierUtil; +import com.qs.serve.common.util.StringUtils; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import com.qs.serve.modules.data.entity.DataAffairCommit; +import com.qs.serve.modules.data.service.DataAffairCommitService; + +import javax.validation.Valid; +import java.util.List; + +/** + * 数据 + * @author YenHex + * @since 2023-08-07 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("data/affairCommit") +public class DataAffairCommitController { + + private DataAffairCommitService dataAffairCommitService; + + /** + * 列表 + * @param param + * @return + */ + //@GetMapping("/list") + //@PreAuthorize("hasRole('data:affairCommit:query')") + public R> getList(DataAffairCommit param){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(param); + List list = dataAffairCommitService.list(lqw); + return R.ok(list); + } + + /** + * 翻页 + * @param param + * @return + */ + //@GetMapping("/page") + //@PreAuthorize("hasRole('data:affairCommit:query')") + public R> getPage(DataAffairCommit param){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(param); + PageUtil.startPage(); + List list = dataAffairCommitService.list(lqw); + return R.byPageHelperList(list); + } + + /** + * ID查询 + * @param id + * @return + */ + //@GetMapping("/getById/{id}") + @SysLog(module = SystemModule.DATA, title = "", biz = BizType.QUERY) + @PreAuthorize("hasRole('data:affairCommit:query')") + public R getById(@PathVariable("id") String id){ + DataAffairCommit dataAffairCommit = dataAffairCommitService.getById(id); + return R.ok(dataAffairCommit); + } + + + + /** + * 更新 + * @param param + * @return + */ + //@PostMapping("/updateById") + @SysLog(module = SystemModule.DATA, title = "", biz = BizType.UPDATE) + //@PreAuthorize("hasRole('data:affairCommit:update')") + public R updateById(@RequestBody @Valid DataAffairCommit param){ + boolean result = dataAffairCommitService.updateById(param); + return R.isTrue(result); + } + + /** + * 新增 + * @param param + * @return + */ + //@PostMapping("/save") + @SysLog(module = SystemModule.DATA, title = "", biz = BizType.INSERT) + //@PreAuthorize("hasRole('data:affairCommit:insert')") + public R save(@RequestBody @Valid DataAffairCommit param){ + DataAffairCommit entity = CopierUtil.copy(param,new DataAffairCommit()); + boolean result = dataAffairCommitService.save(entity); + return R.isTrue(result); + } + + /** + * 删除 + * @param ids + * @return + */ + //@DeleteMapping("/deleteById/{ids}") + @SysLog(module = SystemModule.DATA, title = "", biz = BizType.DELETE) + //@PreAuthorize("hasRole('data:affairCommit:delete')") + public R deleteById(@PathVariable("ids") String ids){ + List idsLong = StringUtils.splitIdLong(ids); + boolean result = dataAffairCommitService.removeByIds(idsLong); + return R.isTrue(result); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/data/entity/DataAffairCommit.java b/src/main/java/com/qs/serve/modules/data/entity/DataAffairCommit.java new file mode 100644 index 00000000..6deb7cab --- /dev/null +++ b/src/main/java/com/qs/serve/modules/data/entity/DataAffairCommit.java @@ -0,0 +1,130 @@ +package com.qs.serve.modules.data.entity; + +import java.time.LocalDate; +import java.io.Serializable; +import java.math.BigDecimal; +import java.time.LocalDateTime; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler; +import lombok.Data; +import org.apache.ibatis.type.JdbcType; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import javax.validation.constraints.NotBlank; + +/** + * 实体类 + * @author YenHex + * @since 2023-08-07 + */ +@Data +@TableName("data_affair_commit") +public class DataAffairCommit implements Serializable { + + private static final long serialVersionUID = 1L; + + /** affairId */ + @TableId(type = IdType.INPUT) + private String id; + + /** 模板编码 */ + @Length(max = 30,message = "模板编码长度不能超过30字") + private String targetCode; + + /** 审批值 */ + @Length(max = 36,message = "审批值长度不能超过36字") + private String targetId; + + /** 评论 */ + @Length(max = 255,message = "评论长度不能超过255字") + private String commentVal; + + /** 释放费用 */ + private Integer releaseFlag; + + /** 状态:0-否定,1-同意,2-退回 */ + private Integer state; + + /** 用户id */ + @Length(max = 64,message = "用户id长度不能超过64字") + private String userId; + + /** 用户编码 */ + @Length(max = 40,message = "用户编码长度不能超过40字") + private String userCode; + + /** 用户 */ + @Length(max = 30,message = "用户长度不能超过30字") + private String userName; + + /** 返回的结果 */ + private String resultData; + + /** 附件id */ + @TableField(typeHandler = SplitStringTypeHandler.class,jdbcType= JdbcType.VARCHAR) + private String[] attachIds; + + /** 备注 */ + @Length(max = 600,message = "备注长度不能超过600字") + private String remark; + + /** 创建时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; + + /** 最后更新时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.UPDATE) + private LocalDateTime updateTime; + + /** 所属租户 */ + @JsonIgnore + @JsonProperty + private String tenantId; + + /** 创建人 */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 更新人 */ + @TableField(fill = FieldFill.UPDATE) + private String updateBy; + + /** 逻辑删除标记(0:显示;1:隐藏) */ + @JsonIgnore + @JsonProperty + private String delFlag; + + + public static DataAffairCommit toNewObject(DataAffairCommit source){ + DataAffairCommit affairCommit = new DataAffairCommit(); + affairCommit.setId(source.getId()); + affairCommit.setTargetCode(source.getTargetCode()); + affairCommit.setTargetId(source.getTargetId()); + affairCommit.setCommentVal(source.getCommentVal()); + affairCommit.setReleaseFlag(source.getReleaseFlag()); + affairCommit.setState(source.getState()); + affairCommit.setUserId(source.getUserId()); + affairCommit.setUserCode(source.getUserCode()); + affairCommit.setUserName(source.getUserName()); + affairCommit.setRemark(source.getRemark()); + affairCommit.setCreateTime(source.getCreateTime()); + affairCommit.setUpdateTime(source.getUpdateTime()); + affairCommit.setTenantId(source.getTenantId()); + affairCommit.setCreateBy(source.getCreateBy()); + affairCommit.setUpdateBy(source.getUpdateBy()); + affairCommit.setDelFlag(source.getDelFlag()); + return affairCommit; + } + +} + diff --git a/src/main/java/com/qs/serve/modules/data/mapper/DataAffairCommitMapper.java b/src/main/java/com/qs/serve/modules/data/mapper/DataAffairCommitMapper.java new file mode 100644 index 00000000..640ed469 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/data/mapper/DataAffairCommitMapper.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.data.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.qs.serve.modules.data.entity.DataAffairCommit; + +/** + * Mapper + * @author YenHex + * @date 2023-08-07 + */ +public interface DataAffairCommitMapper extends BaseMapper { + +} + diff --git a/src/main/java/com/qs/serve/modules/data/service/DataAffairCommitService.java b/src/main/java/com/qs/serve/modules/data/service/DataAffairCommitService.java new file mode 100644 index 00000000..85cabc69 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/data/service/DataAffairCommitService.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.data.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.qs.serve.modules.data.entity.DataAffairCommit; + +/** + * 服务接口 + * @author YenHex + * @date 2023-08-07 + */ +public interface DataAffairCommitService extends IService { + +} + diff --git a/src/main/java/com/qs/serve/modules/data/service/impl/DataAffairCommitServiceImpl.java b/src/main/java/com/qs/serve/modules/data/service/impl/DataAffairCommitServiceImpl.java new file mode 100644 index 00000000..a4518bbc --- /dev/null +++ b/src/main/java/com/qs/serve/modules/data/service/impl/DataAffairCommitServiceImpl.java @@ -0,0 +1,22 @@ +package com.qs.serve.modules.data.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import com.qs.serve.modules.data.entity.DataAffairCommit; +import com.qs.serve.modules.data.service.DataAffairCommitService; +import com.qs.serve.modules.data.mapper.DataAffairCommitMapper; + +/** + * 服务实现类 + * @author YenHex + * @since 2023-08-07 + */ +@Slf4j +@Service +@AllArgsConstructor +public class DataAffairCommitServiceImpl extends ServiceImpl implements DataAffairCommitService { + +} + diff --git a/src/main/java/com/qs/serve/modules/seeyon/SeeYonController.java b/src/main/java/com/qs/serve/modules/seeyon/SeeYonController.java index c8d0cd69..d0a9e927 100644 --- a/src/main/java/com/qs/serve/modules/seeyon/SeeYonController.java +++ b/src/main/java/com/qs/serve/modules/seeyon/SeeYonController.java @@ -92,6 +92,7 @@ public class SeeYonController { //待审 if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ VtbVerification object = verificationService.getById(targetId); + log.debug("核销待审 {}",object.getCostApplyId()); jumpUrl = SyKeyLoginUtil.getPreCheckUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId(),affair.getAffairId()); }else { jumpUrl = SyKeyLoginUtil.getPreCheckUrl(targetCode,targetId,affair.getAffairId()); @@ -99,15 +100,17 @@ public class SeeYonController { }else if (affair.getState().equals(4)){ //已阅或已提交 if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ - jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId); - }else { VtbVerification object = verificationService.getById(targetId); + log.debug("核销已阅或已提交 {}",object.getCostApplyId()); jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId()); + }else { + jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId); } }else if (affair.getState().equals(2)){ //发起 if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ VtbVerification object = verificationService.getById(targetId); + log.debug("核销发起 {}",object.getCostApplyId()); jumpUrl = SyKeyLoginUtil.getMyDetailUrl(TbsSeeYonConst.CostApplyConf.Code(),object.getCostApplyId()+""); }else { jumpUrl = SyKeyLoginUtil.getMyDetailUrl(targetCode,targetId); @@ -118,6 +121,7 @@ public class SeeYonController { //发起 if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ VtbVerification object = verificationService.getById(targetId); + log.debug("核销发起 {}",object.getCostApplyId()); jumpUrl = SyKeyLoginUtil.getMyDetailUrl(TbsSeeYonConst.CostApplyConf.Code(),object.getCostApplyId()+""); }else { jumpUrl = SyKeyLoginUtil.getMyDetailUrl(targetCode,targetId); @@ -125,10 +129,11 @@ public class SeeYonController { }else { //已阅或已提交 if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ - jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId); - }else { VtbVerification object = verificationService.getById(targetId); + log.debug("核销已阅或已提交 {}",object.getCostApplyId()); jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId()); + }else { + jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId); } } } diff --git a/src/main/java/com/qs/serve/modules/seeyon/service/SeeYonOperationService.java b/src/main/java/com/qs/serve/modules/seeyon/service/SeeYonOperationService.java index f710fa2d..78583736 100644 --- a/src/main/java/com/qs/serve/modules/seeyon/service/SeeYonOperationService.java +++ b/src/main/java/com/qs/serve/modules/seeyon/service/SeeYonOperationService.java @@ -1,11 +1,11 @@ package com.qs.serve.modules.seeyon.service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.serve.common.model.dto.PageVo; import com.qs.serve.common.model.dto.R; -import com.qs.serve.common.util.Assert; -import com.qs.serve.common.util.AuthContextUtils; -import com.qs.serve.common.util.SpringUtils; -import com.qs.serve.common.util.StringUtils; +import com.qs.serve.common.util.*; +import com.qs.serve.modules.data.entity.DataAffairCommit; +import com.qs.serve.modules.data.mapper.DataAffairCommitMapper; import com.qs.serve.modules.seeyon.entity.CtpAffair; import com.qs.serve.modules.seeyon.entity.CtpAffairQo; import com.qs.serve.modules.seeyon.entity.SyAffairStateResult; @@ -14,6 +14,7 @@ import com.qs.serve.modules.seeyon.entity.bo.CtpAddNodeParam; import com.qs.serve.modules.seeyon.enums.SyAffairState; import com.qs.serve.modules.sys.entity.SysPostUser; import com.qs.serve.modules.sys.entity.SysUser; +import com.qs.serve.modules.sys.mapper.SysAttachMapper; import com.qs.serve.modules.sys.service.SysPostUserService; import com.qs.serve.modules.sys.service.SysUserService; import com.qs.serve.modules.tbs.common.TbsSeeYonConst; @@ -22,10 +23,7 @@ import com.qs.serve.modules.tbs.entity.bo.TbsAffairCommitBo; import com.qs.serve.modules.tbs.entity.vo.CtpAffairVo; import com.qs.serve.task.SysTask; -import java.util.ArrayList; -import java.util.List; -import java.util.Locale; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; /** @@ -147,6 +145,10 @@ public interface SeeYonOperationService extends SeeYonBaseService{ R> syResult = getRequestService().commonListAffairs(targetId,null,templateCode); List ctpAffairs = syResult.getData(); if(ctpAffairs.size()>0){ + DataAffairCommitMapper dataAffairCommitMapper = SpringUtils.getBean(DataAffairCommitMapper.class); + SysAttachMapper sysAttachMapper = SpringUtils.getBean(SysAttachMapper.class); + List affairCommits = dataAffairCommitMapper.selectBatchIds(ctpAffairs.stream() + .map(CtpAffair::getAffairId).collect(Collectors.toList())); List oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList()); List userList = getSysUserService().listByOaMemberIds(oaUserIds); SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class); @@ -164,6 +166,16 @@ public interface SeeYonOperationService extends SeeYonBaseService{ ctpAffairVo.setUserPostList(postUsers); } } + for (DataAffairCommit affairCommit : affairCommits) { + if(affairCommit.getId().equals(ctpAffair.getAffairId())){ + ctpAffairVo.setCommitInfo(affairCommit); + if(CollectionUtil.isNotEmpty(affairCommit.getAttachIds())){ + ctpAffairVo.setAttachments( + sysAttachMapper.selectBatchIds( + Arrays.asList(affairCommit.getAttachIds()))); + } + } + } result.add(ctpAffairVo); } return R.ok(result); @@ -265,6 +277,29 @@ public interface SeeYonOperationService extends SeeYonBaseService{ if(result.getStatus()==200){ // 判断是否含有下个节点 String flag = result.getData(); + //保存记录 + try { + // 判断是否含有下个节点 + DataAffairCommitMapper dataAffairCommitMapper = SpringUtils.getBean(DataAffairCommitMapper.class); + String userId = AuthContextUtils.getSysUserId(); + SysUser sysUser = getUserMapper().selectById(userId); + DataAffairCommit dataAffairCommit = new DataAffairCommit(); + dataAffairCommit.setTargetCode(getTemplateCode()); + dataAffairCommit.setTargetId(getTargetId(affairCommit)); + dataAffairCommit.setId(affairCommit.getAffairId()); + dataAffairCommit.setCommentVal(affairCommit.getComment()); + dataAffairCommit.setReleaseFlag(affairCommit.getReleaseFlag()); + dataAffairCommit.setState(affairCommit.getState()); + dataAffairCommit.setUserId(sysUser.getId()); + dataAffairCommit.setUserCode(sysUser.getCode()); + dataAffairCommit.setUserName(sysUser.getName()); + dataAffairCommit.setResultData(flag); + dataAffairCommit.setAttachIds(affairCommit.getAttachIds()); + dataAffairCommitMapper.insert(dataAffairCommit); + } catch (Exception e) { + e.printStackTrace(); + } + //审批中(next)、完成(finish)、拒绝(refused) if("finish".equals(flag)){ this.doFinished(affairCommit); diff --git a/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java b/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java index ecb1f8d0..4d3476ef 100644 --- a/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java +++ b/src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java @@ -80,7 +80,7 @@ public class TbsCostApplyController { * @param param * @return */ - @PostMapping("/testChangeAmt") + //@PostMapping("/testChangeAmt") public R testChangeAmt(@RequestBody TbsAffairCommitBo param){ TbsCostApplyOperationServiceImpl impl = SpringUtils.getBean(TbsCostApplyOperationServiceImpl.class); impl.doFinished(param); diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java b/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java index 9451991f..eafa08ea 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java @@ -1,6 +1,9 @@ package com.qs.serve.modules.tbs.entity.bo; +import com.baomidou.mybatisplus.annotation.TableField; +import com.qs.serve.common.framework.mybatis.handler.meta.SplitStringTypeHandler; import lombok.Data; +import org.apache.ibatis.type.JdbcType; import javax.validation.constraints.NotNull; import java.math.BigDecimal; @@ -43,6 +46,9 @@ public class TbsAffairCommitBo { /** 释放费用 */ private Integer releaseFlag; + /** 附件id */ + private String[] attachIds; + /** * 修改金额列表(核销和费用审批接口专用) */ diff --git a/src/main/java/com/qs/serve/modules/tbs/entity/vo/CtpAffairVo.java b/src/main/java/com/qs/serve/modules/tbs/entity/vo/CtpAffairVo.java index c04fc702..17b1eb21 100644 --- a/src/main/java/com/qs/serve/modules/tbs/entity/vo/CtpAffairVo.java +++ b/src/main/java/com/qs/serve/modules/tbs/entity/vo/CtpAffairVo.java @@ -40,4 +40,10 @@ public class CtpAffairVo { /** 审批日志明细 */ private List commitItems; + /** 附件列表 */ + private List attachments; + + /** 提交时的日志记录 */ + private Object commitInfo; + } diff --git a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java index 0f8f3e9c..0821e9a1 100644 --- a/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java @@ -8,6 +8,8 @@ import com.qs.serve.common.model.enums.BudgetLogOptFlag; import com.qs.serve.common.model.consts.BudgetLogRollbackFlag; import com.qs.serve.common.model.dto.R; import com.qs.serve.common.util.*; +import com.qs.serve.modules.data.entity.DataAffairCommit; +import com.qs.serve.modules.data.mapper.DataAffairCommitMapper; import com.qs.serve.modules.seeyon.entity.CtpAffair; import com.qs.serve.modules.seeyon.entity.SyAffairStateResult; import com.qs.serve.modules.seeyon.entity.bo.CtpAddNodeDTO; @@ -17,6 +19,7 @@ import com.qs.serve.modules.seeyon.service.SeeYonOperationService; import com.qs.serve.modules.seeyon.service.SeeYonRequestService; import com.qs.serve.modules.sys.entity.SysPostUser; import com.qs.serve.modules.sys.entity.SysUser; +import com.qs.serve.modules.sys.mapper.SysAttachMapper; import com.qs.serve.modules.sys.mapper.SysUserMapper; import com.qs.serve.modules.sys.service.SysPostUserService; import com.qs.serve.modules.sys.service.SysUserService; @@ -66,6 +69,7 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService private final TbsActivitySubjectMapper activitySubjectMapper; private final TbsActivityCenterMapper activityCenterMapper; private final TbsActivityCenterGoodsMapper activityCenterGoodsMapper; + private final DataAffairCommitMapper dataAffairCommitMapper; @Override @@ -161,6 +165,10 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService R> syResult = getRequestService().commonListAffairs(targetId,null,templateCode); List ctpAffairs = syResult.getData(); if(ctpAffairs.size()>0){ + DataAffairCommitMapper dataAffairCommitMapper = SpringUtils.getBean(DataAffairCommitMapper.class); + SysAttachMapper sysAttachMapper = SpringUtils.getBean(SysAttachMapper.class); + List affairCommits = dataAffairCommitMapper.selectBatchIds(ctpAffairs.stream() + .map(CtpAffair::getAffairId).collect(Collectors.toList())); List oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList()); List userList = getSysUserService().listByOaMemberIds(oaUserIds); SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class); @@ -178,6 +186,16 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService ctpAffairVo.setUserPostList(postUsers); } } + for (DataAffairCommit affairCommit : affairCommits) { + if(affairCommit.getId().equals(ctpAffair.getAffairId())){ + ctpAffairVo.setCommitInfo(affairCommit); + if(CollectionUtil.isNotEmpty(affairCommit.getAttachIds())){ + ctpAffairVo.setAttachments( + sysAttachMapper.selectBatchIds( + Arrays.asList(affairCommit.getAttachIds()))); + } + } + } result.add(ctpAffairVo); } return R.ok(result); @@ -586,8 +604,29 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService R result = getRequestService().commonCommit(affairCommit, templateCode ,syFormId); boolean isBackCommit = affairCommit.getState()==2; if(result.getStatus()==200){ - // 判断是否含有下个节点 String flag = result.getData(); + try { + //保存记录 + // 判断是否含有下个节点 + String userId = AuthContextUtils.getSysUserId(); + SysUser sysUser = sysUserService.getById(userId); + DataAffairCommit dataAffairCommit = new DataAffairCommit(); + dataAffairCommit.setTargetCode(templateCode); + dataAffairCommit.setTargetId(costApply.getId()+""); + dataAffairCommit.setId(affairCommit.getAffairId()); + dataAffairCommit.setCommentVal(affairCommit.getComment()); + dataAffairCommit.setReleaseFlag(affairCommit.getReleaseFlag()); + dataAffairCommit.setState(affairCommit.getState()); + dataAffairCommit.setUserId(sysUser.getId()); + dataAffairCommit.setUserCode(sysUser.getCode()); + dataAffairCommit.setUserName(sysUser.getName()); + dataAffairCommit.setResultData(flag); + dataAffairCommit.setAttachIds(affairCommit.getAttachIds()); + dataAffairCommitMapper.insert(dataAffairCommit); + } catch (Exception e) { + e.printStackTrace(); + } + //审批中(next)、完成(finish)、拒绝(refused) log.warn("审批节点返回结果:{}",flag); if("finish".equals(flag)){ diff --git a/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java b/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java index c6a76ae0..4199728c 100644 --- a/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java @@ -194,7 +194,7 @@ public class TzcPolicyApplicationServiceImpl implements TzcPolicyApplicationServ //添加跳转地址业务 String urlKey = "exsp5"; - String baseJumpUrl = JumpToUtil.getJumpUrl(projectProperties.getWebUrl(),TbsSeeYonConst.CostApplyConf.Code(),policyId+""); + String baseJumpUrl = JumpToUtil.getJumpUrl(projectProperties.getWebUrl(),TbsSeeYonConst.PolicyConf.Code(),policyId+""); data.put("exsp5",urlKey); data.put("cmsLink",baseJumpUrl); diff --git a/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java b/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java index c044057c..454f3908 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java @@ -2,9 +2,12 @@ package com.qs.serve.modules.vtb.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.util.AuthContextUtils; import com.qs.serve.common.util.CollectionUtil; import com.qs.serve.common.util.CopierUtil; import com.qs.serve.common.util.SpringUtils; +import com.qs.serve.modules.data.entity.DataAffairCommit; +import com.qs.serve.modules.data.mapper.DataAffairCommitMapper; import com.qs.serve.modules.seeyon.entity.CtpAffair; import com.qs.serve.modules.seeyon.service.SeeYonRequestService; import com.qs.serve.modules.sys.entity.SysPostUser; @@ -57,7 +60,7 @@ public class VtbVerificationApplication { private VtbVerificationYardItemService yardItemService; private final TbsActivityPayConditionService activityPayConditionService; private SysPostUserService sysPostUserService; - + private DataAffairCommitMapper dataAffairCommitMapper; private TbsActivityService tbsActivityService; private TbsCostApplyService tbsCostApplyService; private SysUserService sysUserService; @@ -108,7 +111,9 @@ public class VtbVerificationApplication { try { //解决同步冻结时有过期的活动 TbsTask tbsTask = SpringUtils.getBean(TbsTask.class); - tbsTask.task1(); + if(tbsTask!=null){ + tbsTask.task1(); + } } catch (BeansException e) { e.printStackTrace(); } @@ -122,6 +127,28 @@ public class VtbVerificationApplication { @NotNull @Transactional(rollbackFor = Exception.class) public R commitAffairSuccess(TbsAffairCommitBo affairCommit, VtbVerification verification, boolean isBackCommit, String flag) { + try { + //保存记录 + // 判断是否含有下个节点 + String userId = AuthContextUtils.getSysUserId(); + SysUser sysUser = sysUserService.getById(userId); + DataAffairCommit dataAffairCommit = new DataAffairCommit(); + dataAffairCommit.setTargetCode(TbsSeeYonConst.CostCheckConf.Code()); + dataAffairCommit.setTargetId(verification.getId()+""); + dataAffairCommit.setId(affairCommit.getAffairId()); + dataAffairCommit.setCommentVal(affairCommit.getComment()); + dataAffairCommit.setReleaseFlag(affairCommit.getReleaseFlag()); + dataAffairCommit.setState(affairCommit.getState()); + dataAffairCommit.setUserId(sysUser.getId()); + dataAffairCommit.setUserCode(sysUser.getCode()); + dataAffairCommit.setUserName(sysUser.getName()); + dataAffairCommit.setResultData(flag); + dataAffairCommit.setAttachIds(affairCommit.getAttachIds()); + dataAffairCommitMapper.insert(dataAffairCommit); + } catch (Exception e) { + e.printStackTrace(); + } + //更新释放标识 if(affairCommit.getReleaseFlag()!=null){ VtbVerification vtbVer = new VtbVerification(); diff --git a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java index dc48b208..2f66a669 100644 --- a/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java @@ -736,7 +736,7 @@ public class VtbVerificationServiceImpl extends ServiceImpl