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
efc91385
Commit
efc91385
authored
Aug 05, 2025
by
fangxinjiang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/MVP1.7.14' into MVP1.7.14
parents
decc6d2d
14a8d98d
Hide whitespace changes
Inline
Side-by-side
Showing
26 changed files
with
933 additions
and
138 deletions
+933
-138
TGzEmpInfo.java
...m/yifu/cloud/plus/v1/yifu/archives/entity/TGzEmpInfo.java
+3
-0
TGzEmpInfoExportMain.java
.../cloud/plus/v1/yifu/archives/vo/TGzEmpInfoExportMain.java
+4
-0
TGzEmpInfoServiceImpl.java
.../v1/yifu/archives/service/impl/TGzEmpInfoServiceImpl.java
+64
-32
TGzEmpInfoMapper.xml
...chives-biz/src/main/resources/mapper/TGzEmpInfoMapper.xml
+9
-3
UpmsDaprUtils.java
...fu/cloud/plus/v1/yifu/common/dapr/util/UpmsDaprUtils.java
+16
-1
InsurancesConstants.java
...lus/v1/yifu/insurances/constants/InsurancesConstants.java
+4
-0
EkpSettleStatusVo.java
...u/cloud/plus/v1/yifu/insurances/vo/EkpSettleStatusVo.java
+25
-0
EkpSettleMapper.java
...d/plus/v1/yifu/insurances/mapper/ekp/EkpSettleMapper.java
+1
-1
EkpSettleService.java
...plus/v1/yifu/insurances/service/ekp/EkpSettleService.java
+1
-1
EkpSettleServiceImpl.java
...ifu/insurances/service/ekp/impl/EkpSettleServiceImpl.java
+1
-1
TInsuranceDetailServiceImpl.java
...s/service/insurance/impl/TInsuranceDetailServiceImpl.java
+18
-10
EkpSettleMapper.xml
...ces-biz/src/main/resources/mapper/ekp/EkpSettleMapper.xml
+2
-2
TSalaryEmployeeMapper.java
...oud/plus/v1/yifu/salary/mapper/TSalaryEmployeeMapper.java
+1
-0
TSalaryEmployeeServiceImpl.java
.../yifu/salary/service/impl/TSalaryEmployeeServiceImpl.java
+314
-84
TSalaryEmployeeMapper.xml
...y-biz/src/main/resources/mapper/TSalaryEmployeeMapper.xml
+13
-0
TSocialAlert.java
...a/com/yifu/cloud/plus/v1/yifu/social/vo/TSocialAlert.java
+26
-0
WxConfig.java
...a/com/yifu/cloud/plus/v1/yifu/social/config/WxConfig.java
+144
-0
TSocialWarnController.java
...plus/v1/yifu/social/controller/TSocialWarnController.java
+35
-0
TSocialWarnMapper.java
...u/cloud/plus/v1/yifu/social/mapper/TSocialWarnMapper.java
+27
-0
TSocialWarnService.java
...cloud/plus/v1/yifu/social/service/TSocialWarnService.java
+16
-0
TSocialWarnServiceImpl.java
...s/v1/yifu/social/service/impl/TSocialWarnServiceImpl.java
+139
-0
application-dev.yml
...al/yifu-social-biz/src/main/resources/application-dev.yml
+9
-1
application-prd.yml
...al/yifu-social-biz/src/main/resources/application-prd.yml
+9
-1
application-test.yml
...l/yifu-social-biz/src/main/resources/application-test.yml
+9
-1
TSocialWarnMapper.xml
...ocial-biz/src/main/resources/mapper/TSocialWarnMapper.xml
+19
-0
UserController.java
...u/cloud/plus/v1/yifu/admin/controller/UserController.java
+24
-0
No files found.
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/entity/TGzEmpInfo.java
View file @
efc91385
...
@@ -574,4 +574,7 @@ public class TGzEmpInfo extends BaseEntity {
...
@@ -574,4 +574,7 @@ public class TGzEmpInfo extends BaseEntity {
@Schema
(
description
=
"持卡人姓名"
)
@Schema
(
description
=
"持卡人姓名"
)
private
String
accountName
;
private
String
accountName
;
@Schema
(
description
=
"档案状态(0:已提交,1:暂存)"
)
private
String
empStatus
;
}
}
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/vo/TGzEmpInfoExportMain.java
View file @
efc91385
...
@@ -48,6 +48,10 @@ public class TGzEmpInfoExportMain implements Serializable {
...
@@ -48,6 +48,10 @@ public class TGzEmpInfoExportMain implements Serializable {
@ExcelProperty
(
"员工档案提交时间"
)
@ExcelProperty
(
"员工档案提交时间"
)
private
String
createTime
;
private
String
createTime
;
@ExcelAttribute
(
name
=
"档案状态"
,
isDataId
=
true
,
readConverterExp
=
"0=已提交,1=暂存"
)
@ExcelProperty
(
"档案状态"
)
private
String
empStatus
;
@ExcelAttribute
(
name
=
"档案推送瓜子状态"
,
isDataId
=
true
,
readConverterExp
=
"0=待推送,1=已推送"
)
@ExcelAttribute
(
name
=
"档案推送瓜子状态"
,
isDataId
=
true
,
readConverterExp
=
"0=待推送,1=已推送"
)
@ExcelProperty
(
"档案推送瓜子状态"
)
@ExcelProperty
(
"档案推送瓜子状态"
)
private
String
empPushStatus
;
private
String
empPushStatus
;
...
...
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/impl/TGzEmpInfoServiceImpl.java
View file @
efc91385
...
@@ -491,6 +491,10 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
...
@@ -491,6 +491,10 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
YifuUser
user
=
getNewYifuUser
();
YifuUser
user
=
getNewYifuUser
();
TGzEmpInfo
tGzEmpInfo
=
tGzEmpInfoVo
;
TGzEmpInfo
tGzEmpInfo
=
tGzEmpInfoVo
;
Integer
offerId
=
tGzEmpInfoVo
.
getOfferId
();
Integer
offerId
=
tGzEmpInfoVo
.
getOfferId
();
// 1.7.14: 档案状态必传
if
(
Common
.
isEmpty
(
tGzEmpInfoVo
.
getEmpStatus
()))
{
return
R
.
failed
(
"档案状态必传!"
);
}
if
(
Common
.
isEmpty
(
offerId
))
{
if
(
Common
.
isEmpty
(
offerId
))
{
return
R
.
failed
(
"请传参流程ID!"
);
return
R
.
failed
(
"请传参流程ID!"
);
}
else
{
}
else
{
...
@@ -504,30 +508,33 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
...
@@ -504,30 +508,33 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
// 测试 郭彤:这个提示改下吧,没必要吧ID还有状态枚举值列出来 2025-6-30 18:09:05
// 测试 郭彤:这个提示改下吧,没必要吧ID还有状态枚举值列出来 2025-6-30 18:09:05
// return R.failed("瓜子Offer状态不对("+gzOfferInfo.getOfferStatus()+"),不可编辑,Offer的ID="+ offerId)
// return R.failed("瓜子Offer状态不对("+gzOfferInfo.getOfferStatus()+"),不可编辑,Offer的ID="+ offerId)
}
}
gzOfferInfo
.
setOfferStatus
(
"12"
);
// 1.7.14: 档案状态是提交,才更新offer状态
gzOfferInfoMapper
.
updateById
(
gzOfferInfo
);
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
tGzEmpInfoVo
.
getEmpStatus
())){
gzOfferInfo
.
setOfferStatus
(
"12"
);
// 记录状态变更的offer操作日志 记录来源: 6:(系统触发)C端采集提交
gzOfferInfoMapper
.
updateById
(
gzOfferInfo
);
this
.
saveOfferStatusRecord
(
gzOfferInfo
.
getId
(),
CommonConstants
.
SIX_STRING
,
CommonConstants
.
NINE_STRING
,
gzOfferInfo
.
getOfferStatus
(),
"0"
,
"系统触发"
);
// 记录状态变更的offer操作日志 记录来源: 6:(系统触发)C端采集提交
this
.
saveOfferStatusRecord
(
gzOfferInfo
.
getId
(),
CommonConstants
.
SIX_STRING
,
// 1.7.13: 同一个流程ID推送过12:候选人信息审核,之前没推送过这个状态的,才触发推送
CommonConstants
.
NINE_STRING
,
gzOfferInfo
.
getOfferStatus
(),
"0"
,
"系统触发"
);
TGzPushEntry
findFailInfo
=
tGzPushEntryService
.
getOne
(
Wrappers
.<
TGzPushEntry
>
query
().
lambda
()
.
eq
(
TGzPushEntry:
:
getBizId
,
gzOfferInfo
.
getBizId
())
// 1.7.13: 同一个流程ID推送过12:候选人信息审核,之前没推送过这个状态的,才触发推送
.
eq
(
TGzPushEntry:
:
getTaskType
,
"12"
)
TGzPushEntry
findFailInfo
=
tGzPushEntryService
.
getOne
(
Wrappers
.<
TGzPushEntry
>
query
().
lambda
()
.
eq
(
TGzPushEntry:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
TGzPushEntry:
:
getBizId
,
gzOfferInfo
.
getBizId
())
.
last
(
CommonConstants
.
LAST_ONE_SQL
));
.
eq
(
TGzPushEntry:
:
getTaskType
,
"12"
)
if
(
Common
.
isEmpty
(
findFailInfo
))
{
.
eq
(
TGzPushEntry:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
)
// 推送状态给瓜子
.
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(!
CommonConstants
.
ZERO_STRING
.
equals
(
gzOfferInfo
.
getBizId
())){
if
(
Common
.
isEmpty
(
findFailInfo
))
{
TGzPushEntry
tGzPushEntry
=
new
TGzPushEntry
();
// 推送状态给瓜子
tGzPushEntry
.
setCreateBy
(
user
.
getId
());
if
(!
CommonConstants
.
ZERO_STRING
.
equals
(
gzOfferInfo
.
getBizId
())){
tGzPushEntry
.
setCreateName
(
user
.
getNickname
());
TGzPushEntry
tGzPushEntry
=
new
TGzPushEntry
();
tGzPushEntry
.
setBizId
(
gzOfferInfo
.
getBizId
());
tGzPushEntry
.
setCreateBy
(
user
.
getId
());
tGzPushEntry
.
setTaskType
(
"12"
);
tGzPushEntry
.
setCreateName
(
user
.
getNickname
());
tGzPushEntry
.
setName
(
gzOfferInfo
.
getName
());
tGzPushEntry
.
setBizId
(
gzOfferInfo
.
getBizId
());
tGzPushEntry
.
setNationalId
(
gzOfferInfo
.
getNationalId
());
tGzPushEntry
.
setTaskType
(
"12"
);
tGzPushEntryService
.
addPushEntry
(
tGzPushEntry
);
tGzPushEntry
.
setName
(
gzOfferInfo
.
getName
());
tGzPushEntry
.
setNationalId
(
gzOfferInfo
.
getNationalId
());
tGzPushEntryService
.
addPushEntry
(
tGzPushEntry
);
}
}
}
}
}
}
}
...
@@ -536,12 +543,19 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
...
@@ -536,12 +543,19 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
if
(
Common
.
isEmpty
(
gzEmpId
))
{
if
(
Common
.
isEmpty
(
gzEmpId
))
{
tGzEmpInfo
.
setCreateBy
(
user
.
getId
());
tGzEmpInfo
.
setCreateBy
(
user
.
getId
());
tGzEmpInfo
.
setCreateName
(
user
.
getNickname
());
tGzEmpInfo
.
setCreateName
(
user
.
getNickname
());
tGzEmpInfo
.
setCreateTime
(
LocalDateTime
.
now
());
// 1.7.14: 档案状态是提交,才存 创建时间(提交时间)
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
tGzEmpInfoVo
.
getEmpStatus
())){
tGzEmpInfo
.
setCreateTime
(
LocalDateTime
.
now
());
}
this
.
save
(
tGzEmpInfo
);
this
.
save
(
tGzEmpInfo
);
gzEmpId
=
tGzEmpInfo
.
getId
();
gzEmpId
=
tGzEmpInfo
.
getId
();
}
else
{
}
else
{
tGzEmpInfo
.
setUpdateBy
(
user
.
getId
());
tGzEmpInfo
.
setUpdateBy
(
user
.
getId
());
tGzEmpInfo
.
setUpdateTime
(
LocalDateTime
.
now
());
tGzEmpInfo
.
setUpdateTime
(
LocalDateTime
.
now
());
// 1.7.14: 档案状态是暂存,清除 创建时间(提交时间)
if
(
CommonConstants
.
ONE_STRING
.
equals
(
tGzEmpInfoVo
.
getEmpStatus
())){
tGzEmpInfo
.
setCreateTime
(
null
);
}
this
.
updateById
(
tGzEmpInfo
);
this
.
updateById
(
tGzEmpInfo
);
}
}
// 获取瓜子档案附属信息:先删除后增加:
// 获取瓜子档案附属信息:先删除后增加:
...
@@ -843,6 +857,22 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
...
@@ -843,6 +857,22 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
if
(
Common
.
isEmpty
(
attaEmp
.
getAttaName
()))
{
if
(
Common
.
isEmpty
(
attaEmp
.
getAttaName
()))
{
attaEmp
.
setAttaName
(
CommonConstants
.
CENTER_SPLIT_LINE_STRING
);
attaEmp
.
setAttaName
(
CommonConstants
.
CENTER_SPLIT_LINE_STRING
);
}
}
// 1.7.14: 附件类型映射
// 41(瓜子申明签名)42(瓜子确认签名)NID_A(证件正面) NID_B(证件反面)
// 附件类型转化:声明签字:21;确认签字:22; 9身份证;24 身份证国徽
if
(
"41"
.
equals
(
atta
.
getRelationType
())){
atta
.
setRelationType
(
"21"
);
}
if
(
"42"
.
equals
(
atta
.
getRelationType
())){
atta
.
setRelationType
(
"22"
);
}
if
(
"NID_A"
.
equals
(
atta
.
getRelationType
())){
atta
.
setRelationType
(
"9"
);
}
if
(
"NID_B"
.
equals
(
atta
.
getRelationType
())){
atta
.
setRelationType
(
"24"
);
}
attaEmp
.
setDomainId
(
empId
);
attaEmp
.
setDomainId
(
empId
);
attaEmp
.
setCreateBy
(
user
.
getId
());
attaEmp
.
setCreateBy
(
user
.
getId
());
attaEmp
.
setCreateName
(
user
.
getNickname
());
attaEmp
.
setCreateName
(
user
.
getNickname
());
...
@@ -1020,9 +1050,11 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
...
@@ -1020,9 +1050,11 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
// 按gzEmpInfo实体类顺序转化:
// 按gzEmpInfo实体类顺序转化:
emp
.
setEmpName
(
gzEmpInfo
.
getName
());
emp
.
setEmpName
(
gzEmpInfo
.
getName
());
emp
.
setEmpIdcard
(
gzEmpInfo
.
getNationalId
());
emp
.
setEmpIdcard
(
gzEmpInfo
.
getNationalId
());
emp
.
setIdProvince
(
gzEmpInfo
.
getNativePlaceAreaId
());
// 1.7.14: 户籍所在地取值调整
emp
.
setIdCity
(
null
);
emp
.
setIdProvince
(
gzEmpInfo
.
getHukouProvinceAreaId
());
emp
.
setIdTown
(
null
);
emp
.
setIdCity
(
gzEmpInfo
.
getHukouCityAreaId
());
emp
.
setIdTown
(
gzEmpInfo
.
getHukouCountyAreaId
());
// 民族
// 民族
emp
.
setEmpNational
(
getDictValue
(
dictMap
,
gzEmpInfo
.
getEthnicGrpCd
(),
ExcelAttributeConstants
.
GZ_ETHNIC_GRP_CD
));
emp
.
setEmpNational
(
getDictValue
(
dictMap
,
gzEmpInfo
.
getEthnicGrpCd
(),
ExcelAttributeConstants
.
GZ_ETHNIC_GRP_CD
));
// 婚姻状态
// 婚姻状态
...
@@ -1050,10 +1082,10 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
...
@@ -1050,10 +1082,10 @@ public class TGzEmpInfoServiceImpl extends ServiceImpl<TGzEmpInfoMapper, TGzEmpI
emp
.
setContactAddress
(
gzEmpInfo
.
getAddress
());
emp
.
setContactAddress
(
gzEmpInfo
.
getAddress
());
// 户口性质
// 户口性质
emp
.
setEmpRegisType
(
getDictValue
(
dictMap
,
gzEmpInfo
.
getHukouType
(),
ExcelAttributeConstants
.
GZ_HUKOU_TYPE
));
emp
.
setEmpRegisType
(
getDictValue
(
dictMap
,
gzEmpInfo
.
getHukouType
(),
ExcelAttributeConstants
.
GZ_HUKOU_TYPE
));
// 1.7.14: 档案所在地取值调整: ”默认为“安徽省-合肥市-蜀山区”
emp
.
setFileProvince
(
gzEmpInfo
.
getHukouProvinceAreaId
()
);
emp
.
setFileProvince
(
12
);
emp
.
setFileCity
(
gzEmpInfo
.
getHukouCityAreaId
()
);
emp
.
setFileCity
(
135
);
emp
.
setFileTown
(
gzEmpInfo
.
getHukouCountyAreaId
()
);
emp
.
setFileTown
(
1267
);
emp
.
setBankName
(
getDictValue
(
dictMap
,
gzEmpInfo
.
getBankCd
(),
ExcelAttributeConstants
.
GZ_BANK
));
emp
.
setBankName
(
getDictValue
(
dictMap
,
gzEmpInfo
.
getBankCd
(),
ExcelAttributeConstants
.
GZ_BANK
));
emp
.
setBankSubName
(
gzEmpInfo
.
getBankName
());
emp
.
setBankSubName
(
gzEmpInfo
.
getBankName
());
if
(
Common
.
isNotNull
(
gzEmpInfo
.
getAccountProvinceAreaId
()))
{
if
(
Common
.
isNotNull
(
gzEmpInfo
.
getAccountProvinceAreaId
()))
{
...
...
yifu-archives/yifu-archives-biz/src/main/resources/mapper/TGzEmpInfoMapper.xml
View file @
efc91385
...
@@ -102,6 +102,7 @@
...
@@ -102,6 +102,7 @@
<result
property=
"hukouCountyAreaId"
column=
"hukou_county_area_id"
/>
<result
property=
"hukouCountyAreaId"
column=
"hukou_county_area_id"
/>
<result
property=
"accountProvinceAreaId"
column=
"account_province_area_id"
/>
<result
property=
"accountProvinceAreaId"
column=
"account_province_area_id"
/>
<result
property=
"accountCityAreaId"
column=
"account_city_area_id"
/>
<result
property=
"accountCityAreaId"
column=
"account_city_area_id"
/>
<result
property=
"empStatus"
column=
"emp_status"
/>
</resultMap>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
a.id,
a.id,
...
@@ -181,7 +182,8 @@
...
@@ -181,7 +182,8 @@
a.hukou_city_area_id,
a.hukou_city_area_id,
a.hukou_county_area_id,
a.hukou_county_area_id,
a.account_province_area_id,
a.account_province_area_id,
a.account_city_area_id
a.account_city_area_id,
a.emp_status
</sql>
</sql>
<sql
id=
"tGzEmpInfo_where"
>
<sql
id=
"tGzEmpInfo_where"
>
<if
test=
"tGzEmpInfo != null"
>
<if
test=
"tGzEmpInfo != null"
>
...
@@ -194,6 +196,9 @@
...
@@ -194,6 +196,9 @@
<if
test=
"tGzEmpInfo.offerId != null "
>
<if
test=
"tGzEmpInfo.offerId != null "
>
AND a.offer_id = #{tGzEmpInfo.offerId}
AND a.offer_id = #{tGzEmpInfo.offerId}
</if>
</if>
<if
test=
"tGzEmpInfo.empStatus != null and tGzEmpInfo.empStatus.trim() != ''"
>
AND a.emp_status = #{tGzEmpInfo.empStatus}
</if>
<if
test=
"tGzEmpInfo.empPushStatus != null and tGzEmpInfo.empPushStatus.trim() != ''"
>
<if
test=
"tGzEmpInfo.empPushStatus != null and tGzEmpInfo.empPushStatus.trim() != ''"
>
AND a.emp_push_status = #{tGzEmpInfo.empPushStatus}
AND a.emp_push_status = #{tGzEmpInfo.empPushStatus}
</if>
</if>
...
@@ -411,7 +416,7 @@
...
@@ -411,7 +416,7 @@
a.del_flag = '0'
a.del_flag = '0'
<include
refid=
"tGzEmpInfo_where"
/>
<include
refid=
"tGzEmpInfo_where"
/>
</where>
</where>
ORDER by a.create_time desc,a.id desc
ORDER by a.
emp_status,a.
create_time desc,a.id desc
</select>
</select>
<!--count-->
<!--count-->
...
@@ -431,6 +436,7 @@
...
@@ -431,6 +436,7 @@
a.id,
a.id,
a.biz_id,
a.biz_id,
a.offer_id,
a.offer_id,
a.emp_status,
a.emp_push_status,
a.emp_push_status,
a.contract_push_status,
a.contract_push_status,
a.contract_atta_push_status,
a.contract_atta_push_status,
...
@@ -517,7 +523,7 @@
...
@@ -517,7 +523,7 @@
<include
refid=
"tGzEmpInfo_where"
/>
<include
refid=
"tGzEmpInfo_where"
/>
</where>
</where>
group by a.id
group by a.id
ORDER by a.create_time desc,a.id desc
ORDER by a.
emp_status,a.
create_time desc,a.id desc
<if
test=
"tGzEmpInfo.limitStart != null"
>
<if
test=
"tGzEmpInfo.limitStart != null"
>
limit #{tGzEmpInfo.limitStart},#{tGzEmpInfo.limitEnd}
limit #{tGzEmpInfo.limitStart},#{tGzEmpInfo.limitEnd}
</if>
</if>
...
...
yifu-common/yifu-common-dapr/src/main/java/com/yifu/cloud/plus/v1/yifu/common/dapr/util/UpmsDaprUtils.java
View file @
efc91385
...
@@ -99,7 +99,7 @@ public class UpmsDaprUtils {
...
@@ -99,7 +99,7 @@ public class UpmsDaprUtils {
}
}
/**
/**
* @Author fxj
* @Author fxj
* @Description 通过用户ID 获取 在用的MVP系统的用户
* @Description 通过用户ID 获取
不
在用的MVP系统的用户
* @Date 17:24 2025/3/12
* @Date 17:24 2025/3/12
**/
**/
public
R
<
SysUsersVo
>
getUserVoByUserIds
(
String
userIds
)
{
public
R
<
SysUsersVo
>
getUserVoByUserIds
(
String
userIds
)
{
...
@@ -109,6 +109,21 @@ public class UpmsDaprUtils {
...
@@ -109,6 +109,21 @@ public class UpmsDaprUtils {
}
}
return
allUserVoR
;
return
allUserVoR
;
}
}
/**
* @Author hgw
* @Description 通过用户ID 获取 在用的MVP系统的用户
* @Date 2025-8-1 14:51:03
**/
public
R
<
SysUsersVo
>
getInUseUserByIds
(
String
userIds
)
{
R
<
SysUsersVo
>
allUserVoR
=
HttpDaprUtil
.
invokeMethodPost
(
daprUpmsProperties
.
getAppUrl
(),
daprUpmsProperties
.
getAppId
()
,
"/user/inner/getInUseUserByIds"
,
userIds
,
SysUsersVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
Common
.
isEmpty
(
allUserVoR
)){
return
R
.
failed
(
"获取指定用户IDS对应在用的用户信息失败!"
);
}
return
allUserVoR
;
}
public
R
<
SysUser
>
getSimpleUser
(
String
userId
)
{
public
R
<
SysUser
>
getSimpleUser
(
String
userId
)
{
R
<
SysUser
>
userR
=
HttpDaprUtil
.
invokeMethodPost
(
daprUpmsProperties
.
getAppUrl
(),
daprUpmsProperties
.
getAppId
(),
"/user/inner/getSimpleUser"
,
userId
,
SysUser
.
class
,
SecurityConstants
.
FROM_IN
);
R
<
SysUser
>
userR
=
HttpDaprUtil
.
invokeMethodPost
(
daprUpmsProperties
.
getAppUrl
(),
daprUpmsProperties
.
getAppId
(),
"/user/inner/getSimpleUser"
,
userId
,
SysUser
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
Common
.
isEmpty
(
userR
)){
if
(
Common
.
isEmpty
(
userR
)){
...
...
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/constants/InsurancesConstants.java
View file @
efc91385
...
@@ -468,6 +468,10 @@ public class InsurancesConstants {
...
@@ -468,6 +468,10 @@ public class InsurancesConstants {
* 商险已结算,无法登记保单保费
* 商险已结算,无法登记保单保费
*/
*/
public
static
final
String
SETTLE_HANDLE_THREE_NOT_REGISTERED
=
"商险已结算,无法登记保单保费"
;
public
static
final
String
SETTLE_HANDLE_THREE_NOT_REGISTERED
=
"商险已结算,无法登记保单保费"
;
/**
* 商险已支出,无法登记保单保费
*/
public
static
final
String
PAY_SETTLE_NOT_REGISTERED
=
"商险已支出,无法登记保单保费"
;
/**
/**
* 保单号不存在或已过期
* 保单号不存在或已过期
*/
*/
...
...
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/vo/EkpSettleStatusVo.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
insurances
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @Description: 查询EKP中的状态,拦截批量保单号保费
* @Author: hgw
* @Date: 2025/8/1 18:02
* @return:
**/
@Data
public
class
EkpSettleStatusVo
implements
Serializable
{
/**
* 结算状态
**/
private
String
settleStatus
;
/**
* 支出状态
**/
private
String
payStatus
;
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/mapper/ekp/EkpSettleMapper.java
View file @
efc91385
...
@@ -47,7 +47,7 @@ public interface EkpSettleMapper {
...
@@ -47,7 +47,7 @@ public interface EkpSettleMapper {
* @param id
* @param id
* @return {@link SettleVo}
* @return {@link SettleVo}
*/
*/
String
getSettleStatusFromEkpInsuranceDetail
(
String
id
);
EkpSettleStatusVo
getSettleStatusFromEkpInsuranceDetail
(
String
id
);
List
<
EkpInsuranceViewVo
>
selectSettleStatusBySettleNo
(
@Param
(
"settleNo"
)
String
settleNo
,
@Param
(
"payFlag"
)
String
payFlag
);
List
<
EkpInsuranceViewVo
>
selectSettleStatusBySettleNo
(
@Param
(
"settleNo"
)
String
settleNo
,
@Param
(
"payFlag"
)
String
payFlag
);
...
...
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/ekp/EkpSettleService.java
View file @
efc91385
...
@@ -36,7 +36,7 @@ public interface EkpSettleService extends IService<TInsuranceTypeRate> {
...
@@ -36,7 +36,7 @@ public interface EkpSettleService extends IService<TInsuranceTypeRate> {
* @param id 新增类
* @param id 新增类
* @return {@link R}
* @return {@link R}
*/
*/
String
getSettleStatusFromEkpInsuranceDetail
(
String
id
);
EkpSettleStatusVo
getSettleStatusFromEkpInsuranceDetail
(
String
id
);
/**
/**
* 根据结算单编号查询商险视图信息
* 根据结算单编号查询商险视图信息
...
...
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/ekp/impl/EkpSettleServiceImpl.java
View file @
efc91385
...
@@ -45,7 +45,7 @@ public class EkpSettleServiceImpl implements EkpSettleService {
...
@@ -45,7 +45,7 @@ public class EkpSettleServiceImpl implements EkpSettleService {
}
}
@Override
@Override
public
String
getSettleStatusFromEkpInsuranceDetail
(
String
id
)
{
public
EkpSettleStatusVo
getSettleStatusFromEkpInsuranceDetail
(
String
id
)
{
return
ekpSettleMapper
.
getSettleStatusFromEkpInsuranceDetail
(
id
);
return
ekpSettleMapper
.
getSettleStatusFromEkpInsuranceDetail
(
id
);
}
}
...
...
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/impl/TInsuranceDetailServiceImpl.java
View file @
efc91385
...
@@ -3863,7 +3863,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
...
@@ -3863,7 +3863,8 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
InsuranceRegisterParam
param
;
InsuranceRegisterParam
param
;
SettleVo
settleVo
;
SettleVo
settleVo
;
List
<
TInsuranceEkp
>
ekpList
;
List
<
TInsuranceEkp
>
ekpList
;
String
status
;
// EKP 结算状态、支出状态
EkpSettleStatusVo
settleStatus
;
for
(
int
i
=
0
;
i
<
distinctList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
distinctList
.
size
();
i
++)
{
param
=
distinctList
.
get
(
i
);
param
=
distinctList
.
get
(
i
);
param
.
setFlag
(
CommonConstants
.
ONE_STRING
);
param
.
setFlag
(
CommonConstants
.
ONE_STRING
);
...
@@ -4052,15 +4053,22 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
...
@@ -4052,15 +4053,22 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
if
(
StringUtils
.
isNotBlank
(
detail
.
getDefaultSettleId
())){
if
(
StringUtils
.
isNotBlank
(
detail
.
getDefaultSettleId
())){
settle
=
tInsuranceSettleService
.
getById
(
detail
.
getDefaultSettleId
());
settle
=
tInsuranceSettleService
.
getById
(
detail
.
getDefaultSettleId
());
if
(
Optional
.
ofNullable
(
settle
).
isPresent
()){
if
(
Optional
.
ofNullable
(
settle
).
isPresent
()){
status
=
getSettleStatusFromEkpInsuranceDetail
(
detail
.
getId
(),
detail
.
getDefaultSettleId
());
settleStatus
=
getSettleStatusFromEkpInsuranceDetail
(
detail
.
getId
(),
detail
.
getDefaultSettleId
());
if
(
null
!=
status
){
if
(
null
!=
settleStatus
){
//保费更新或者保单号发票号更新
if
(
Common
.
isNotNull
(
settleStatus
.
getSettleStatus
()))
{
if
(
InsurancesConstants
.
SETTLE_TWO
.
equals
(
status
))
{
//保费更新或者保单号发票号更新
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_THREE_NOT_REGISTERED
);
if
(
InsurancesConstants
.
SETTLE_TWO
.
equals
(
settleStatus
.
getSettleStatus
()))
{
continue
;
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_THREE_NOT_REGISTERED
);
continue
;
}
if
(
InsurancesConstants
.
SETTLE_ONE
.
equals
(
settleStatus
.
getSettleStatus
()))
{
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_TWO_NOT_REGISTERED
);
continue
;
}
}
}
if
(
InsurancesConstants
.
SETTLE_ONE
.
equals
(
status
))
{
// 商险已支出,无法登记保单保费
param
.
setErrorMessage
(
InsurancesConstants
.
SETTLE_HANDLE_TWO_NOT_REGISTERED
);
if
(
Common
.
isNotNull
(
settleStatus
.
getPayStatus
())
&&
InsurancesConstants
.
SETTLE_TWO
.
equals
(
settleStatus
.
getPayStatus
()))
{
param
.
setErrorMessage
(
InsurancesConstants
.
PAY_SETTLE_NOT_REGISTERED
);
continue
;
continue
;
}
}
}
}
...
@@ -7630,7 +7638,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
...
@@ -7630,7 +7638,7 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
* @param
* @param
* @return {@link String}
* @return {@link String}
*/
*/
public
String
getSettleStatusFromEkpInsuranceDetail
(
String
detailId
,
String
settleId
){
public
EkpSettleStatusVo
getSettleStatusFromEkpInsuranceDetail
(
String
detailId
,
String
settleId
){
String
id
=
detailId
+
CommonConstants
.
DOWN_LINE_STRING
+
settleId
;
String
id
=
detailId
+
CommonConstants
.
DOWN_LINE_STRING
+
settleId
;
//获取ekp结算信息
//获取ekp结算信息
return
ekpSettleService
.
getSettleStatusFromEkpInsuranceDetail
(
id
);
return
ekpSettleService
.
getSettleStatusFromEkpInsuranceDetail
(
id
);
...
...
yifu-insurances/yifu-insurances-biz/src/main/resources/mapper/ekp/EkpSettleMapper.xml
View file @
efc91385
...
@@ -61,9 +61,9 @@
...
@@ -61,9 +61,9 @@
group by fd_3b0a5743acab7e
group by fd_3b0a5743acab7e
</select>
</select>
<select
id=
"getSettleStatusFromEkpInsuranceDetail"
resultType=
"
java.lang.String
"
>
<select
id=
"getSettleStatusFromEkpInsuranceDetail"
resultType=
"
com.yifu.cloud.plus.v1.yifu.insurances.vo.EkpSettleStatusVo
"
>
select
select
fd_3adfe6ec6a8cbe
fd_3adfe6ec6a8cbe
settleStatus,fd_3adfe6eda67236 payStatus
from
from
ekp_insurances_info
ekp_insurances_info
where
where
...
...
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/mapper/TSalaryEmployeeMapper.java
View file @
efc91385
...
@@ -48,6 +48,7 @@ public interface TSalaryEmployeeMapper extends BaseMapper<TSalaryEmployee> {
...
@@ -48,6 +48,7 @@ public interface TSalaryEmployeeMapper extends BaseMapper<TSalaryEmployee> {
List
<
TSalaryEmployeeExportVo
>
noPageDiy
(
@Param
(
"tSalaryEmployee"
)
TSalaryEmployeeSearchVo
searchVo
,
@Param
(
"idList"
)
List
<
String
>
idList
);
List
<
TSalaryEmployeeExportVo
>
noPageDiy
(
@Param
(
"tSalaryEmployee"
)
TSalaryEmployeeSearchVo
searchVo
,
@Param
(
"idList"
)
List
<
String
>
idList
);
List
<
TSalaryEmployee
>
getListByIdCard
(
@Param
(
"idCardList"
)
List
<
String
>
idCardList
);
List
<
TSalaryEmployee
>
getListByIdCard
(
@Param
(
"idCardList"
)
List
<
String
>
idCardList
);
List
<
TSalaryEmployee
>
getListByPhone
(
@Param
(
"phoneList"
)
List
<
String
>
phoneList
);
TSalaryEmployee
getByEmpIdCard
(
@Param
(
"empIdCard"
)
String
empIdCard
);
TSalaryEmployee
getByEmpIdCard
(
@Param
(
"empIdCard"
)
String
empIdCard
);
...
...
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/service/impl/TSalaryEmployeeServiceImpl.java
View file @
efc91385
...
@@ -613,7 +613,8 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -613,7 +613,8 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
if
(
a
!=
null
&&
a
.
getData
()
!=
null
)
{
if
(
a
!=
null
&&
a
.
getData
()
!=
null
)
{
checkMobile
=
a
.
getData
();
checkMobile
=
a
.
getData
();
if
(
checkMobile
!=
null
&&
Common
.
isNotNull
(
checkMobile
.
getStatus
()))
{
if
(
checkMobile
!=
null
&&
Common
.
isNotNull
(
checkMobile
.
getStatus
()))
{
if
(!
CommonConstants
.
ONE_STRING
.
equals
(
checkMobile
.
getStatus
()))
{
if
(!
CommonConstants
.
ONE_STRING
.
equals
(
checkMobile
.
getStatus
())
&&
!
CommonConstants
.
FOUR_STRING
.
equals
(
checkMobile
.
getStatus
()))
{
return
pre
+
checkMobile
.
getMessage
();
return
pre
+
checkMobile
.
getMessage
();
}
}
}
else
{
}
else
{
...
@@ -711,28 +712,112 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -711,28 +712,112 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
/// 个性化校验逻辑
/// 个性化校验逻辑
TSalaryEmployeeUpdateVo
excel
;
TSalaryEmployeeUpdateVo
excel
;
List
<
String
>
idCardList
=
new
ArrayList
<>();
List
<
String
>
idCardList
=
new
ArrayList
<>();
// 查重,查非自己的手机号是否存在
List
<
String
>
phoneList
=
new
ArrayList
<>();
// 查本表重
Map
<
String
,
Integer
>
phoneMap
=
new
HashMap
<>();
// 本表重复的手机号,不允许导入该行
Map
<
String
,
Integer
>
phoneRepeatMap
=
new
HashMap
<>();
Integer
phoneCount
;
TCheckBankNo
checkBankNo
;
List
<
TCheckBankNo
>
bankList
=
new
ArrayList
<>();
// 执行数据插入操作 组装
// 执行数据插入操作 组装
for
(
TSalaryEmployeeUpdateVo
vo
:
excelVOList
)
{
for
(
TSalaryEmployeeUpdateVo
vo
:
excelVOList
)
{
idCardList
.
add
(
vo
.
getEmpIdcard
());
idCardList
.
add
(
vo
.
getEmpIdcard
());
if
(
Common
.
isNotNull
(
vo
.
getEmpPhone
()))
{
phoneCount
=
phoneMap
.
get
(
vo
.
getEmpPhone
());
if
(
phoneCount
==
null
)
{
phoneMap
.
put
(
vo
.
getEmpPhone
(),
CommonConstants
.
ONE_INT
);
phoneList
.
add
(
vo
.
getEmpPhone
());
}
else
{
phoneRepeatMap
.
put
(
vo
.
getEmpPhone
(),
CommonConstants
.
ONE_INT
);
}
}
if
(
Common
.
isNotNull
(
vo
.
getBankNo
())
&&
Common
.
isNotNull
(
vo
.
getEmpName
()))
{
checkBankNo
=
new
TCheckBankNo
();
checkBankNo
.
setName
(
vo
.
getEmpName
());
checkBankNo
.
setBankNo
(
vo
.
getBankNo
());
bankList
.
add
(
checkBankNo
);
}
}
}
List
<
TSalaryEmployee
>
empList
=
baseMapper
.
getListByIdCard
(
idCardList
);
List
<
TSalaryEmployee
>
empList
=
baseMapper
.
getListByIdCard
(
idCardList
);
// 人员Map
// 人员Map
Map
<
String
,
TSalaryEmployee
>
empMap
=
new
HashMap
<>();
Map
<
String
,
TSalaryEmployee
>
empMap
=
new
HashMap
<>();
for
(
TSalaryEmployee
e
:
empList
)
{
for
(
TSalaryEmployee
e
:
empList
)
{
empMap
.
put
(
e
.
getEmpIdcard
(),
e
);
empMap
.
put
(
e
.
getEmpIdcard
(),
e
);
}
}
List
<
TSalaryEmployee
>
empPhoneList
=
baseMapper
.
getListByPhone
(
phoneList
);
// 人员手机号Map
Map
<
String
,
List
<
String
>>
empPhoneMap
=
new
HashMap
<>();
List
<
String
>
phoneIdCardList
;
for
(
TSalaryEmployee
e
:
empPhoneList
)
{
phoneIdCardList
=
empPhoneMap
.
get
(
e
.
getEmpPhone
());
if
(
phoneIdCardList
==
null
)
{
phoneIdCardList
=
new
ArrayList
<>();
}
phoneIdCardList
.
add
(
e
.
getEmpIdcard
());
empPhoneMap
.
put
(
e
.
getEmpPhone
(),
phoneIdCardList
);
}
TSalaryEmployee
emp
;
TSalaryEmployee
emp
;
// 开户行省市的区域暂存
// 开户行省市的区域暂存
String
areaStr
;
String
areaStr
;
boolean
curTaxMonth
;
boolean
curTaxMonth
;
Map
<
String
,
String
>
bankMap
=
tBankSetService
.
getBankMap
(
null
);
Map
<
String
,
String
>
bankMap
=
tBankSetService
.
getBankMap
(
null
);
ExcelUtil
<
TSalaryEmployee
>
util
=
new
ExcelUtil
<>(
TSalaryEmployee
.
class
);
ExcelUtil
<
TSalaryEmployee
>
util
=
new
ExcelUtil
<>(
TSalaryEmployee
.
class
);
TSalaryEmployee
old
=
null
;
TSalaryEmployee
old
;
String
idCard
;
boolean
phoneFlag
;
// 校验卡号所用的
Map
<
String
,
Boolean
>
bankCheckMap
=
new
HashMap
<>();
if
(!
bankList
.
isEmpty
())
{
R
<
CheckBatchVo
>
checkListR
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckbankno/inner/checkBankNoBatch"
,
bankList
,
CheckBatchVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
checkListR
!=
null
&&
checkListR
.
getData
()
!=
null
)
{
bankCheckMap
=
checkListR
.
getData
().
getCheckMap
();
}
}
Map
<
String
,
Boolean
>
phoneCheckMap
=
new
HashMap
<>();
if
(!
phoneList
.
isEmpty
())
{
R
<
CheckBatchVo
>
phoneR
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckmobile/inner/checkMobileBatch"
,
phoneList
,
CheckBatchVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
phoneR
!=
null
&&
phoneR
.
getData
()
!=
null
)
{
phoneCheckMap
=
phoneR
.
getData
().
getCheckMap
();
}
}
for
(
int
i
=
0
;
i
<
excelVOList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
excelVOList
.
size
();
i
++)
{
excel
=
excelVOList
.
get
(
i
);
excel
=
excelVOList
.
get
(
i
);
if
(
excel
!=
null
)
{
if
(
excel
!=
null
)
{
if
(
Common
.
isNotNull
(
excel
.
getEmpIdcard
()))
{
idCard
=
excel
.
getEmpIdcard
();
emp
=
empMap
.
get
(
excel
.
getEmpIdcard
());
if
(
Common
.
isNotNull
(
idCard
))
{
if
(
Common
.
isNotNull
(
excel
.
getEmpPhone
()))
{
// 手机号本表重复,该条直接不给导入
if
(
phoneRepeatMap
.
get
(
excel
.
getEmpPhone
())
!=
null
)
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"该手机号在本次导入表中有重复,请检查并修改后重新导入"
));
continue
;
}
// 手机号与系统里重复
phoneIdCardList
=
empPhoneMap
.
get
(
excel
.
getEmpPhone
());
if
(
phoneIdCardList
!=
null
)
{
phoneFlag
=
false
;
for
(
String
phoneIdCard
:
phoneIdCardList
)
{
if
(!
idCard
.
equals
(
phoneIdCard
))
{
phoneFlag
=
true
;
break
;
}
}
if
(
phoneFlag
)
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"手机号已被占用,请更改手机号后重试"
));
continue
;
}
}
}
emp
=
empMap
.
get
(
idCard
);
old
=
new
TSalaryEmployee
();
old
=
new
TSalaryEmployee
();
if
(
Common
.
isNotNull
(
emp
)
&&
Common
.
isNotNull
(
emp
.
getId
()))
{
if
(
Common
.
isNotNull
(
emp
)
&&
Common
.
isNotNull
(
emp
.
getId
()))
{
BeanUtil
.
copyProperties
(
emp
,
old
);
BeanUtil
.
copyProperties
(
emp
,
old
);
...
@@ -781,9 +866,17 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -781,9 +866,17 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
emp
.
setEmpName
(
excel
.
getEmpName
());
emp
.
setEmpName
(
excel
.
getEmpName
());
}
}
// 2024-2-4 16:05:56 hgw 银行卡需要校验
// 2024-2-4 16:05:56 hgw 银行卡需要校验
String
pre
=
getCheckBankNo
(
emp
,
old
);
// 改为批量
if
(
pre
!=
null
)
{
if
(
Common
.
isNotNull
(
emp
.
getBankNo
())
&&
!
emp
.
getBankNo
().
equals
(
old
.
getBankNo
())
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
pre
));
&&
bankCheckMap
.
get
(
emp
.
getBankNo
())
!=
null
&&
Boolean
.
FALSE
.
equals
(
bankCheckMap
.
get
(
emp
.
getBankNo
())))
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
"【姓名与卡号】校验结果:不匹配。请更改卡号或姓名后重试!"
));
continue
;
}
if
(
Common
.
isNotNull
(
emp
.
getEmpPhone
())
&&
phoneCheckMap
.
get
(
emp
.
getEmpPhone
())
!=
null
&&
Boolean
.
FALSE
.
equals
(
phoneCheckMap
.
get
(
emp
.
getEmpPhone
())))
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
"手机号校验不通过,请更改手机号后重试!"
));
continue
;
continue
;
}
}
// 变更日志 fxj 2023-10-24
// 变更日志 fxj 2023-10-24
...
@@ -902,15 +995,68 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -902,15 +995,68 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
List
<
String
>
idCardList
=
new
ArrayList
<>();
List
<
String
>
idCardList
=
new
ArrayList
<>();
// 执行数据插入操作 组装
// 执行数据插入操作 组装
List
<
TSalaryEmployee
>
excelVOList
=
vo
.
getEmpList
();
List
<
TSalaryEmployee
>
excelVOList
=
vo
.
getEmpList
();
// 查重,查非自己的手机号是否存在
List
<
String
>
phoneList
=
new
ArrayList
<>();
// 查本表重
Map
<
String
,
Integer
>
phoneMap
=
new
HashMap
<>();
// 本表重复的手机号,不允许导入该行
Map
<
String
,
Integer
>
phoneRepeatMap
=
new
HashMap
<>();
Integer
phoneCount
;
List
<
TCheckBankNo
>
bankList
=
new
ArrayList
<>();
TCheckBankNo
checkBankNo
;
List
<
TCheckIdCard
>
checkList
=
new
ArrayList
<>();
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
==
null
||
Common
.
isEmpty
(
user
.
getId
()))
{
return
R
.
failed
(
"请登录!"
);
}
TCheckIdCard
idCardCheck
;
for
(
TSalaryEmployee
emp
:
excelVOList
)
{
for
(
TSalaryEmployee
emp
:
excelVOList
)
{
idCardList
.
add
(
emp
.
getEmpIdcard
());
if
(
Common
.
isNotNull
(
emp
.
getEmpIdcard
()))
{
idCardCheck
=
new
TCheckIdCard
();
idCardCheck
.
setIdCard
(
emp
.
getEmpIdcard
());
idCardCheck
.
setName
(
emp
.
getEmpName
());
idCardCheck
.
setCreateUser
(
user
.
getId
());
idCardCheck
.
setReason
(
user
.
getNickname
());
checkList
.
add
(
idCardCheck
);
idCardList
.
add
(
emp
.
getEmpIdcard
());
}
if
(
Common
.
isNotNull
(
emp
.
getEmpPhone
()))
{
phoneCount
=
phoneMap
.
get
(
emp
.
getEmpPhone
());
if
(
phoneCount
==
null
)
{
phoneMap
.
put
(
emp
.
getEmpPhone
(),
CommonConstants
.
ONE_INT
);
phoneList
.
add
(
emp
.
getEmpPhone
());
}
else
{
phoneRepeatMap
.
put
(
emp
.
getEmpPhone
(),
CommonConstants
.
ONE_INT
);
}
}
if
(
Common
.
isNotNull
(
emp
.
getBankNo
())
&&
Common
.
isNotNull
(
emp
.
getEmpName
()))
{
checkBankNo
=
new
TCheckBankNo
();
checkBankNo
.
setName
(
emp
.
getEmpName
());
checkBankNo
.
setBankNo
(
emp
.
getBankNo
());
bankList
.
add
(
checkBankNo
);
}
}
}
List
<
TSalaryEmployee
>
empList
=
baseMapper
.
getListByIdCard
(
idCardList
);
List
<
TSalaryEmployee
>
empList
=
baseMapper
.
getListByIdCard
(
idCardList
);
// 人员Map
// 人员Map
Map
<
String
,
TSalaryEmployee
>
empMap
=
new
HashMap
<>();
Map
<
String
,
TSalaryEmployee
>
empMap
=
new
HashMap
<>();
for
(
TSalaryEmployee
e
:
empList
)
{
for
(
TSalaryEmployee
e
:
empList
)
{
empMap
.
put
(
e
.
getEmpIdcard
(),
e
);
empMap
.
put
(
e
.
getEmpIdcard
(),
e
);
}
}
List
<
TSalaryEmployee
>
empPhoneList
=
baseMapper
.
getListByPhone
(
phoneList
);
// 人员手机号Map
Map
<
String
,
List
<
String
>>
empPhoneMap
=
new
HashMap
<>();
List
<
String
>
phoneIdCardList
;
for
(
TSalaryEmployee
e
:
empPhoneList
)
{
phoneIdCardList
=
empPhoneMap
.
get
(
e
.
getEmpPhone
());
if
(
phoneIdCardList
==
null
)
{
phoneIdCardList
=
new
ArrayList
<>();
}
phoneIdCardList
.
add
(
e
.
getEmpIdcard
());
empPhoneMap
.
put
(
e
.
getEmpPhone
(),
phoneIdCardList
);
}
TSalaryEmployee
emp
;
TSalaryEmployee
emp
;
// 开户行省市的区域暂存
// 开户行省市的区域暂存
String
areaProvince
;
String
areaProvince
;
...
@@ -926,14 +1072,75 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -926,14 +1072,75 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
// 校验卡号所用的
// 校验卡号所用的
Map
<
String
,
Boolean
>
bankCheckMap
=
new
HashMap
<>();
Map
<
String
,
Boolean
>
bankCheckMap
=
new
HashMap
<>();
List
<
TCheckBankNo
>
bankList
=
new
ArrayList
<>();
Map
<
String
,
Boolean
>
phoneCheckMap
=
new
HashMap
<>();
TCheckBankNo
checkBankNo
;
Map
<
String
,
Boolean
>
idCardMap
=
new
HashMap
<>();
if
(!
phoneList
.
isEmpty
())
{
R
<
CheckBatchVo
>
phoneR
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckmobile/inner/checkMobileBatch"
,
phoneList
,
CheckBatchVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
phoneR
!=
null
&&
phoneR
.
getData
()
!=
null
)
{
phoneCheckMap
=
phoneR
.
getData
().
getCheckMap
();
}
}
if
(!
bankList
.
isEmpty
())
{
R
<
CheckBatchVo
>
checkListR
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckbankno/inner/checkBankNoBatch"
,
bankList
,
CheckBatchVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
checkListR
!=
null
&&
checkListR
.
getData
()
!=
null
)
{
bankCheckMap
=
checkListR
.
getData
().
getCheckMap
();
}
}
if
(!
checkList
.
isEmpty
())
{
R
<
CheckBatchVo
>
idCardR
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckidcard/inner/checkIdCardBatch"
,
checkList
,
CheckBatchVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
idCardR
!=
null
&&
idCardR
.
getData
()
!=
null
)
{
idCardMap
=
idCardR
.
getData
().
getCheckMap
();
}
}
int
idCardFlag
=
0
;
if
(
idCardMap
!=
null
&&
!
idCardMap
.
isEmpty
())
{
if
(
idCardMap
.
get
(
"全部正确"
)
!=
null
)
{
idCardFlag
=
1
;
}
if
(
idCardMap
.
get
(
"全部错误"
)
!=
null
)
{
idCardFlag
=
2
;
}
}
String
idCard
;
boolean
phoneFlag
;
Boolean
resultB
;
for
(
int
i
=
0
;
i
<
excelVOList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
excelVOList
.
size
();
i
++)
{
excel
=
excelVOList
.
get
(
i
);
excel
=
excelVOList
.
get
(
i
);
if
(
excel
!=
null
)
{
if
(
excel
!=
null
)
{
if
(
Common
.
isNotNull
(
excel
.
getEmpIdcard
()))
{
idCard
=
excel
.
getEmpIdcard
();
emp
=
empMap
.
get
(
excel
.
getEmpIdcard
());
if
(
Common
.
isNotNull
(
idCard
))
{
if
(
Common
.
isNotNull
(
excel
.
getEmpPhone
()))
{
// 手机号本表重复,该条直接不给导入
if
(
phoneRepeatMap
.
get
(
excel
.
getEmpPhone
())
!=
null
)
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"该手机号在本次导入表中有重复,请检查并修改后重新导入"
));
continue
;
}
// 手机号与系统里重复
phoneIdCardList
=
empPhoneMap
.
get
(
excel
.
getEmpPhone
());
if
(
phoneIdCardList
!=
null
)
{
phoneFlag
=
false
;
for
(
String
phoneIdCard
:
phoneIdCardList
)
{
if
(!
idCard
.
equals
(
phoneIdCard
))
{
phoneFlag
=
true
;
break
;
}
}
if
(
phoneFlag
)
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"手机号已被占用,请更改手机号后重试"
));
continue
;
}
}
if
(
phoneCheckMap
.
get
(
excel
.
getEmpPhone
())
!=
null
&&
Boolean
.
FALSE
.
equals
(
phoneCheckMap
.
get
(
excel
.
getEmpPhone
())))
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"手机号校验不通过,请更改手机号后重试!"
));
continue
;
}
}
emp
=
empMap
.
get
(
idCard
);
if
(
Common
.
isNotNull
(
emp
))
{
if
(
Common
.
isNotNull
(
emp
))
{
if
(
canUpdate
)
{
if
(
canUpdate
)
{
curTaxMonth
=
false
;
curTaxMonth
=
false
;
...
@@ -999,14 +1206,15 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -999,14 +1206,15 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
emp
.
setDeptNo
(
dept
.
getDepartNo
());
emp
.
setDeptNo
(
dept
.
getDepartNo
());
emp
.
setInvoiceTitle
(
dept
.
getInvoiceTitleSalary
());
emp
.
setInvoiceTitle
(
dept
.
getInvoiceTitleSalary
());
if
(
Common
.
isNotNull
(
excel
.
getBankNo
()))
{
if
(
Common
.
isNotNull
(
excel
.
getBankNo
())
&&
bankCheckMap
.
get
(
excel
.
getBankNo
())
!=
null
checkBankNo
=
new
TCheckBankNo
();
&&
Boolean
.
FALSE
.
equals
(
bankCheckMap
.
get
(
excel
.
getBankNo
())))
{
emp
.
setLineNums
((
i
));
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"【姓名与卡号】校验结果:不匹配。请更改卡号或姓名后重试!"
));
checkBankNo
.
setName
(
excel
.
getEmpName
());
continue
;
checkBankNo
.
setBankNo
(
excel
.
getBankNo
());
bankList
.
add
(
checkBankNo
);
}
}
// 处理省市
doSetIntegerAreaByEmp
(
emp
);
emp
.
setIssueStatus
(
CommonConstants
.
ZERO_INT
);
emp
.
setLineNums
(
null
);
updateList
.
add
(
emp
);
updateList
.
add
(
emp
);
if
(
curTaxMonth
)
{
if
(
curTaxMonth
)
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
CUR_TAX_INFO
));
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
CUR_TAX_INFO
));
...
@@ -1018,7 +1226,7 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -1018,7 +1226,7 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
}
}
}
else
{
}
else
{
// 新增人员
// 新增人员
if
(
Common
.
isEmpty
(
excel
.
getEmpName
())
||
Common
.
isEmpty
(
excel
.
getEmpIdcard
()
)
if
(
Common
.
isEmpty
(
excel
.
getEmpName
())
||
Common
.
isEmpty
(
idCard
)
||
Common
.
isEmpty
(
excel
.
getEmpPhone
())
||
Common
.
isEmpty
(
excel
.
getBankName
())
||
Common
.
isEmpty
(
excel
.
getEmpPhone
())
||
Common
.
isEmpty
(
excel
.
getBankName
())
||
Common
.
isEmpty
(
excel
.
getBankNo
())
||
Common
.
isEmpty
(
excel
.
getBankProvince
())
||
Common
.
isEmpty
(
excel
.
getBankNo
())
||
Common
.
isEmpty
(
excel
.
getBankProvince
())
||
Common
.
isEmpty
(
excel
.
getBankCity
())
||
Common
.
isEmpty
(
excel
.
getTaxMonth
()))
{
||
Common
.
isEmpty
(
excel
.
getBankCity
())
||
Common
.
isEmpty
(
excel
.
getTaxMonth
()))
{
...
@@ -1040,43 +1248,57 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -1040,43 +1248,57 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
BANK_NAME_ERROR
));
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
BANK_NAME_ERROR
));
continue
;
continue
;
}
}
String
pre
=
this
.
checkNewEmpBankAndPhone
(
excel
,
true
);
if
(
idCardFlag
==
0
)
{
if
(
pre
!=
null
)
{
if
(
Common
.
isNotNull
(
idCard
))
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
pre
));
resultB
=
idCardMap
.
get
(
idCard
+
CommonConstants
.
DOWN_LINE_STRING
+
excel
.
getEmpName
());
continue
;
if
(
resultB
!=
null
)
{
}
else
{
if
(
Boolean
.
FALSE
.
equals
(
resultB
))
{
areaProvince
=
ExcelUtil
.
getRedisAreaValue
(
CacheConstants
.
AREA_VALUE
+
excel
.
getBankProvince
().
trim
());
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"姓名&身份证号不一致,请检查并修改后重新导入"
));
if
(
Common
.
isNotNull
(
areaProvince
))
{
continue
;
areaCity
=
ExcelUtil
.
getRedisAreaValue
(
CacheConstants
.
AREA_VALUE
+
excel
.
getBankCity
().
trim
()
}
+
CommonConstants
.
DOWN_LINE_STRING
+
excel
.
getBankProvince
().
trim
());
excel
.
setBankProvince
(
areaProvince
);
if
(
Common
.
isNotNull
(
areaCity
))
{
excel
.
setBankCity
(
areaCity
);
}
else
{
}
else
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
CITY_ERROR
));
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"姓名&身份证号不一致,请检查并修改后重新导入!"
));
continue
;
continue
;
}
}
}
}
else
if
(
idCardFlag
==
2
)
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"姓名&身份证号不一致,请检查并修改后重新导入!!"
));
continue
;
}
areaProvince
=
ExcelUtil
.
getRedisAreaValue
(
CacheConstants
.
AREA_VALUE
+
excel
.
getBankProvince
().
trim
());
if
(
Common
.
isNotNull
(
areaProvince
))
{
areaCity
=
ExcelUtil
.
getRedisAreaValue
(
CacheConstants
.
AREA_VALUE
+
excel
.
getBankCity
().
trim
()
+
CommonConstants
.
DOWN_LINE_STRING
+
excel
.
getBankProvince
().
trim
());
excel
.
setBankProvince
(
areaProvince
);
if
(
Common
.
isNotNull
(
areaCity
))
{
excel
.
setBankCity
(
areaCity
);
}
else
{
}
else
{
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
PROVINCE
_ERROR
));
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
CITY
_ERROR
));
continue
;
continue
;
}
}
excel
.
setUnitId
(
dept
.
getCustomerId
());
}
else
{
excel
.
setUnitName
(
dept
.
getCustomerName
());
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
SalaryConstants
.
PROVINCE_ERROR
));
excel
.
setUnitNo
(
dept
.
getCustomerNo
());
continue
;
excel
.
setDeptId
(
dept
.
getId
());
}
excel
.
setDeptName
(
dept
.
getDepartName
());
excel
.
setUnitId
(
dept
.
getCustomerId
());
excel
.
setDeptNo
(
dept
.
getDepartNo
());
excel
.
setUnitName
(
dept
.
getCustomerName
());
excel
.
setInvoiceTitle
(
dept
.
getInvoiceTitleSalary
());
excel
.
setUnitNo
(
dept
.
getCustomerNo
());
if
(
Common
.
isNotNull
(
excel
.
getBankNo
()))
{
excel
.
setDeptId
(
dept
.
getId
());
checkBankNo
=
new
TCheckBankNo
();
excel
.
setDeptName
(
dept
.
getDepartName
());
excel
.
setLineNums
((
i
));
excel
.
setDeptNo
(
dept
.
getDepartNo
());
checkBankNo
.
setName
(
excel
.
getEmpName
());
excel
.
setInvoiceTitle
(
dept
.
getInvoiceTitleSalary
());
checkBankNo
.
setBankNo
(
excel
.
getBankNo
());
if
(
Common
.
isNotNull
(
excel
.
getBankNo
())
&&
bankCheckMap
.
get
(
excel
.
getBankNo
())
!=
null
bankList
.
add
(
checkBankNo
);
&&
Boolean
.
FALSE
.
equals
(
bankCheckMap
.
get
(
excel
.
getBankNo
())))
{
}
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
"【姓名与卡号】校验结果:不匹配。请更改卡号或姓名后重试!!"
));
saveList
.
add
(
excel
);
continue
;
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
CommonConstants
.
SAVE_SUCCESS
));
}
}
// 处理省市
doSetIntegerAreaByEmp
(
excel
);
excel
.
setIssueStatus
(
CommonConstants
.
ZERO_INT
);
excel
.
setLineNums
(
null
);
saveList
.
add
(
excel
);
errorMessageList
.
add
(
new
ErrorMessage
((
i
),
CommonConstants
.
SAVE_SUCCESS
));
}
}
}
}
}
else
{
}
else
{
...
@@ -1087,43 +1309,13 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -1087,43 +1309,13 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
}
}
}
}
if
(
bankList
!=
null
&&
!
bankList
.
isEmpty
())
{
R
<
CheckBatchVo
>
checkListR
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckbankno/inner/checkBankNoBatch"
,
bankList
,
CheckBatchVo
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
checkListR
!=
null
&&
checkListR
.
getData
()
!=
null
)
{
bankCheckMap
=
checkListR
.
getData
().
getCheckMap
();
}
}
if
(!
updateList
.
isEmpty
())
{
if
(!
updateList
.
isEmpty
())
{
List
<
TSalaryEmployee
>
newUpdateList
=
new
ArrayList
<>();
// 校验挪到上面循环里
for
(
TSalaryEmployee
employee
:
updateList
)
{
this
.
updateBatchById
(
updateList
);
if
(
bankCheckMap
.
get
(
employee
.
getBankNo
())
!=
null
&&
Boolean
.
FALSE
.
equals
(
bankCheckMap
.
get
(
employee
.
getBankNo
())))
{
errorMessageList
.
add
(
new
ErrorMessage
(
employee
.
getLineNums
(),
"第"
+
employee
.
getLineNums
()
+
"行:-上次代发户未校验【姓名与卡号】,本次校验结果:不匹配。请去薪酬人员查询处更新卡号信息!!"
));
}
else
{
employee
.
setIssueStatus
(
CommonConstants
.
ZERO_INT
);
employee
.
setLineNums
(
null
);
newUpdateList
.
add
(
employee
);
}
}
doSetIntegerArea
(
newUpdateList
);
this
.
updateBatchById
(
newUpdateList
);
}
}
if
(!
saveList
.
isEmpty
())
{
if
(!
saveList
.
isEmpty
())
{
List
<
TSalaryEmployee
>
newSaveList
=
new
ArrayList
<>();
// 校验挪到上面循环里
for
(
TSalaryEmployee
employee
:
saveList
)
{
this
.
saveBatch
(
saveList
);
if
(
bankCheckMap
.
get
(
employee
.
getBankNo
())
!=
null
&&
Boolean
.
FALSE
.
equals
(
bankCheckMap
.
get
(
employee
.
getBankNo
())))
{
errorMessageList
.
add
(
new
ErrorMessage
(
employee
.
getLineNums
(),
"第"
+
employee
.
getLineNums
()
+
"行:-上次代发户未校验【姓名与卡号】,本次校验结果:不匹配。请去薪酬人员查询处更新卡号信息!!!"
));
}
else
{
employee
.
setIssueStatus
(
CommonConstants
.
ZERO_INT
);
employee
.
setLineNums
(
null
);
newSaveList
.
add
(
employee
);
}
}
doSetIntegerArea
(
newSaveList
);
this
.
saveBatch
(
newSaveList
);
}
}
boolean
isTrue
=
true
;
boolean
isTrue
=
true
;
for
(
ErrorMessage
message
:
errorMessageList
)
{
for
(
ErrorMessage
message
:
errorMessageList
)
{
...
@@ -1192,6 +1384,9 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -1192,6 +1384,9 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
// 2024-2-4 16:05:56 hgw 银行卡需要校验
// 2024-2-4 16:05:56 hgw 银行卡需要校验
String
pre
=
getCheckBankNo
(
tSalaryEmployee
,
old
);
String
pre
=
getCheckBankNo
(
tSalaryEmployee
,
old
);
if
(
pre
!=
null
)
{
return
R
.
failed
(
pre
);}
if
(
pre
!=
null
)
{
return
R
.
failed
(
pre
);}
// 2025-8-4 10:00:21 hgw 手机号需要校验,且与卡号校验不一样,无论改不改,都校验,且校验重复性
String
prePhone
=
getCheckPhone
(
tSalaryEmployee
);
if
(
prePhone
!=
null
)
{
return
R
.
failed
(
prePhone
);}
// 变更日志 fxj 2023-10-24
// 变更日志 fxj 2023-10-24
logService
.
initModLog
(
tSalaryEmployee
,
old
,
CommonConstants
.
ZERO_STRING
,
user
.
getNickname
(),
null
);
logService
.
initModLog
(
tSalaryEmployee
,
old
,
CommonConstants
.
ZERO_STRING
,
user
.
getNickname
(),
null
);
...
@@ -1235,6 +1430,41 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
...
@@ -1235,6 +1430,41 @@ public class TSalaryEmployeeServiceImpl extends ServiceImpl<TSalaryEmployeeMappe
return
null
;
return
null
;
}
}
/**
* @Description: 单个校验手机号通用方法
* @Author: hgw
* @Date: 2025-8-4 10:18:41
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.Boolean>
**/
private
String
getCheckPhone
(
TSalaryEmployee
employee
)
{
if
(
Common
.
isNotNull
(
employee
.
getEmpPhone
())
&&
Common
.
isNotNull
(
employee
.
getEmpIdcard
()))
{
// 先校验重复性:
TSalaryEmployee
one
=
baseMapper
.
selectOne
(
Wrappers
.<
TSalaryEmployee
>
query
().
lambda
()
.
ne
(
TSalaryEmployee:
:
getEmpIdcard
,
employee
.
getEmpIdcard
())
.
eq
(
TSalaryEmployee:
:
getEmpPhone
,
employee
.
getEmpPhone
()).
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
one
!=
null
)
{
return
"手机号已被占用,请更改手机号后重试"
;
}
// 调用校验服务-校验手机号
TCheckMobile
checkMobile
=
new
TCheckMobile
();
checkMobile
.
setMobile
(
employee
.
getEmpPhone
());
R
<
TCheckMobile
>
a
=
HttpDaprUtil
.
invokeMethodPost
(
checkProperties
.
getAppUrl
(),
checkProperties
.
getAppId
()
,
"/tcheckmobile/inner/checkOneMobile"
,
checkMobile
,
TCheckMobile
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
a
!=
null
&&
a
.
getData
()
!=
null
)
{
checkMobile
=
a
.
getData
();
if
(
checkMobile
!=
null
&&
Common
.
isNotNull
(
checkMobile
.
getStatus
()))
{
if
(!
CommonConstants
.
ONE_STRING
.
equals
(
checkMobile
.
getStatus
())
&&
!
CommonConstants
.
FOUR_STRING
.
equals
(
checkMobile
.
getStatus
()))
{
return
"手机号校验不通过,请更改手机号后重试"
;
}
}
else
{
return
"手机号校验不通过,请更改手机号后重试!"
;
}
}
}
return
null
;
}
/**
/**
* @param empIdCard 身份证
* @param empIdCard 身份证
* @Description: C端预入职获取计税月份
* @Description: C端预入职获取计税月份
...
...
yifu-salary/yifu-salary-biz/src/main/resources/mapper/TSalaryEmployeeMapper.xml
View file @
efc91385
...
@@ -256,6 +256,19 @@
...
@@ -256,6 +256,19 @@
</if>
</if>
</select>
</select>
<!-- 按手机号查询全部人员 -->
<select
id=
"getListByPhone"
resultMap=
"tSalaryEmployeeMap"
>
<if
test=
"phoneList != null and phoneList.size>0"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_salary_employee a
where a.EMP_PHONE in
<foreach
item=
"idStr"
index=
"index"
collection=
"phoneList"
open=
"("
separator=
","
close=
")"
>
#{idStr}
</foreach>
</if>
</select>
<!-- 按身份证查询人员 -->
<!-- 按身份证查询人员 -->
<select
id=
"getByEmpIdCard"
resultMap=
"tSalaryEmployeeMap"
>
<select
id=
"getByEmpIdCard"
resultMap=
"tSalaryEmployeeMap"
>
SELECT
SELECT
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/TSocialAlert.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
/**
* @description 派单办理失败发送企微消息
* @date 2025-8-1 11:22:43
*/
@Data
@Schema
(
description
=
"派单办理失败发送企微消息"
)
public
class
TSocialAlert
{
@Schema
(
description
=
"客服ID"
)
private
String
createBy
;
@Schema
(
description
=
"客服姓名"
)
private
String
createName
;
@Schema
(
description
=
"社保条数"
)
private
int
socialNum
;
@Schema
(
description
=
"公积金条数"
)
private
int
fundNum
;
}
\ No newline at end of file
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/config/WxConfig.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
config
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.gson.Gson
;
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.SecurityConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.exception.CheckedException
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
import
lombok.Data
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.web.client.RestTemplate
;
import
java.util.Map
;
import
java.util.concurrent.TimeUnit
;
/**
* @Author: huyc
* @Date: 2023/7/28
* @Description:
* @return: 企业微信配置——拷贝过来的
**/
@Configuration
@Data
@Slf4j
public
class
WxConfig
{
@Value
(
"${wx.corpid}"
)
private
String
corpid
;
@Value
(
"${wx.corpsecret}"
)
private
String
corpsecret
;
@Value
(
"${wx.agentid}"
)
private
String
agentid
;
@Value
(
"${wx.authUrl}"
)
private
String
authUrl
;
@Value
(
"${wx.domainName}"
)
private
String
domainName
;
@Autowired
private
RedisTemplate
redisTemplate
;
//未授权
private
String
accossTokenInvliad
=
"40014"
;
/**
* @param
* @Author: huyc
* @Date: 2023/7/28
* @Description: 获取微信accos_token
* @return: java.lang.String
**/
public
String
getAccessToken
(
RestTemplate
restTemplate
)
{
if
(
Common
.
isNotNull
(
agentid
))
{
return
this
.
getToken
(
restTemplate
,
CacheConstants
.
WX_ACCOSS_TOKEN
.
concat
(
agentid
),
corpsecret
);
}
return
this
.
getToken
(
restTemplate
,
CacheConstants
.
WX_ACCOSS_TOKEN
,
corpsecret
);
}
/**
* @param restTemplate
* @param tokenKey
* @param corpsecretKey
* @Description: 获取token
* @Author: huyc
* @Date: 2023/7/28 14:46
* @return: java.lang.String
**/
public
String
getToken
(
RestTemplate
restTemplate
,
String
tokenKey
,
String
corpsecretKey
)
{
Object
wxToken
=
redisTemplate
.
opsForValue
().
get
(
tokenKey
);
if
(
null
!=
wxToken
)
{
return
String
.
valueOf
(
wxToken
);
}
String
requestTokenUrl
=
String
.
format
(
SecurityConstants
.
WX_GET_ACCOSS_TOKEN
,
corpid
,
corpsecretKey
);
String
result
=
restTemplate
.
getForObject
(
requestTokenUrl
,
String
.
class
);
if
(
Common
.
isEmpty
(
result
))
{
throw
new
CheckedException
(
"微信授权失败"
);
}
String
token
=
JSON
.
parseObject
(
result
).
getString
(
"access_token"
);
if
(
Common
.
isEmpty
(
token
))
{
log
.
info
(
result
);
throw
new
CheckedException
(
"获取微信token失败"
);
}
redisTemplate
.
opsForValue
().
set
(
tokenKey
,
token
);
redisTemplate
.
expire
(
tokenKey
,
3600
,
TimeUnit
.
SECONDS
);
return
token
;
}
/**
* @param
* @Author: huyc
* @Date: 2023/7/28 14:43
* @Description: 移除微信accossToken
* @return: java.lang.String
**/
public
void
removeAccessToken
()
{
redisTemplate
.
delete
(
CacheConstants
.
WX_ACCOSS_TOKEN
);
}
/**
* @param restTemplate
* @param requestMap 请求内容
* @Author: huyc
* @Date: 2023/7/28 14:48
* @Description: 发送卡片消息
* @return: java.lang.String
**/
public
boolean
sendTextCard
(
RestTemplate
restTemplate
,
Map
<
String
,
Object
>
requestMap
)
{
// 必须加上header说明
HttpHeaders
headers
=
new
HttpHeaders
();
headers
.
setContentType
(
MediaType
.
APPLICATION_JSON_UTF8
);
Gson
gson
=
new
Gson
();
log
.
debug
(
"发企业微信===请求:{}"
,
gson
.
toJson
(
requestMap
));
HttpEntity
<
String
>
requestEntity
=
new
HttpEntity
<>(
gson
.
toJson
(
requestMap
),
headers
);
String
accessToken
=
getAccessToken
(
restTemplate
);
ResponseEntity
<
String
>
responseEntity
=
restTemplate
.
postForEntity
(
String
.
format
(
SecurityConstants
.
WX_SEND_MESSAGE
,
accessToken
),
requestEntity
,
String
.
class
);
log
.
debug
(
"发企业微信===返回:{}"
,
JSON
.
toJSONString
(
responseEntity
));
JSONObject
jsonObject
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
responseEntity
));
JSONObject
jsonBody
=
jsonObject
.
getJSONObject
(
"body"
);
if
(
jsonBody
!=
null
)
{
String
errcode
=
jsonBody
.
getString
(
"errcode"
);
if
(
accossTokenInvliad
.
equals
(
errcode
))
{
//删除accossToken缓存
removeAccessToken
();
return
false
;
}
if
(!
CommonConstants
.
ZERO_STRING
.
equals
(
errcode
))
{
//非正常,则打印错误日志
log
.
info
(
jsonObject
.
toJSONString
());
}
}
else
{
log
.
info
(
jsonObject
.
toJSONString
());
}
return
true
;
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/TSocialWarnController.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
controller
;
import
com.yifu.cloud.plus.v1.yifu.common.security.annotation.Inner
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TSocialWarnService
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
javax.annotation.Resource
;
/**
* @Author hgw
* @Date2025-8-1 11:19:32
* @Description 派单提醒相关
* @Version 1.0
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/socialWarn"
)
@Tag
(
name
=
"派单提醒相关"
)
public
class
TSocialWarnController
{
@Resource
private
TSocialWarnService
socialWarnService
;
@Operation
(
description
=
"每天10:00推送派单办理失败的消息"
)
@Inner
@PostMapping
(
"/inner/pushSocialAlertToWx"
)
public
void
pushSocialAlertToWx
()
{
socialWarnService
.
pushSocialAlertToWx
();
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/mapper/TSocialWarnMapper.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialAlert
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
/**
* @author hgw
* @description 查询派单失败的数据
* @date 2025-8-1 15:23:34
*/
@Mapper
public
interface
TSocialWarnMapper
extends
BaseMapper
<
TSocialAlert
>
{
/**
* @Description: 获取派单办理失败的信息
* @Author: hgw
* @Date: 2025/8/1 15:09
* @return: java.util.List<com.yifu.cloud.plus.v1.yifu.social.vo.TSocialAlert>
**/
List
<
TSocialAlert
>
getSocialAlertToWx
();
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TSocialWarnService.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialAlert
;
/**
* @author hgw
* @description 查询派单办理失败的信息,推送企微
* @date 2025-8-1 15:23:20
*/
public
interface
TSocialWarnService
extends
IService
<
TSocialAlert
>
{
void
pushSocialAlertToWx
();
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TSocialWarnServiceImpl.java
0 → 100644
View file @
efc91385
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysUser
;
import
com.yifu.cloud.plus.v1.yifu.admin.api.vo.SysUsersVo
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.SecurityConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.dapr.util.UpmsDaprUtils
;
import
com.yifu.cloud.plus.v1.yifu.social.config.WxConfig
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialWarnMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TSocialWarnService
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialAlert
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.web.client.RestTemplate
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* @author hgw
* @description 派单办理失败的,推送企微
* @date 2025-8-1 15:23:16
*/
@Service
public
class
TSocialWarnServiceImpl
extends
ServiceImpl
<
TSocialWarnMapper
,
TSocialAlert
>
implements
TSocialWarnService
{
@Autowired
private
UpmsDaprUtils
upmsDaprUtils
;
@Autowired
private
WxConfig
wxConfig
;
/**
* @Description: 10点推送企微消息——派单办理失败
* @Author: hgw
* @Date: 2025/8/1 15:11
* @return: void
**/
@Override
public
void
pushSocialAlertToWx
()
{
try
{
// TODO - 逻辑待产品梳理清楚,sql待完善
List
<
TSocialAlert
>
list
=
baseMapper
.
getSocialAlertToWx
();
String
userIds
;
if
(
Common
.
isNotKong
(
list
))
{
userIds
=
list
.
stream
().
map
(
TSocialAlert:
:
getCreateBy
).
distinct
().
collect
(
Collectors
.
joining
(
","
));
// 获取在用账号信息
Map
<
String
,
SysUser
>
inUseUserMap
=
this
.
getInUseUserByIds
(
userIds
);
if
(
inUseUserMap
!=
null
&&
!
inUseUserMap
.
isEmpty
())
{
// 离职人员
StringBuilder
liZhiUserName
=
new
StringBuilder
();
SysUser
user
;
Map
<
String
,
String
>
pushMap
=
new
HashMap
<>();
StringBuilder
content
;
for
(
TSocialAlert
vo
:
list
)
{
user
=
inUseUserMap
.
get
(
vo
.
getCreateBy
());
if
(
user
==
null
||
Common
.
isEmpty
(
user
.
getWxMessage
()))
{
if
(
Common
.
isNotNull
(
liZhiUserName
))
{
liZhiUserName
.
append
(
"、"
);
}
liZhiUserName
.
append
(
vo
.
getCreateName
());
}
else
{
content
=
new
StringBuilder
(
"当前存在"
);
if
(
vo
.
getSocialNum
()
>
0
)
{
content
.
append
(
"社保派单失败数量:"
).
append
(
vo
.
getSocialNum
());
if
(
vo
.
getFundNum
()
>
0
)
{
content
.
append
(
",公积金派单失败数量:"
).
append
(
vo
.
getFundNum
());
}
}
else
if
(
vo
.
getFundNum
()
>
0
)
{
content
.
append
(
"公积金派单失败数量:"
).
append
(
vo
.
getFundNum
());
}
content
.
append
(
"<br/>请及时至HRO系统进行处理。"
);
pushMap
.
put
(
user
.
getWxMessage
(),
content
.
toString
());
}
}
// 离职的人,发给陈红:
if
(
Common
.
isNotNull
(
liZhiUserName
))
{
// 陈红的 user.getWxMessage()
pushMap
.
put
(
"66870fa57d72637233f81f1e0b26311e"
,
"申请人"
+
liZhiUserName
+
"状态异常,当前存在社保派单失败、公积金派单失败。请及时至HRO系统进行处理。"
);
}
//开始推送信息到企业微信
if
(
Common
.
isNotKong
(
pushMap
))
{
pushMap
.
forEach
((
k
,
v
)
->
{
sendMessageToWx
(
k
,
v
);
});
}
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"推送社保办理失败信息到企业微信异常"
,
e
);
}
}
/**
* @Description 获取在用账号信息
* @Date 2025-8-1 11:50:06
**/
private
Map
<
String
,
SysUser
>
getInUseUserByIds
(
String
userIds
)
{
Map
<
String
,
SysUser
>
userMap
=
null
;
if
(
Common
.
isNotKong
(
userIds
))
{
R
<
SysUsersVo
>
res
=
upmsDaprUtils
.
getInUseUserByIds
(
userIds
);
if
(
Common
.
isNotNull
(
res
)
&&
Common
.
isNotNull
(
res
.
getData
())
&&
Common
.
isNotNull
(
res
.
getData
().
getUserList
()))
{
userMap
=
res
.
getData
().
getUserList
();
}
}
return
userMap
;
}
//发送企业微信待办
private
void
sendMessageToWx
(
String
useruserWx
,
String
content
)
{
if
(
Common
.
isEmpty
(
useruserWx
)
||
Common
.
isEmpty
(
content
))
{
return
;
}
StringBuilder
sendUser
=
null
;
if
(
Common
.
isNotKong
(
useruserWx
))
{
sendUser
=
new
StringBuilder
(
useruserWx
);
}
if
(
sendUser
!=
null
)
{
RestTemplate
restTemplate
=
new
RestTemplate
();
Map
<
String
,
Object
>
requestMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
textcard
=
new
HashMap
<>();
textcard
.
put
(
"title"
,
"派单办理失败提醒"
);
textcard
.
put
(
"url"
,
String
.
format
(
SecurityConstants
.
WX_GET_MESSAGE_AUTH_URL
,
wxConfig
.
getCorpid
(),
wxConfig
.
getDomainName
()
+
"/auth/oauth/wxLogin"
,
"66"
));
textcard
.
put
(
"description"
,
content
);
requestMap
.
put
(
"touser"
,
sendUser
);
requestMap
.
put
(
"agentid"
,
wxConfig
.
getAgentid
());
requestMap
.
put
(
"msgtype"
,
"textcard"
);
requestMap
.
put
(
"textcard"
,
textcard
);
// 必须加上header说明
if
(!
wxConfig
.
sendTextCard
(
restTemplate
,
requestMap
))
{
wxConfig
.
sendTextCard
(
restTemplate
,
requestMap
);
}
}
}
}
\ No newline at end of file
yifu-social/yifu-social-biz/src/main/resources/application-dev.yml
View file @
efc91385
...
@@ -78,4 +78,12 @@ socialFriend:
...
@@ -78,4 +78,12 @@ socialFriend:
appSecret
:
V52dkvxtFUgIvzlfNE9G8g==
appSecret
:
V52dkvxtFUgIvzlfNE9G8g==
#线上
#线上
#appKey : 3082B14EE2114C2D93B3A222DD925C26=
#appKey : 3082B14EE2114C2D93B3A222DD925C26=
#appSecret : VmURqoxqmoKnNLXzAWynqQ==
#appSecret : VmURqoxqmoKnNLXzAWynqQ==
\ No newline at end of file
#企业微信配置
wx
:
corpid
:
wwbcb090af0dfe50e5
corpsecret
:
16kqEL_eU-ARwYyqLgEBWHgxm8gXVnkzv_eJMLy9NpU
agentid
:
1000010
authUrl
:
https://test-wx.worfu.com/yifu-auth/method/oauth/wxLogin
domainName
:
https://test-wx.worfu.com
\ No newline at end of file
yifu-social/yifu-social-biz/src/main/resources/application-prd.yml
View file @
efc91385
...
@@ -67,4 +67,12 @@ socialFriend:
...
@@ -67,4 +67,12 @@ socialFriend:
urlDownloadEmployeeFeedback
:
/gateway/pts/hrss/sourceFile/downloadEmployeeFeedback
urlDownloadEmployeeFeedback
:
/gateway/pts/hrss/sourceFile/downloadEmployeeFeedback
urlUpload
:
/gateway/file/upload
urlUpload
:
/gateway/file/upload
appKey
:
3082B14EE2114C2D93B3A222DD925C26=
appKey
:
3082B14EE2114C2D93B3A222DD925C26=
appSecret
:
VmURqoxqmoKnNLXzAWynqQ==
appSecret
:
VmURqoxqmoKnNLXzAWynqQ==
\ No newline at end of file
#企业微信配置
wx
:
corpid
:
wwbcb090af0dfe50e5
corpsecret
:
16kqEL_eU-ARwYyqLgEBWHgxm8gXVnkzv_eJMLy9NpU
agentid
:
1000010
authUrl
:
https://test-wx.worfu.com/yifu-auth/method/oauth/wxLogin
domainName
:
https://test-wx.worfu.com
\ No newline at end of file
yifu-social/yifu-social-biz/src/main/resources/application-test.yml
View file @
efc91385
...
@@ -66,4 +66,12 @@ socialFriend:
...
@@ -66,4 +66,12 @@ socialFriend:
urlDownloadEmployeeFeedback
:
/gateway/pts/hrss/sourceFile/downloadEmployeeFeedback
urlDownloadEmployeeFeedback
:
/gateway/pts/hrss/sourceFile/downloadEmployeeFeedback
urlUpload
:
/gateway/file/upload
urlUpload
:
/gateway/file/upload
appKey
:
89357285571962202409230949030
appKey
:
89357285571962202409230949030
appSecret
:
V52dkvxtFUgIvzlfNE9G8g==
appSecret
:
V52dkvxtFUgIvzlfNE9G8g==
\ No newline at end of file
#企业微信配置
wx
:
corpid
:
wwbcb090af0dfe50e5
corpsecret
:
16kqEL_eU-ARwYyqLgEBWHgxm8gXVnkzv_eJMLy9NpU
agentid
:
1000010
authUrl
:
https://test-wx.worfu.com/yifu-auth/method/oauth/wxLogin
domainName
:
https://test-wx.worfu.com
\ No newline at end of file
yifu-social/yifu-social-biz/src/main/resources/mapper/TSocialWarnMapper.xml
0 → 100644
View file @
efc91385
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialWarnMapper"
>
<select
id=
"getSocialAlertToWx"
resultType=
"com.yifu.cloud.plus.v1.yifu.social.vo.TSocialAlert"
>
select
d.CREATE_BY createBy,d.CREATE_NAME createName
,sum(if(d.SOCIAL_HANDLE_STATUS in ('2','3'),1,0)) socialNum
,sum(if(d.FUND_HANDLE_STATUS = '2',1,0)) fundNum
from t_dispatch_info d
where d.CREATE_TIME >= CONCAT(DATE_SUB(CURDATE(), INTERVAL 1 DAY), ' 00:00:00')
and d.CREATE_TIME
<![CDATA[ <= ]]>
CONCAT(CURDATE(), ' 00:00:00')
and (d.SOCIAL_HANDLE_STATUS in ('2','3') or d.FUND_HANDLE_STATUS = '2')
GROUP BY d.CREATE_BY
</select>
</mapper>
yifu-upms/yifu-upms-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/admin/controller/UserController.java
View file @
efc91385
...
@@ -734,4 +734,28 @@ public class UserController {
...
@@ -734,4 +734,28 @@ public class UserController {
}
}
return
naVo
;
return
naVo
;
}
}
/**
* @Author hgw
* @Description 获取所有在用的账号,key是userId
* @Date 2025-8-1 14:48:15
**/
@Inner
@PostMapping
(
value
=
{
"/inner/getInUseUserByIds"
})
public
SysUsersVo
getInUseUserByIds
(
@RequestBody
String
userIds
)
{
SysUsersVo
naVo
=
new
SysUsersVo
();
if
(
Common
.
isNotNull
(
userIds
))
{
//获取所有在用的账号
List
<
SysUser
>
sysUsers
=
userService
.
list
(
Wrappers
.<
SysUser
>
query
().
lambda
()
.
eq
(
SysUser:
:
getLockFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
SysUser:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
)
.
in
(
SysUser:
:
getUserId
,
Common
.
getList
(
userIds
)));
if
(
Common
.
isNotEmpty
(
sysUsers
))
{
Map
<
String
,
SysUser
>
userMap
=
sysUsers
.
stream
().
collect
(
Collectors
.
toMap
(
SysUser:
:
getUserId
,
v
->
v
));
naVo
.
setUserList
(
userMap
);
}
}
return
naVo
;
}
}
}
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