Commit d2a89d60 by jianan

前端对接问题修复70

parent 82a13441
......@@ -4,7 +4,6 @@ import com.alibaba.excel.EasyExcel;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.yd.auth.core.dto.AuthUserDto;
import com.yd.auth.core.utils.SecurityUtil;
import com.yd.common.enums.CommonEnum;
......@@ -15,14 +14,12 @@ import com.yd.common.utils.RandomStringGenerator;
import com.yd.csf.api.dto.FortuneImportDTO;
import com.yd.csf.service.common.ErrorCode;
import com.yd.csf.service.dto.*;
import com.yd.csf.service.model.Commission;
import com.yd.csf.service.model.Fortune;
import com.yd.csf.service.model.FortuneAccount;
import com.yd.csf.service.model.FortuneAccountEditRecord;
import com.yd.csf.service.service.FortuneAccountEditRecordService;
import com.yd.csf.service.service.FortuneAccountService;
import com.yd.csf.service.service.FortuneService;
import com.yd.csf.service.vo.CommissionVO;
import com.yd.csf.service.vo.FortuneVO;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
......@@ -31,7 +28,6 @@ import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.http.MediaType;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
......
......@@ -319,9 +319,6 @@ public class FortuneServiceImpl extends ServiceImpl<FortuneMapper, Fortune>
// 校验发佣记录状态
StringBuilder validateMsg = new StringBuilder();
for (Fortune fortune : fortuneList) {
if (!StringUtils.equals(fortune.getStatus(), FortuneStatusEnum.CHECKED.getItemValue())) {
validateMsg.append(fortune.getPolicyNo()).append("-").append(fortune.getBroker()).append("未检核,不能生成出账记录; ");
}
if (StringUtils.equals(fortune.getStatus(), FortuneStatusEnum.SENT.getItemValue())) {
validateMsg.append(fortune.getPolicyNo()).append("-").append(fortune.getBroker()).append("已完成出账,不能生成出账记录; ");
}
......
......@@ -54,21 +54,52 @@
</sql>
<select id="getFortuneStatistics" resultType="com.yd.csf.service.dto.FortuneStatisticsVO">
select
ifnull(sum(f.amount),0) as pendingOutAmount,
ifnull(sum(c.amount),0) as totalInAmount,
count(distinct f.policy_no) as totalPolicyCount,
ifnull(sum(c.premium),0) as totalPremium,
ifnull(sum(f.current_payment_amount),0) as availableOutAmount
from fortune f
left join commission c on f.commission_biz_id = c.commission_biz_id
where
<!-- 阶段1:fortune 首行金额指标(无重复) -->
SELECT
f1.amount,
f1.sentAmount,
f1.pendingOutAmount,
f1.availableOutAmount,
IFNULL(c2.totalInAmount, 0) AS totalInAmount,
IFNULL(c2.totalPremium, 0) AS totalPremium,
f1.totalPolicyCount
FROM (
SELECT
commission_biz_id,
SUM( CASE WHEN is_part = '0' THEN amount ELSE 0 END ) AS amount,
SUM(CASE WHEN status = '2' THEN current_payment_amount ELSE 0 END) AS sentAmount,
SUM(CASE WHEN status = '0' THEN current_payment_amount ELSE 0 END) AS pendingOutAmount,
SUM(CASE WHEN status = '6' THEN current_payment_amount ELSE 0 END) AS availableOutAmount,
COUNT(DISTINCT policy_no) AS totalPolicyCount
FROM fortune
WHERE 1 = 1
<if test="fortuneIdList != null and fortuneIdList.size() > 0">
f.id in
AND id IN
<foreach collection="fortuneIdList" item="fortuneId" open="(" close=")" separator=",">
#{fortuneId}
</foreach>
</if>
GROUP BY commission_biz_id
) f1
LEFT JOIN (
SELECT
commission_biz_id,
MAX(amount) AS totalInAmount,
MAX(premium) AS totalPremium
FROM commission
WHERE commission_biz_id IN (
SELECT DISTINCT commission_biz_id
FROM fortune
WHERE is_part = 0
<if test="fortuneIdList != null and fortuneIdList.size() > 0">
AND id IN
<foreach collection="fortuneIdList" item="fortuneId" open="(" close=")" separator=",">
#{fortuneId}
</foreach>
</if>
)
GROUP BY commission_biz_id
) c2 ON f1.commission_biz_id = c2.commission_biz_id
</select>
</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