Commit 97f1f7f6 by jianan

应收管理、应付管理2

parent c7598e16
...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; ...@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.common.enums.ResultCode; import com.yd.common.enums.ResultCode;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.csf.api.dto.QueryCommissionExpectedByPageResponse;
import com.yd.csf.service.common.ErrorCode; import com.yd.csf.service.common.ErrorCode;
import com.yd.csf.service.dto.*; import com.yd.csf.service.dto.*;
import com.yd.csf.service.model.CommissionExpected; import com.yd.csf.service.model.CommissionExpected;
...@@ -147,7 +148,7 @@ public class ApiCommissionExpectedController { ...@@ -147,7 +148,7 @@ public class ApiCommissionExpectedController {
*/ */
@PostMapping("/queryCommissionExpectedByPage") @PostMapping("/queryCommissionExpectedByPage")
@Operation(summary = "应收款管理列表查询") @Operation(summary = "应收款管理列表查询")
public Result<Map<String, Object>> queryCommissionExpectedByPage(@RequestBody CommissionExpectedQueryRequest commissionExpectedQueryRequest) { public Result<QueryCommissionExpectedByPageResponse> queryCommissionExpectedByPage(@RequestBody CommissionExpectedQueryRequest commissionExpectedQueryRequest) {
long current = commissionExpectedQueryRequest.getPageNo(); long current = commissionExpectedQueryRequest.getPageNo();
long size = commissionExpectedQueryRequest.getPageSize(); long size = commissionExpectedQueryRequest.getPageSize();
...@@ -162,9 +163,9 @@ public class ApiCommissionExpectedController { ...@@ -162,9 +163,9 @@ public class ApiCommissionExpectedController {
List<Long> expectedIds = commissionExpectedList.stream().map(CommissionExpected::getId).collect(Collectors.toList()); List<Long> expectedIds = commissionExpectedList.stream().map(CommissionExpected::getId).collect(Collectors.toList());
CommissionExpectedStatisticsVO expectedStatisticsVO = commissionExpectedService.getExpectedStatistics(expectedIds); CommissionExpectedStatisticsVO expectedStatisticsVO = commissionExpectedService.getExpectedStatistics(expectedIds);
// 组装返回值 // 组装返回值
Map<String, Object> map = new HashMap<>(); QueryCommissionExpectedByPageResponse response = new QueryCommissionExpectedByPageResponse();
map.put("expectedStatisticsVO", expectedStatisticsVO); response.setExpectedStatisticsVO(expectedStatisticsVO);
map.put("page", commissionExpectedService.getCommissionExpectedVOPage(commissionExpectedPage)); response.setPage(commissionExpectedService.getCommissionExpectedVOPage(commissionExpectedPage));
return Result.success(map); return Result.success(response);
} }
} }
...@@ -5,6 +5,7 @@ import com.yd.common.constant.RedisConstants; ...@@ -5,6 +5,7 @@ import com.yd.common.constant.RedisConstants;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.common.utils.RedisUtil; import com.yd.common.utils.RedisUtil;
import com.yd.csf.api.dto.ApiExpectedFortuneLogDto; import com.yd.csf.api.dto.ApiExpectedFortuneLogDto;
import com.yd.csf.api.dto.ApiExpectedFortunePageResponseVO;
import com.yd.csf.api.service.ApiExpectedFortuneLogService; import com.yd.csf.api.service.ApiExpectedFortuneLogService;
import com.yd.csf.api.service.ApiExpectedFortuneService; import com.yd.csf.api.service.ApiExpectedFortuneService;
import com.yd.csf.feign.client.expectedfortune.ApiExpectedFortuneFeignClient; import com.yd.csf.feign.client.expectedfortune.ApiExpectedFortuneFeignClient;
...@@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.RequestBody; ...@@ -23,6 +24,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
...@@ -93,7 +95,7 @@ public class ApiExpectedFortuneController implements ApiExpectedFortuneFeignClie ...@@ -93,7 +95,7 @@ public class ApiExpectedFortuneController implements ApiExpectedFortuneFeignClie
*/ */
@PostMapping("/list") @PostMapping("/list")
@Operation(summary = "分页查询 - 应付款管理列表(预计发佣列表)") @Operation(summary = "分页查询 - 应付款管理列表(预计发佣列表)")
public Result<Map<String, Object>> list(@RequestBody ApiExpectedFortunePageRequest request) { public Result<ApiExpectedFortunePageResponseVO> list(@RequestBody ApiExpectedFortunePageRequest request) {
return apiExpectedFortuneService.list(request); return apiExpectedFortuneService.list(request);
} }
...@@ -112,16 +114,16 @@ public class ApiExpectedFortuneController implements ApiExpectedFortuneFeignClie ...@@ -112,16 +114,16 @@ public class ApiExpectedFortuneController implements ApiExpectedFortuneFeignClie
/** /**
* 新增应付账款,可批量 * 新增应付账款,可批量
* *
* @param request * @param fortuneAddRequestList
* @return * @return
*/ */
@PostMapping("/add") @PostMapping("/add")
@Operation(summary = "新增应付账款,可批量") @Operation(summary = "新增应付账款,可批量")
public Result<Boolean> add(@RequestBody ExpectedFortuneAddRequest request) { public Result<Boolean> add(@RequestBody List<ExpectedFortuneAddRequest> fortuneAddRequestList) {
if (request == null || CollectionUtils.isEmpty(request.getAddList())) { if (fortuneAddRequestList == null || CollectionUtils.isEmpty(fortuneAddRequestList)) {
return Result.fail(ErrorCode.PARAMS_ERROR.getCode(), "新增应付账款列表不能为空"); return Result.fail(ErrorCode.PARAMS_ERROR.getCode(), "新增应付账款列表不能为空");
} }
return Result.success(apiExpectedFortuneService.add(request)); return Result.success(apiExpectedFortuneService.add(fortuneAddRequestList));
} }
/** /**
......
...@@ -154,6 +154,22 @@ public class ApiFortuneController { ...@@ -154,6 +154,22 @@ public class ApiFortuneController {
} }
/** /**
* 批量创建发佣
*
* @param fortuneAddRequestList
* @param request
* @return
*/
@Operation(summary = "批量创建发佣")
@PostMapping("/addBatch")
public Result<Boolean> addFortuneBatch(@RequestBody List<FortuneAddRequest> fortuneAddRequestList, HttpServletRequest request) {
if (CollectionUtils.isEmpty(fortuneAddRequestList)) {
return Result.fail(ErrorCode.PARAMS_ERROR.getCode(), "发佣数据不能为空");
}
return Result.success(fortuneService.addFortuneBatch(fortuneAddRequestList));
}
/**
* 下载选中的发佣数据 * 下载选中的发佣数据
* *
* @param fortuneDownloadRequest * @param fortuneDownloadRequest
......
package com.yd.csf.api.dto;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse;
import com.yd.csf.service.vo.ExpectedFortuneStatisticsVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class ApiExpectedFortunePageResponseVO {
@Schema(description = "预计出账统计信息")
private ExpectedFortuneStatisticsVO statisticsVO;
@Schema(description = "预计出账分页列表")
private IPage<ApiExpectedFortunePageResponse> page;
}
package com.yd.csf.api.dto;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.csf.service.vo.CommissionExpectedStatisticsVO;
import com.yd.csf.service.vo.CommissionExpectedVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
@Schema(description = "查询预计来佣分页响应")
public class QueryCommissionExpectedByPageResponse {
@Schema(description = "预计来佣统计信息")
private CommissionExpectedStatisticsVO expectedStatisticsVO;
@Schema(description = "预计来佣分页列表")
private Page<CommissionExpectedVO> page;
}
...@@ -2,6 +2,7 @@ package com.yd.csf.api.service; ...@@ -2,6 +2,7 @@ package com.yd.csf.api.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yd.common.result.Result; import com.yd.common.result.Result;
import com.yd.csf.api.dto.ApiExpectedFortunePageResponseVO;
import com.yd.csf.feign.request.expectedfortune.ApiExpectedFortunePageRequest; import com.yd.csf.feign.request.expectedfortune.ApiExpectedFortunePageRequest;
import com.yd.csf.feign.request.expectedfortune.ApiGenerateExpectedFortuneRequest; import com.yd.csf.feign.request.expectedfortune.ApiGenerateExpectedFortuneRequest;
import com.yd.csf.feign.request.expectedfortune.ExpectedFortuneAddRequest; import com.yd.csf.feign.request.expectedfortune.ExpectedFortuneAddRequest;
...@@ -34,7 +35,7 @@ public interface ApiExpectedFortuneService { ...@@ -34,7 +35,7 @@ public interface ApiExpectedFortuneService {
Boolean update(ExpectedFortuneUpdateRequest request); Boolean update(ExpectedFortuneUpdateRequest request);
Result<Map<String, Object>> list(ApiExpectedFortunePageRequest request); Result<ApiExpectedFortunePageResponseVO> list(ApiExpectedFortunePageRequest request);
Boolean add(ExpectedFortuneAddRequest request); Boolean add(List<ExpectedFortuneAddRequest> request);
} }
...@@ -418,7 +418,7 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService ...@@ -418,7 +418,7 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
} }
@Override @Override
public Result<Map<String, Object>> list(ApiExpectedFortunePageRequest request) { public Result<ApiExpectedFortunePageResponseVO> list(ApiExpectedFortunePageRequest request) {
Page<ExpectedFortune> page = new Page<>(request.getPageNo(), request.getPageSize()); Page<ExpectedFortune> page = new Page<>(request.getPageNo(), request.getPageSize());
QueryWrapper<ExpectedFortune> queryWrapper = this.getQueryWrapper(request); QueryWrapper<ExpectedFortune> queryWrapper = this.getQueryWrapper(request);
...@@ -428,16 +428,15 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService ...@@ -428,16 +428,15 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
ExpectedFortuneStatisticsVO statisticsVO = iExpectedFortuneService.getStatistics(fortuneList.stream().map(ExpectedFortune::getId).collect(Collectors.toList())); ExpectedFortuneStatisticsVO statisticsVO = iExpectedFortuneService.getStatistics(fortuneList.stream().map(ExpectedFortune::getId).collect(Collectors.toList()));
// 组装返回结果 // 组装返回结果
Map<String, Object> result = new HashMap<>(); ApiExpectedFortunePageResponseVO response = new ApiExpectedFortunePageResponseVO();
result.put("statisticsVO", statisticsVO); response.setStatisticsVO(statisticsVO);
result.put("page", iExpectedFortuneService.getVOPage(iPage)); response.setPage(iExpectedFortuneService.getVOPage(iPage));
return Result.success(result); return Result.success(response);
} }
@Override @Override
public Boolean add(ExpectedFortuneAddRequest request) { public Boolean add(List<ExpectedFortuneAddRequest> fortuneAddRequestList) {
List<ExpectedFortuneDto> addList = request.getAddList(); if (CollectionUtils.isEmpty(fortuneAddRequestList)) {
if (CollectionUtils.isEmpty(addList)) {
return true; return true;
} }
// 查询最新一条记录 // 查询最新一条记录
...@@ -445,7 +444,7 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService ...@@ -445,7 +444,7 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
ExpectedFortune latest = latestList.isEmpty() ? null : latestList.get(0); ExpectedFortune latest = latestList.isEmpty() ? null : latestList.get(0);
ArrayList<ExpectedFortune> fortuneList = new ArrayList<>(); ArrayList<ExpectedFortune> fortuneList = new ArrayList<>();
for (ExpectedFortuneDto expectedFortuneDto : addList) { for (ExpectedFortuneAddRequest expectedFortuneDto : fortuneAddRequestList) {
ExpectedFortune expectedFortune = new ExpectedFortune(); ExpectedFortune expectedFortune = new ExpectedFortune();
BeanUtil.copyProperties(expectedFortuneDto, expectedFortune); BeanUtil.copyProperties(expectedFortuneDto, expectedFortune);
...@@ -465,7 +464,7 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService ...@@ -465,7 +464,7 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
* @param expectedFortuneDto * @param expectedFortuneDto
* @return * @return
*/ */
private String createPayableNo(ExpectedFortuneDto expectedFortuneDto, ExpectedFortune latest) { private String createPayableNo(ExpectedFortuneAddRequest expectedFortuneDto, ExpectedFortune latest) {
String seq = "000001"; String seq = "000001";
// 有最新记录,根据最新记录的序号生成下一个序号 // 有最新记录,根据最新记录的序号生成下一个序号
if (!Objects.isNull(latest)) { if (!Objects.isNull(latest)) {
......
package com.yd.csf.feign.request.expectedfortune; package com.yd.csf.feign.request.expectedfortune;
import com.yd.csf.feign.response.expectedfortune.PolicyInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@Data @Data
public class ExpectedFortuneAddRequest { public class ExpectedFortuneAddRequest {
private List<ExpectedFortuneDto> addList; /**
* 应付款类型 R-关联保单应付款 U-非关联保单应付款
*/
@Schema(description = "应付款类型 R-关联保单应付款 U-非关联保单应付款")
private String fortuneBizType;
/**
* 保单号
*/
@Schema(description = "policy no")
private String policyNo;
/**
* 产品上架信息业务ID
*/
@Schema(description = "产品计划: 产品上架信息业务ID")
private String productLaunchBizId;
/**
* 发佣期数(1=第一年; 2=第二年; 3=第三年; 4=第四年; 5=第五年)
*/
@Schema(description = "fortune period")
private Integer fortunePeriod;
/**
* 发佣总期数
*/
@Schema(description = "fortune total period")
private Integer fortuneTotalPeriod;
/**
* 转介人名称
*/
@Schema(description = "转介人名称")
private String broker;
/**
* 转介人业务ID
*/
@Schema(description = "broker biz id")
private String brokerBizId;
/**
* 团队名称
*/
@Schema(description = "团队名称")
private String team;
/**
* 所属团队业务ID
*/
@Schema(description = "所属团队 biz id")
private String teamBizId;
/**
* 发佣名称
*/
@Schema(description = "发佣名称")
private String fortuneName;
/**
* 发佣类型
*/
@Schema(description = "发佣类型")
private String fortuneType;
/**
* 预计应发金额
*/
@Schema(description = "预计应发金额")
private BigDecimal amount;
/**
* 发佣币种
*/
@Schema(description = "发佣币种")
private String currency;
/**
* 预计发佣日期
*/
@Schema(description = "预计发佣日期")
private LocalDate payoutDate;
} }
...@@ -18,7 +18,7 @@ public class FortuneQueryRequest extends PageDto implements Serializable { ...@@ -18,7 +18,7 @@ public class FortuneQueryRequest extends PageDto implements Serializable {
/** /**
* 出账状态 * 出账状态
*/ */
@Schema(description = "出账状态 0=待出账 1=可出帐 2=完成出账 3=部分出账 4=保留 5=已失效, 字典值: csf_fortune_status") @Schema(description = "出账状态 0=待出账 1=可出账,待检核 2=完成出账 3=部分出账 4=保留 5=已失效 6=可出账,检核完成, 字典值: csf_fortune_status")
private String status; private String status;
/** /**
......
...@@ -15,6 +15,6 @@ public class GenerateFortuneRequest { ...@@ -15,6 +15,6 @@ public class GenerateFortuneRequest {
@Schema(description = "expected fortune id 列表") @Schema(description = "expected fortune id 列表")
private List<Long> expectedFortuneIdList; private List<Long> expectedFortuneIdList;
@Schema(description = "本次发佣日期") @Schema(description = "发佣检核日期")
private LocalDate payoutDate; private LocalDate payoutDate;
} }
...@@ -38,4 +38,6 @@ public interface FortuneService extends IService<Fortune> { ...@@ -38,4 +38,6 @@ public interface FortuneService extends IService<Fortune> {
Fortune queryOne(String fortuneBizId); Fortune queryOne(String fortuneBizId);
FortuneStatisticsVO getFortuneStatistics(List<Long> fortuneIdList); FortuneStatisticsVO getFortuneStatistics(List<Long> fortuneIdList);
Boolean addFortuneBatch(List<FortuneAddRequest> fortuneAddRequestList);
} }
...@@ -31,6 +31,7 @@ import org.springframework.stereotype.Service; ...@@ -31,6 +31,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.transaction.support.TransactionSynchronization; import org.springframework.transaction.support.TransactionSynchronization;
import org.springframework.transaction.support.TransactionSynchronizationManager; import org.springframework.transaction.support.TransactionSynchronizationManager;
import org.springframework.transaction.support.TransactionTemplate;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
...@@ -68,6 +69,8 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -68,6 +69,8 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
private CommissionCompareRecordService commissionCompareRecordService; private CommissionCompareRecordService commissionCompareRecordService;
@Resource @Resource
private CommissionAsyncService commissionAsyncService; private CommissionAsyncService commissionAsyncService;
@Resource
private TransactionTemplate transactionTemplate;
@Override @Override
...@@ -325,7 +328,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -325,7 +328,7 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean generateFortune(GenerateFortuneRequest generateFortuneRequest) { public Boolean generateFortune(GenerateFortuneRequest generateFortuneRequest) {
if (generateFortuneRequest.getPayoutDate() == null) { if (generateFortuneRequest.getPayoutDate() == null) {
throw new BusinessException(ResultCode.NULL_ERROR.getCode(), "请选择本次发佣日期"); throw new BusinessException(ResultCode.NULL_ERROR.getCode(), "请选择发佣检核日期");
} }
// 1. 查询对应的预计发佣记录 // 1. 查询对应的预计发佣记录
...@@ -633,10 +636,29 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -633,10 +636,29 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
} }
@Override @Override
@Transactional(rollbackFor = Exception.class)
public Boolean addCommissionBatch(List<CommissionAddRequest> customerAddRequestList) { public Boolean addCommissionBatch(List<CommissionAddRequest> customerAddRequestList) {
if (CollectionUtils.isEmpty(customerAddRequestList)) { if (CollectionUtils.isEmpty(customerAddRequestList)) {
throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), "来佣数据不能为空"); throw new BusinessException(ResultCode.PARAMS_ERROR.getCode(), "来佣数据不能为空");
} }
Set<String> policyNoSet = customerAddRequestList.stream().map(CommissionAddRequest::getPolicyNo).collect(Collectors.toSet());
// 校验来佣所属保单是否存在
List<Policy> policyList = policyService.list(new QueryWrapper<Policy>().in("policy_no", policyNoSet));
// 校验来佣所属保单跟进是否存在
if (!CollectionUtils.isEmpty(policyList)) {
// 保单号映射
Map<String, Policy> policyMap = policyList.stream().collect(Collectors.toMap(Policy::getPolicyNo, Function.identity()));
for (CommissionAddRequest commissionAddRequest : customerAddRequestList) {
Policy policy = policyMap.get(commissionAddRequest.getPolicyNo());
if (policy == null) {
throw new BusinessException(ResultCode.NULL_ERROR.getCode(), String.format("保单号:%s不存在,不能添加来佣", commissionAddRequest.getPolicyNo()));
}
if (ObjectUtils.isEmpty(commissionAddRequest.getPremium())) {
throw new BusinessException(ResultCode.NULL_ERROR.getCode(), String.format("保单号:%s保费不能为空", commissionAddRequest.getPolicyNo()));
}
}
}
List<Commission> commissionList = new ArrayList<>(); List<Commission> commissionList = new ArrayList<>();
for (CommissionAddRequest request : customerAddRequestList) { for (CommissionAddRequest request : customerAddRequestList) {
Commission commission = new Commission(); Commission commission = new Commission();
...@@ -645,8 +667,20 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss ...@@ -645,8 +667,20 @@ public class CommissionServiceImpl extends ServiceImpl<CommissionMapper, Commiss
commission.setCommissionBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_COMMISSION.getCode())); commission.setCommissionBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_COMMISSION.getCode()));
commissionList.add(commission); commissionList.add(commission);
} }
boolean b = this.saveOrUpdateBatch(commissionList);
// 开启新事务,比对数据
transactionTemplate.execute(status -> {
try {
commissionAsyncService.commissionCompareBatch(commissionList);
} catch (Exception e) {
// 比对失败不影响主事务,记录日志即可
log.error("批量新增, 比对操作执行失败, error: {}", e.getMessage());
}
return null;
});
return this.saveBatch(commissionList); return b;
} }
/** /**
......
...@@ -321,6 +321,25 @@ public class FortuneServiceImpl extends ServiceImpl<FortuneMapper, Fortune> ...@@ -321,6 +321,25 @@ public class FortuneServiceImpl extends ServiceImpl<FortuneMapper, Fortune>
return this.baseMapper.getFortuneStatistics(fortuneIdList); return this.baseMapper.getFortuneStatistics(fortuneIdList);
} }
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean addFortuneBatch(List<FortuneAddRequest> fortuneAddRequestList) {
if (CollectionUtils.isEmpty(fortuneAddRequestList)) {
return false;
}
List<Fortune> fortuneList = new ArrayList<>();
for (FortuneAddRequest fortuneAddRequest : fortuneAddRequestList) {
Fortune fortune = new Fortune();
BeanUtil.copyProperties(fortuneAddRequest, fortune);
// 生成发佣业务ID
fortune.setFortuneBizId(RandomStringGenerator.generateBizId16(CommonEnum.UID_TYPE_FORTUNE.getCode()));
fortune.setStatus(FortuneStatusEnum.WAIT.getItemValue());
fortuneList.add(fortune);
}
return this.saveBatch(fortuneList);
}
} }
......
...@@ -13,6 +13,7 @@ import java.util.Date; ...@@ -13,6 +13,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
@Data @Data
@Schema(description = "预计来佣响应")
public class CommissionExpectedVO implements Serializable { public class CommissionExpectedVO implements Serializable {
/** /**
......
...@@ -48,10 +48,12 @@ ...@@ -48,10 +48,12 @@
FROM FROM
commission_expected commission_expected
<where> <where>
id IN <if test="expectedIds != null and expectedIds.size > 0">
<foreach collection="expectedIds" item="item" open="(" close=")" separator=","> id IN
#{item} <foreach collection="expectedIds" item="item" open="(" close=")" separator=",">
</foreach> #{item}
</foreach>
</if>
</where> </where>
</select> </select>
</mapper> </mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment