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
84bbb631
Commit
84bbb631
authored
Oct 14, 2025
by
jianan
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
来佣接口31
parent
1d5871eb
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
41 additions
and
4 deletions
+41
-4
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiCommissionController.java
+37
-1
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiFortuneController.java
+1
-0
yd-csf-service/src/main/java/com/yd/csf/service/dto/FortuneAccountAddRequest.java
+2
-2
yd-csf-service/src/main/java/com/yd/csf/service/vo/FortuneAccountVO.java
+1
-1
No files found.
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiCommissionController.java
View file @
84bbb631
...
...
@@ -4,6 +4,8 @@ import com.alibaba.excel.EasyExcel;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yd.auth.core.dto.AuthUserDto
;
import
com.yd.auth.core.utils.SecurityUtil
;
import
com.yd.common.enums.ResultCode
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.result.Result
;
import
com.yd.csf.api.dto.CommissionExcelDTO
;
import
com.yd.csf.service.common.ErrorCode
;
...
...
@@ -28,6 +30,7 @@ import org.springframework.web.multipart.MultipartFile;
import
javax.annotation.Resource
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
...
...
@@ -53,6 +56,7 @@ public class ApiCommissionController {
@PostMapping
(
"/upload/excel"
)
@Operation
(
summary
=
"上传保单来佣Excel文件"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Result
<
Boolean
>
uploadExcel
(
@RequestParam
(
"file"
)
MultipartFile
file
)
throws
IOException
{
List
<
CommissionExcelDTO
>
dataList
=
new
ArrayList
<>();
...
...
@@ -66,17 +70,49 @@ public class ApiCommissionController {
throw
new
RuntimeException
(
"Excel读取失败"
,
e
);
}
// 数据校验
validateCommissionUpload
(
dataList
);
// 获取当前登录用户的ID
AuthUserDto
currentLoginUser
=
SecurityUtil
.
getCurrentLoginUser
();
String
loginUserId
=
currentLoginUser
.
getId
().
toString
();
// 数据
验证和
处理
// 数据处理
processData
(
dataList
,
loginUserId
);
return
Result
.
success
(
true
);
}
/**
* 校验导入的来佣数据是否符合要求,返回行号和错误信息
*/
private
void
validateCommissionUpload
(
List
<
CommissionExcelDTO
>
dataList
)
{
// 校验数据是否为空
if
(
CollectionUtils
.
isEmpty
(
dataList
))
{
throw
new
BusinessException
(
ResultCode
.
PARAMS_ERROR
.
getCode
(),
"导入数据不能为空"
);
}
StringBuilder
errorMsg
=
new
StringBuilder
();
for
(
CommissionExcelDTO
excelDTO
:
dataList
)
{
// 校验必填字段是否为空
if
(
StringUtils
.
isBlank
(
excelDTO
.
getPolicyNo
())
||
StringUtils
.
isBlank
(
excelDTO
.
getReconciliationCompany
())
||
StringUtils
.
isBlank
(
excelDTO
.
getCommissionName
())
||
excelDTO
.
getAmount
()
==
null
||
StringUtils
.
isBlank
(
excelDTO
.
getCurrency
())
||
excelDTO
.
getCommissionDate
()
==
null
)
{
errorMsg
.
append
(
"第"
).
append
(
dataList
.
indexOf
(
excelDTO
)
+
1
).
append
(
"行存在空字段"
);
}
// 校验来佣金额是否为正数
if
(
excelDTO
.
getAmount
().
compareTo
(
BigDecimal
.
ZERO
)
<=
0
)
{
errorMsg
.
append
(
"第"
).
append
(
dataList
.
indexOf
(
excelDTO
)
+
1
).
append
(
"行来佣金额必须为正数"
);
}
}
if
(
errorMsg
.
length
()
>
0
)
{
throw
new
BusinessException
(
ResultCode
.
PARAMS_ERROR
.
getCode
(),
errorMsg
.
toString
());
}
}
/**
* 1.处理导入的数据 2.比对预计来佣 3.保存到数据库
*/
private
void
processData
(
List
<
CommissionExcelDTO
>
dataList
,
String
loginUserId
)
{
...
...
yd-csf-api/src/main/java/com/yd/csf/api/controller/ApiFortuneController.java
View file @
84bbb631
...
...
@@ -58,6 +58,7 @@ public class ApiFortuneController {
@PostMapping
(
"/upload/excel"
)
@Operation
(
summary
=
"上传保单发佣Excel文件"
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Result
<
Boolean
>
uploadExcel
(
@RequestParam
(
"file"
)
MultipartFile
file
)
throws
IOException
{
try
{
...
...
yd-csf-service/src/main/java/com/yd/csf/service/dto/FortuneAccountAddRequest.java
View file @
84bbb631
...
...
@@ -35,9 +35,9 @@ public class FortuneAccountAddRequest implements Serializable {
private
BigDecimal
amount
;
/**
* 出账状态
0-可出账、1-待
出账、2-已出账
* 出账状态
1-可
出账、2-已出账
*/
@Schema
(
description
=
"出账状态
0-可出账、1-待出账、2-已出账
"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
@Schema
(
description
=
"出账状态
1-可出账、2-已出账 字典值:csf_fortune_account_status
"
,
requiredMode
=
Schema
.
RequiredMode
.
REQUIRED
)
private
String
status
;
/**
...
...
yd-csf-service/src/main/java/com/yd/csf/service/vo/FortuneAccountVO.java
View file @
84bbb631
...
...
@@ -46,7 +46,7 @@ public class FortuneAccountVO {
/**
* 出账状态
*/
@Schema
(
description
=
"出账状态
0=可出账 1=待
出账 2=已出账"
)
@Schema
(
description
=
"出账状态
1=可
出账 2=已出账"
)
private
String
status
;
/**
...
...
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