Browse Source

费用申请、政策审批附件上传日志;

TODO
核销返回列表未修改
v1.0
Yen 2 years ago
parent
commit
6ca8b975e1
  1. 1
      src/main/java/com/qs/serve/common/model/enums/SystemModule.java
  2. 120
      src/main/java/com/qs/serve/modules/data/controller/DataAffairCommitController.java
  3. 130
      src/main/java/com/qs/serve/modules/data/entity/DataAffairCommit.java
  4. 14
      src/main/java/com/qs/serve/modules/data/mapper/DataAffairCommitMapper.java
  5. 14
      src/main/java/com/qs/serve/modules/data/service/DataAffairCommitService.java
  6. 22
      src/main/java/com/qs/serve/modules/data/service/impl/DataAffairCommitServiceImpl.java
  7. 13
      src/main/java/com/qs/serve/modules/seeyon/SeeYonController.java
  8. 51
      src/main/java/com/qs/serve/modules/seeyon/service/SeeYonOperationService.java
  9. 2
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java
  10. 6
      src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java
  11. 6
      src/main/java/com/qs/serve/modules/tbs/entity/vo/CtpAffairVo.java
  12. 41
      src/main/java/com/qs/serve/modules/tbs/service/impl/TbsCostApplyOperationServiceImpl.java
  13. 2
      src/main/java/com/qs/serve/modules/tzc/service/impl/TzcPolicyApplicationServiceImpl.java
  14. 29
      src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java
  15. 2
      src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java

1
src/main/java/com/qs/serve/common/model/enums/SystemModule.java

@ -22,6 +22,7 @@ public enum SystemModule {
GOODS("goods","商品"), GOODS("goods","商品"),
SYSTEM("sys","系统"), SYSTEM("sys","系统"),
UMS("ums","手机用户"), UMS("ums","手机用户"),
DATA("data","数据"),
Tag("tag","标签"); Tag("tag","标签");
String code; String code;

120
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<List<DataAffairCommit>> getList(DataAffairCommit param){
LambdaQueryWrapper<DataAffairCommit> lqw = new LambdaQueryWrapper<>(param);
List<DataAffairCommit> list = dataAffairCommitService.list(lqw);
return R.ok(list);
}
/**
* 翻页
* @param param
* @return
*/
//@GetMapping("/page")
//@PreAuthorize("hasRole('data:affairCommit:query')")
public R<PageVo<DataAffairCommit>> getPage(DataAffairCommit param){
LambdaQueryWrapper<DataAffairCommit> lqw = new LambdaQueryWrapper<>(param);
PageUtil.startPage();
List<DataAffairCommit> 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<DataAffairCommit> 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<Long> idsLong = StringUtils.splitIdLong(ids);
boolean result = dataAffairCommitService.removeByIds(idsLong);
return R.isTrue(result);
}
}

130
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;
}
}

14
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<DataAffairCommit> {
}

14
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<DataAffairCommit> {
}

22
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<DataAffairCommitMapper,DataAffairCommit> implements DataAffairCommitService {
}

13
src/main/java/com/qs/serve/modules/seeyon/SeeYonController.java

