Browse Source

fix:修复单个核销金额未释放异常

checkBack
Yen 1 year ago
parent
commit
9d765f9763
  1. 17
      src/main/java/com/qs/serve/common/util/AuthContextUtils.java
  2. 2
      src/main/java/com/qs/serve/modules/tbs/controller/TbsCostApplyController.java
  3. 2
      src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java
  4. 20
      src/main/java/com/qs/serve/modules/vtb/service/impl/VtbVerificationServiceImpl.java

17
src/main/java/com/qs/serve/common/util/AuthContextUtils.java

@ -68,6 +68,23 @@ public class AuthContextUtils {
return loginUser.getUserId();
}
/**
* 系统用户ID
* @return
*/
public static String getSysUserId(Boolean throwEx){
if(throwEx){
return getSysUserId();
}else {
LoginUser loginUser = getLoginUser(false);
if(loginUser==null){
return null;
}else {
return loginUser.getUserId();
}
}
}
/**
* 判断是否超级管理员
* @return

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

@ -236,7 +236,7 @@ public class TbsCostApplyController {
*/
@PostMapping("/pageMy")
@PreAuthorize("hasRole('tbs:costApply:query')")
public R<PageVo<TbsCostApply>> getPageMy4Post(TbsCostApplyVo param){
public R<PageVo<TbsCostApply>> getPageMy4Post(@RequestBody TbsCostApplyVo param){
PageUtil.setPageSize(param.getPageSize());
PageUtil.setPageNum(param.getPageNum());
return this.getPageMy(param);

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

@ -3,6 +3,7 @@ package com.qs.serve.modules.vtb.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qs.serve.common.framework.manager.AsyncFactory;
import com.qs.serve.common.framework.manager.AsyncManager;
import com.qs.serve.common.framework.security.model.LoginUser;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.util.*;
import com.qs.serve.modules.data.entity.DataAffairCommit;
@ -472,6 +473,7 @@ public class VtbVerificationApplication {
vtbVer.setAmount(totalAmount);
vtbVer.setFinishedTime(LocalDateTime.now());
vtbVer.setRegReleaseFlag(verification.getRegReleaseFlag());
vtbVer.setRegReleaseUserId(AuthContextUtils.getSysUserId(false));
vtbVerificationService.updateById(vtbVer);
//刷新本次核销数据
vtbVerificationService.successCommit(verification.getId());

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

@ -467,14 +467,8 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
@Override
@Transactional(rollbackFor = Exception.class)
public void release(Long activityId,String userCode,Boolean throwEx,boolean checkState) {
String url = "unknown";
try {
HttpServletRequest request = ServletUtils.getRequest();
url = request.getRequestURI();
} catch (Exception e) {
e.printStackTrace();
}
log.warn("费用释放 activityId:{} url:{}",activityId,url);
log.warn("费用释放 activityId:{}",activityId);
SysUser sysUser = sysUserService.getByAccount(userCode);
if(userCode.equals("0")){
sysUser = new SysUser();
@ -1469,12 +1463,16 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
activityUpdate.setId(verification.getActivityId());
activityService.updateById(activityUpdate);
}
//更新释放的核销(通过batchId区分旧版的单核销,单核销在此方法外部有释放函数,只处理批量的核销释放)
if(verification.getBatchId()!=null
&&verification.getRegReleaseFlag()!=null
//更新释放的核销
if(verification.getRegReleaseFlag()!=null
&&verification.getRegReleaseFlag().equals(1)){
//更新活动状态
SysUser sysUser = sysUserService.getById(verification.getRegReleaseUserId());
if(sysUser==null){
sysUser = new SysUser();
sysUser.setCode("0");
sysUser.setName("系统执行");
}
this.release(verification.getActivityId(),sysUser.getCode(),true,false);
}

Loading…
Cancel
Save