|
@@ -1,7 +1,9 @@
|
|
|
package com.zhongzheng.modules.top.settle.service.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
+import cn.hutool.core.lang.Validator;
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
@@ -11,6 +13,8 @@ import com.zhongzheng.common.core.domain.entity.TopSysRole;
|
|
|
import com.zhongzheng.common.exception.CustomException;
|
|
|
import com.zhongzheng.common.type.EncryptHandler;
|
|
|
import com.zhongzheng.common.utils.DateUtils;
|
|
|
+import com.zhongzheng.common.utils.ToolsUtils;
|
|
|
+import com.zhongzheng.common.utils.http.HttpUtils;
|
|
|
import com.zhongzheng.modules.goods.domain.Goods;
|
|
|
import com.zhongzheng.modules.goods.service.IGoodsService;
|
|
|
import com.zhongzheng.modules.order.domain.Order;
|
|
@@ -23,6 +27,8 @@ import com.zhongzheng.modules.top.financial.service.ITopCostInstTpItemService;
|
|
|
import com.zhongzheng.modules.top.financial.service.ITopCostInstTpService;
|
|
|
import com.zhongzheng.modules.top.goods.domain.*;
|
|
|
import com.zhongzheng.modules.top.goods.service.*;
|
|
|
+import com.zhongzheng.modules.top.order.domain.TopOrderBankPay;
|
|
|
+import com.zhongzheng.modules.top.order.service.ITopOrderBankPayService;
|
|
|
import com.zhongzheng.modules.top.settle.bo.*;
|
|
|
import com.zhongzheng.modules.top.settle.domian.TopInstSettle;
|
|
|
import com.zhongzheng.modules.top.settle.domian.TopInstSettleRelaiton;
|
|
@@ -40,14 +46,13 @@ import com.zhongzheng.modules.top.user.service.ITopSysUserRoleService;
|
|
|
import com.zhongzheng.modules.user.domain.User;
|
|
|
import com.zhongzheng.modules.user.service.IUserService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.io.IOException;
|
|
|
import java.math.BigDecimal;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Arrays;
|
|
|
-import java.util.Comparator;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -93,6 +98,10 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
private ITopInstitutionService topInstitutionService;
|
|
|
@Autowired
|
|
|
private ITopInstCategoryService topInstCategoryService;
|
|
|
+ @Autowired
|
|
|
+ private ITopOrderBankPayService topOrderBankPayService;
|
|
|
+ @Value("${oldSys.host}")
|
|
|
+ private String OLD_SYS_HOST;
|
|
|
|
|
|
|
|
|
@Override
|
|
@@ -140,7 +149,8 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
//旧系统订单
|
|
|
List<TopOldOrderGoods> list = topOldOrderGoodsService
|
|
|
.list(new LambdaQueryWrapper<TopOldOrderGoods>()
|
|
|
- .eq(TopOldOrderGoods::getOrderSn, bo.getOrderSn()));
|
|
|
+ .eq(TopOldOrderGoods::getOrderSn, bo.getOrderSn())
|
|
|
+ .eq(TopOldOrderGoods::getStatus,1));
|
|
|
if (CollectionUtils.isNotEmpty(list)){
|
|
|
List<TopOrderStudyInfoVo> infoVoList = list.stream().map(item -> {
|
|
|
TopOrderStudyInfoVo studyInfoVo = new TopOrderStudyInfoVo();
|
|
@@ -347,6 +357,17 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
entity.setCreateTime(DateUtils.getNowTime());
|
|
|
entity.setUpdateTime(DateUtils.getNowTime());
|
|
|
entity.setCheckStatus(1);
|
|
|
+ entity.setCreateBy(bo.getLoginName());
|
|
|
+ entity.setCreateUserId(bo.getLoginId());
|
|
|
+ //供应商默认结算成本模板
|
|
|
+ TopCostInstTp costInstTp = topCostInstTpService
|
|
|
+ .getOne(new LambdaQueryWrapper<TopCostInstTp>()
|
|
|
+ .eq(TopCostInstTp::getInstId, bo.getInstId())
|
|
|
+ .eq(TopCostInstTp::getDefaultStatus, 1)
|
|
|
+ .eq(TopCostInstTp::getStatus, 1));
|
|
|
+ if (ObjectUtils.isNotNull(costInstTp)){
|
|
|
+ entity.setInstTpId(costInstTp.getTpId());
|
|
|
+ }
|
|
|
save(entity);
|
|
|
//结算订单信息
|
|
|
if (CollectionUtils.isNotEmpty(bo.getSettleOrders())){
|
|
@@ -387,7 +408,7 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
checkLog.setRoleId(orderCheck.getCheckRole());
|
|
|
checkLog.setType(orderCheck.getCheckType());
|
|
|
checkLog.setCheckSort(orderCheck.getCheckSort());
|
|
|
- checkLog.setCheckFrom(5);//供应商结算
|
|
|
+ checkLog.setCheckFrom(4);//供应商结算
|
|
|
checkLog.setOrderSn(settleSn);
|
|
|
checkLog.setCreateTime(DateUtils.getNowTime());
|
|
|
checkLog.setUpdateTime(DateUtils.getNowTime());
|
|
@@ -434,6 +455,17 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
entity.setCreateTime(DateUtils.getNowTime());
|
|
|
entity.setUpdateTime(DateUtils.getNowTime());
|
|
|
entity.setCheckStatus(1);
|
|
|
+ entity.setCreateBy(bo.getLoginName());
|
|
|
+ entity.setCreateUserId(bo.getLoginId());
|
|
|
+ //供应商默认结算成本模板
|
|
|
+ TopCostInstTp costInstTp = topCostInstTpService
|
|
|
+ .getOne(new LambdaQueryWrapper<TopCostInstTp>()
|
|
|
+ .eq(TopCostInstTp::getInstId, bo.getInstId())
|
|
|
+ .eq(TopCostInstTp::getDefaultStatus, 1)
|
|
|
+ .eq(TopCostInstTp::getStatus, 1));
|
|
|
+ if (ObjectUtils.isNotNull(costInstTp)){
|
|
|
+ entity.setInstTpId(costInstTp.getTpId());
|
|
|
+ }
|
|
|
save(entity);
|
|
|
if (bo.getStatus() == 1){
|
|
|
//提交审核
|
|
@@ -634,7 +666,7 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
//提交审核
|
|
|
createCheckLog(entity.getSettleSn(),bo.getLoginId(),bo.getLoginName());
|
|
|
}
|
|
|
- return false;
|
|
|
+ return true;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
@@ -669,12 +701,12 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
relaitonList.forEach(x -> x.setStatus(-1));
|
|
|
topInstSettleRelationService.updateBatchById(relaitonList);
|
|
|
}
|
|
|
-
|
|
|
}
|
|
|
- return false;
|
|
|
+ return true;
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public boolean checkSettle(CheckSettleBo bo) {
|
|
|
//审核校验
|
|
|
TopInstSettle settle = getById(bo.getSettleId());
|
|
@@ -700,14 +732,250 @@ public class ITopInstSettleServiceImpl extends ServiceImpl<TopInstSettleMapper,
|
|
|
if (roleIds.stream().noneMatch(x -> x.equals(checkLog.getRoleId())) && !"admin".equals(bo.getLoginName())){
|
|
|
throw new CustomException("当前账号没有审核权限!");
|
|
|
}
|
|
|
+
|
|
|
+ //创建结算单的角色
|
|
|
+ List<TopSysUserRole> settleRoleList = topSysUserRoleService
|
|
|
+ .list(new LambdaQueryWrapper<TopSysUserRole>().eq(TopSysUserRole::getUserId, settle.getCreateUserId()));
|
|
|
+
|
|
|
switch (bo.getCheckResult()){
|
|
|
case 1://审核通过
|
|
|
+ checkLog.setCheckStatus(1);
|
|
|
+ checkLog.setCheckTime(DateUtils.getNowTime());
|
|
|
+ checkLog.setCheckSign(0);
|
|
|
+ checkLog.setCheckUsername(bo.getLoginName());
|
|
|
+ //获取下一个审核节点
|
|
|
+ TopOldOrderCheckLog checkLogTwo = getNextCheck(settleRoleList,checkLog.getCheckSort() + 1,settle.getSettleSn());
|
|
|
+ checkLogTwo.setCheckSign(1);
|
|
|
+ topOldOrderCheckLogService.updateById(checkLogTwo);
|
|
|
+ if (checkLogTwo.getType() == 8){
|
|
|
+ //结算支付流程
|
|
|
+ settle.setCheckStatus(4);//待支付
|
|
|
+ updateById(settle);
|
|
|
+ }
|
|
|
+ break;
|
|
|
+ case 2://不通过
|
|
|
+ checkLog.setCheckStatus(-1);
|
|
|
+ checkLog.setCheckTime(DateUtils.getNowTime());
|
|
|
+ checkLog.setCheckSign(0);
|
|
|
+ checkLog.setCheckUsername(bo.getLoginName());
|
|
|
+ checkLog.setCheckReason(bo.getCheckReason());
|
|
|
+ //获取初始审核节点
|
|
|
+ TopOldOrderCheckLog initCheckLog = getNextCheck(settleRoleList,1,settle.getSettleSn());
|
|
|
+ initCheckLog.setCheckSign(1);
|
|
|
+ topOldOrderCheckLogService.updateById(initCheckLog);
|
|
|
+ settle.setCheckStatus(3);//未通过
|
|
|
+ updateById(settle);
|
|
|
+ break;
|
|
|
+ default :
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public BigDecimal getSettleTotalMoney(SettleQueryBo bo) {
|
|
|
+ if (ObjectUtil.isNotNull(bo.getCheckStatus())
|
|
|
+ && (bo.getCheckStatus() == 2 || bo.getCheckStatus() == 7) && !bo.getLoginName().equals("admin")){
|
|
|
+ List<TopSysUserRole> roleList = topSysUserRoleService.list(new LambdaQueryWrapper<TopSysUserRole>().eq(TopSysUserRole::getUserId, bo.getLoginId()));
|
|
|
+ if (CollectionUtils.isNotEmpty(roleList)){
|
|
|
+ bo.setRoleIds(roleList.stream().map(TopSysUserRole::getRoleId).collect(Collectors.toList()));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ List<SettleVo> settleVos = baseMapper.getSettleList(bo);
|
|
|
+ if (CollectionUtils.isEmpty(settleVos)){
|
|
|
+ return BigDecimal.ZERO;
|
|
|
+ }
|
|
|
+ return settleVos.stream().filter(x -> ObjectUtil.isNotNull(x.getSettleMoney())).map(SettleVo::getSettleMoney).reduce(BigDecimal.ZERO,BigDecimal::add);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SettleVo getSettlePayInfo(Long settleId) {
|
|
|
+ TopInstSettle instSettle = getById(settleId);
|
|
|
+ if (ObjectUtil.isNull(instSettle)){
|
|
|
+ throw new CustomException("数据不存在!");
|
|
|
+ }
|
|
|
+ SettleVo detailVo = BeanUtil.toBean(instSettle, SettleVo.class);
|
|
|
+ //供应商信息
|
|
|
+ TopInstitution institution = topInstitutionService.getById(instSettle.getInstId());
|
|
|
+ detailVo.setInstName(institution.getInstName());
|
|
|
+ detailVo.setBankAccount(institution.getBankAccount());
|
|
|
+ detailVo.setBankName(institution.getBankName());
|
|
|
+ detailVo.setBank(institution.getBank());
|
|
|
+
|
|
|
+ TopInstCategory category = topInstCategoryService.getById(detailVo.getCostCatId());
|
|
|
+ detailVo.setCostCatName(category.getCategoryName());
|
|
|
+
|
|
|
+ //业务层次
|
|
|
+ TopCourseEducationType educationType = topCourseEducationTypeService.getById(instSettle.getEducationTypeId());
|
|
|
+ TopCourseProjectType projectType = topCourseProjectTypeService.getById(instSettle.getProjectId());
|
|
|
+ TopCourseBusiness business = topCourseBusinessService.getById(instSettle.getBusinessId());
|
|
|
+ detailVo.setEducationName(educationType.getEducationName());
|
|
|
+ detailVo.setBusinessName(business.getBusinessName()+projectType.getProjectName());
|
|
|
+ return detailVo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean settlePay(SettlePayBo bo) {
|
|
|
+ TopInstSettle settle = getById(bo.getSettleId());
|
|
|
+ if (ObjectUtils.isNull(settle)){
|
|
|
+ throw new CustomException("结算单信息获取失败!");
|
|
|
+ }
|
|
|
+ if (ObjectUtils.isNotNull(settle.getSettleMoney()) && settle.getSettleMoney().compareTo(BigDecimal.ZERO) > 0){
|
|
|
+ TopInstitution institution = topInstitutionService.getById(settle.getInstId());
|
|
|
+ //打款
|
|
|
+ BigDecimal settleMoney = settle.getSettleMoney();
|
|
|
+ String paySn = DateUtils.getTagOrderSn("CP");
|
|
|
+ TopOrderBankPay add = new TopOrderBankPay();
|
|
|
+ add.setPaySn(paySn);
|
|
|
+ add.setOrderSn(settle.getSettleSn());
|
|
|
+ add.setToBankAcount(institution.getBankAccount());
|
|
|
+ add.setToBankName(institution.getBankName());
|
|
|
+ add.setToBankTypeName(institution.getBank());
|
|
|
+ add.setTrainOrgId("1");//祥粤
|
|
|
+ add.setTenantId("867735392558919680");
|
|
|
+ add.setCreateTime(DateUtils.getNowTime());
|
|
|
+ add.setUpdateTime(DateUtils.getNowTime());
|
|
|
+ add.setResultStatus(0);
|
|
|
+ add.setPayUsername(bo.getLoginName());
|
|
|
+ add.setType(3);//供应商结算
|
|
|
+ add.setMoney(settleMoney);
|
|
|
+ add.setPayUsername(bo.getLoginName());
|
|
|
+ Map<String, String> params = new HashMap<>();
|
|
|
+ Long nowTime = DateUtils.getNowTime();
|
|
|
+ String sign = ToolsUtils.EncoderByMd5(paySn + nowTime.toString() + "pubilc2022");
|
|
|
+ params.put("stamp", nowTime.toString());
|
|
|
+ params.put("sign", sign);
|
|
|
+ params.put("MainUniqueId", paySn);
|
|
|
+ params.put("ToBankAcount",institution.getBankAccount());
|
|
|
+ params.put("ToBankName", institution.getBankName());
|
|
|
+ params.put("ToBankTypeName", institution.getBank());
|
|
|
+ params.put("Money", settleMoney.toString());
|
|
|
+ params.put("TrainOrgId", "1");
|
|
|
+
|
|
|
+ String respone = "";
|
|
|
+ String paramStr = JSON.toJSONString(params);
|
|
|
+ add.setParamJson(paramStr);
|
|
|
+ String path = OLD_SYS_HOST + "/WitSystem/BussinessApi/NeedToPay";
|
|
|
+ try {
|
|
|
+ respone = HttpUtils.postFormBody(path, params);
|
|
|
+ if (!respone.contains("\"Status\":true")) {
|
|
|
+ //支付失败
|
|
|
+ settle.setCheckStatus(5);
|
|
|
+ updateById(settle);
|
|
|
+ throw new CustomException("供应商结算支付请求错误" + respone);
|
|
|
+ }
|
|
|
+ } catch (IOException e) {
|
|
|
+ //支付失败
|
|
|
+ settle.setCheckStatus(5);
|
|
|
+ updateById(settle);
|
|
|
+ throw new CustomException("供应商结算支付请求错误" + e.getMessage());
|
|
|
+ }
|
|
|
+ topOrderBankPayService.save(add);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ //结算金额小于0元
|
|
|
+ //支付成功
|
|
|
+ settle.setCheckStatus(6);
|
|
|
+ return updateById(settle);
|
|
|
+ }
|
|
|
|
|
|
+ @Override
|
|
|
+ public SettleReceiptsVo getSettleReceipts(Long settleId) {
|
|
|
+ TopInstSettle instSettle = getById(settleId);
|
|
|
+ if (ObjectUtil.isNull(instSettle)){
|
|
|
+ throw new CustomException("数据不存在!");
|
|
|
+ }
|
|
|
+ SettleReceiptsVo detailVo = BeanUtil.toBean(instSettle, SettleReceiptsVo.class);
|
|
|
+ //供应商信息
|
|
|
+ TopInstitution institution = topInstitutionService.getById(instSettle.getInstId());
|
|
|
+ detailVo.setInstName(institution.getInstName());
|
|
|
+ detailVo.setBankAccount(institution.getBankAccount());
|
|
|
+ detailVo.setBankName(institution.getBankName());
|
|
|
+ detailVo.setBank(institution.getBank());
|
|
|
+
|
|
|
+ TopInstCategory category = topInstCategoryService.getById(instSettle.getCostCatId());
|
|
|
+ detailVo.setCostCatName(category.getCategoryName());
|
|
|
+
|
|
|
+ //业务层次
|
|
|
+ TopCourseEducationType educationType = topCourseEducationTypeService.getById(instSettle.getEducationTypeId());
|
|
|
+ TopCourseProjectType projectType = topCourseProjectTypeService.getById(instSettle.getProjectId());
|
|
|
+ TopCourseBusiness business = topCourseBusinessService.getById(instSettle.getBusinessId());
|
|
|
+ detailVo.setEducationName(educationType.getEducationName());
|
|
|
+ detailVo.setBusinessName(business.getBusinessName()+projectType.getProjectName());
|
|
|
+ if (instSettle.getSettleType() == 1){
|
|
|
+ int count = topInstSettleRelationService
|
|
|
+ .count(new LambdaQueryWrapper<TopInstSettleRelaiton>()
|
|
|
+ .eq(TopInstSettleRelaiton::getSettleId, settleId)
|
|
|
+ .eq(TopInstSettleRelaiton::getStatus, 1));
|
|
|
+ detailVo.setSettleNum(count);
|
|
|
+ }
|
|
|
+
|
|
|
+ //审核流程角色
|
|
|
+ List<TopOldOrderCheck> checkList = topOldOrderCheckService
|
|
|
+ .list(new LambdaQueryWrapper<TopOldOrderCheck>()
|
|
|
+ .in(TopOldOrderCheck::getCheckType, Arrays.asList(7, 8))
|
|
|
+ .eq(TopOldOrderCheck::getStatus, 1)
|
|
|
+ .orderByAsc(TopOldOrderCheck::getCheckSort));
|
|
|
+ if (CollectionUtils.isNotEmpty(checkList)){
|
|
|
+ List<String> collect = checkList.stream().map(item -> {
|
|
|
+ TopSysRole sysRole = topSysRoleService.getById(item.getCheckRole());
|
|
|
+ return sysRole.getRoleName();
|
|
|
+ }).collect(Collectors.toList());
|
|
|
+ detailVo.setCheckRoles(collect);
|
|
|
+ }
|
|
|
+ return detailVo;
|
|
|
+ }
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<NumSettleOrderVo> getSettleReceiptsDetail(Long settleId) {
|
|
|
+ List<NumSettleOrderVo> result = new ArrayList<>();
|
|
|
+ List<TopInstSettleRelaiton> relaitonList = topInstSettleRelationService
|
|
|
+ .list(new LambdaQueryWrapper<TopInstSettleRelaiton>()
|
|
|
+ .eq(TopInstSettleRelaiton::getSettleId, settleId)
|
|
|
+ .eq(TopInstSettleRelaiton::getStatus, 1));
|
|
|
+ if (CollectionUtils.isNotEmpty(relaitonList)){
|
|
|
+ result = relaitonList.stream().map(item -> {
|
|
|
+ NumSettleOrderVo orderVo = new NumSettleOrderVo();
|
|
|
+ orderVo.setSettleId(item.getSettleId());
|
|
|
+ orderVo.setOrderSn(item.getOrderSn());
|
|
|
+ orderVo.setSubmitDataTime(item.getSubmitDataTime());
|
|
|
+ orderVo.setSettleMoney(item.getSettleMoney());
|
|
|
+ if (item.getOrderFrom() == 1) {
|
|
|
+ Order order = orderService.getOne(new LambdaQueryWrapper<Order>().eq(Order::getOrderSn, item.getOrderSn()));
|
|
|
+ User user = userService.getById(order.getUserId());
|
|
|
+ orderVo.setUserName(user.getRealname());
|
|
|
+ orderVo.setUserCard(EncryptHandler.decrypt(user.getIdCard()));
|
|
|
+ } else {
|
|
|
+ TopOldOrder oldOrder = topOldOrderService.getOne(new LambdaQueryWrapper<TopOldOrder>().eq(TopOldOrder::getOrderSn, item.getOrderSn()));
|
|
|
+ orderVo.setCreateNo(oldOrder.getCreateNo());
|
|
|
+ orderVo.setCreateUsername(oldOrder.getCreateUsername());
|
|
|
+ orderVo.setClientName(oldOrder.getPurchaseOrg());
|
|
|
+ TopOldOrderGoods orderGoods = topOldOrderGoodsService.getById(item.getOrderGoodsId());
|
|
|
+ orderVo.setUserName(orderGoods.getUserName());
|
|
|
+ orderVo.setUserCard(EncryptHandler.decrypt(orderGoods.getUserCard()));
|
|
|
+ }
|
|
|
+ return orderVo;
|
|
|
+ }).collect(Collectors.toList());
|
|
|
}
|
|
|
- return false;
|
|
|
+ return result;
|
|
|
}
|
|
|
|
|
|
+ private TopOldOrderCheckLog getNextCheck(List<TopSysUserRole> settleRoleList, Integer sort,String settleSn) {
|
|
|
+ TopOldOrderCheckLog checkLog = topOldOrderCheckLogService
|
|
|
+ .getOne(new LambdaQueryWrapper<TopOldOrderCheckLog>()
|
|
|
+ .eq(TopOldOrderCheckLog::getOrderSn, settleSn)
|
|
|
+ .eq(TopOldOrderCheckLog::getCheckSort, sort)
|
|
|
+ .eq(TopOldOrderCheckLog::getStatus, 1)
|
|
|
+ .eq(TopOldOrderCheckLog::getCheckFrom, 4));
|
|
|
+ if (CollectionUtils.isEmpty(settleRoleList)){
|
|
|
+ return checkLog;
|
|
|
+ }
|
|
|
+ List<Long> roleIds = settleRoleList.stream().map(TopSysUserRole::getRoleId).collect(Collectors.toList());
|
|
|
+ if (roleIds.stream().anyMatch(x -> x.equals(checkLog.getRoleId()))){
|
|
|
+ getNextCheck(settleRoleList,sort + 1,settleSn);
|
|
|
+ }
|
|
|
+ return checkLog;
|
|
|
+ }
|
|
|
|
|
|
|
|
|
private void updateSettleCheck(Long settleId, Long loginId,String loginName) {
|