@ -92,6 +92,7 @@ public class SeeYonController {
//待审 //待审
if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){
VtbVerification object = verificationService.getById(targetId); VtbVerification object = verificationService.getById(targetId);
log.debug("核销待审 {}",object.getCostApplyId());
jumpUrl = SyKeyLoginUtil.getPreCheckUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId(),affair.getAffairId()); jumpUrl = SyKeyLoginUtil.getPreCheckUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId(),affair.getAffairId());
}else { }else {
jumpUrl = SyKeyLoginUtil.getPreCheckUrl(targetCode,targetId,affair.getAffairId()); jumpUrl = SyKeyLoginUtil.getPreCheckUrl(targetCode,targetId,affair.getAffairId());
@ -99,15 +100,17 @@ public class SeeYonController {
}else if (affair.getState().equals(4)){ }else if (affair.getState().equals(4)){
//已阅或已提交 //已阅或已提交
if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){
jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId);
}else {
VtbVerification object = verificationService.getById(targetId); VtbVerification object = verificationService.getById(targetId);
log.debug("核销已阅或已提交 {}",object.getCostApplyId());
jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId()); jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId());
}else {
jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId);
} }
}else if (affair.getState().equals(2)){ }else if (affair.getState().equals(2)){
//发起 //发起
if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){
VtbVerification object = verificationService.getById(targetId); VtbVerification object = verificationService.getById(targetId);
log.debug("核销发起 {}",object.getCostApplyId());
jumpUrl = SyKeyLoginUtil.getMyDetailUrl(TbsSeeYonConst.CostApplyConf.Code(),object.getCostApplyId()+""); jumpUrl = SyKeyLoginUtil.getMyDetailUrl(TbsSeeYonConst.CostApplyConf.Code(),object.getCostApplyId()+"");
}else { }else {
jumpUrl = SyKeyLoginUtil.getMyDetailUrl(targetCode,targetId); jumpUrl = SyKeyLoginUtil.getMyDetailUrl(targetCode,targetId);
@ -118,6 +121,7 @@ public class SeeYonController {
//发起 //发起
if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){
VtbVerification object = verificationService.getById(targetId); VtbVerification object = verificationService.getById(targetId);
log.debug("核销发起 {}",object.getCostApplyId());
jumpUrl = SyKeyLoginUtil.getMyDetailUrl(TbsSeeYonConst.CostApplyConf.Code(),object.getCostApplyId()+""); jumpUrl = SyKeyLoginUtil.getMyDetailUrl(TbsSeeYonConst.CostApplyConf.Code(),object.getCostApplyId()+"");
}else { }else {
jumpUrl = SyKeyLoginUtil.getMyDetailUrl(targetCode,targetId); jumpUrl = SyKeyLoginUtil.getMyDetailUrl(targetCode,targetId);
@ -125,10 +129,11 @@ public class SeeYonController {
}else { }else {
//已阅或已提交 //已阅或已提交
if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){ if(targetCode.equals(TbsSeeYonConst.CostCheckConf.Code())){
jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId);
}else {
VtbVerification object = verificationService.getById(targetId); VtbVerification object = verificationService.getById(targetId);
log.debug("核销已阅或已提交 {}",object.getCostApplyId());
jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId()); jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl4Verification(object.getCostApplyId(),object.getActivityId(),object.getId());
}else {
jumpUrl = SyKeyLoginUtil.getCheckedDetailUrl(targetCode,targetId);
} }
} }
} }

51
src/main/java/com/qs/serve/modules/seeyon/service/SeeYonOperationService.java

