Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Y
yifu-mvp
Project
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fangxinjiang
yifu-mvp
Commits
bd42c09e
Commit
bd42c09e
authored
Sep 01, 2025
by
fangxinjiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
保单维护-fxj
parent
84b8ef78
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
362 additions
and
7 deletions
+362
-7
CacheConstants.java
...oud/plus/v1/yifu/common/core/constant/CacheConstants.java
+2
-0
Common.java
.../com/yifu/cloud/plus/v1/yifu/common/core/util/Common.java
+15
-0
InsurancesConstants.java
...lus/v1/yifu/insurances/constants/InsurancesConstants.java
+5
-0
InsurancePolicyImportVo.java
...d/plus/v1/yifu/insurances/vo/InsurancePolicyImportVo.java
+63
-0
TInsurancePolicyController.java
...ifu/insurances/controller/TInsurancePolicyController.java
+41
-0
TInsurancePolicyService.java
...insurances/service/insurance/TInsurancePolicyService.java
+5
-0
TInsurancePolicyServiceImpl.java
...s/service/insurance/impl/TInsurancePolicyServiceImpl.java
+231
-7
No files found.
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/constant/CacheConstants.java
View file @
bd42c09e
...
@@ -150,6 +150,8 @@ public interface CacheConstants {
...
@@ -150,6 +150,8 @@ public interface CacheConstants {
String
PAYMENT_SOCIAL_IMPORT
=
"payment_social_import"
;
String
PAYMENT_SOCIAL_IMPORT
=
"payment_social_import"
;
String
INSURANCE_POLICY_IMPORT
=
"insurance_policy_import"
;
String
PAYMENT_FUND_IMPORT
=
"payment_fund_import"
;
String
PAYMENT_FUND_IMPORT
=
"payment_fund_import"
;
String
PAYMENT_SOCIAL_PUSH
=
"payment_social_push"
;
String
PAYMENT_SOCIAL_PUSH
=
"payment_social_push"
;
...
...
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/util/Common.java
View file @
bd42c09e
...
@@ -751,4 +751,19 @@ public class Common {
...
@@ -751,4 +751,19 @@ public class Common {
}
}
}
}
}
}
/**
* @Author fxj
* @Description 判断所有返回数据,是否全部为正确的
* @Date 16:32 2025/8/29
**/
public
static
R
<
List
<
ErrorMessage
>>
judgeAllMessage
(
List
<
ErrorMessage
>
errorMessageList
)
{
if
(!
errorMessageList
.
isEmpty
()
&&
errorMessageList
.
stream
().
noneMatch
(
e
->
e
.
getColor
().
equals
(
CommonConstants
.
RED
)))
{
return
R
.
ok
();
}
if
(!
errorMessageList
.
isEmpty
()
&&
errorMessageList
.
stream
().
anyMatch
(
e
->
CommonConstants
.
ONE_STRING
.
equals
(
e
.
getName
())))
{
return
R
.
ok
(
errorMessageList
,
"error"
);
}
return
R
.
ok
(
errorMessageList
);
}
}
}
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/constants/InsurancesConstants.java
View file @
bd42c09e
...
@@ -1336,4 +1336,9 @@ public class InsurancesConstants {
...
@@ -1336,4 +1336,9 @@ public class InsurancesConstants {
* 商险到期提醒默认提醒人配置KEY
* 商险到期提醒默认提醒人配置KEY
*/
*/
public
static
final
String
INSURANCE_ALERT_DEFAULT_PERSON
=
"INSURANCE_ALERT_DEFAULT_PERSON"
;
public
static
final
String
INSURANCE_ALERT_DEFAULT_PERSON
=
"INSURANCE_ALERT_DEFAULT_PERSON"
;
/**
* 保单号维护模版导入
*
*/
public
static
final
String
IMPORT_POLICY_REMARK
=
"保单号维护模版导入"
;
}
}
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/vo/InsurancePolicyImportVo.java
0 → 100644
View file @
bd42c09e
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
insurances
.
vo
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.HeadFontStyle
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.DateUtil
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.RowIndex
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
org.hibernate.validator.constraints.Length
;
import
java.io.Serializable
;
/**
* @Author fxj
* @Description 保单维护导入对象
* @Date 16:34 2025/8/29
**/
@Data
@Schema
(
description
=
"保单维护导入对象"
)
public
class
InsurancePolicyImportVo
extends
RowIndex
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1442112261102562729L
;
/**
* 保单号
*/
@Length
(
max
=
50
,
message
=
"保单号 不能超过50 个字符"
)
@ExcelAttribute
(
name
=
"保单号"
,
maxLength
=
50
,
isNotEmpty
=
true
,
errorInfo
=
"保单号不能为空"
)
@ExcelProperty
(
"保单号"
)
@Schema
(
description
=
"保单号"
)
private
String
policyNo
;
/**
* 保单开始日期
*/
@ExcelAttribute
(
name
=
"保单开始日期"
,
isDate
=
true
,
isNotEmpty
=
true
,
dateFormat
=
DateUtil
.
ISO_EXPANDED_DATE_FORMAT
,
errorInfo
=
"保单开始日期不能为空"
)
@ExcelProperty
(
"保单开始日期"
)
@Schema
(
description
=
"保单开始日期"
)
private
String
policyStart
;
/**
* 保单截止日期
*/
@ExcelAttribute
(
name
=
"保单截止日期"
,
isDate
=
true
,
isNotEmpty
=
true
,
dateFormat
=
DateUtil
.
ISO_EXPANDED_DATE_FORMAT
,
errorInfo
=
"保单截止日期不能为空"
)
@ExcelProperty
(
"保单截止日期"
)
@Schema
(
description
=
"保单截止日期"
)
private
String
policyEnd
;
/**
* 保险公司
*/
@ExcelAttribute
(
name
=
"保险公司"
,
maxLength
=
60
,
isNotEmpty
=
true
,
errorInfo
=
"保险公司不能为空"
)
@ExcelProperty
(
"保险公司"
)
@Schema
(
description
=
"保险公司"
)
private
String
insuranceCompanyName
;
/**
* 险种
*/
@ExcelAttribute
(
name
=
"险种"
,
maxLength
=
50
,
isNotEmpty
=
true
,
errorInfo
=
"险种不能为空"
)
@ExcelProperty
(
"险种"
)
@Schema
(
description
=
"险种"
)
private
String
insuranceTypeName
;
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/controller/TInsurancePolicyController.java
View file @
bd42c09e
...
@@ -2,7 +2,17 @@ package com.yifu.cloud.plus.v1.yifu.insurances.controller;
...
@@ -2,7 +2,17 @@ package com.yifu.cloud.plus.v1.yifu.insurances.controller;
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.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ResultConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.redis.RedisDistributedLock
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.ErrorDetailVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog
;
import
com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils
;
import
com.yifu.cloud.plus.v1.yifu.insurances.entity.TInsurancePolicy
;
import
com.yifu.cloud.plus.v1.yifu.insurances.entity.TInsurancePolicy
;
import
com.yifu.cloud.plus.v1.yifu.insurances.service.insurance.TInsurancePolicyService
;
import
com.yifu.cloud.plus.v1.yifu.insurances.service.insurance.TInsurancePolicyService
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsurancePolicyListEditParam
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsurancePolicyListEditParam
;
...
@@ -12,9 +22,11 @@ import io.swagger.v3.oas.annotations.Operation;
...
@@ -12,9 +22,11 @@ import io.swagger.v3.oas.annotations.Operation;
import
io.swagger.v3.oas.annotations.security.SecurityRequirement
;
import
io.swagger.v3.oas.annotations.security.SecurityRequirement
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.SneakyThrows
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.annotation.Resource
;
import
javax.annotation.Resource
;
import
javax.validation.Valid
;
import
javax.validation.Valid
;
...
@@ -104,4 +116,33 @@ public class TInsurancePolicyController {
...
@@ -104,4 +116,33 @@ public class TInsurancePolicyController {
return
tInsurancePolicyService
.
deleteInsurancePolicy
(
id
);
return
tInsurancePolicyService
.
deleteInsurancePolicy
(
id
);
}
}
@SneakyThrows
@Operation
(
description
=
"批量新增保单号维护"
)
@SysLog
(
"批量新增保单号维护"
)
@PostMapping
(
"/importListAdd"
)
public
R
<
List
<
ErrorMessage
>>
importListAdd
(
@RequestBody
MultipartFile
file
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
Common
.
isEmpty
(
user
)){
return
R
.
failed
(
CommonConstants
.
USER_FAIL
);
}
// 获取redis分布式事务锁
String
key
=
CacheConstants
.
INSURANCE_POLICY_IMPORT
+
CommonConstants
.
DOWN_LINE_STRING
+
user
.
getId
();
String
requestId
;
try
{
requestId
=
RedisDistributedLock
.
getLock
(
key
,
"10"
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
ResultConstants
.
NO_GETLOCK_DATA
+
CommonConstants
.
DOWN_LINE_STRING
+
e
.
getMessage
());
}
try
{
if
(
Common
.
isNotNull
(
requestId
))
{
return
tInsurancePolicyService
.
importInsurancePolicy
(
file
.
getInputStream
());
}
else
{
return
R
.
failed
(
ResultConstants
.
NO_GETLOCK_DATA
);
}
}
finally
{
//主动释放锁
RedisDistributedLock
.
unlock
(
key
,
requestId
);
}
}
}
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/TInsurancePolicyService.java
View file @
bd42c09e
...
@@ -2,13 +2,16 @@ package com.yifu.cloud.plus.v1.yifu.insurances.service.insurance;
...
@@ -2,13 +2,16 @@ package com.yifu.cloud.plus.v1.yifu.insurances.service.insurance;
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.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.ErrorDetailVO
;
import
com.yifu.cloud.plus.v1.yifu.insurances.entity.TInsurancePolicy
;
import
com.yifu.cloud.plus.v1.yifu.insurances.entity.TInsurancePolicy
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsurancePolicyListEditParam
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsurancePolicyListEditParam
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsurancePolicyListParam
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsurancePolicyListParam
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.TInsurancePolicyDetailVO
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.TInsurancePolicyDetailVO
;
import
java.io.InputStream
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -72,4 +75,6 @@ public interface TInsurancePolicyService extends IService<TInsurancePolicy> {
...
@@ -72,4 +75,6 @@ public interface TInsurancePolicyService extends IService<TInsurancePolicy> {
* @return {@link R}
* @return {@link R}
*/
*/
R
deleteInsurancePolicy
(
String
id
);
R
deleteInsurancePolicy
(
String
id
);
R
<
List
<
ErrorMessage
>>
importInsurancePolicy
(
InputStream
inputStream
);
}
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/impl/TInsurancePolicyServiceImpl.java
View file @
bd42c09e
This diff is collapsed.
Click to expand it.
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