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(); 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 * @return

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

@ -236,7 +236,7 @@ public class TbsCostApplyController {
*/ */
@PostMapping("/pageMy") @PostMapping("/pageMy")
@PreAuthorize("hasRole('tbs:costApply:query')") @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.setPageSize(param.getPageSize());
PageUtil.setPageNum(param.getPageNum()); PageUtil.setPageNum(param.getPageNum());
return this.getPageMy(param); 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.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qs.serve.common.framework.manager.AsyncFactory; import com.qs.serve.common.framework.manager.AsyncFactory;
import com.qs.serve.common.framework.manager.AsyncManager; 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.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.entity.DataAffairCommit;
@ -472,6 +473,7 @@ public class VtbVerificationApplication {
vtbVer.setAmount(totalAmount); vtbVer.setAmount(totalAmount);
vtbVer.setFinishedTime(LocalDateTime.now()); vtbVer.setFinishedTime(LocalDateTime.now());
vtbVer.setRegReleaseFlag(verification.getRegReleaseFlag()); vtbVer.setRegReleaseFlag(verification.getRegReleaseFlag());
vtbVer.setRegReleaseUserId(AuthContextUtils.getSysUserId(false));
vtbVerificationService.updateById(vtbVer); vtbVerificationService.updateById(vtbVer);
//刷新本次核销数据 //刷新本次核销数据
vtbVerificationService.successCommit(verification.getId()); 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 @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void release(Long activityId,String userCode,Boolean throwEx,boolean checkState) { public void release(Long activityId,String userCode,Boolean throwEx,boolean checkState) {
String url = "unknown";
try { log.warn("费用释放 activityId:{}",activityId);
HttpServletRequest request = ServletUtils.getRequest();
url = request.getRequestURI();
} catch (Exception e) {
e.printStackTrace();
}
log.warn("费用释放 activityId:{} url:{}",activityId,url);
SysUser sysUser = sysUserService.getByAccount(userCode); SysUser sysUser = sysUserService.getByAccount(userCode);
if(userCode.equals("0")){ if(userCode.equals("0")){
sysUser = new SysUser(); sysUser = new SysUser();
@ -1469,12 +1463,16 @@ public class VtbVerificationServiceImpl extends ServiceImpl<VtbVerificationMappe
activityUpdate.setId(verification.getActivityId()); activityUpdate.setId(verification.getActivityId());
activityService.updateById(activityUpdate); activityService.updateById(activityUpdate);
} }
//更新释放的核销(通过batchId区分旧版的单核销,单核销在此方法外部有释放函数,只处理批量的核销释放) //更新释放的核销
if(verification.getBatchId()!=null if(verification.getRegReleaseFlag()!=null
&&verification.getRegReleaseFlag()!=null
&&verification.getRegReleaseFlag().equals(1)){ &&verification.getRegReleaseFlag().equals(1)){
//更新活动状态 //更新活动状态
SysUser sysUser = sysUserService.getById(verification.getRegReleaseUserId()); 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); this.release(verification.getActivityId(),sysUser.getCode(),true,false);
} }

Loading…
Cancel
Save