| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- package com.ydtech.modules.fnc.service.impl;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import com.ydtech.core.page.HttpResult;
- import com.ydtech.modules.fnc.dao.InsuranceHandlingSettlementMonthMapper;
- import com.ydtech.modules.fnc.dto.InsuranceHandlingSettlementMonthDto;
- import com.ydtech.modules.fnc.entity.InsuranceHandlingSettlementMonthEntity;
- import com.ydtech.modules.fnc.service.InsuranceHandlingSettlementMonthService;
- import com.ydtech.modules.fnc.vo.InsuranceHandlingSettlementMonthVo;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.beans.BeanUtils;
- import org.springframework.stereotype.Service;
- import java.util.Comparator;
- import java.util.List;
- import java.util.Map;
- import java.util.stream.Collectors;
- /**
- * <p>
- * 保险手续费结算关联表
- * </p>
- *
- * @author whp
- * @since 2024-08-16
- */
- @Slf4j
- @Service
- public class InsuranceHandlingSettlementMonthServiceImpl extends ServiceImpl<InsuranceHandlingSettlementMonthMapper, InsuranceHandlingSettlementMonthEntity> implements InsuranceHandlingSettlementMonthService {
- @Override
- public List<InsuranceHandlingSettlementMonthDto> queryList(InsuranceHandlingSettlementMonthVo insuranceHandlingSettlementMonthVo) {
- List<InsuranceHandlingSettlementMonthDto> resultList = baseMapper.queryList(insuranceHandlingSettlementMonthVo);
- List<InsuranceHandlingSettlementMonthDto> latestRecords = resultList.stream()
- // 根据taskId分组,并收集每个taskId对应的所有记录
- .collect(Collectors.groupingBy(
- InsuranceHandlingSettlementMonthDto::getTaskId,
- Collectors.toList()
- ))
- // 遍历每个分组,找出每组中createTime最新的记录
- .entrySet().stream()
- .map(entry -> entry.getValue().stream()
- .max(Comparator.comparing(InsuranceHandlingSettlementMonthDto::getCreateTime))
- .orElse(null) // 如果没有记录,则返回null(这里根据需求决定是否处理null)
- )
- // 收集结果到新的List中
- .collect(Collectors.toList());
- return resultList;
- }
- /**
- * 结算新增
- *
- * @param insuranceHandlingSettlementMonthVo
- * @return
- */
- @Override
- public HttpResult<InsuranceHandlingSettlementMonthDto> insertByEntity(InsuranceHandlingSettlementMonthVo insuranceHandlingSettlementMonthVo) {
- InsuranceHandlingSettlementMonthEntity insuranceHandlingSettlementMonthEntity = new InsuranceHandlingSettlementMonthEntity();
- BeanUtils.copyProperties(insuranceHandlingSettlementMonthVo, insuranceHandlingSettlementMonthEntity);
- baseMapper.insert(insuranceHandlingSettlementMonthEntity);
- return HttpResult.ok("结算成功");
- }
- }
|