Commit c4db7e50 by zhangxingmin

push

parent f62da5ab
......@@ -351,52 +351,88 @@ public class ApiCommissionExpectedController {
* @param commissionExpectedQueryRequest
* @return
*/
// @PostMapping("/receivable_report")
// @Operation(summary = "应收款报表")
// public Result<ReceivableReportResponse> receivableReport(@RequestBody CommissionExpectedQueryRequest commissionExpectedQueryRequest) {
// //保單持有人(中/英、繁简/大小写)、签单人、转介人名称(主)、受保人(中/英、繁简/大小写)、查询保单号列表
// List<String> queryPolicyNoList = new ArrayList<>();
// Boolean queryFlag = false;
// if (StringUtils.isNotBlank(commissionExpectedQueryRequest.getPolicyHolder())
// || StringUtils.isNotBlank(commissionExpectedQueryRequest.getSigner())
// || StringUtils.isNotBlank(commissionExpectedQueryRequest.getBrokerName())
// || StringUtils.isNotBlank(commissionExpectedQueryRequest.getInsured())
// ){
// queryPolicyNoList = policyFollowService.queryPolicyNoList(
// commissionExpectedQueryRequest.getPolicyHolder(),
// commissionExpectedQueryRequest.getSigner(),
// commissionExpectedQueryRequest.getBrokerName(),
// commissionExpectedQueryRequest.getInsured());
// queryFlag = true;
// }
// log.info("应收款报表=>receivableReport=>queryPolicyNoList:{}",JSON.toJSONString(queryPolicyNoList));
// // 构建查询条件
// commissionExpectedQueryRequest.setPolicyNoList(queryPolicyNoList);
// commissionExpectedQueryRequest.setQueryFlag(queryFlag);
// QueryWrapper<CommissionExpected> queryWrapper = commissionExpectedService.getQueryWrapper(commissionExpectedQueryRequest);
//
//// List<Long> allExpectedIdList = new ArrayList<>();
// // 先查询所有符合条件的记录ID(用于统计)
//// List<CommissionExpected> allCommissionExpectedList = commissionExpectedService.list(queryWrapper);
//// List<Long> allExpectedIdList = allCommissionExpectedList.stream().map(CommissionExpected::getId).collect(Collectors.toList());
//
// // 查询统计数据(基于所有符合条件的记录)
//// CommissionExpectedStatisticsVO statisticsVO = commissionExpectedService.getExpectedStatisticsNew(allCommissionExpectedList);
//
// queryWrapper.select("id");
// List<Long> allExpectedIdList = commissionExpectedService.listObjs(queryWrapper, obj -> (Long) obj);
//
// // 应收款报表分页查询 - 按保单号和期数维度统计
// Page<ReceivableReportVO> reportPage = new Page<>(commissionExpectedQueryRequest.getPageNo(), commissionExpectedQueryRequest.getPageSize());
// IPage<ReceivableReportVO> receivableReportPage = new Page<>(commissionExpectedQueryRequest.getPageNo(), commissionExpectedQueryRequest.getPageSize());
// if (!CollectionUtils.isEmpty(allExpectedIdList)) {
// receivableReportPage = commissionExpectedService.receivableReportPage(reportPage, allExpectedIdList);
// }
//// enrichReceivableReportWithCompanyName(receivableReportPage);
// receivableReportPage = convertReceivableReport(receivableReportPage);
// // 组装返回结果
// ReceivableReportResponse response = new ReceivableReportResponse();
//// response.setStatisticsVO(statisticsVO);
// response.setPage(receivableReportPage);
// return Result.success(response);
// }
@PostMapping("/receivable_report")
@Operation(summary = "应收款报表")
public Result<ReceivableReportResponse> receivableReport(@RequestBody CommissionExpectedQueryRequest commissionExpectedQueryRequest) {
//保單持有人(中/英、繁简/大小写)、签单人、转介人名称(主)、受保人(中/英、繁简/大小写)、查询保单号列表
public Result<ReceivableReportResponse> receivableReport(@RequestBody CommissionExpectedQueryRequest request) {
// 1. 根据持有人、签单人等条件查询保单号列表
List<String> queryPolicyNoList = new ArrayList<>();
Boolean queryFlag = false;
if (StringUtils.isNotBlank(commissionExpectedQueryRequest.getPolicyHolder())
|| StringUtils.isNotBlank(commissionExpectedQueryRequest.getSigner())
|| StringUtils.isNotBlank(commissionExpectedQueryRequest.getBrokerName())
|| StringUtils.isNotBlank(commissionExpectedQueryRequest.getInsured())
){
if (StringUtils.isNotBlank(request.getPolicyHolder())
|| StringUtils.isNotBlank(request.getSigner())
|| StringUtils.isNotBlank(request.getBrokerName())
|| StringUtils.isNotBlank(request.getInsured())) {
queryPolicyNoList = policyFollowService.queryPolicyNoList(
commissionExpectedQueryRequest.getPolicyHolder(),
commissionExpectedQueryRequest.getSigner(),
commissionExpectedQueryRequest.getBrokerName(),
commissionExpectedQueryRequest.getInsured());
request.getPolicyHolder(),
request.getSigner(),
request.getBrokerName(),
request.getInsured());
queryFlag = true;
}
log.info("应收款报表=>receivableReport=>queryPolicyNoList:{}",JSON.toJSONString(queryPolicyNoList));
// 构建查询条件
commissionExpectedQueryRequest.setPolicyNoList(queryPolicyNoList);
commissionExpectedQueryRequest.setQueryFlag(queryFlag);
QueryWrapper<CommissionExpected> queryWrapper = commissionExpectedService.getQueryWrapper(commissionExpectedQueryRequest);
// List<Long> allExpectedIdList = new ArrayList<>();
// 先查询所有符合条件的记录ID(用于统计)
// List<CommissionExpected> allCommissionExpectedList = commissionExpectedService.list(queryWrapper);
// List<Long> allExpectedIdList = allCommissionExpectedList.stream().map(CommissionExpected::getId).collect(Collectors.toList());
log.info("应收款报表=>receivableReport=>queryPolicyNoList:{}", JSON.toJSONString(queryPolicyNoList));
// 查询统计数据(基于所有符合条件的记录)
// CommissionExpectedStatisticsVO statisticsVO = commissionExpectedService.getExpectedStatisticsNew(allCommissionExpectedList);
// 2. 将保单号列表设回请求对象
request.setPolicyNoList(queryPolicyNoList);
request.setQueryFlag(queryFlag);
queryWrapper.select("id");
List<Long> allExpectedIdList = commissionExpectedService.listObjs(queryWrapper, obj -> (Long) obj);
// 3. 直接分页查询(无需先查 ID)
Page<ReceivableReportVO> page = new Page<>(request.getPageNo(), request.getPageSize());
IPage<ReceivableReportVO> receivableReportPage = commissionExpectedService.receivableReportPage(page, request);
// 应收款报表分页查询 - 按保单号和期数维度统计
Page<ReceivableReportVO> reportPage = new Page<>(commissionExpectedQueryRequest.getPageNo(), commissionExpectedQueryRequest.getPageSize());
IPage<ReceivableReportVO> receivableReportPage = new Page<>(commissionExpectedQueryRequest.getPageNo(), commissionExpectedQueryRequest.getPageSize());
if (!CollectionUtils.isEmpty(allExpectedIdList)) {
receivableReportPage = commissionExpectedService.receivableReportPage(reportPage, allExpectedIdList);
}
// enrichReceivableReportWithCompanyName(receivableReportPage);
// 4. 后处理:补充产品名称等字段,以及待入账金额归零逻辑
receivableReportPage = convertReceivableReport(receivableReportPage);
// 组装返回结果
// 5. 组装返回(统计信息暂不提供,如需可后续添加单独统计查询)
ReceivableReportResponse response = new ReceivableReportResponse();
// response.setStatisticsVO(statisticsVO);
response.setPage(receivableReportPage);
return Result.success(response);
}
......
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yd.csf.service.dto.CommissionExpectedQueryRequest;
import com.yd.csf.service.model.CommissionExpected;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yd.csf.service.vo.CommissionExpectedStatisticsVO;
......@@ -28,8 +29,11 @@ public interface CommissionExpectedMapper extends BaseMapper<CommissionExpected>
* @param expectedIds 预计来佣ID列表
* @return 应收款报表VO分页列表
*/
IPage<ReceivableReportVO> receivableReportPage(@Param("page") Page<ReceivableReportVO> page,
@Param("expectedIds") List<Long> expectedIds);
// IPage<ReceivableReportVO> receivableReportPage(@Param("page") Page<ReceivableReportVO> page,
// @Param("expectedIds") List<Long> expectedIds);
IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page,
@Param("query") CommissionExpectedQueryRequest query);
}
......
......@@ -82,9 +82,12 @@ public interface CommissionExpectedService extends IService<CommissionExpected>
* @param expectedIds 预计来佣ID列表
* @return 应收款报表VO分页列表
*/
IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page, List<Long> expectedIds);
// IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page, List<Long> expectedIds);
void testExpectedCommission(String policyNo,String effectiveDate,String coolingOffEndDate) throws IOException;
IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page,
CommissionExpectedQueryRequest query);
void testExpectedCommission(String policyNo, String effectiveDate, String coolingOffEndDate) throws IOException;
Boolean changeStatus(CommissionExpectedChangeStatusRequest commissionExpectedChangeStatusRequest);
......
......@@ -1481,10 +1481,16 @@ public class CommissionExpectedServiceImpl extends ServiceImpl<CommissionExpecte
return cal.getTime();
}
// @Override
// public IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page, List<Long> expectedIds) {
// return baseMapper.receivableReportPage(page, expectedIds);
// }
@Override
public IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page, List<Long> expectedIds) {
return baseMapper.receivableReportPage(page, expectedIds);
}
public IPage<ReceivableReportVO> receivableReportPage(Page<ReceivableReportVO> page,
CommissionExpectedQueryRequest query){
return baseMapper.receivableReportPage(page, query);
};
@Override
public void testExpectedCommission(String policyNo,String effectiveDate,String coolingOffEndDate) throws IOException {
......
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