@ -1,11 +1,11 @@
package com.qs.serve.modules.seeyon.service; 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.PageVo;
import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.util.Assert; import com.qs.serve.common.util.*;
import com.qs.serve.common.util.AuthContextUtils; import com.qs.serve.modules.data.entity.DataAffairCommit;
import com.qs.serve.common.util.SpringUtils; import com.qs.serve.modules.data.mapper.DataAffairCommitMapper;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.seeyon.entity.CtpAffair; import com.qs.serve.modules.seeyon.entity.CtpAffair;
import com.qs.serve.modules.seeyon.entity.CtpAffairQo; import com.qs.serve.modules.seeyon.entity.CtpAffairQo;
import com.qs.serve.modules.seeyon.entity.SyAffairStateResult; 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.seeyon.enums.SyAffairState;
import com.qs.serve.modules.sys.entity.SysPostUser; import com.qs.serve.modules.sys.entity.SysPostUser;
import com.qs.serve.modules.sys.entity.SysUser; 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.SysPostUserService;
import com.qs.serve.modules.sys.service.SysUserService; import com.qs.serve.modules.sys.service.SysUserService;
import com.qs.serve.modules.tbs.common.TbsSeeYonConst; 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.modules.tbs.entity.vo.CtpAffairVo;
import com.qs.serve.task.SysTask; import com.qs.serve.task.SysTask;
import java.util.ArrayList; import java.util.*;
import java.util.List;
import java.util.Locale;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@ -147,6 +145,10 @@ public interface SeeYonOperationService extends SeeYonBaseService{
R<List<CtpAffair>> syResult = getRequestService().commonListAffairs(targetId,null,templateCode); R<List<CtpAffair>> syResult = getRequestService().commonListAffairs(targetId,null,templateCode);
List<CtpAffair> ctpAffairs = syResult.getData(); List<CtpAffair> ctpAffairs = syResult.getData();
if(ctpAffairs.size()>0){ if(ctpAffairs.size()>0){
DataAffairCommitMapper dataAffairCommitMapper = SpringUtils.getBean(DataAffairCommitMapper.class);
SysAttachMapper sysAttachMapper = SpringUtils.getBean(SysAttachMapper.class);
List<DataAffairCommit> affairCommits = dataAffairCommitMapper.selectBatchIds(ctpAffairs.stream()
.map(CtpAffair::getAffairId).collect(Collectors.toList()));
List<String> oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList()); List<String> oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList());
List<SysUser> userList = getSysUserService().listByOaMemberIds(oaUserIds); List<SysUser> userList = getSysUserService().listByOaMemberIds(oaUserIds);
SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class); SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class);
@ -164,6 +166,16 @@ public interface SeeYonOperationService extends SeeYonBaseService{
ctpAffairVo.setUserPostList(postUsers); 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); result.add(ctpAffairVo);
} }
return R.ok(result); return R.ok(result);
@ -265,6 +277,29 @@ public interface SeeYonOperationService extends SeeYonBaseService{
if(result.getStatus()==200){ if(result.getStatus()==200){
// 判断是否含有下个节点 // 判断是否含有下个节点
String flag = result.getData(); 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) //审批中(next)、完成(finish)、拒绝(refused)
if("finish".equals(flag)){ if("finish".equals(flag)){
this.doFinished(affairCommit); this.doFinished(affairCommit);

2
src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java

@ -80,7 +80,7 @@ public class TbsCostApplyController {
* @param param * @param param
* @return * @return
*/ */
@PostMapping("/testChangeAmt") //@PostMapping("/testChangeAmt")
public R<?> testChangeAmt(@RequestBody TbsAffairCommitBo param){ public R<?> testChangeAmt(@RequestBody TbsAffairCommitBo param){
TbsCostApplyOperationServiceImpl impl = SpringUtils.getBean(TbsCostApplyOperationServiceImpl.class); TbsCostApplyOperationServiceImpl impl = SpringUtils.getBean(TbsCostApplyOperationServiceImpl.class);
impl.doFinished(param); impl.doFinished(param);

6
src/main/java/com/qs/serve/modules/tbs/entity/bo/TbsAffairCommitBo.java

@ -1,6 +1,9 @@
package com.qs.serve.modules.tbs.entity.bo; 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 lombok.Data;
import org.apache.ibatis.type.JdbcType;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -43,6 +46,9 @@ public class TbsAffairCommitBo {
/** 释放费用 */ /** 释放费用 */
private Integer releaseFlag; private Integer releaseFlag;
/** 附件id */
private String[] attachIds;
/** /**
* 修改金额列表核销和费用审批接口专用 * 修改金额列表核销和费用审批接口专用
*/ */

6
src/main/java/com/qs/serve/modules/tbs/entity/vo/CtpAffairVo.java

@ -40,4 +40,10 @@ public class CtpAffairVo {
/** 审批日志明细 */ /** 审批日志明细 */
private List<?> commitItems; private List<?> commitItems;
/** 附件列表 */
private List<?> attachments;
/** 提交时的日志记录 */
private Object commitInfo;
} }

41
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.consts.BudgetLogRollbackFlag;
import com.qs.serve.common.model.dto.R; import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.util.*; 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.CtpAffair;
import com.qs.serve.modules.seeyon.entity.SyAffairStateResult; import com.qs.serve.modules.seeyon.entity.SyAffairStateResult;
import com.qs.serve.modules.seeyon.entity.bo.CtpAddNodeDTO; 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.seeyon.service.SeeYonRequestService;
import com.qs.serve.modules.sys.entity.SysPostUser; import com.qs.serve.modules.sys.entity.SysPostUser;
import com.qs.serve.modules.sys.entity.SysUser; 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.mapper.SysUserMapper;
import com.qs.serve.modules.sys.service.SysPostUserService; import com.qs.serve.modules.sys.service.SysPostUserService;
import com.qs.serve.modules.sys.service.SysUserService; import com.qs.serve.modules.sys.service.SysUserService;
@ -66,6 +69,7 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService
private final TbsActivitySubjectMapper activitySubjectMapper; private final TbsActivitySubjectMapper activitySubjectMapper;
private final TbsActivityCenterMapper activityCenterMapper; private final TbsActivityCenterMapper activityCenterMapper;
private final TbsActivityCenterGoodsMapper activityCenterGoodsMapper; private final TbsActivityCenterGoodsMapper activityCenterGoodsMapper;
private final DataAffairCommitMapper dataAffairCommitMapper;
@Override @Override
@ -161,6 +165,10 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService
R<List<CtpAffair>> syResult = getRequestService().commonListAffairs(targetId,null,templateCode); R<List<CtpAffair>> syResult = getRequestService().commonListAffairs(targetId,null,templateCode);
List<CtpAffair> ctpAffairs = syResult.getData(); List<CtpAffair> ctpAffairs = syResult.getData();
if(ctpAffairs.size()>0){ if(ctpAffairs.size()>0){
DataAffairCommitMapper dataAffairCommitMapper = SpringUtils.getBean(DataAffairCommitMapper.class);
SysAttachMapper sysAttachMapper = SpringUtils.getBean(SysAttachMapper.class);
List<DataAffairCommit> affairCommits = dataAffairCommitMapper.selectBatchIds(ctpAffairs.stream()
.map(CtpAffair::getAffairId).collect(Collectors.toList()));
List<String> oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList()); List<String> oaUserIds = ctpAffairs.stream().map(CtpAffair::getMemberId).collect(Collectors.toList());
List<SysUser> userList = getSysUserService().listByOaMemberIds(oaUserIds); List<SysUser> userList = getSysUserService().listByOaMemberIds(oaUserIds);
SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class); SysPostUserService postUserService = SpringUtils.getBean(SysPostUserService.class);
@ -178,6 +186,16 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService
ctpAffairVo.setUserPostList(postUsers); 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); result.add(ctpAffairVo);
} }
return R.ok(result); return R.ok(result);
@ -586,8 +604,29 @@ public class TbsCostApplyOperationServiceImpl implements SeeYonOperationService
R<String> result = getRequestService().commonCommit(affairCommit, templateCode ,syFormId); R<String> result = getRequestService().commonCommit(affairCommit, templateCode ,syFormId);
boolean isBackCommit = affairCommit.getState()==2; boolean isBackCommit = affairCommit.getState()==2;
if(result.getStatus()==200){ if(result.getStatus()==200){
// 判断是否含有下个节点
String flag = result.getData(); 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) //审批中(next)、完成(finish)、拒绝(refused)
log.warn("审批节点返回结果:{}",flag); log.warn("审批节点返回结果:{}",flag);
if("finish".equals(flag)){ if("finish".equals(flag)){

2
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 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("exsp5",urlKey);
data.put("cmsLink",baseJumpUrl); data.put("cmsLink",baseJumpUrl);

29
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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qs.serve.common.model.dto.R; 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.CollectionUtil;
import com.qs.serve.common.util.CopierUtil; import com.qs.serve.common.util.CopierUtil;
import com.qs.serve.common.util.SpringUtils; 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.entity.CtpAffair;
import com.qs.serve.modules.seeyon.service.SeeYonRequestService; import com.qs.serve.modules.seeyon.service.SeeYonRequestService;
import com.qs.serve.modules.sys.entity.SysPostUser; import com.qs.serve.modules.sys.entity.SysPostUser;
@ -57,7 +60,7 @@ public class VtbVerificationApplication {
private VtbVerificationYardItemService yardItemService; private VtbVerificationYardItemService yardItemService;
private final TbsActivityPayConditionService activityPayConditionService; private final TbsActivityPayConditionService activityPayConditionService;
private SysPostUserService sysPostUserService; private SysPostUserService sysPostUserService;
private DataAffairCommitMapper dataAffairCommitMapper;
private TbsActivityService tbsActivityService; private TbsActivityService tbsActivityService;
private TbsCostApplyService tbsCostApplyService; private TbsCostApplyService tbsCostApplyService;
private SysUserService sysUserService; private SysUserService sysUserService;
@ -108,7 +111,9 @@ public class VtbVerificationApplication {
try { try {
//解决同步冻结时有过期的活动 //解决同步冻结时有过期的活动
TbsTask tbsTask = SpringUtils.getBean(TbsTask.class); TbsTask tbsTask = SpringUtils.getBean(TbsTask.class);
if(tbsTask!=null){
tbsTask.task1(); tbsTask.task1();
}
} catch (BeansException e) { } catch (BeansException e) {
e.printStackTrace(); e.printStackTrace();
} }
@ -122,6 +127,28 @@ public class VtbVerificationApplication {
@NotNull @NotNull
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public R commitAffairSuccess(TbsAffairCommitBo affairCommit, VtbVerification verification, boolean isBackCommit, String flag) { 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){ if(affairCommit.getReleaseFlag()!=null){
VtbVerification vtbVer = new VtbVerification(); VtbVerification vtbVer = new VtbVerification();

2
src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java

@ -736,7 +736,7 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
//添加跳转地址业务 //添加跳转地址业务
String urlKey = "exsp5"; String urlKey = "exsp5";
String baseJumpUrl = JumpToUtil.getJumpUrl(projectProperties.getWebUrl(),TbsSeeYonConst.CostApplyConf.Code(),verification.getId()+""); String baseJumpUrl = JumpToUtil.getJumpUrl(projectProperties.getWebUrl(),TbsSeeYonConst.CostCheckConf.Code(),verification.getId()+"");
data.put("exsp5",urlKey); data.put("exsp5",urlKey);
data.put("cmsLink",baseJumpUrl); data.put("cmsLink",baseJumpUrl);

Loading…
Cancel
Save