Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-csf
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xingmin
yd-csf
Commits
f5e36dfb
Commit
f5e36dfb
authored
Jan 12, 2026
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
前端对接问题修复107
parent
df3b953e
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
266 additions
and
4 deletions
+266
-4
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiExpectedFortuneController.java
+12
-0
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiFortuneController.java
+2
-0
yd-csf-api/src/main/java/com/yd/csf/api/dto/PayableReportResponse.java
+18
-0
yd-csf-api/src/main/java/com/yd/csf/api/service/ApiExpectedFortuneService.java
+3
-0
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiExpectedFortuneServiceImpl.java
+27
-2
yd-csf-service/src/main/java/com/yd/csf/service/dao/ExpectedFortuneMapper.java
+10
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/IExpectedFortuneService.java
+9
-0
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/ExpectedFortuneServiceImpl.java
+6
-2
yd-csf-service/src/main/java/com/yd/csf/service/vo/FortuneVO.java
+12
-0
yd-csf-service/src/main/java/com/yd/csf/service/vo/PayableReportVO.java
+114
-0
yd-csf-service/src/main/resources/mappers/ExpectedFortuneMapper.xml
+53
-0
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiExpectedFortuneController.java
View file @
f5e36dfb
...
@@ -6,6 +6,7 @@ import com.yd.common.result.Result;
...
@@ -6,6 +6,7 @@ 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.dto.ApiExpectedFortunePageResponseVO
;
import
com.yd.csf.api.dto.PayableReportResponse
;
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
;
...
@@ -102,6 +103,17 @@ public class ApiExpectedFortuneController implements ApiExpectedFortuneFeignClie
...
@@ -102,6 +103,17 @@ public class ApiExpectedFortuneController implements ApiExpectedFortuneFeignClie
}
}
/**
/**
* 应付款报表
* @param request
* @return
*/
@PostMapping
(
"/payable_report"
)
@Operation
(
summary
=
"应付款报表"
)
public
Result
<
PayableReportResponse
>
payableReport
(
@RequestBody
ApiExpectedFortunePageRequest
request
)
{
return
apiExpectedFortuneService
.
payableReport
(
request
);
}
/**
* 计算统计数据 预计发佣金额 HKD、已出账金额 HKD、待出账金额 HKD、总保单数、总保费 HKD
* 计算统计数据 预计发佣金额 HKD、已出账金额 HKD、待出账金额 HKD、总保单数、总保费 HKD
*/
*/
@PostMapping
(
"/statistics"
)
@PostMapping
(
"/statistics"
)
...
...
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiFortuneController.java
View file @
f5e36dfb
...
@@ -14,6 +14,7 @@ import com.yd.common.utils.RandomStringGenerator;
...
@@ -14,6 +14,7 @@ import com.yd.common.utils.RandomStringGenerator;
import
com.yd.csf.api.dto.FortuneImportDTO
;
import
com.yd.csf.api.dto.FortuneImportDTO
;
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.enums.FortuneStatusEnum
;
import
com.yd.csf.service.model.Fortune
;
import
com.yd.csf.service.model.Fortune
;
import
com.yd.csf.service.model.FortuneAccount
;
import
com.yd.csf.service.model.FortuneAccount
;
import
com.yd.csf.service.model.FortuneAccountEditRecord
;
import
com.yd.csf.service.model.FortuneAccountEditRecord
;
...
@@ -528,6 +529,7 @@ public class ApiFortuneController {
...
@@ -528,6 +529,7 @@ public class ApiFortuneController {
// 查询列表数据
// 查询列表数据
QueryWrapper
<
Fortune
>
queryWrapper
=
new
QueryWrapper
<>();
QueryWrapper
<
Fortune
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"expected_fortune_biz_id"
,
fortuneQueryRequest
.
getExpectedFortuneBizId
());
queryWrapper
.
eq
(
"expected_fortune_biz_id"
,
fortuneQueryRequest
.
getExpectedFortuneBizId
());
queryWrapper
.
eq
(
"status"
,
FortuneStatusEnum
.
SENT
.
getItemValue
());
Page
<
Fortune
>
fortunePage
=
fortuneService
.
page
(
new
Page
<>(
current
,
size
),
Page
<
Fortune
>
fortunePage
=
fortuneService
.
page
(
new
Page
<>(
current
,
size
),
queryWrapper
);
queryWrapper
);
// 组装返回值
// 组装返回值
...
...
yd-csf-api/src/main/java/com/yd/csf/api/dto/PayableReportResponse.java
0 → 100644
View file @
f5e36dfb
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
com.yd.csf.service.vo.PayableReportVO
;
import
lombok.Data
;
@Data
public
class
PayableReportResponse
{
private
ExpectedFortuneStatisticsVO
statisticsVO
;
/**
* 应付款报表分页列表 - 按保单号和期数维度统计
*/
private
IPage
<
PayableReportVO
>
page
;
}
yd-csf-api/src/main/java/com/yd/csf/api/service/ApiExpectedFortuneService.java
View file @
f5e36dfb
...
@@ -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.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.api.dto.ApiExpectedFortunePageResponseVO
;
import
com.yd.csf.api.dto.PayableReportResponse
;
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
;
...
@@ -45,4 +46,6 @@ public interface ApiExpectedFortuneService {
...
@@ -45,4 +46,6 @@ public interface ApiExpectedFortuneService {
Boolean
add
(
List
<
ExpectedFortuneAddRequest
>
request
);
Boolean
add
(
List
<
ExpectedFortuneAddRequest
>
request
);
void
exportExpectedFortune
(
ApiExpectedFortunePageRequest
request
,
HttpServletResponse
response
);
void
exportExpectedFortune
(
ApiExpectedFortunePageRequest
request
,
HttpServletResponse
response
);
Result
<
PayableReportResponse
>
payableReport
(
ApiExpectedFortunePageRequest
request
);
}
}
yd-csf-api/src/main/java/com/yd/csf/api/service/impl/ApiExpectedFortuneServiceImpl.java
View file @
f5e36dfb
...
@@ -31,7 +31,6 @@ import com.yd.csf.service.dto.QueryPolicyBrokerDto;
...
@@ -31,7 +31,6 @@ import com.yd.csf.service.dto.QueryPolicyBrokerDto;
import
com.yd.csf.service.enums.FortuneStatusEnum
;
import
com.yd.csf.service.enums.FortuneStatusEnum
;
import
com.yd.csf.service.model.CommissionRuleBinding
;
import
com.yd.csf.service.model.CommissionRuleBinding
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.model.Policy
;
import
com.yd.csf.service.model.PolicyBroker
;
import
com.yd.csf.service.model.PolicyBroker
;
import
com.yd.csf.service.service.ICommissionRuleBindingService
;
import
com.yd.csf.service.service.ICommissionRuleBindingService
;
import
com.yd.csf.service.service.IExpectedFortuneService
;
import
com.yd.csf.service.service.IExpectedFortuneService
;
...
@@ -39,6 +38,7 @@ import com.yd.csf.service.service.PolicyBrokerService;
...
@@ -39,6 +38,7 @@ import com.yd.csf.service.service.PolicyBrokerService;
import
com.yd.csf.service.service.PolicyService
;
import
com.yd.csf.service.service.PolicyService
;
import
com.yd.csf.service.vo.ExpectedFortuneExportDTO
;
import
com.yd.csf.service.vo.ExpectedFortuneExportDTO
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.PayableReportVO
;
import
com.yd.user.feign.client.clientuser.ApiClientUserFeignClient
;
import
com.yd.user.feign.client.clientuser.ApiClientUserFeignClient
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
...
@@ -61,7 +61,6 @@ import java.math.RoundingMode;
...
@@ -61,7 +61,6 @@ import java.math.RoundingMode;
import
java.time.LocalDate
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.*
;
import
java.util.*
;
import
java.util.function.Function
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
@Slf4j
@Slf4j
...
@@ -538,6 +537,32 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
...
@@ -538,6 +537,32 @@ public class ApiExpectedFortuneServiceImpl implements ApiExpectedFortuneService
}
}
}
}
@Override
public
Result
<
PayableReportResponse
>
payableReport
(
ApiExpectedFortunePageRequest
request
)
{
// 构建查询条件
QueryWrapper
<
ExpectedFortune
>
queryWrapper
=
this
.
getQueryWrapper
(
request
);
// 先查询所有符合条件的记录ID(用于统计)
List
<
ExpectedFortune
>
allFortuneList
=
iExpectedFortuneService
.
list
(
queryWrapper
);
List
<
Long
>
allFortuneIdList
=
allFortuneList
.
stream
().
map
(
ExpectedFortune:
:
getId
).
collect
(
Collectors
.
toList
());
// 查询统计数据(基于所有符合条件的记录)
ExpectedFortuneStatisticsVO
statisticsVO
=
this
.
getStatistics
(
allFortuneIdList
);
// 应付款报表分页查询 - 按保单号和期数维度统计
Page
<
com
.
yd
.
csf
.
service
.
vo
.
PayableReportVO
>
reportPage
=
new
Page
<>(
request
.
getPageNo
(),
request
.
getPageSize
());
IPage
<
com
.
yd
.
csf
.
service
.
vo
.
PayableReportVO
>
payableReportPage
=
null
;
if
(!
CollectionUtils
.
isEmpty
(
allFortuneIdList
))
{
payableReportPage
=
iExpectedFortuneService
.
payableReportPage
(
reportPage
,
allFortuneIdList
);
}
// 组装返回结果
PayableReportResponse
response
=
new
PayableReportResponse
();
response
.
setStatisticsVO
(
statisticsVO
);
response
.
setPage
(
payableReportPage
);
return
Result
.
success
(
response
);
}
/**
/**
* 创建应付款编号 应付款类型-CSF-年份后两位-6位数字(不重复)
* 创建应付款编号 应付款类型-CSF-年份后两位-6位数字(不重复)
*
*
...
...
yd-csf-service/src/main/java/com/yd/csf/service/dao/ExpectedFortuneMapper.java
View file @
f5e36dfb
...
@@ -7,6 +7,7 @@ import com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse;
...
@@ -7,6 +7,7 @@ import com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.PayableReportVO
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.List
;
...
@@ -27,4 +28,13 @@ public interface ExpectedFortuneMapper extends BaseMapper<ExpectedFortune> {
...
@@ -27,4 +28,13 @@ public interface ExpectedFortuneMapper extends BaseMapper<ExpectedFortune> {
List
<
ExpectedFortune
>
listByPolicyBizId
(
@Param
(
"policyBizId"
)
String
policyBizId
);
List
<
ExpectedFortune
>
listByPolicyBizId
(
@Param
(
"policyBizId"
)
String
policyBizId
);
ExpectedFortuneStatisticsVO
getStatistics
(
@Param
(
"expectedFortuneIds"
)
List
<
Long
>
expectedFortuneIds
);
ExpectedFortuneStatisticsVO
getStatistics
(
@Param
(
"expectedFortuneIds"
)
List
<
Long
>
expectedFortuneIds
);
/**
* 应付款报表 - 按保单号和期数维度统计(分页)
* @param page 分页参数
* @param expectedFortuneIds 预计发佣ID列表
* @return 应付款报表VO分页列表
*/
IPage
<
PayableReportVO
>
payableReportPage
(
@Param
(
"page"
)
Page
<
PayableReportVO
>
page
,
@Param
(
"expectedFortuneIds"
)
List
<
Long
>
expectedFortuneIds
);
}
}
yd-csf-service/src/main/java/com/yd/csf/service/service/IExpectedFortuneService.java
View file @
f5e36dfb
...
@@ -7,6 +7,7 @@ import com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse;
...
@@ -7,6 +7,7 @@ import com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.PayableReportVO
;
import
java.util.List
;
import
java.util.List
;
...
@@ -34,4 +35,12 @@ public interface IExpectedFortuneService extends IService<ExpectedFortune> {
...
@@ -34,4 +35,12 @@ public interface IExpectedFortuneService extends IService<ExpectedFortune> {
IPage
<
ApiExpectedFortunePageResponse
>
getVOPage
(
IPage
<
ExpectedFortune
>
iPage
);
IPage
<
ApiExpectedFortunePageResponse
>
getVOPage
(
IPage
<
ExpectedFortune
>
iPage
);
List
<
ApiExpectedFortunePageResponse
>
toVOList
(
List
<
ExpectedFortune
>
fortuneList
);
List
<
ApiExpectedFortunePageResponse
>
toVOList
(
List
<
ExpectedFortune
>
fortuneList
);
/**
* 应付款报表 - 按保单号和期数维度统计(分页)
* @param page 分页参数
* @param expectedFortuneIds 预计发佣ID列表
* @return 应付款报表VO分页列表
*/
IPage
<
PayableReportVO
>
payableReportPage
(
Page
<
PayableReportVO
>
page
,
List
<
Long
>
expectedFortuneIds
);
}
}
yd-csf-service/src/main/java/com/yd/csf/service/service/impl/ExpectedFortuneServiceImpl.java
View file @
f5e36dfb
...
@@ -2,12 +2,10 @@ package com.yd.csf.service.service.impl;
...
@@ -2,12 +2,10 @@ package com.yd.csf.service.service.impl;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.collection.CollUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yd.csf.feign.request.expectedfortune.ApiExpectedFortunePageRequest
;
import
com.yd.csf.feign.request.expectedfortune.ApiExpectedFortunePageRequest
;
import
com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse
;
import
com.yd.csf.feign.response.expectedfortune.ApiExpectedFortunePageResponse
;
import
com.yd.csf.feign.response.expectedfortune.PolicyInfo
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.model.ExpectedFortune
;
import
com.yd.csf.service.dao.ExpectedFortuneMapper
;
import
com.yd.csf.service.dao.ExpectedFortuneMapper
;
import
com.yd.csf.service.model.Policy
;
import
com.yd.csf.service.model.Policy
;
...
@@ -15,6 +13,7 @@ import com.yd.csf.service.service.IExpectedFortuneService;
...
@@ -15,6 +13,7 @@ import com.yd.csf.service.service.IExpectedFortuneService;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yd.csf.service.service.PolicyService
;
import
com.yd.csf.service.service.PolicyService
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.ExpectedFortuneStatisticsVO
;
import
com.yd.csf.service.vo.PayableReportVO
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.stereotype.Service
;
...
@@ -105,4 +104,9 @@ public class ExpectedFortuneServiceImpl extends ServiceImpl<ExpectedFortuneMappe
...
@@ -105,4 +104,9 @@ public class ExpectedFortuneServiceImpl extends ServiceImpl<ExpectedFortuneMappe
}).
collect
(
Collectors
.
toList
());
}).
collect
(
Collectors
.
toList
());
return
expectedFortuneVOList
;
return
expectedFortuneVOList
;
}
}
@Override
public
IPage
<
PayableReportVO
>
payableReportPage
(
Page
<
PayableReportVO
>
page
,
List
<
Long
>
expectedFortuneIds
)
{
return
baseMapper
.
payableReportPage
(
page
,
expectedFortuneIds
);
}
}
}
yd-csf-service/src/main/java/com/yd/csf/service/vo/FortuneVO.java
View file @
f5e36dfb
...
@@ -161,6 +161,18 @@ public class FortuneVO implements Serializable {
...
@@ -161,6 +161,18 @@ public class FortuneVO implements Serializable {
private
String
currency
;
private
String
currency
;
/**
/**
* 已出账金额
*/
@Schema
(
description
=
"已出账金额"
)
private
BigDecimal
fortunePaidAmount
;
/**
* 待出账金额
*/
@Schema
(
description
=
"剩余出账金额"
)
private
BigDecimal
fortuneUnpaidAmount
;
/**
* 本期出账金额
* 本期出账金额
*/
*/
@Schema
(
description
=
"本期出账金额"
)
@Schema
(
description
=
"本期出账金额"
)
...
...
yd-csf-service/src/main/java/com/yd/csf/service/vo/PayableReportVO.java
0 → 100644
View file @
f5e36dfb
package
com
.
yd
.
csf
.
service
.
vo
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
@Data
public
class
PayableReportVO
{
/**
* 保单号
*/
@Schema
(
description
=
"policy no"
)
private
String
policyNo
;
/**
* 转介人
*/
@Schema
(
description
=
"转介人(保单的第一位转介人)"
)
private
String
broker
;
/**
* 出账期数(1=第一年; 2=第二年; 3=第三年; 4=第四年; 5=第五年)
*/
@Schema
(
description
=
"出账期数"
)
private
Integer
fortunePeriod
;
/**
* 总期数
*/
@Schema
(
description
=
"总期数"
)
private
Integer
fortuneTotalPeriod
;
/**
* 出账日
*/
@Schema
(
description
=
"出账日 (保单日+2个月)"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
,
timezone
=
"GMT+8"
)
private
LocalDate
payoutDate
;
/**
* 已出账比例 已出账金额/应出账金额
*/
@Schema
(
description
=
"已出账比例 已出账金额/应出账金额"
)
private
BigDecimal
paidRatio
;
/**
* 待出账比例 待出账金额/应出账金额
*/
@Schema
(
description
=
"待出账比例 待出账金额/应出账金额"
)
private
BigDecimal
unpaidRatio
;
/**
* 已出账金额
*/
@Schema
(
description
=
"已出账金额"
)
private
BigDecimal
paidAmount
;
/**
* 待出账金额
*/
@Schema
(
description
=
"待出账金额"
)
private
BigDecimal
unpaidAmount
;
/**
* 应出账金额(预计发佣金额 = 标准发佣金额 * 转介人介绍费占比)
*/
@Schema
(
description
=
"应出账金额(预计发佣金额 = 标准发佣金额 * 转介人介绍费占比)"
)
private
BigDecimal
amount
;
/**
* 期交保费
*/
@Schema
(
description
=
"期交保费"
)
private
BigDecimal
premium
;
/**
* 出账币种
*/
@Schema
(
description
=
"出账币种"
)
private
String
currency
;
/**
* 应出账金额(港币)
*/
@Schema
(
description
=
"出账金额(港币)"
)
private
BigDecimal
hkdAmount
;
/**
* 保险公司 ID
*/
@Schema
(
description
=
"保险公司 ID"
)
private
String
insuranceCompanyBizId
;
/**
* 保险公司
*/
@Schema
(
description
=
"保险公司"
)
private
String
insuranceCompany
;
/**
* 产品计划 ID
*/
@Schema
(
description
=
"产品计划 ID"
)
private
String
productLaunchBizId
;
/**
* 产品计划
*/
@Schema
(
description
=
"产品计划"
)
private
String
productName
;
}
yd-csf-service/src/main/resources/mappers/ExpectedFortuneMapper.xml
View file @
f5e36dfb
...
@@ -46,4 +46,57 @@
...
@@ -46,4 +46,57 @@
</if>
</if>
</where>
</where>
</select>
</select>
<select
id=
"payableReportPage"
resultType=
"com.yd.csf.service.vo.PayableReportVO"
>
select
ef.policy_no as policyNo,
ef.premium as premium,
ef.insurance_company_biz_id as insuranceCompanyBizId,
p.insurance_company as insuranceCompany,
ef.product_launch_biz_id as productLaunchBizId,
p.product_name as productName,
ef.fortune_period as fortunePeriod,
ef.fortune_total_period as fortuneTotalPeriod,
ifnull(sum(ef.amount), 0) as amount,
ifnull(sum(ef.hkd_amount), 0) as hkdAmount,
ef.currency as currency,
ifnull(sum(ef.paid_amount), 0) as paidAmount,
ifnull(sum(ef.unpaid_amount), 0) as unpaidAmount,
case when ifnull(sum(ef.hkd_amount), 0) > 0
then round(ifnull(sum(ef.paid_amount), 0) / ifnull(sum(ef.hkd_amount), 0) * 100, 2)
else 0
end as paidRatio,
case when ifnull(sum(ef.hkd_amount), 0) > 0
then round(ifnull(sum(ef.unpaid_amount), 0) / ifnull(sum(ef.hkd_amount), 0) * 100, 2)
else 0
end as unpaidRatio,
first_broker.broker_name as broker,
DATE_ADD(DATE_ADD(p.effective_date, INTERVAL 2 MONTH), INTERVAL (ef.fortune_period - 1) YEAR) as payoutDate
from expected_fortune ef
left join policy p on ef.policy_no = p.policy_no
left join (
SELECT pb1.policy_no, pb1.broker_name
FROM policy_broker pb1
WHERE pb1.id = (
SELECT pb2.id
FROM policy_broker pb2
WHERE pb2.policy_no = pb1.policy_no
AND pb2.is_deleted = 0
ORDER BY pb2.id ASC
LIMIT 1
)
AND pb1.is_deleted = 0
) first_broker on ef.policy_no = first_broker.policy_no
<where>
<if
test=
"expectedFortuneIds != null and expectedFortuneIds.size > 0"
>
ef.id in
<foreach
collection=
"expectedFortuneIds"
item=
"item"
open=
"("
close=
")"
separator=
","
>
#{item}
</foreach>
</if>
and ef.is_deleted = 0
</where>
group by ef.policy_no, ef.fortune_period
order by ef.policy_no, ef.fortune_period
</select>
</mapper>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment