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
3c5d3ea4
Commit
3c5d3ea4
authored
May 13, 2025
by
hongguangwu
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'MVP1.7.10' into develop
parents
2db4b443
364e2614
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
60 changed files
with
2293 additions
and
307 deletions
+2293
-307
EmployeeContractVO.java
...fu/cloud/plus/v1/yifu/archives/vo/EmployeeContractVO.java
+2
-2
TEmployeeInfoController.java
.../v1/yifu/archives/controller/TEmployeeInfoController.java
+38
-0
TEmployeeInfoMapper.java
...oud/plus/v1/yifu/archives/mapper/TEmployeeInfoMapper.java
+3
-0
TEmployeeInfoService.java
...d/plus/v1/yifu/archives/service/TEmployeeInfoService.java
+22
-0
TEmployeeInfoServiceImpl.java
.../yifu/archives/service/impl/TEmployeeInfoServiceImpl.java
+83
-1
TEmployeeInfoMapper.xml
...ves-biz/src/main/resources/mapper/TEmployeeInfoMapper.xml
+13
-0
TEmployeeProjectMapper.xml
...-biz/src/main/resources/mapper/TEmployeeProjectMapper.xml
+1
-0
ExcelAttributeConstants.java
...v1/yifu/common/core/constant/ExcelAttributeConstants.java
+6
-0
Common.java
.../com/yifu/cloud/plus/v1/yifu/common/core/util/Common.java
+16
-0
EasyExcelStyle.java
...u/cloud/plus/v1/yifu/common/core/util/EasyExcelStyle.java
+78
-0
ArchivesDaprUtil.java
...cloud/plus/v1/yifu/common/dapr/util/ArchivesDaprUtil.java
+15
-0
application.properties
...ifu-common-ldap/src/main/resources/application.properties
+5
-1
EkpSocialInfoServiceImpl.java
...ud/plus/v1/ekp/service/impl/EkpSocialInfoServiceImpl.java
+230
-165
IcbcTransactionFlowIssueServiceImpl.java
...ekp/service/impl/IcbcTransactionFlowIssueServiceImpl.java
+5
-2
BatchIgnoreVo.java
.../yifu/cloud/plus/v1/yifu/insurances/vo/BatchIgnoreVo.java
+38
-0
InsuranceAlertWx.java
...fu/cloud/plus/v1/yifu/insurances/vo/InsuranceAlertWx.java
+43
-0
InsuranceAlertWxVo.java
.../cloud/plus/v1/yifu/insurances/vo/InsuranceAlertWxVo.java
+37
-0
TInsurancesWarnController.java
...yifu/insurances/controller/TInsurancesWarnController.java
+20
-2
TInsuranceDetailMapper.java
.../insurances/mapper/insurances/TInsuranceDetailMapper.java
+2
-2
TInsuranceWarnMapper.java
...fu/insurances/mapper/insurances/TInsuranceWarnMapper.java
+4
-0
TInsuranceDetailService.java
...insurances/service/insurance/TInsuranceDetailService.java
+1
-1
TInsuranceWarnService.java
...u/insurances/service/insurance/TInsuranceWarnService.java
+3
-0
TInsuranceDetailServiceImpl.java
...s/service/insurance/impl/TInsuranceDetailServiceImpl.java
+15
-6
TInsuranceWarnServiceImpl.java
...ces/service/insurance/impl/TInsuranceWarnServiceImpl.java
+276
-8
TInsuranceDetailMapper.xml
...in/resources/mapper/insurances/TInsuranceDetailMapper.xml
+2
-2
TInsuranceWarnMapper.xml
...main/resources/mapper/insurances/TInsuranceWarnMapper.xml
+12
-0
UpdateOverdueTask.java
...com/yifu/cloud/plus/v1/job/compont/UpdateOverdueTask.java
+12
-0
TAuditExportStandardVo.java
.../cloud/plus/v1/yifu/salary/vo/TAuditExportStandardVo.java
+2
-0
TSalaryAccountExportSpecialItemVo.java
.../v1/yifu/salary/vo/TSalaryAccountExportSpecialItemVo.java
+20
-0
TSalaryAccountExportSpecialVo.java
...plus/v1/yifu/salary/vo/TSalaryAccountExportSpecialVo.java
+70
-0
TSalaryAccountExportVo.java
.../cloud/plus/v1/yifu/salary/vo/TSalaryAccountExportVo.java
+3
-0
TSalaryAccountController.java
...s/v1/yifu/salary/controller/TSalaryAccountController.java
+38
-63
TSalaryAccountMapper.java
...loud/plus/v1/yifu/salary/mapper/TSalaryAccountMapper.java
+10
-0
TSalaryAccountService.java
...ud/plus/v1/yifu/salary/service/TSalaryAccountService.java
+9
-0
TSalaryAccountServiceImpl.java
...1/yifu/salary/service/impl/TSalaryAccountServiceImpl.java
+180
-1
TSalaryAccountMapper.xml
...ry-biz/src/main/resources/mapper/TSalaryAccountMapper.xml
+102
-0
DispatchConstants.java
...loud/plus/v1/yifu/social/constants/DispatchConstants.java
+1
-0
SysHouseHoldInfo.java
...fu/cloud/plus/v1/yifu/social/entity/SysHouseHoldInfo.java
+9
-0
TAttaInfo.java
.../com/yifu/cloud/plus/v1/yifu/social/entity/TAttaInfo.java
+2
-4
TDispatchInfo.java
.../yifu/cloud/plus/v1/yifu/social/entity/TDispatchInfo.java
+10
-0
TSocialInfo.java
...om/yifu/cloud/plus/v1/yifu/social/entity/TSocialInfo.java
+57
-0
FundImportHandleVo.java
...yifu/cloud/plus/v1/yifu/social/vo/FundImportHandleVo.java
+8
-0
SocialImportHandleVo.java
...fu/cloud/plus/v1/yifu/social/vo/SocialImportHandleVo.java
+8
-0
TDispatchImportVo.java
.../yifu/cloud/plus/v1/yifu/social/vo/TDispatchImportVo.java
+1
-1
TDispatchReduceVo.java
.../yifu/cloud/plus/v1/yifu/social/vo/TDispatchReduceVo.java
+1
-1
FileUploadController.java
.../plus/v1/yifu/social/controller/FileUploadController.java
+29
-1
SysHouseHoldInfoController.java
...v1/yifu/social/controller/SysHouseHoldInfoController.java
+21
-0
TDispatchInfoController.java
...us/v1/yifu/social/controller/TDispatchInfoController.java
+42
-2
TSocialInfoController.java
...plus/v1/yifu/social/controller/TSocialInfoController.java
+55
-33
TDispatchInfoMapper.java
...cloud/plus/v1/yifu/social/mapper/TDispatchInfoMapper.java
+21
-0
TAuditInfoService.java
.../cloud/plus/v1/yifu/social/service/TAuditInfoService.java
+11
-0
TDispatchInfoService.java
...oud/plus/v1/yifu/social/service/TDispatchInfoService.java
+18
-1
TSocialInfoService.java
...cloud/plus/v1/yifu/social/service/TSocialInfoService.java
+45
-0
TAuditInfoServiceImpl.java
...us/v1/yifu/social/service/impl/TAuditInfoServiceImpl.java
+28
-0
TDispatchInfoServiceImpl.java
...v1/yifu/social/service/impl/TDispatchInfoServiceImpl.java
+110
-3
TSocialInfoServiceImpl.java
...s/v1/yifu/social/service/impl/TSocialInfoServiceImpl.java
+204
-0
SysHouseHoldInfoMapper.xml
...-biz/src/main/resources/mapper/SysHouseHoldInfoMapper.xml
+3
-1
TDispatchInfoMapper.xml
...ial-biz/src/main/resources/mapper/TDispatchInfoMapper.xml
+190
-2
SysUserServiceImpl.java
...d/plus/v1/yifu/admin/service/impl/SysUserServiceImpl.java
+1
-1
application.yml
yifu-upms/yifu-upms-biz/src/main/resources/application.yml
+2
-1
No files found.
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/vo/EmployeeContractVO.java
View file @
3c5d3ea4
...
...
@@ -184,9 +184,9 @@ public class EmployeeContractVO extends RowIndex implements Serializable {
@ExcelProperty
(
"档案柜号"
)
private
String
fileCabinetNo
;
/**
* 离职日期
* 离职日期
fxj 2025-05-08 优化线上邮件报错 isDate = true
*/
@ExcelAttribute
(
name
=
"离职日期"
)
@ExcelAttribute
(
name
=
"离职日期"
,
isDate
=
true
)
@Schema
(
description
=
"离职日期"
)
@ExcelProperty
(
"离职日期"
)
private
String
leaveDate
;
...
...
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/controller/TEmployeeInfoController.java
View file @
3c5d3ea4
...
...
@@ -48,6 +48,7 @@ import javax.servlet.http.HttpServletResponse;
import
javax.validation.Valid
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
/**
...
...
@@ -568,4 +569,41 @@ public class TEmployeeInfoController {
tEmployeeInfoService
.
exportEmployeeFile
(
id
,
response
);
}
/**
* @param empName 姓名
* @param empIdCard 身份证
* @Description: 按姓名身份证查询档案-包括离职库
* @Author: hgw
* @Date: 2025-4-23 15:34:26
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Operation
(
summary
=
"按姓名身份证查询档案-包括离职库"
,
description
=
"按姓名身份证查询档案-包括离职库"
)
@SysLog
(
"按姓名身份证查询档案-包括离职库"
)
@GetMapping
(
"/getByEmpNameAndCard"
)
public
R
<
TEmployeeInfo
>
getByEmpNameAndCard
(
@RequestParam
String
empName
,
@RequestParam
String
empIdCard
)
{
return
tEmployeeInfoService
.
getByEmpNameAndCard
(
empName
,
empIdCard
);
}
/**
* @param empPhoneOld 手机号-原先
* @param empPhoneNew 手机号-新
* @Description: 更新档案手机号-包括离职库
* @Author: hgw
* @Date: 2025-4-23 15:34:26
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Operation
(
summary
=
"更新档案手机号-包括离职库"
,
description
=
"更新档案手机号-包括离职库"
)
@SysLog
(
"更新档案手机号-包括离职库"
)
@GetMapping
(
"/updateEmpPhone"
)
public
R
<
String
>
updateEmpPhone
(
@RequestParam
String
id
,
@RequestParam
String
empPhoneOld
,
@RequestParam
String
empPhoneNew
)
{
return
tEmployeeInfoService
.
updateEmpPhone
(
id
,
empPhoneOld
,
empPhoneNew
);
}
/**
* 远程接口获取非在职档案(无档案或已离职)
*/
@Inner
@PostMapping
(
"/inner/getEmpOnlineMap"
)
public
Set
<
String
>
getCustomerUserMap
(
@RequestBody
List
<
String
>
empIdCardList
)
{
return
tEmployeeInfoService
.
getEmpOnlineMap
(
empIdCardList
);
}
}
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/mapper/TEmployeeInfoMapper.java
View file @
3c5d3ea4
...
...
@@ -26,6 +26,7 @@ import org.apache.ibatis.annotations.Mapper;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Set
;
/**
* 人员档案表
...
...
@@ -143,4 +144,6 @@ public interface TEmployeeInfoMapper extends BaseMapper<TEmployeeInfo> {
List
<
HcmEmployeeInfoVO
>
getHcmEmpInfoList
(
@Param
(
"idCardList"
)
List
<
String
>
idCardList
);
void
updateEmployeeAgeTask
();
Set
<
String
>
getEmpOnlineMap
(
@Param
(
"empIdCardList"
)
List
<
String
>
empIdCardList
);
}
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/TEmployeeInfoService.java
View file @
3c5d3ea4
...
...
@@ -31,6 +31,7 @@ import javax.servlet.http.HttpServletResponse;
import
java.io.InputStream
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
/**
* 人员档案表
...
...
@@ -271,4 +272,25 @@ public interface TEmployeeInfoService extends IService<TEmployeeInfo> {
List
<
TEmployeeInfo
>
getListByDeptIdByLimit
(
String
deptId
,
Integer
limit1
,
Integer
limit2
);
/**
* @param empPhoneOld 手机号-原先
* @param empPhoneNew 手机号-新
* @Description: 更新档案手机号-包括离职库
* @Author: hgw
* @Date: 2025-4-23 15:34:26
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
R
<
String
>
updateEmpPhone
(
String
id
,
String
empPhoneOld
,
String
empPhoneNew
);
/**
* @param empName
* @param empIdCard
* @Description: 按姓名身份证查询档案
* @Author: hgw
* @Date: 2025/4/23 16:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo>
**/
R
<
TEmployeeInfo
>
getByEmpNameAndCard
(
String
empName
,
String
empIdCard
);
Set
<
String
>
getEmpOnlineMap
(
List
<
String
>
empIdCardList
);
}
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/impl/TEmployeeInfoServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -26,6 +26,7 @@ import com.alibaba.excel.read.metadata.holder.ReadRowHolder;
import
com.alibaba.excel.util.ListUtils
;
import
com.alibaba.excel.write.metadata.WriteSheet
;
import
com.baomidou.lock.annotation.Lock4j
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
...
...
@@ -2859,7 +2860,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
TEmployeeInfo
tEmployeeInfo
=
baseMapper
.
selectOne
(
Wrappers
.<
TEmployeeInfo
>
query
().
lambda
()
.
eq
(
TEmployeeInfo:
:
getEmpIdcard
,
project
.
getEmpIdcard
())
.
eq
(
TEmployeeInfo:
:
getDeleteFlag
,
CommonConstants
.
STATUS_NORMAL
)
.
eq
(
TEmployeeInfo:
:
getFileStatus
,
CommonConstants
.
ZERO_INT
));
.
eq
(
TEmployeeInfo:
:
getFileStatus
,
CommonConstants
.
ZERO_INT
)
.
last
(
CommonConstants
.
LAST_ONE_SQL
)
);
if
(
Common
.
isNotNull
(
tEmployeeInfo
))
{
TEmployeeInfo
tEmployeeInfoCompare
=
baseMapper
.
selectById
(
tEmployeeInfo
.
getId
());
if
(
Common
.
isNotNull
(
tEmployeeInfo
.
getProjectNum
()))
{
...
...
@@ -4214,4 +4215,85 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
tEmpDisabilityInfoService
.
saveBatch
(
disabilityRecordList
);
}
}
/**
* @param empPhoneOld 手机号-原先
* @param empPhoneNew 手机号-新
* @Description: 更新档案手机号-包括离职库
* @Author: hgw
* @Date: 2025-4-23 15:34:26
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Override
public
R
<
String
>
updateEmpPhone
(
String
id
,
String
empPhoneOld
,
String
empPhoneNew
)
{
if
(
empPhoneOld
.
equals
(
empPhoneNew
))
{
return
R
.
failed
(
"手机号未发生变化"
);
}
// 1:判断姓名、身份证是否存在
// 2:如果不存在,返回提示语:无该员工信息
// 3:如果存在,判断手机号old对不对,不对则返回提示语:旧手机号错误
// 4:如果手机号old对,判断手机号new对不对,不对则返回提示语:新手机号校验不通过
// 5:如果手机号new校验通过,判断手机号new是否已存在,存在则返回提示语:手机号已被其他身份证使用
// 6:如果手机号new未被使用,则更新手机号,并返回提示语:更新成功
TEmployeeInfo
emp
=
this
.
getById
(
id
);
if
(
emp
!=
null
)
{
if
(!
emp
.
getEmpPhone
().
equals
(
empPhoneOld
))
{
return
R
.
failed
(
"旧手机号发生变化,请重新获取档案信息!"
);
}
TEmployeeInfo
empExist
=
baseMapper
.
selectOne
(
Wrappers
.<
TEmployeeInfo
>
query
().
lambda
()
.
eq
(
TEmployeeInfo:
:
getEmpPhone
,
empPhoneNew
).
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
empExist
!=
null
)
{
return
R
.
failed
(
"手机号已被使用"
);
}
TCheckMobile
checkMobile
=
new
TCheckMobile
();
checkMobile
.
setMobile
(
empPhoneNew
);
R
<
TCheckMobile
>
a
=
HttpDaprUtil
.
invokeMethodPost
(
daprCheckProperties
.
getAppUrl
(),
daprCheckProperties
.
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
()))
{
// 校验服务判断了1、4、5都返回为1,因此仅判断1即可
if
(!
CommonConstants
.
ONE_STRING
.
equals
(
checkMobile
.
getStatus
()))
{
return
R
.
failed
(
"手机号校验失败:"
+
checkMobile
.
getMessage
());
}
}
else
{
return
R
.
failed
(
EmployeeConstants
.
CHECK_ERROR
);
}
}
else
{
return
R
.
failed
(
EmployeeConstants
.
CHECK_ERROR
);
}
// 可以更新:
emp
.
setEmpPhone
(
empPhoneNew
);
baseMapper
.
updateById
(
emp
);
return
R
.
ok
(
"更新成功!"
);
}
else
{
return
R
.
failed
(
"无该人员信息,不可修改手机号!"
);
}
}
@Override
public
R
<
TEmployeeInfo
>
getByEmpNameAndCard
(
String
empName
,
String
empIdCard
)
{
TEmployeeInfo
emp
=
baseMapper
.
selectOne
(
Wrappers
.<
TEmployeeInfo
>
query
().
lambda
()
.
eq
(
TEmployeeInfo:
:
getEmpIdcard
,
empIdCard
).
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
emp
!=
null
)
{
if
(
empName
.
equals
(
emp
.
getEmpName
()))
{
return
new
R
<>(
emp
);
}
else
{
return
R
.
failed
(
"姓名与身份证不匹配!"
);
}
}
else
{
return
R
.
failed
(
"无该人员信息,不可修改手机号"
);
}
}
/**
* 远程接口获取非在职档案(无档案或已离职)
*/
@Override
public
Set
<
String
>
getEmpOnlineMap
(
List
<
String
>
empIdCardList
)
{
if
(
empIdCardList
==
null
||
empIdCardList
.
isEmpty
())
{
return
null
;
// 返回空
}
return
baseMapper
.
getEmpOnlineMap
(
empIdCardList
);
}
}
yifu-archives/yifu-archives-biz/src/main/resources/mapper/TEmployeeInfoMapper.xml
View file @
3c5d3ea4
...
...
@@ -1400,4 +1400,17 @@
<update
id=
"updateEmployeeAgeTask"
>
update t_employee_info set EMP_AGE = YEAR(CURRENT_DATE())-YEAR(STR_TO_DATE(SUBSTRING(EMP_IDCARD,7,4),'%Y')) where EMP_IDCARD is not null and DELETE_FLAG='0' and SUBSTRING(EMP_IDCARD,7,1) in ('1','2')
</update>
<select
id=
"getEmpOnlineMap"
resultType=
"java.lang.String"
>
SELECT EMP_IDCARD
FROM t_employee_info
WHERE EMP_IDCARD IN
<foreach
item=
"idCard"
index=
"index"
collection=
"empIdCardList"
open=
"("
separator=
","
close=
")"
>
#{idCard}
</foreach>
and FILE_STATUS = '1'
<!-- 已减档 -->
and DELETE_FLAG ='0'
<!-- 未删除 -->
</select>
</mapper>
yifu-archives/yifu-archives-biz/src/main/resources/mapper/TEmployeeProjectMapper.xml
View file @
3c5d3ea4
...
...
@@ -655,6 +655,7 @@
where id = #{i.id}
</foreach>
</update>
<insert
id=
"insertExcelEmpProject"
parameterType=
"java.util.List"
>
insert into t_employee_project
(ID,EMP_ID,EMP_NATRUE,EMP_NAME,EMP_IDCARD,STATUS,PROJECT_STATUS,EMP_CODE,DEPT_NO,CONTRACT_TYPE,POST,
...
...
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/constant/ExcelAttributeConstants.java
View file @
3c5d3ea4
...
...
@@ -159,4 +159,10 @@ public class ExcelAttributeConstants {
public
static
final
String
SOCIAL_DISPATCH_HANDLE_REASON
=
"social-conduct-add-reason"
;
// 公积金办理失败类型
public
static
final
String
FUND_DISPATCH_HANDLE_REASON
=
"fund-conduct-add-reason"
;
//社保派增委托备注
public
static
final
String
TRUST_REMARK_REDUCE
=
"trustRemarkReduce"
;
//社保派减委托备注
public
static
final
String
TRUST_REMARK_ADD
=
"trustRemark"
;
}
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/util/Common.java
View file @
3c5d3ea4
...
...
@@ -40,6 +40,22 @@ public class Common {
public
static
boolean
isEmpty
(
String
str
)
{
return
null
==
str
||
""
.
equals
(
str
.
trim
())
||
"null"
.
equals
(
str
.
trim
())
||
"undefinded"
.
equals
(
str
.
trim
());
}
/**
* @Author fxj
* @Description 字符串空 转换为0 异常转换为0
* @Date 15:17 2025/4/24
**/
public
static
int
isEmptyToZero
(
String
str
)
{
if
(
isEmpty
(
str
)){
return
0
;
}
try
{
return
Integer
.
parseInt
(
str
);
}
catch
(
Exception
e
){
return
0
;
}
}
/**
* 截取startStr和endStr中间的字符串(开区间)
*
...
...
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/util/EasyExcelStyle.java
0 → 100644
View file @
3c5d3ea4
/**
* Copyright © 2017yifu. All rights reserved.
*
* @Title: NumberToCN.java
* @Prject: wanxin_hr
* @Package: com.yifu.util
* @Description: TODO
* @author: Administrator
* @date: 2017年5月8日 下午6:45:01
* @version: V1.0
*/
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
common
.
core
.
util
;
import
com.alibaba.excel.write.metadata.style.WriteCellStyle
;
import
com.alibaba.excel.write.metadata.style.WriteFont
;
import
com.alibaba.excel.write.style.HorizontalCellStyleStrategy
;
import
org.apache.poi.ss.usermodel.BorderStyle
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.apache.poi.ss.usermodel.IndexedColors
;
/**
* @Author: wangan-hgw
* @Date: 2019/8/9-2025-4-21 15:32:18
* @Description: Excel样式, 从老hr复制过
* @return:
**/
public
class
EasyExcelStyle
{
// 私有构造函数,防止实例化
private
EasyExcelStyle
()
{
throw
new
UnsupportedOperationException
(
"工具类不能被实例化"
);
}
/**
* @param
* @Description: 设置倩倩审美下的excel样式
* @Author: hgw
* @Date: 2024/7/9 20:30
* @return: com.alibaba.excel.write.style.HorizontalCellStyleStrategy
**/
public
static
HorizontalCellStyleStrategy
getBaseStyle
()
{
// 表头——单元格样式对象
WriteCellStyle
headWriteCellStyle
=
new
WriteCellStyle
();
headWriteCellStyle
.
setWrapped
(
false
);
// 背景设置为白色,也可设置为其他颜色
headWriteCellStyle
.
setFillForegroundColor
(
IndexedColors
.
WHITE
.
getIndex
());
// 设置表头字体
WriteFont
headWriteFont
=
new
WriteFont
();
// 设置字体大小为12
headWriteFont
.
setFontHeightInPoints
((
short
)
12
);
// 设置加粗
headWriteFont
.
setBold
(
true
);
// 把字体对象设置到单元格样式对象中
headWriteCellStyle
.
setWriteFont
(
headWriteFont
);
//设置表头居中
headWriteCellStyle
.
setHorizontalAlignment
(
HorizontalAlignment
.
CENTER
);
// 内容——单元格样式对象
WriteCellStyle
contentWriteCellStyle
=
new
WriteCellStyle
();
contentWriteCellStyle
.
setWrapped
(
false
);
// 背景设置为白色,也可设置为其他颜色
contentWriteCellStyle
.
setFillForegroundColor
(
IndexedColors
.
WHITE
.
getIndex
());
contentWriteCellStyle
.
setBorderTop
(
BorderStyle
.
THIN
);
contentWriteCellStyle
.
setBorderBottom
(
BorderStyle
.
THIN
);
contentWriteCellStyle
.
setBorderLeft
(
BorderStyle
.
THIN
);
contentWriteCellStyle
.
setBorderRight
(
BorderStyle
.
THIN
);
// 设置表头字体
WriteFont
contentWriteFont
=
new
WriteFont
();
// 设置字体大小为12
contentWriteFont
.
setFontHeightInPoints
((
short
)
11
);
// 把字体对象设置到单元格样式对象中
contentWriteCellStyle
.
setWriteFont
(
contentWriteFont
);
//设置表头居中
contentWriteCellStyle
.
setHorizontalAlignment
(
HorizontalAlignment
.
CENTER
);
HorizontalCellStyleStrategy
horizontalCellStyleStrategy
=
new
HorizontalCellStyleStrategy
(
headWriteCellStyle
,
contentWriteCellStyle
);
return
horizontalCellStyleStrategy
;
}
}
yifu-common/yifu-common-dapr/src/main/java/com/yifu/cloud/plus/v1/yifu/common/dapr/util/ArchivesDaprUtil.java
View file @
3c5d3ea4
...
...
@@ -22,6 +22,7 @@ import org.springframework.boot.context.properties.EnableConfigurationProperties
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
/**
* @Author fxj
...
...
@@ -574,4 +575,18 @@ public class ArchivesDaprUtil {
}
return
res
;
}
/**
* @Author fxj
* @Description 远程接口获取非在职档案(无档案或已离职)
* @Date 10:51 2025/4/24
**/
public
R
<
Set
<
String
>>
getEmpOnlineMap
(
List
<
String
>
empIdCardList
){
R
<
Set
>
res
=
HttpDaprUtil
.
invokeMethodPost
(
daprArchivesProperties
.
getAppUrl
(),
daprArchivesProperties
.
getAppId
(),
"/temployeeinfo/inner/getEmpOnlineMap"
,
JSON
.
toJSONString
(
empIdCardList
),
Set
.
class
,
SecurityConstants
.
FROM_IN
);
if
(
Common
.
isEmpty
(
res
)){
return
R
.
failed
(
"获取档案派单信息失败!"
);
}
Set
<
String
>
map
=
JSON
.
parseObject
(
JSON
.
toJSONString
(
res
.
getData
()),
new
TypeReference
<
Set
<
String
>>(){});
return
R
.
ok
(
map
);
}
}
yifu-common/yifu-common-ldap/src/main/resources/application.properties
View file @
3c5d3ea4
spring.ldap.urls
=
ldap://192.168.0.240:389
spring.ldap.username
=
cn=admin,dc=worfu,dc=com
spring.ldap.password
=
Yifu123ABC!
spring.ldap.base
=
dc=worfu,dc=com
\ No newline at end of file
spring.ldap.base
=
dc=worfu,dc=com
#ldap\u6D4B\u8BD5\u73AF\u5883\u914D\u7F6E-hgw-2025-04-23
#spring.ldap.urls=ldap://192.168.1.65:389
#
spring.ldap.password
=
yifu123456!
\ No newline at end of file
yifu-ekp/yifu-ekp-biz/src/main/java/com/yifu/cloud/plus/v1/ekp/service/impl/EkpSocialInfoServiceImpl.java
View file @
3c5d3ea4
This diff is collapsed.
Click to expand it.
yifu-ekp/yifu-ekp-biz/src/main/java/com/yifu/cloud/plus/v1/ekp/service/impl/IcbcTransactionFlowIssueServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -1042,7 +1042,7 @@ public class IcbcTransactionFlowIssueServiceImpl extends ServiceImpl<EkpSocialIn
int
port
=
8001
;
String
username
=
"wxrl"
;
// String privateKeyPath = "/path/to/your/private_key"; // 替换为你的私钥路径
String
privateKeyPath
=
"D:/icbcFile/i
d_rsa
"
;
// 替换为你的私钥路径
String
privateKeyPath
=
"D:/icbcFile/i
cbc
"
;
// 替换为你的私钥路径
String
remoteDir
=
"/JFTStatementDownload/download"
;
String
localPath
=
"D:/icbcFile/pdfFile"
;
// 替换为本地保存路径
...
...
@@ -1051,7 +1051,8 @@ public class IcbcTransactionFlowIssueServiceImpl extends ServiceImpl<EkpSocialIn
try
{
JSch
jsch
=
new
JSch
();
// // 如果有密码,添加密码参数
// jsch.addIdentity(privateKeyPath, "root@yfmaster1");
// 添加私钥(注意:需要是没有密码保护的私钥)
jsch
.
addIdentity
(
privateKeyPath
);
...
...
@@ -1074,6 +1075,8 @@ public class IcbcTransactionFlowIssueServiceImpl extends ServiceImpl<EkpSocialIn
Vector
<
ChannelSftp
.
LsEntry
>
files
=
channelSftp
.
ls
(
"*"
);
log
.
info
(
"找到文件数量: "
+
files
.
size
());
//ESC 字符:在 Java 中,ESC 字符可以用 \u001B 表示。
//如果输入字符串中可能包含连续的 ESC 字符(如 \u001B\u001B),split("\u001B") 会在结果数组中生成空字符串("")。如果需要过滤掉空字符串,可以使用 split("\u001B", -1) 或后续处理。
// 下载所有文件
for
(
ChannelSftp
.
LsEntry
entry
:
files
)
{
if
(!
entry
.
getAttrs
().
isDir
())
{
...
...
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/vo/BatchIgnoreVo.java
0 → 100644
View file @
3c5d3ea4
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
insurances
.
vo
;
import
com.baomidou.mybatisplus.annotation.FieldStrategy
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.yifu.cloud.plus.v1.yifu.insurances.entity.TBusinessOperate
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
* @Author fxj
* @Description 批量备注接受对象
* @Date 17:00 2025/4/24
**/
@Data
@Schema
(
description
=
"批量备注接受对象"
)
public
class
BatchIgnoreVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
628032758008497542L
;
/**
* 更新主键集合ids
*/
@Schema
(
description
=
"更新主键集合ids"
)
private
List
<
String
>
ids
;
/**
* 忽略备注
*/
@Schema
(
description
=
"忽略备注"
)
private
String
remark
;
}
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/vo/InsuranceAlertWx.java
0 → 100644
View file @
3c5d3ea4
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
insurances
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @Author fxj
* @Description 企业微信推送商险到期提醒
* @Date 19:13 2025/4/23
* @Param
* @return
**/
@Data
@Tag
(
name
=
"企业微信推送商险待办信息"
)
public
class
InsuranceAlertWx
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
2689686777914935788L
;
/**
* 项目编码
*/
@Schema
(
description
=
"项目编码"
)
private
String
deptNo
;
/**
* 项目名称
*/
@Schema
(
description
=
"项目名称"
)
private
String
projectName
;
/**
* 临期
*/
@Schema
(
description
=
"临期"
)
private
String
lq
;
/**
* 过期
*/
@Schema
(
description
=
"过期"
)
private
String
gq
;
}
yifu-insurances/yifu-insurances-api/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/vo/InsuranceAlertWxVo.java
0 → 100644
View file @
3c5d3ea4
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
insurances
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @Author fxj
* @Description 企业微信推送商险到期提醒组装信息
* @Date 19:13 2025/4/23
* @Param
* @return
**/
@Data
@Tag
(
name
=
"企业微信推送商险待办信息组装信息"
)
public
class
InsuranceAlertWxVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
2689686777914935788L
;
/**
* 项目数
*/
@Schema
(
description
=
"项目数"
)
private
int
domainNum
;
/**
* 临期数
*/
@Schema
(
description
=
"临期数"
)
private
int
lqNum
;
/**
* 过期数
*/
@Schema
(
description
=
"过期数"
)
private
int
gqNum
;
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/controller/TInsurancesWarnController.java
View file @
3c5d3ea4
...
...
@@ -2,12 +2,14 @@ package com.yifu.cloud.plus.v1.yifu.insurances.controller;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
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.log.annotation.SysLog
;
import
com.yifu.cloud.plus.v1.yifu.common.security.annotation.Inner
;
import
com.yifu.cloud.plus.v1.yifu.insurances.service.insurance.TInsuranceDetailService
;
import
com.yifu.cloud.plus.v1.yifu.insurances.service.insurance.TInsuranceWarnService
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.BatchIgnoreVo
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsuranceSearchVo
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.TBusinessInsuranceVo
;
import
io.swagger.v3.oas.annotations.Operation
;
...
...
@@ -112,8 +114,11 @@ public class TInsurancesWarnController {
@SysLog
(
"到期提醒批量忽略"
)
@PutMapping
(
"/batchexpireIgnore"
)
@PreAuthorize
(
"@pms.hasPermission('wxhr:insurance_expireignore')"
)
public
R
<
Object
>
batchexpireIgnore
(
@RequestBody
List
<
String
>
ids
)
{
return
insuranceDetailService
.
batchexpireIgnore
(
ids
);
public
R
<
Object
>
batchexpireIgnore
(
@RequestBody
BatchIgnoreVo
vo
)
{
if
(
null
==
vo
||
vo
.
getIds
()
==
null
||
vo
.
getIds
().
size
()
==
0
){
return
R
.
failed
(
CommonConstants
.
PARAM_IS_NOT_ERROR
);
}
return
insuranceDetailService
.
batchexpireIgnore
(
vo
.
getIds
(),
vo
.
getRemark
());
}
/**
...
...
@@ -139,4 +144,17 @@ public class TInsurancesWarnController {
public
void
createInsuranceAlert
()
{
insuranceWarnService
.
createInsuranceAlert
();
}
/**
* @Author fxj
* @Description 每日09:00推送一条整合的待办数据——只推送前端客服,详情去HRO处理——消息待定:项目名称-项目编码、商险临期人数:**;商险过期人数:**;
* ——项目数:***、商险临期人数:***、商险过期人数:***,请及时至HRO系统进行处理,以免人员脱保!;
* @Date 18:55 2025/4/23
**/
@Operation
(
description
=
"每天9:00推送整合后的待办商险数据给对应项目的前端客服信息"
)
@Inner
@PostMapping
(
"/inner/pushInsuranceAlertToWx"
)
public
void
pushInsuranceAlertToWx
()
{
insuranceWarnService
.
pushInsuranceAlertToWx
();
}
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/mapper/insurances/TInsuranceDetailMapper.java
View file @
3c5d3ea4
...
...
@@ -318,9 +318,9 @@ public interface TInsuranceDetailMapper extends BaseMapper<TInsuranceDetail> {
int
noPageCountDiy
(
@Param
(
"param"
)
InsuranceSearchVo
searchVo
);
void
batchexpireIgnore
(
@Param
(
"idList"
)
List
<
String
>
idList
);
void
batchexpireIgnore
(
@Param
(
"idList"
)
List
<
String
>
idList
,
@Param
(
"remark"
)
String
remark
);
void
batchexpireAlertIgnore
(
@Param
(
"idList"
)
List
<
String
>
idList
);
void
batchexpireAlertIgnore
(
@Param
(
"idList"
)
List
<
String
>
idList
,
@Param
(
"remark"
)
String
remark
);
void
updateExpireAlert
(
@Param
(
"id"
)
String
id
,
@Param
(
"expireFlag"
)
String
expireFlag
,
@Param
(
"remark"
)
String
remark
);
...
...
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/mapper/insurances/TInsuranceWarnMapper.java
View file @
3c5d3ea4
...
...
@@ -3,6 +3,7 @@ package com.yifu.cloud.plus.v1.yifu.insurances.mapper.insurances;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yifu.cloud.plus.v1.yifu.insurances.entity.TInsuranceAlert
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.InsuranceAlertWx
;
import
org.apache.ibatis.annotations.Mapper
;
import
java.util.List
;
...
...
@@ -22,4 +23,7 @@ public interface TInsuranceWarnMapper extends BaseMapper<TInsuranceAlert> {
* @return {@link List < TInsuranceAlert >}
*/
List
<
TInsuranceAlert
>
selectInsuranceAlert
();
List
<
InsuranceAlertWx
>
getInsuranceAlertToWx
();
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/TInsuranceDetailService.java
View file @
3c5d3ea4
...
...
@@ -533,7 +533,7 @@ public interface TInsuranceDetailService extends IService<TInsuranceDetail> {
R
<
Integer
>
getUserInsuranceMessageWarnCount
(
String
userName
);
R
<
Object
>
batchexpireIgnore
(
List
<
String
>
ids
);
R
<
Object
>
batchexpireIgnore
(
List
<
String
>
ids
,
String
remark
);
R
<
Object
>
expireIgnore
(
TBusinessInsuranceVo
vo
);
...
...
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/TInsuranceWarnService.java
View file @
3c5d3ea4
...
...
@@ -12,4 +12,7 @@ import com.yifu.cloud.plus.v1.yifu.insurances.entity.TInsuranceAlert;
public
interface
TInsuranceWarnService
extends
IService
<
TInsuranceAlert
>
{
void
createInsuranceAlert
();
void
pushInsuranceAlertToWx
();
}
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/impl/TInsuranceDetailServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -2989,6 +2989,10 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
listResult
.
add
(
param
);
continue
;
}
//兼容处理,结算月为空时赋值null huych
if
(
Common
.
isEmpty
(
param
.
getSettleMonth
())){
param
.
setSettleMonth
(
null
);
}
//记录查重校验:姓名 + 身份证号 + 保险公司 + 险种 + 保单开始日期~保单结束日期 + 购买标准 是唯一(剔除退回、过期状态的记录)
//待投保、投保中、已投保(有效、未过期)
...
...
@@ -3357,6 +3361,10 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
listResult
.
add
(
param
);
continue
;
}
//兼容处理,结算月为空时赋值null huych
if
(
Common
.
isEmpty
(
param
.
getSettleMonth
())){
param
.
setSettleMonth
(
null
);
}
//记录查重校验:姓名 + 身份证号 + 保单号 + 保险公司 + 险种 + 购买标准
//待投保、投保中、已投保(有效、未过期)
...
...
@@ -7911,13 +7919,13 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
}
@Override
public
R
<
Object
>
batchexpireIgnore
(
List
<
String
>
ids
)
{
if
(
Common
.
isEmpty
(
ids
)){
public
R
<
Object
>
batchexpireIgnore
(
List
<
String
>
ids
,
String
remark
)
{
if
(
Common
.
isEmpty
(
ids
)
||
Common
.
isEmpty
(
remark
)
){
return
R
.
failed
(
CommonConstants
.
PARAM_IS_NOT_ERROR
);
}
baseMapper
.
batchexpireIgnore
(
ids
);
baseMapper
.
batchexpireIgnore
(
ids
,
remark
);
//更新商险到期提醒表
baseMapper
.
batchexpireAlertIgnore
(
ids
);
baseMapper
.
batchexpireAlertIgnore
(
ids
,
remark
);
return
R
.
ok
();
}
...
...
@@ -7997,14 +8005,15 @@ public class TInsuranceDetailServiceImpl extends ServiceImpl<TInsuranceDetailMap
}
@Override
public
R
<
Object
>
expireIgnore
(
TBusinessInsuranceVo
vo
)
{
if
(
Common
.
isEmpty
(
vo
.
getId
()))
{
return
R
.
failed
(
InsurancesConstants
.
UPLOAD_PARAM_CHECK_FAIL
);
if
(
Common
.
isEmpty
(
vo
.
getId
())
||
Common
.
isEmpty
(
vo
.
getExpireRemark
())
)
{
return
R
.
failed
(
CommonConstants
.
PARAM_IS_NOT_ERROR
);
}
TInsuranceDetail
entity
=
baseMapper
.
selectById
(
vo
.
getId
());
if
(
entity
==
null
)
{
return
R
.
failed
(
"未查询到相关商险订单"
);
}
entity
.
setExpireIgnoreFlag
(
CommonConstants
.
ZERO_STRING
);
entity
.
setExpireRemark
(
vo
.
getExpireRemark
());
baseMapper
.
updateById
(
entity
);
baseMapper
.
updateExpireAlert
(
entity
.
getId
(),
CommonConstants
.
ZERO_STRING
,
null
);
return
R
.
ok
();
...
...
yifu-insurances/yifu-insurances-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/insurances/service/insurance/impl/TInsuranceWarnServiceImpl.java
View file @
3c5d3ea4
This diff is collapsed.
Click to expand it.
yifu-insurances/yifu-insurances-biz/src/main/resources/mapper/insurances/TInsuranceDetailMapper.xml
View file @
3c5d3ea4
...
...
@@ -2046,7 +2046,7 @@
<update
id=
"batchexpireIgnore"
>
<if
test=
"idList != null and idList.size() > 0"
>
update t_insurance_detail a
set a.EXPIRE_IGNORE_FLAG = '0'
set a.EXPIRE_IGNORE_FLAG = '0'
,a.EXPIRE_REMARK=#{remark}
where
a.id in
<foreach
collection=
"idList"
item=
"param"
index=
"index"
open=
"("
close=
")"
separator=
","
>
...
...
@@ -2058,7 +2058,7 @@
<update
id=
"batchexpireAlertIgnore"
>
<if
test=
"idList != null and idList.size() > 0"
>
update t_insurance_alert a
set a.EXPIRE_IGNORE_FLAG = '0'
set a.EXPIRE_IGNORE_FLAG = '0'
,a.EXPIRE_REMARK=#{remark}
where
a.id in
<foreach
collection=
"idList"
item=
"param"
index=
"index"
open=
"("
close=
")"
separator=
","
>
...
...
yifu-insurances/yifu-insurances-biz/src/main/resources/mapper/insurances/TInsuranceWarnMapper.xml
View file @
3c5d3ea4
...
...
@@ -144,4 +144,16 @@
AND ll.endTime = a.POLICY_END
where a.DELETE_FLAG = '0'
</select>
<resultMap
id=
"PushWxResultMap"
type=
"com.yifu.cloud.plus.v1.yifu.insurances.vo.InsuranceAlertWx"
>
<result
property=
"projectName"
column=
"DEPT_NAME"
jdbcType=
"VARCHAR"
/>
<result
property=
"deptNo"
column=
"DEPT_NO"
jdbcType=
"VARCHAR"
/>
<result
property=
"lq"
column=
"lq"
jdbcType=
"VARCHAR"
/>
<result
property=
"gq"
column=
"gq"
jdbcType=
"VARCHAR"
/>
</resultMap>
<select
id=
"getInsuranceAlertToWx"
resultMap=
"PushWxResultMap"
>
select a.DEPT_NAME,a.DEPT_NO,
SUM(case when a.IS_OVERDUE='0' THEN 1 ELSE 0 END) as 'lq',
SUM(CASE WHEN a.IS_OVERDUE='1' THEN 1 ELSE 0 END) as 'gq'
from t_insurance_alert a GROUP BY a.DEPT_NO
</select>
</mapper>
yifu-job/yifu-job-api/src/main/java/com/yifu/cloud/plus/v1/job/compont/UpdateOverdueTask.java
View file @
3c5d3ea4
...
...
@@ -98,4 +98,16 @@ public class UpdateOverdueTask {
"/temployeeinsurancepre/inner/pushDisConfrimInsurances"
,
""
,
Void
.
class
,
SecurityConstants
.
FROM_IN
);
log
.
info
(
"-------------每天三点二十推送商险待确认信息-定时任务开始------------"
);
}
/**
* @Author fxj
* @Description 每天刷新商险待办信息到微信
* @Date 20:22 2025/4/23
**/
public
void
everyDaypushInsuranceAlertToWx
()
{
log
.
info
(
"-------------每天刷新商险待办信息到微信-定时任务开始------------"
);
HttpDaprUtil
.
invokeMethodPost
(
daprInsurancesProperties
.
getAppUrl
(),
daprInsurancesProperties
.
getAppId
(),
"/insuranceWarn/inner/pushInsuranceAlertToWx"
,
""
,
Void
.
class
,
SecurityConstants
.
FROM_IN
);
log
.
info
(
"-------------每天刷新商险待办信息到微信-定时任务结束------------"
);
}
}
yifu-salary/yifu-salary-api/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/vo/TAuditExportStandardVo.java
View file @
3c5d3ea4
...
...
@@ -22,4 +22,6 @@ public class TAuditExportStandardVo {
private
String
businessPrimaryTyp
;
private
String
businessSecondType
;
private
String
businessThirdType
;
//新增薪酬申请编号 fxj v1.7.10
private
String
applyNo
;
}
yifu-salary/yifu-salary-api/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/vo/TSalaryAccountExportSpecialItemVo.java
0 → 100644
View file @
3c5d3ea4
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
salary
.
vo
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* 工资条导出-特殊的列-详情
*
* @author hgw
* @date 2019-07-30 15:00:05
*/
@Data
public
class
TSalaryAccountExportSpecialItemVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
String
cnName
;
private
String
textValue
;
private
String
accountId
;
}
yifu-salary/yifu-salary-api/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/vo/TSalaryAccountExportSpecialVo.java
0 → 100644
View file @
3c5d3ea4
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
salary
.
vo
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* 工资条导出-特殊的列
*
* @author hgw
* @date 2019-07-30 15:00:05
*/
@Data
public
class
TSalaryAccountExportSpecialVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
// 工资月份,发放状态,结算月份,项目名称,员工姓名,银行卡号,开户行,身份证号,工资发放方式,社保扣缴月份" +
// ",公积金扣缴月份,社保优先级,公积金优先级,年终奖扣税方案,是否扣除社保,是否扣除公积金
@ExcelProperty
(
"工资月份"
)
private
String
export1
;
@ExcelProperty
(
"发放状态"
)
private
String
export2
;
@ExcelProperty
(
"结算月份"
)
private
String
export3
;
@ExcelProperty
(
"项目名称"
)
private
String
export4
;
@ExcelProperty
(
"员工姓名"
)
private
String
export5
;
@ExcelProperty
(
"银行卡号"
)
private
String
export6
;
@ExcelProperty
(
"开户行"
)
private
String
export7
;
@ExcelProperty
(
"身份证号"
)
private
String
export8
;
@ExcelProperty
(
"工资发放方式"
)
private
String
export9
;
@ExcelProperty
(
"社保扣缴月份"
)
private
String
export10
;
@ExcelProperty
(
"公积金扣缴月份"
)
private
String
export11
;
@ExcelProperty
(
"社保优先级"
)
private
String
export12
;
@ExcelProperty
(
"公积金优先级"
)
private
String
export13
;
@ExcelProperty
(
"年终奖扣税方案"
)
private
String
export14
;
@ExcelProperty
(
"是否扣除社保"
)
private
String
export15
;
@ExcelProperty
(
"是否扣除公积金"
)
private
String
export16
;
@ExcelProperty
(
"工资表主键"
)
private
String
accountId
;
}
yifu-salary/yifu-salary-api/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/vo/TSalaryAccountExportVo.java
View file @
3c5d3ea4
...
...
@@ -132,6 +132,9 @@ public class TSalaryAccountExportVo {
@ExcelProperty
(
"薪酬状态"
)
private
String
status
;
//新增薪酬申请编号 fxj v1.7.10 2025-04-25
@ExcelProperty
(
"薪酬申请单号"
)
private
String
applyNo
;
}
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/controller/TSalaryAccountController.java
View file @
3c5d3ea4
...
...
@@ -17,7 +17,6 @@
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
salary
.
controller
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.TSettleDomainListVo
;
...
...
@@ -37,13 +36,11 @@ import com.yifu.cloud.plus.v1.yifu.insurances.vo.EkpSocialViewVo;
import
com.yifu.cloud.plus.v1.yifu.salary.constants.SalaryConstants
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.THaveSalaryNosocial
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccount
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccountItem
;
import
com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryAccountItemService
;
import
com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryAccountService
;
import
com.yifu.cloud.plus.v1.yifu.salary.util.SalaryCommonUtil
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountSearchVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountSumVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryDetailVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.WageProofDto
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
...
...
@@ -53,9 +50,7 @@ import org.springframework.web.bind.annotation.*;
import
javax.servlet.http.HttpServletResponse
;
import
java.math.BigDecimal
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
...
...
@@ -227,6 +222,32 @@ public class TSalaryAccountController {
tSalaryAccountService
.
exportAsso
(
response
,
searchVo
,
CommonConstants
.
ONE_INT
);
}
/**
* 获取工资条导出
* @author hgw
* @date 2025-4-21 09:30:56
**/
@Operation
(
description
=
"获取工资条导出"
)
@PostMapping
(
"/getEmpAccountExport"
)
@SysLog
(
"获取工资条导出"
)
public
void
getEmpAccountExport
(
HttpServletResponse
response
,
@RequestBody
TSalaryAccountSearchVo
searchVo
)
{
String
empIdCard
=
searchVo
.
getEmpIdcard
();
String
settleDepartId
=
searchVo
.
getDeptId
();
String
settlementMonth
=
searchVo
.
getSettlementMonth
();
String
deptNo
=
searchVo
.
getDeptNo
();
String
empName
=
searchVo
.
getEmpName
();
if
(
Common
.
isEmpty
(
empIdCard
)
&&
Common
.
isEmpty
(
settleDepartId
)
&&
Common
.
isEmpty
(
settlementMonth
)
&&
Common
.
isEmpty
(
deptNo
)
&&
Common
.
isEmpty
(
empName
))
{
tSalaryAccountService
.
exportError
(
response
,
"请输入查询条件"
);
}
else
if
(
Common
.
isNotNull
(
settlementMonth
)
&&
Common
.
isEmpty
(
empIdCard
)
&&
Common
.
isEmpty
(
settleDepartId
)
&&
Common
.
isEmpty
(
deptNo
)
&&
Common
.
isEmpty
(
empName
))
{
tSalaryAccountService
.
exportError
(
response
,
"结算月需配合其他查询条件一起使用,请输入其他查询条件!"
);
}
else
{
tSalaryAccountService
.
exportAsso
(
response
,
searchVo
,
CommonConstants
.
TWO_INT
);
}
}
/**
* @Author fxj
* @Description 获取工资条
...
...
@@ -236,68 +257,22 @@ public class TSalaryAccountController {
**/
@Operation
(
description
=
"获取工资条"
)
@GetMapping
(
"/getEmpAccount"
)
public
R
<
TSalaryDetailVo
>
getEmpAccount
(
String
empIdcard
,
String
settleDepartId
,
String
settlementMonth
,
String
deptNo
,
String
deptName
,
String
empName
)
{
TSalaryDetailVo
salaryDetailVo
=
new
TSalaryDetailVo
();
if
(
Common
.
isEmpty
(
empIdcard
)
&&
Common
.
isEmpty
(
settleDepartId
)
&&
Common
.
isEmpty
(
settlementMonth
)
&&
Common
.
isEmpty
(
deptNo
)
&&
Common
.
isEmpty
(
deptName
)
&&
Common
.
isEmpty
(
empName
))
{
public
R
<
IPage
<
TSalaryAccount
>>
getEmpAccount
(
Page
<
TSalaryAccount
>
page
,
TSalaryAccountSearchVo
searchVo
)
{
String
empIdCard
=
searchVo
.
getEmpIdcard
();
String
settleDepartId
=
searchVo
.
getDeptId
();
String
settlementMonth
=
searchVo
.
getSettlementMonth
();
String
deptNo
=
searchVo
.
getDeptNo
();
String
empName
=
searchVo
.
getEmpName
();
if
(
Common
.
isEmpty
(
empIdCard
)
&&
Common
.
isEmpty
(
settleDepartId
)
&&
Common
.
isEmpty
(
settlementMonth
)
&&
Common
.
isEmpty
(
deptNo
)
&&
Common
.
isEmpty
(
empName
))
{
return
R
.
failed
(
"请输入查询条件"
);
}
if
(
Common
.
isNotNull
(
settlementMonth
)
&&
Common
.
isEmpty
(
empId
c
ard
)
&&
Common
.
isEmpty
(
settleDepartId
)
&&
Common
.
isEmpty
(
deptNo
)
&&
Common
.
isEmpty
(
deptName
)
&&
Common
.
isEmpty
(
empName
))
{
if
(
Common
.
isNotNull
(
settlementMonth
)
&&
Common
.
isEmpty
(
empId
C
ard
)
&&
Common
.
isEmpty
(
settleDepartId
)
&&
Common
.
isEmpty
(
deptNo
)
&&
Common
.
isEmpty
(
empName
))
{
return
R
.
failed
(
"结算月需配合其他查询条件一起使用,请输入其他查询条件!"
);
}
//报账表
TSalaryAccount
salaryAccount
=
new
TSalaryAccount
();
salaryAccount
.
setDeleteFlag
(
SalaryConstants
.
NOT_DELETE
);
if
(
Common
.
isNotNull
(
empIdcard
))
{
salaryAccount
.
setEmpIdcard
(
empIdcard
);
}
if
(
Common
.
isNotNull
(
settleDepartId
))
{
salaryAccount
.
setDeptId
(
settleDepartId
);
}
if
(
Common
.
isNotNull
(
settlementMonth
)
&&
settlementMonth
.
length
()
==
6
)
{
salaryAccount
.
setSettlementMonth
(
settlementMonth
);
}
QueryWrapper
<
TSalaryAccount
>
queryWrapperSa
=
new
QueryWrapper
<>();
queryWrapperSa
.
setEntity
(
salaryAccount
);
if
(
Common
.
isNotNull
(
empName
))
{
queryWrapperSa
.
eq
(
"EMP_NAME"
,
empName
);
}
if
(
Common
.
isNotNull
(
deptNo
))
{
queryWrapperSa
.
eq
(
"DEPT_NO"
,
deptNo
);
}
if
(
Common
.
isNotNull
(
settleDepartId
))
{
queryWrapperSa
.
eq
(
"DEPT_ID"
,
settleDepartId
);
}
if
(
Common
.
isNotNull
(
settlementMonth
)
&&
settlementMonth
.
length
()
<
6
)
{
queryWrapperSa
.
eq
(
"SETTLEMENT_MONTH"
,
settlementMonth
);
}
queryWrapperSa
.
orderByAsc
(
"SETTLEMENT_MONTH"
);
List
<
TSalaryAccount
>
salaryAccountList
=
tSalaryAccountService
.
list
(
queryWrapperSa
);
Map
<
String
,
String
>
accountTitle
=
new
HashMap
<>();
if
(
salaryAccountList
!=
null
&&
salaryAccountList
.
size
()
>
CommonConstants
.
ZERO_INT
)
{
//报账表明细
TSalaryAccountItem
item
;
QueryWrapper
<
TSalaryAccountItem
>
queryWrapperAi
;
List
<
TSalaryAccountItem
>
itemList
;
for
(
TSalaryAccount
a
:
salaryAccountList
)
{
item
=
new
TSalaryAccountItem
();
item
.
setSalaryAccountId
(
a
.
getId
());
queryWrapperAi
=
new
QueryWrapper
<>();
queryWrapperAi
.
setEntity
(
item
);
itemList
=
tSalaryAccountItemService
.
list
(
queryWrapperAi
);
if
(
itemList
!=
null
&&
itemList
.
size
()
>
CommonConstants
.
ZERO_INT
)
{
for
(
TSalaryAccountItem
items
:
itemList
)
{
accountTitle
.
put
(
items
.
getCnName
(),
items
.
getJavaFiedName
());
}
}
a
.
setSaiList
(
itemList
);
}
}
salaryDetailVo
.
setSalaryAccountList
(
salaryAccountList
);
salaryDetailVo
.
setAccountTitle
(
accountTitle
);
return
new
R
<>(
salaryDetailVo
);
return
new
R
<>(
tSalaryAccountService
.
getEmpAccountPage
(
page
,
searchVo
));
}
...
...
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/mapper/TSalaryAccountMapper.java
View file @
3c5d3ea4
...
...
@@ -47,6 +47,16 @@ public interface TSalaryAccountMapper extends BaseMapper<TSalaryAccount> {
@Param
(
"tSalaryAccount"
)
TSalaryAccount
tSalaryAccount
,
@Param
(
"deptNos"
)
List
<
String
>
deptNos
);
IPage
<
TSalaryAccount
>
getEmpAccountPage
(
Page
<
TSalaryAccount
>
page
,
@Param
(
"tSalaryAccount"
)
TSalaryAccountSearchVo
tSalaryAccount
);
int
getEmpAccountCount
(
@Param
(
"tSalaryAccount"
)
TSalaryAccountSearchVo
tSalaryAccount
);
List
<
TSalaryAccountExportSpecialVo
>
getEmpAccountExport
(
@Param
(
"tSalaryAccount"
)
TSalaryAccountSearchVo
tSalaryAccount
);
List
<
String
>
getItemAllTitle
(
@Param
(
"tSalaryAccount"
)
TSalaryAccountSearchVo
tSalaryAccount
);
List
<
TSalaryAccountExportSpecialItemVo
>
getEmpAccountItemExport
(
@Param
(
"settlementMonth"
)
String
settlementMonth
,
@Param
(
"ids"
)
List
<
String
>
ids
);
List
<
TSalaryAccount
>
getTSalaryAccountPageDataByIds
(
@Param
(
"tSalaryAccount"
)
TSalaryAccount
tSalaryAccount
,
@Param
(
"ids"
)
List
<
String
>
ids
);
...
...
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/service/TSalaryAccountService.java
View file @
3c5d3ea4
...
...
@@ -44,6 +44,15 @@ public interface TSalaryAccountService extends IService<TSalaryAccount> {
* @return
*/
IPage
<
TSalaryAccount
>
getTSalaryAccountPage
(
Page
<
TSalaryAccount
>
page
,
TSalaryAccountSearchVo
tSalaryAccount
);
/**
* @Description: 项目薪酬查询-工资条查询
* @Author: hgw
* @Date: 2025/4/18 14:58
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccount>
**/
IPage
<
TSalaryAccount
>
getEmpAccountPage
(
Page
<
TSalaryAccount
>
page
,
TSalaryAccountSearchVo
searchVo
);
/**
* @Author fxj
* @Description 薪资报账导出统一导出限制
...
...
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/service/impl/TSalaryAccountServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -27,6 +27,7 @@ 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.util.Common
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.DateUtil
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.EasyExcelStyle
;
import
com.yifu.cloud.plus.v1.yifu.ekp.vo.EkpSalaryParamVo
;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.EkpSocialViewVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TDeptSee
;
...
...
@@ -39,6 +40,7 @@ import com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryAccountService;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.*
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.log4j.Log4j2
;
import
org.apache.commons.compress.utils.Lists
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -102,11 +104,22 @@ public class TSalaryAccountServiceImpl extends ServiceImpl<TSalaryAccountMapper,
}
/**
* @Description: 项目薪酬查询-工资条查询
* @Author: hgw
* @Date: 2025/4/18 16:01
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccount>
**/
@Override
public
IPage
<
TSalaryAccount
>
getEmpAccountPage
(
Page
<
TSalaryAccount
>
page
,
TSalaryAccountSearchVo
searchVo
)
{
return
baseMapper
.
getEmpAccountPage
(
page
,
searchVo
);
}
/**
* @Author fxj
* @Description
* @Date 15:27 2024/10/23
* @Param type 0 报账批量导出 1 报账审核人导出
* @Param type 0 报账批量导出 1 报账审核人导出
2: 项目薪酬查询-工资条查询导出
* @return
**/
@Override
...
...
@@ -118,6 +131,8 @@ public class TSalaryAccountServiceImpl extends ServiceImpl<TSalaryAccountMapper,
listExport
(
response
,
searchVo
);
}
else
if
(
CommonConstants
.
ONE_INT
==
type
){
auditExport
(
response
,
searchVo
);
}
else
if
(
CommonConstants
.
TWO_INT
==
type
){
getEmpAccountExport
(
response
,
searchVo
);
}
}
catch
(
Exception
e
){
log
.
error
(
"导出异常:"
,
e
);
...
...
@@ -328,6 +343,7 @@ public class TSalaryAccountServiceImpl extends ServiceImpl<TSalaryAccountMapper,
standardItems
.
clear
();
}
}
//封装信息
initResult
(
list
,
itemExportVoMap
,
itemStandardMap
,
itemAnnualBonusMap
,
itemPersionTaxMap
,
itemAnnuityMap
,
itemSubsidyMap
,
itemCarNoTaxMap
);
if
(
i
%
CommonConstants
.
EXCEL_EXPORT_LIMIT
==
0
){
...
...
@@ -362,6 +378,167 @@ public class TSalaryAccountServiceImpl extends ServiceImpl<TSalaryAccountMapper,
}
}
/**
* @Description: 项目薪酬查询-工资条查询导出
* @Author: hgw
* @Date: 2025-4-21 09:45:46
* @return: void
**/
private
void
getEmpAccountExport
(
HttpServletResponse
response
,
TSalaryAccountSearchVo
searchVo
)
{
String
fileName
=
"工资条查询导出"
+
DateUtil
.
getThisTime
()
+
CommonConstants
.
XLSX
;
//获取要导出的列表
List
<
TSalaryAccountExportSpecialVo
>
list
=
new
ArrayList
<>();
long
count
=
baseMapper
.
getEmpAccountCount
(
searchVo
);
ServletOutputStream
out
=
null
;
try
{
out
=
response
.
getOutputStream
();
response
.
setContentType
(
CommonConstants
.
MULTIPART_FORM_DATA
);
response
.
setCharacterEncoding
(
"utf-8"
);
response
.
setHeader
(
CommonConstants
.
CONTENT_DISPOSITION
,
CommonConstants
.
ATTACHMENT_FILENAME
+
URLEncoder
.
encode
(
fileName
,
"UTF-8"
));
//非管理员导出 大于10W 提示“导出量过大,请选择更多查询条件!如果确定要导出这些数据请联系系统管理员操作”
if
(
count
>
100000
)
{
out
.
write
(
CommonConstants
.
SOCIAL_EXPORT_LIMIT
.
getBytes
(
"GBK"
));
out
.
close
();
return
;
}
List
<
String
>
titleAllList
=
baseMapper
.
getItemAllTitle
(
searchVo
);
List
<
List
<
String
>>
headList
=
Lists
.
newArrayList
();
String
title
=
"工资月份,发放状态,结算月份,项目名称,员工姓名,银行卡号,开户行,身份证号,工资发放方式,社保扣缴月份"
+
",公积金扣缴月份,社保优先级,公积金优先级,年终奖扣税方案,是否扣除社保,是否扣除公积金"
;
if
(
titleAllList
!=
null
&&
!
titleAllList
.
isEmpty
())
{
for
(
String
temp
:
titleAllList
)
{
title
+=
","
+
temp
;
}
}
String
[]
strTemp
=
title
.
split
(
","
);
List
<
String
>
titleList
;
for
(
String
temp
:
strTemp
)
{
titleList
=
new
ArrayList
<>();
titleList
.
add
(
temp
);
headList
.
add
(
titleList
);
}
ExcelWriter
excelWriter
=
EasyExcelFactory
.
write
(
out
).
registerWriteHandler
(
EasyExcelStyle
.
getBaseStyle
())
.
head
(
headList
).
build
();
int
index
=
0
;
WriteSheet
writeSheet
=
null
;
if
(
count
>
CommonConstants
.
ZERO_INT
)
{
// 每次数据库查询条数
int
limit
=
1000
;
int
sheetIndex
=
0
;
// 循环几次重新生成sheet(这里是循环10次,也就是10000条房一个sheet里)
int
cyclesNum
=
10
;
// 固定的报账表列表
List
<
TSalaryAccountExportSpecialVo
>
baseList
;
// 导出的全量内容列表
List
<
List
<
String
>>
listContent
=
null
;
// 每一行的内容列表
List
<
String
>
contentList
=
null
;
// 明细表总mvp
Map
<
String
,
Map
<
String
,
String
>>
itemMap
=
null
;
// 每一行的mvp
Map
<
String
,
String
>
tempMap
;
// 浮动的明细表
List
<
TSalaryAccountExportSpecialItemVo
>
itemList
=
null
;
for
(
int
i
=
0
;
i
<
count
;
i
+=
limit
)
{
searchVo
.
setLimitStart
(
i
);
searchVo
.
setLimitEnd
(
limit
);
baseList
=
baseMapper
.
getEmpAccountExport
(
searchVo
);
listContent
=
new
ArrayList
<>();
contentList
=
new
ArrayList
<>();
if
(
baseList
!=
null
&&
!
baseList
.
isEmpty
())
{
for
(
TSalaryAccountExportSpecialVo
a
:
baseList
)
{
contentList
.
add
(
a
.
getAccountId
());
}
itemMap
=
new
HashMap
<>();
tempMap
=
new
HashMap
<>();
if
(
titleAllList
!=
null
&&
!
titleAllList
.
isEmpty
())
{
itemList
=
baseMapper
.
getEmpAccountItemExport
(
searchVo
.
getSettlementMonth
(),
contentList
);
for
(
TSalaryAccountExportSpecialItemVo
itemVo
:
itemList
)
{
tempMap
=
itemMap
.
get
(
itemVo
.
getAccountId
());
if
(
tempMap
==
null
)
{
tempMap
=
new
HashMap
<>();
}
tempMap
.
put
(
itemVo
.
getCnName
(),
itemVo
.
getTextValue
());
itemMap
.
put
(
itemVo
.
getAccountId
(),
tempMap
);
}
}
for
(
TSalaryAccountExportSpecialVo
a
:
baseList
)
{
contentList
=
new
ArrayList
<>();
contentList
.
add
(
a
.
getExport1
());
contentList
.
add
(
a
.
getExport2
());
contentList
.
add
(
a
.
getExport3
());
contentList
.
add
(
a
.
getExport4
());
contentList
.
add
(
a
.
getExport5
());
contentList
.
add
(
a
.
getExport6
());
contentList
.
add
(
a
.
getExport7
());
contentList
.
add
(
a
.
getExport8
());
contentList
.
add
(
a
.
getExport9
());
contentList
.
add
(
a
.
getExport10
());
contentList
.
add
(
a
.
getExport11
());
contentList
.
add
(
a
.
getExport12
());
contentList
.
add
(
a
.
getExport13
());
contentList
.
add
(
a
.
getExport14
());
contentList
.
add
(
a
.
getExport15
());
contentList
.
add
(
a
.
getExport16
());
if
(
titleAllList
!=
null
&&
!
titleAllList
.
isEmpty
())
{
tempMap
=
itemMap
.
get
(
a
.
getAccountId
());
for
(
String
temp
:
titleAllList
)
{
if
(
tempMap
!=
null
)
{
if
(
tempMap
.
get
(
temp
)
!=
null
)
{
contentList
.
add
(
tempMap
.
get
(
temp
));
}
else
{
contentList
.
add
(
""
);
}
}
else
{
contentList
.
add
(
""
);
}
}
}
listContent
.
add
(
contentList
);
}
}
if
(
sheetIndex
++
%
cyclesNum
==
0
)
{
writeSheet
=
EasyExcelFactory
.
writerSheet
(
"工资条"
+
index
++).
build
();
}
excelWriter
.
write
(
listContent
,
writeSheet
);
}
if
(
Common
.
isNotNull
(
listContent
))
{
listContent
.
clear
();
}
if
(
Common
.
isNotNull
(
contentList
))
{
contentList
.
clear
();
}
if
(
Common
.
isNotNull
(
itemMap
))
{
itemMap
.
clear
();
}
if
(
Common
.
isNotNull
(
itemList
))
{
itemList
.
clear
();
}
}
else
{
writeSheet
=
EasyExcelFactory
.
writerSheet
(
"工资条"
+
index
).
build
();
excelWriter
.
write
(
list
,
writeSheet
);
}
if
(
Common
.
isNotNull
(
list
))
{
list
.
clear
();
}
out
.
flush
();
excelWriter
.
finish
();
}
catch
(
Exception
e
)
{
log
.
error
(
"执行异常"
,
e
);
}
finally
{
try
{
if
(
null
!=
out
)
{
out
.
close
();
}
}
catch
(
IOException
e
)
{
log
.
error
(
"执行异常"
,
e
);
}
}
}
private
void
clearMap
(
Map
<
String
,
TSalaryAccountItemExportVo
>
itemExportVoMap
,
List
<
String
>
idList
,
List
<
String
>
idStandardList
,
Map
<
String
,
TAuditExportStandardVo
>
itemStandardMap
,
Map
<
String
,
TAuditExportItemVo
>
itemAnnualBonusMap
,
Map
<
String
,
TAuditExportItemVo
>
itemPersionTaxMap
,
Map
<
String
,
TAuditExportItemVo
>
itemAnnuityMap
,
Map
<
String
,
TAuditExportItemVo
>
itemSubsidyMap
)
{
if
(
Common
.
isNotNull
(
idList
)){
idList
.
clear
();
...
...
@@ -412,6 +589,8 @@ public class TSalaryAccountServiceImpl extends ServiceImpl<TSalaryAccountMapper,
vo
.
setBusinessPrimaryType
(
standardVo
.
getBusinessPrimaryTyp
());
vo
.
setBusinessSecondType
(
standardVo
.
getBusinessSecondType
());
vo
.
setBusinessThirdType
(
standardVo
.
getBusinessThirdType
());
//新增薪酬申请编号 fxj v1.7.10 2025-04-25
vo
.
setApplyNo
(
standardVo
.
getApplyNo
());
}
itemVo
=
itemAnnualBonusMap
.
get
(
vo
.
getId
());
if
(
Common
.
isNotNull
(
itemVo
)){
...
...
yifu-salary/yifu-salary-biz/src/main/resources/mapper/TSalaryAccountMapper.xml
View file @
3c5d3ea4
...
...
@@ -568,6 +568,107 @@
</where>
order by a.CREATE_TIME desc
</select>
<!--项目薪酬查询-工资条查询-导出条数-->
<select
id=
"getEmpAccountCount"
resultType=
"java.lang.Integer"
>
SELECT
count(1)
FROM
<if
test=
"tSalaryAccount.settlementMonth == null or tSalaryAccount.settlementMonth.trim() >= '202201' "
>
t_salary_account a
</if>
<if
test=
"tSalaryAccount.settlementMonth != null and tSalaryAccount.settlementMonth.trim() < '202201' "
>
t_salary_account_hro_2021 a
</if>
where a.DELETE_FLAG = 0
<include
refid=
"tSalaryAccount_where"
/>
</select>
<!--项目薪酬查询-工资条查询-导出-->
<select
id=
"getEmpAccountExport"
resultType=
"com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountExportSpecialVo"
>
SELECT
a.SALARY_MONTH export1,
if(a.PAY_SETTLE_FLAG='0','已发放',if(a.PAY_SETTLE_FLAG='1','发放中','未发放')) export2,
a.SETTLEMENT_MONTH export3,
a.DEPT_NAME export4,
a.EMP_NAME export5,
a.BANK_NO export6,
a.BANK_NAME export7,
a.EMP_IDCARD export8,
if(a.SALARY_STYLE='0','现金',if(a.SALARY_STYLE='1','转账','线下')) export9,
a.DEDU_SOCIAL_MONTH export10,
a.DEDU_PROVIDENT_MONTH export11,
if(a.SOCIAL_PRIORITY='0','生成','缴纳') export12,
if(a.FUND_PRIORITY='0','生成','缴纳') export13,
if(a.ANNUAL_BONUS_TYPE='0','合并','单独') export14,
if(a.IS_DEDUCT_SOCIAL='0','否','是') export15,
if(a.IS_DEDUCT_FUND='0','否','是') export16,
a.id accountId
FROM
<if
test=
"tSalaryAccount.settlementMonth == null or tSalaryAccount.settlementMonth.trim() >= '202201' "
>
t_salary_account a
</if>
<if
test=
"tSalaryAccount.settlementMonth != null and tSalaryAccount.settlementMonth.trim() < '202201' "
>
t_salary_account_hro_2021 a
</if>
where a.DELETE_FLAG = 0
<include
refid=
"tSalaryAccount_where"
/>
<if
test=
"tSalaryAccount != null"
>
<if
test=
"tSalaryAccount.limitStart != null"
>
limit #{tSalaryAccount.limitStart},#{tSalaryAccount.limitEnd}
</if>
</if>
</select>
<!--项目薪酬查询-工资条查询-导出-->
<select
id=
"getItemAllTitle"
resultType=
"java.lang.String"
>
SELECT
i.CN_NAME
FROM
<if
test=
"tSalaryAccount.settlementMonth == null or tSalaryAccount.settlementMonth.trim() >= '202201' "
>
t_salary_account_item i
LEFT JOIN t_salary_account a on i.SALARY_ACCOUNT_ID=a.id
</if>
<if
test=
"tSalaryAccount.settlementMonth != null and tSalaryAccount.settlementMonth.trim() < '202201' "
>
t_salary_account_item_hro_2021 i
LEFT JOIN t_salary_account_hro_2021 a on i.SALARY_ACCOUNT_ID=a.id
</if>
where a.DELETE_FLAG = 0
<include
refid=
"tSalaryAccount_where"
/>
GROUP BY i.CN_NAME
</select>
<!--项目薪酬查询-工资条查询-导出-->
<select
id=
"getEmpAccountItemExport"
resultType=
"com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountExportSpecialItemVo"
>
SELECT
a.CN_NAME cnName,ifnull(a.TEXT_VALUE,a.SALARY_MONEY) textValue,a.SALARY_ACCOUNT_ID accountId
FROM
<if
test=
"settlementMonth == null or settlementMonth.trim() >= '202201' "
>
t_salary_account_item a
</if>
<if
test=
"settlementMonth != null and settlementMonth.trim() < '202201' "
>
t_salary_account_item_hro_2021 a
</if>
where a.SALARY_ACCOUNT_ID in
<foreach
item=
"id"
index=
"index"
collection=
"ids"
open=
"("
separator=
","
close=
")"
>
#{id}
</foreach>
</select>
<!--项目薪酬查询-工资条查询-->
<select
id=
"getEmpAccountPage"
resultMap=
"tSalaryAccountMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM
<if
test=
"tSalaryAccount.settleMonthStart == null or tSalaryAccount.settleMonthStart.trim() >= '202201' "
>
t_salary_account a
</if>
<if
test=
"tSalaryAccount.settleMonthStart != null and tSalaryAccount.settleMonthStart.trim() < '202201' "
>
t_salary_account_hro_2021 a
</if>
where a.DELETE_FLAG = 0
<include
refid=
"tSalaryAccount_where"
/>
</select>
<!--tSalaryAccount简单分页查询-->
<select
id=
"getTSalaryAccountPageDataByIds"
resultMap=
"tSalaryAccountMap"
>
SELECT
...
...
@@ -1929,6 +2030,7 @@
,s.BUSINESS_PRIMARY_TYPE as businessPrimaryType
,s.BUSINESS_SECOND_TYPE as businessSecondType
,s.BUSINESS_THIRD_TYPE as businessThirdType
,s.APPLY_NO applyNo
FROM
t_salary_standard s
where
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/constants/DispatchConstants.java
View file @
3c5d3ea4
...
...
@@ -34,6 +34,7 @@ public class DispatchConstants {
public
static
final
String
DISPATCH_SOCIAL_REDUCE
=
"社保派减"
;
public
static
final
String
SOCIAL_RECORD_ROSTER_EXPORT
=
"社保花名册导出"
;
public
static
final
String
SOCIAL_SOLDIER_EXPORT
=
"自动化办理导出"
;
public
static
final
String
SOCIAL_SOLDIER_EXPORT_ALL
=
"自动化办理查询导出"
;
public
static
final
String
SOCIAL_RECORD_EXPORT
=
"公积金变更清册导出"
;
public
static
final
String
SOCIAL_MEDICAL_EXPORT
=
"社保-医疗"
;
public
static
final
String
SOCIAL_PERSION_EXPORT
=
"社保-养老三险"
;
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/entity/SysHouseHoldInfo.java
View file @
3c5d3ea4
...
...
@@ -278,6 +278,15 @@ public class SysHouseHoldInfo extends BaseEntity {
@ExcelProperty
(
"医保-单位编号"
)
private
String
customerNoYsd
;
/**
* 是否单个接口 0否1是(税友接口走单个还是批量,审核是否立即推送税友)
*/
@ExcelAttribute
(
name
=
"是否单个接口"
)
@Schema
(
description
=
"是否单个接口"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"是否单个接口"
)
private
String
isSingle
;
/**
* 审核人部门
*/
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/entity/TAttaInfo.java
View file @
3c5d3ea4
...
...
@@ -57,13 +57,11 @@ public class TAttaInfo extends BaseEntity {
@Schema
(
description
=
"资源类型"
)
private
String
attaType
;
/**
* 关系类型(0客户附件1联系人附件2跟进记录附件3合同附件4合同归档附件5报价单6招投标7业务评估8二维码9身份证 10 户口本
* ;21(预入职申明签名);22(预入职确认签名);23(预入职pdf文件);0(最高教育经历);2(执业资格证书);24 身份证国徽
* 25 户口本本人页26学信27预入职其他附件28户配置
* 1户配置的章;2:派单审核附件,税友单个使用
*/
@NotBlank
(
message
=
"关系类型不能为空"
)
@Length
(
max
=
2
,
message
=
"关系类型不能超过2个字符"
)
@Schema
(
description
=
"关系类型(
0客户附件1联系人附件2跟进记录附件3合同附件4合同归档附件5报价单6招投标7业务评估8二维码9身份证 10 户口本;21(预入职申明签名);22(预入职确认签名);23(预入职pdf文件);0(最高教育经历);2(执业资格证书);24 身份证国徽 25 户口本本人页26学信28户配置
)"
)
@Schema
(
description
=
"关系类型(
1户配置的章;2:派单审核附件,税友单个使用
)"
)
private
String
relationType
;
/**
* 实体id和关系类型共同确定附件所属(9、10、21、22、23、24、25存项目档案id,0、2、26存附属表id)
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/entity/TDispatchInfo.java
View file @
3c5d3ea4
...
...
@@ -827,4 +827,14 @@ public class TDispatchInfo extends BaseEntity {
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"社保自动化标识"
)
private
String
autoFlag
;
/**
* 是否单个接口 0否1是(税友接口走单个还是批量,审核是否立即推送税友)
*/
@ExcelAttribute
(
name
=
"是否单个接口"
)
@Schema
(
description
=
"是否单个接口"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"是否单个接口"
)
private
String
isSingle
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/entity/TSocialInfo.java
View file @
3c5d3ea4
...
...
@@ -1073,6 +1073,63 @@ public class TSocialInfo extends BaseEntity {
@ExcelProperty
(
"医生大税友的任务ID"
)
private
String
ysdRequestId
;
// 以下专门为自动化办理查询使用的:(派减,清空派增信息,再次之前,留存派增信息到下面的 add字段里) hgw 2025-4-27 17:43:59
/**
* 减少时留存的增加时的-养工失状态:(0空、1待办理、2自动办理中、3继续办理、4终止办理、5人工处理)
*/
@Length
(
max
=
32
,
message
=
"减少时留存的增加时的-养工失状态 不能超过32个字符"
)
@ExcelAttribute
(
name
=
"减少时留存的增加时的-养工失状态"
,
maxLength
=
32
)
@Schema
(
description
=
"减少时留存的增加时的-养工失状态:(0空、1待办理、2自动办理中、3继续办理、4终止办理、5人工处理、6成功。7提交成功)"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"减少时留存的增加时的-养工失状态"
)
private
String
addYgsHandleStatus
;
/**
* 减少时留存的增加时的-医生大状态:(0空、1待办理、2自动办理中、3继续办理、4终止办理、5人工处理)
*/
@Length
(
max
=
32
,
message
=
"减少时留存的增加时的-医生大状态 不能超过32个字符"
)
@ExcelAttribute
(
name
=
"减少时留存的增加时的-医生大状态"
,
maxLength
=
32
)
@Schema
(
description
=
"减少时留存的增加时的-医生大状态:(0空、1待办理、2自动办理中、3继续办理、4终止办理、5人工处理、6成功。7提交成功)"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"减少时留存的增加时的-医生大状态"
)
private
String
addYsdHandleStatus
;
/**
* 减少时留存的增加时的-养工失反馈
*/
@Length
(
max
=
500
,
message
=
"减少时留存的增加时的-养工失反馈 不能超过500个字符"
)
@ExcelAttribute
(
name
=
"减少时留存的增加时的-养工失反馈"
,
maxLength
=
500
)
@Schema
(
description
=
"减少时留存的增加时的-养工失反馈"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"减少时留存的增加时的-养工失反馈"
)
private
String
addYgsRemark
;
/**
* 减少时留存的增加时的-医生大反馈
*/
@Length
(
max
=
500
,
message
=
"减少时留存的增加时的-医生大反馈 不能超过500个字符"
)
@ExcelAttribute
(
name
=
"减少时留存的增加时的-医生大反馈"
,
maxLength
=
500
)
@Schema
(
description
=
"减少时留存的增加时的-医生大反馈"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"减少时留存的增加时的-医生大反馈"
)
private
String
addYsdRemark
;
/**
* 减少时留存的增加时的-养工失税友的任务ID
*/
@Length
(
max
=
50
,
message
=
"减少时留存的增加时的-养工失税友的任务ID 不能超过50个字符"
)
@ExcelAttribute
(
name
=
"减少时留存的增加时的-养工失税友的任务ID"
,
maxLength
=
50
)
@Schema
(
description
=
"减少时留存的增加时的-养工失税友的任务ID"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"减少时留存的增加时的-养工失税友的任务ID"
)
private
String
addYgsRequestId
;
/**
* 减少时留存的增加时的-医生大税友的任务ID
*/
@Length
(
max
=
50
,
message
=
"减少时留存的增加时的-医生大税友的任务ID 不能超过50个字符"
)
@ExcelAttribute
(
name
=
"减少时留存的增加时的-医生大税友的任务ID"
,
maxLength
=
50
)
@Schema
(
description
=
"减少时留存的增加时的-医生大税友的任务ID"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"减少时留存的增加时的-医生大税友的任务ID"
)
private
String
addYsdRequestId
;
// 以上是转为自动化办理查询使用的
// 派单id,社保士兵使用
@TableField
(
exist
=
false
)
private
String
dispatchId
;
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/FundImportHandleVo.java
View file @
3c5d3ea4
...
...
@@ -70,4 +70,12 @@ public class FundImportHandleVo extends RowIndex implements Serializable {
@ExcelProperty
(
"失败类型"
)
private
String
reasonType
;
/**
* 派单类型 0 派增 1 派减
*/
@ExcelAttribute
(
name
=
"派单类型"
,
isNotEmpty
=
true
,
isDataId
=
true
,
readConverterExp
=
"0=派增,1=派减"
,
errorInfo
=
"派单类型不可为空"
)
@Schema
(
description
=
"派单类型 0 派增 1 派减"
)
@ExcelProperty
(
"派单类型"
)
private
String
type
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/SocialImportHandleVo.java
View file @
3c5d3ea4
...
...
@@ -114,4 +114,12 @@ public class SocialImportHandleVo extends RowIndex implements Serializable {
@ExcelProperty
(
"失败类型"
)
private
String
reasonType
;
/**
* 派单类型 0 派增 1 派减
*/
@ExcelAttribute
(
name
=
"派单类型"
,
isNotEmpty
=
true
,
isDataId
=
true
,
readConverterExp
=
"0=派增,1=派减"
,
errorInfo
=
"派单类型不可为空"
)
@Schema
(
description
=
"派单类型 0 派增 1 派减"
)
@ExcelProperty
(
"派单类型"
)
private
String
type
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/TDispatchImportVo.java
View file @
3c5d3ea4
...
...
@@ -507,7 +507,7 @@ public class TDispatchImportVo extends RowIndex implements Serializable {
* 委托备注
*/
@Length
(
max
=
100
,
message
=
"委托备注 不能超过100 个字符"
)
@ExcelAttribute
(
name
=
"委托备注"
,
maxLength
=
100
)
@ExcelAttribute
(
name
=
"委托备注"
,
maxLength
=
100
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
TRUST_REMARK_ADD
,
isConvert
=
false
)
@Schema
(
description
=
"委托备注"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"委托备注"
)
...
...
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/TDispatchReduceVo.java
View file @
3c5d3ea4
...
...
@@ -104,7 +104,7 @@ public class TDispatchReduceVo extends RowIndex implements Serializable {
/**
* 委托备注
*/
@ExcelAttribute
(
name
=
"委托备注"
,
maxLength
=
200
)
@ExcelAttribute
(
name
=
"委托备注"
,
maxLength
=
200
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
TRUST_REMARK_REDUCE
,
isConvert
=
false
)
@Schema
(
description
=
"委托备注"
)
@HeadFontStyle
(
fontHeightInPoints
=
11
)
@ExcelProperty
(
"委托备注"
)
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/FileUploadController.java
View file @
3c5d3ea4
...
...
@@ -52,7 +52,7 @@ public class FileUploadController {
@Operation
(
description
=
"OSS文件上传接口"
+
"@ApiImplicitParam(name = \"file\", value = \"Form文件上传\", required = true, dataType = \"__file\", paramType = \"form\"),\n"
+
"\t\t\t@ApiImplicitParam(name = \"filePath\", value = \"文件上传路径\", required = false, dataType = \"String\", paramType = \"form\"),\n"
+
"\t\t\t@ApiImplicitParam(name = \"type\", value = \"关系类型(
0员工附件-学历 1 员工附件-伤残 2.员工附件-职业 3.员工附件-不良记录 4.员工附件-合同;5收入证明
)\", required = true, dataType = \"int\", paramType = \"form\"),\n"
+
"\t\t\t@ApiImplicitParam(name = \"type\", value = \"关系类型(
1户配置的章;2:派单审核附件,税友单个使用
)\", required = true, dataType = \"int\", paramType = \"form\"),\n"
+
"\t\t\t@ApiImplicitParam(name = \"domain\", value = \"实体id(传入就插入对应关系,用于编辑)\", required = false, paramType = \"form\")\n"
+
"\t"
)
/*@ApiImplicitParams({
...
...
@@ -161,4 +161,32 @@ public class FileUploadController {
}
return
R
.
ok
(
voList
);
}
/**
* @param domainId 关联id
* @param type 类型
* @Description: 获取社保服务的附件信息
* @Author: hgw
* @Date: 2025/4/28 14:12
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.util.List < com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryAttaVo>>
**/
@Operation
(
summary
=
"获取社保服务的附件信息"
,
description
=
"获取社保服务的附件信息"
)
@SysLog
(
"获取社保服务的附件信息"
)
@GetMapping
(
"/getAttaListByIdAndType"
)
public
R
<
List
<
TAttaInfo
>>
getAttaListByIdAndType
(
@RequestParam
String
domainId
,
@RequestParam
String
type
)
{
List
<
TAttaInfo
>
attaList
=
tAttaInfoService
.
list
(
Wrappers
.<
TAttaInfo
>
query
().
lambda
()
.
eq
(
TAttaInfo:
:
getRelationType
,
type
)
.
eq
(
TAttaInfo:
:
getDomainId
,
domainId
));
if
(
attaList
!=
null
&&
!
attaList
.
isEmpty
())
{
URL
url
;
for
(
TAttaInfo
a
:
attaList
)
{
url
=
ossUtil
.
getObjectUrl
(
null
,
a
.
getAttaSrc
());
if
(
url
!=
null
)
{
a
.
setAttaUrl
(
url
.
toString
());
}
}
}
return
R
.
ok
(
attaList
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/SysHouseHoldInfoController.java
View file @
3c5d3ea4
...
...
@@ -257,4 +257,25 @@ public class SysHouseHoldInfoController {
sysHouseHoldInfoService
.
listExport
(
response
,
sysHouseHoldInfo
);
}
/**
* @param type 0社保/1公积金
* @param name 户名
* @Description: 根据户名与户类型,返回户信息 type 0社保/1公积金 name 户名
* @Author: hgw
* @Date: 2025/4/28 10:08
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<com.yifu.cloud.plus.v1.yifu.social.entity.SysHouseHoldInfo>
**/
@GetMapping
(
"/getHuByTypeAndName"
)
@Operation
(
summary
=
"获取所有的户名"
,
description
=
"获取所有的户名"
)
public
R
<
SysHouseHoldInfo
>
getHuByTypeAndName
(
@RequestParam
String
type
,
@RequestParam
String
name
)
{
SysHouseHoldInfo
houseHold
;
LambdaQueryWrapper
<
SysHouseHoldInfo
>
wrapper
=
Wrappers
.
lambdaQuery
();
wrapper
.
eq
(
SysHouseHoldInfo:
:
getDelFlag
,
CommonConstants
.
ZERO_STRING
);
wrapper
.
eq
(
SysHouseHoldInfo:
:
getType
,
type
);
wrapper
.
eq
(
SysHouseHoldInfo:
:
getName
,
name
);
wrapper
.
last
(
CommonConstants
.
LAST_ONE_SQL
);
houseHold
=
sysHouseHoldInfoService
.
getOne
(
wrapper
);
return
R
.
ok
(
houseHold
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/TDispatchInfoController.java
View file @
3c5d3ea4
...
...
@@ -216,7 +216,7 @@ public class TDispatchInfoController {
* @Date: 2024/5/9 20:26
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<com.baomidou.mybatisplus.core.metadata.IPage < com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo>>
**/
@Operation
(
description
=
"简单分页查询--社保士兵列表"
)
@Operation
(
description
=
"简单分页查询--社保士兵
办理
列表"
)
@GetMapping
(
"/pageSocialSoldier"
)
public
R
<
IPage
<
TSocialSoldierPageVo
>>
pageSocialSoldier
(
Page
<
TSocialSoldierPageVo
>
page
,
SocialHandleSearchVo
tDispatchInfo
)
{
tDispatchInfo
.
setDeleteFlag
(
CommonConstants
.
ZERO_STRING
);
...
...
@@ -229,6 +229,24 @@ public class TDispatchInfoController {
return
new
R
<>(
tDispatchInfoService
.
getTSocialSoldierHandlePage
(
page
,
tDispatchInfo
));
}
/**
* @Description: 简单分页查询--自动化办理查询
* @Author: hgw
* @Date: 2025-4-27 17:58:29
**/
@Operation
(
description
=
"简单分页查询--自动化办理查询-按派单维度"
)
@GetMapping
(
"/getPageSocialSoldierAll"
)
public
R
<
IPage
<
TSocialSoldierPageVo
>>
getPageSocialSoldierAll
(
Page
<
TSocialSoldierPageVo
>
page
,
SocialHandleSearchVo
tDispatchInfo
)
{
tDispatchInfo
.
setDeleteFlag
(
CommonConstants
.
ZERO_STRING
);
YifuUser
user
=
SecurityUtils
.
getUser
();
menuUtil
.
setAuthSql
(
user
,
tDispatchInfo
);
if
(
Common
.
isNotNull
(
tDispatchInfo
.
getAuthSql
())
&&
tDispatchInfo
.
getAuthSql
().
contains
(
CommonConstants
.
A_DEPT_ID
))
{
tDispatchInfo
.
setAuthSql
(
tDispatchInfo
.
getAuthSql
().
replace
(
CommonConstants
.
A_DEPT_ID
,
"a.SETTLE_DOMAIN"
));
}
tDispatchInfo
.
setCreateBy
(
user
.
getId
());
return
new
R
<>(
tDispatchInfoService
.
getPageSocialSoldierAll
(
page
,
tDispatchInfo
));
}
/**
* 简单分页查询--社保办理列表
* @param page 分页对象
...
...
@@ -496,7 +514,8 @@ public class TDispatchInfoController {
public
R
<
List
<
ErrorMessage
>>
addApplyAudit
(
@RequestBody
List
<
String
>
idList
,
@RequestParam
(
name
=
"auditStatus"
,
required
=
true
)
String
auditStatus
,
@RequestParam
(
name
=
"auditRemark"
,
required
=
false
)
String
auditRemark
,
@RequestParam
(
name
=
"remark"
,
required
=
false
)
String
remark
)
{
@RequestParam
(
name
=
"remark"
,
required
=
false
)
String
remark
,
@RequestParam
(
name
=
"isSingleAudit"
,
required
=
false
)
String
isSingleAudit
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
Common
.
isEmpty
(
user
)){
return
R
.
failed
(
CommonConstants
.
USER_FAIL
);
...
...
@@ -625,6 +644,27 @@ public class TDispatchInfoController {
tDispatchInfoService
.
doExportSocialSoldier
(
response
,
searchVo
,
searchVo
.
getIdStr
(),
null
);
}
/**
* @Author hgw
* @Description 自动化办理查询导出
* @Date 2025-4-25 18:23:59
* @Param
**/
@PostMapping
(
"/doExportSocialSoldierAll"
)
@Operation
(
description
=
"自动化办理查询导出"
)
@SysLog
(
"自动化办理查询导出"
)
public
void
doExportSocialSoldierAll
(
HttpServletResponse
response
,
HttpServletRequest
request
,
@RequestBody
SocialHandleSearchVo
searchVo
)
{
searchVo
.
setDeleteFlag
(
CommonConstants
.
ZERO_STRING
);
YifuUser
user
=
SecurityUtils
.
getUser
();
menuUtil
.
setAuthSql
(
user
,
searchVo
);
if
(
Common
.
isNotNull
(
searchVo
.
getAuthSql
())
&&
searchVo
.
getAuthSql
().
contains
(
CommonConstants
.
A_DEPT_ID
))
{
searchVo
.
setAuthSql
(
searchVo
.
getAuthSql
().
replace
(
CommonConstants
.
A_DEPT_ID
,
"a.SETTLE_DOMAIN"
));
}
searchVo
.
setCreateBy
(
user
.
getId
());
tDispatchInfoService
.
doExportSocialSoldierAll
(
response
,
searchVo
,
searchVo
.
getIdStr
(),
null
);
}
/**
* @Author fxj
* @Description 导出 社保花名册
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/TSocialInfoController.java
View file @
3c5d3ea4
...
...
@@ -59,7 +59,7 @@ public class TSocialInfoController {
private
final
TSocialSoldierService
tSocialSoldierService
;
/**
* 简单分页查询
* @param page 分页对象
...
...
@@ -189,7 +189,7 @@ public class TSocialInfoController {
/**
* @param id
* @param isSocial 1 社保 2 医保
* @param isSocial 1 社保 2 医保
3 全部
* @Description:
* @Author: hgw
* @Date: 2024/8/1 18:12
...
...
@@ -202,39 +202,61 @@ public class TSocialInfoController {
if
(
user
==
null
||
Common
.
isEmpty
(
user
.
getId
()))
{
return
R
.
failed
(
"请登录!"
);
}
TSocialInfo
socialInfo
=
tSocialInfoService
.
getById
(
id
);
if
(
socialInfo
==
null
||
Common
.
isEmpty
(
socialInfo
.
getId
()))
{
return
R
.
failed
(
"未找到社保"
);
return
tSocialInfoService
.
doRenGong
(
id
,
isSocial
,
user
);
}
/**
* @param idList
* @param isSocial 1 社保 2 医保 3 全部
* @Description: 转人工-批量
* @Author: hgw
* @Date: 2024/8/1 18:12
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Operation
(
summary
=
"转人工-批量"
,
description
=
"转人工-批量"
)
@PostMapping
(
"/doRenGongBatch"
)
public
R
<
String
>
doRenGongBatch
(
@RequestBody
List
<
String
>
idList
,
@RequestParam
String
isSocial
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
==
null
||
Common
.
isEmpty
(
user
.
getId
()))
{
return
R
.
failed
(
"请登录!"
);
}
String
handleRemark
;
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getDispatchType
()))
{
handleRemark
=
"派增"
;
}
else
{
handleRemark
=
"派减"
;
return
tSocialInfoService
.
doRenGongBatch
(
idList
,
isSocial
,
user
);
}
/**
* @param id
* @param isSocial 1 社保 2 医保 3 全部
* @Description:
* @Author: hgw
* @Date: 2024/8/1 18:12
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Operation
(
summary
=
"转自动化"
,
description
=
"转自动化"
)
@GetMapping
(
"/doAuto"
)
public
R
<
String
>
doAuto
(
@RequestParam
String
id
,
@RequestParam
String
isSocial
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
==
null
||
Common
.
isEmpty
(
user
.
getId
()))
{
return
R
.
failed
(
"请登录!"
);
}
if
(
CommonConstants
.
ONE_STRING
.
equals
(
isSocial
)
&&
Common
.
isNotNull
(
socialInfo
.
getYgsHandleStatus
()))
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
())
||
CommonConstants
.
FOUR_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
())
||
CommonConstants
.
SIX_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
()))
{
return
R
.
failed
(
"当前养老工伤失业-办理状态不可以转人工!"
);
}
socialInfo
.
setYgsHandleStatus
(
CommonConstants
.
FIVE_STRING
);
tSocialInfoService
.
updateById
(
socialInfo
);
handleRemark
+=
"养老、工伤、失业手动转人工"
;
}
else
if
(
CommonConstants
.
TWO_STRING
.
equals
(
isSocial
)
&&
Common
.
isNotNull
(
socialInfo
.
getYsdHandleStatus
()))
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
())
||
CommonConstants
.
FOUR_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
())
||
CommonConstants
.
SIX_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
()))
{
return
R
.
failed
(
"当前医疗生育大病-办理状态不可以转人工!"
);
}
socialInfo
.
setYsdHandleStatus
(
CommonConstants
.
FIVE_STRING
);
tSocialInfoService
.
updateById
(
socialInfo
);
handleRemark
+=
"医疗、生育、大病手动转人工"
;
return
tSocialInfoService
.
doAuto
(
id
,
isSocial
,
user
);
}
/**
* @param idList
* @param isSocial 1 社保 2 医保 3 全部
* @Description: 转人工-批量
* @Author: hgw
* @Date: 2024/8/1 18:12
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Operation
(
summary
=
"转自动化-批量"
,
description
=
"转自动化-批量"
)
@PostMapping
(
"/doAutoBatch"
)
public
R
<
String
>
doAutoBatch
(
@RequestBody
List
<
String
>
idList
,
@RequestParam
String
isSocial
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
==
null
||
Common
.
isEmpty
(
user
.
getId
()))
{
return
R
.
failed
(
"请登录!"
);
}
// 加记录
tSocialSoldierService
.
doSocialTAuditInfo
(
socialInfo
,
handleRemark
,
handleRemark
,
handleRemark
,
user
);
return
R
.
ok
(
"成功!"
);
return
tSocialInfoService
.
doAutoBatch
(
idList
,
isSocial
,
user
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/mapper/TDispatchInfoMapper.java
View file @
3c5d3ea4
...
...
@@ -105,6 +105,17 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
int
getSocialSoldierCount
(
@Param
(
"tDispatchInfo"
)
SocialHandleSearchVo
dispatchInfo
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
/**
* 自动化办理查询导出
**/
List
<
SocialSoldierExportVo
>
getSocialSoldierAllList
(
@Param
(
"tDispatchInfo"
)
SocialHandleSearchVo
dispatchInfo
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
/**
* 导出社保士兵count
**/
int
getSocialSoldierAllCount
(
@Param
(
"tDispatchInfo"
)
SocialHandleSearchVo
dispatchInfo
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
/**
* @Description: 社保士兵列表查询
* @Author: hgw
...
...
@@ -115,6 +126,16 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
@Param
(
"tDispatchInfo"
)
SocialHandleSearchVo
tDispatchInfo
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
/**
* @Description: 社保士兵列表查询
* @Author: hgw
* @Date: 2024/5/10 11:50
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo>
**/
IPage
<
TSocialSoldierPageVo
>
getPageSocialSoldierAll
(
Page
<
TSocialSoldierPageVo
>
page
,
@Param
(
"tDispatchInfo"
)
SocialHandleSearchVo
tDispatchInfo
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
/**
* 社保页面查询
* @Author fxj
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TAuditInfoService.java
View file @
3c5d3ea4
...
...
@@ -22,7 +22,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.baomidou.mybatisplus.extension.service.IService
;
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.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TAuditInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TSocialInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TAuditInfoSearchVo
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -48,4 +50,13 @@ public interface TAuditInfoService extends IService<TAuditInfo> {
void
listExport
(
HttpServletResponse
response
,
TAuditInfoSearchVo
searchVo
);
List
<
TAuditInfo
>
noPageDiy
(
TAuditInfoSearchVo
searchVo
);
/**
* @Description: 加审核日志
* @Author: hgw
* @Date: 2025/4/27 10:49
* @return: void
**/
void
doSaveAuditInfo
(
TSocialInfo
social
,
String
title
,
String
handleRemark
,
String
remark
,
YifuUser
user
,
String
auditStatus
);
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TDispatchInfoService.java
View file @
3c5d3ea4
...
...
@@ -97,16 +97,33 @@ public interface TDispatchInfoService extends IService<TDispatchInfo> {
* @return: void
**/
void
doExportSocialSoldier
(
HttpServletResponse
response
,
SocialHandleSearchVo
searchVo
,
String
idStr
,
String
[]
exportFields
);
/**
* @Description: 自动化办理查询导出
* @Author: hgw
* @Date: 2025/4/25 18:28
* @return: void
**/
void
doExportSocialSoldierAll
(
HttpServletResponse
response
,
SocialHandleSearchVo
searchVo
,
String
idStr
,
String
[]
exportFields
);
void
doexportSocialRecordRoster
(
HttpServletResponse
response
,
SocialHandleSearchVo
searchVo
,
String
idStr
,
String
[]
exportFields
);
/**
* @Description: 社保士兵列表查询
* @Description: 社保士兵
办理
列表查询
* @Author: hgw
* @Date: 2024/5/10 11:51
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo>
**/
IPage
<
TSocialSoldierPageVo
>
getTSocialSoldierHandlePage
(
Page
<
TSocialSoldierPageVo
>
page
,
SocialHandleSearchVo
tDispatchInfo
);
/**
* @param page
* @param tDispatchInfo
* @Description: 社保士兵查询列表——按派单维度
* @Author: hgw
* @Date: 2025/4/25 18:07
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.plus.v1.yifu.social.vo.TSocialSoldierPageVo>
**/
IPage
<
TSocialSoldierPageVo
>
getPageSocialSoldierAll
(
Page
<
TSocialSoldierPageVo
>
page
,
SocialHandleSearchVo
tDispatchInfo
);
IPage
<
TDispatchInfo
>
getTDispatchSocialHandlePage
(
Page
<
TDispatchInfo
>
page
,
SocialHandleSearchVo
tDispatchInfo
);
IPage
<
TDispatchInfo
>
getTDispatchFundHandlePage
(
Page
<
TDispatchInfo
>
page
,
SocialHandleSearchVo
tDispatchInfo
);
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TSocialInfoService.java
View file @
3c5d3ea4
...
...
@@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.baomidou.mybatisplus.extension.service.IService
;
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.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TSocialInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SocialAddAndReduceVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialInfoSearchVo
;
...
...
@@ -87,4 +88,48 @@ public interface TSocialInfoService extends IService<TSocialInfo> {
**/
List
<
TSocialInfo
>
getSocialSoldierByAddId
(
String
addId
);
/**
* @param idList 社保IDlist
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 批量转人工
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
R
<
String
>
doRenGongBatch
(
List
<
String
>
idList
,
String
isSocial
,
YifuUser
user
);
/**
* @param id 社保ID
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 转人工
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
R
<
String
>
doRenGong
(
String
id
,
String
isSocial
,
YifuUser
user
);
/**
* @param idList 社保IDlist
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 批量转自动化
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
R
<
String
>
doAutoBatch
(
List
<
String
>
idList
,
String
isSocial
,
YifuUser
user
);
/**
* @param id 社保ID
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 转自动化
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
R
<
String
>
doAuto
(
String
id
,
String
isSocial
,
YifuUser
user
);
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TAuditInfoServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -32,7 +32,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.*
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TAuditInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TSocialInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TAuditInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TAuditInfoService
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TAuditInfoSearchVo
;
...
...
@@ -46,6 +48,7 @@ import java.io.IOException;
import
java.io.InputStream
;
import
java.net.URLEncoder
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
...
...
@@ -243,4 +246,29 @@ public class TAuditInfoServiceImpl extends ServiceImpl<TAuditInfoMapper, TAuditI
BeanUtil
.
copyProperties
(
excel
,
insert
);
this
.
save
(
insert
);
}
/**
* @Description: 加审核日志
* @Author: hgw
* @Date: 2025/4/27 10:49
* @return: void
**/
@Override
public
void
doSaveAuditInfo
(
TSocialInfo
social
,
String
title
,
String
handleRemark
,
String
remark
,
YifuUser
user
,
String
auditStatus
)
{
TAuditInfo
auditInfo
=
new
TAuditInfo
();
auditInfo
.
setType
(
CommonConstants
.
ONE_STRING
);
auditInfo
.
setId
(
null
);
auditInfo
.
setAuditStatus
(
auditStatus
);
auditInfo
.
setAuditRemark
(
handleRemark
);
auditInfo
.
setTitle
(
title
);
auditInfo
.
setOrganName
(
user
.
getDeptName
());
auditInfo
.
setAuditUser
(
user
.
getNickname
());
auditInfo
.
setAuditTime
(
new
Date
());
auditInfo
.
setRemark
(
remark
);
auditInfo
.
setIsCommision
(
CommonConstants
.
ONE_STRING
);
auditInfo
.
setDispatchInfoId
(
social
.
getDispatchId
());
auditInfo
.
setEmpIdcard
(
social
.
getEmpIdcard
());
auditInfo
.
setSocialId
(
social
.
getId
());
this
.
save
(
auditInfo
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TDispatchInfoServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -3593,6 +3593,14 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
}
//自动化处理,如果未配置还是人工处理
if
(
CommonConstants
.
THREE_STRING
.
equals
(
auditStatus
)){
// 初始化之前,保留原状态给 自动化办理查询使用 hgw 2025-4-27 17:37:09
socialInfo
.
setAddYgsHandleStatus
(
socialInfo
.
getYgsHandleStatus
());
socialInfo
.
setAddYsdHandleStatus
(
socialInfo
.
getYsdHandleStatus
());
socialInfo
.
setAddYgsRequestId
(
socialInfo
.
getYgsRequestId
());
socialInfo
.
setAddYsdRequestId
(
socialInfo
.
getYsdRequestId
());
socialInfo
.
setAddYgsRemark
(
socialInfo
.
getYgsRemark
());
socialInfo
.
setAddYsdRemark
(
socialInfo
.
getYsdRemark
());
if
((
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getPensionHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getPensionHandle
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getWorkInjuryHandle
())
...
...
@@ -5272,6 +5280,31 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
}
/**
* @Author hgw
* @Description 自动化办理查询导出 count
* @Date 2024-5-13 11:30:12
* @Param
* @return
**/
private
int
getSocialSoldierAllCount
(
SocialHandleSearchVo
searchVo
,
String
idStr
)
{
List
<
String
>
ids
=
new
ArrayList
<>();
if
(
Common
.
isNotNull
(
idStr
)){
ids
=
Common
.
initStrToList
(
idStr
,
CommonConstants
.
COMMA_STRING
);
}
return
baseMapper
.
getSocialSoldierAllCount
(
searchVo
,
ids
);
}
/**
* @Description: 自动化办理查询导出
* @Author: hgw
* @Date: 2025/4/25 18:33
* @return: java.util.List<com.yifu.cloud.plus.v1.yifu.social.vo.SocialSoldierExportVo>
**/
private
List
<
SocialSoldierExportVo
>
getSocialSoldierAllList
(
SocialHandleSearchVo
searchVo
,
String
idStr
)
{
return
baseMapper
.
getSocialSoldierAllList
(
searchVo
,
Common
.
getList
(
idStr
));
}
/**
* @Author hgw
* @Description 社保士兵导出 count
...
...
@@ -5335,7 +5368,74 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
if
(
Common
.
isNotNull
(
list
)){
list
.
clear
();
}
updateSocialRecords
(
searchVo
,
idStr
);
}
excelWriter
.
finish
();
}
else
{
WriteSheet
writeSheet
=
EasyExcelFactory
.
writerSheet
(
DispatchConstants
.
SOCIAL_SOLDIER_EXPORT
+
index
).
build
();
excelWriter
.
write
(
list
,
writeSheet
);
excelWriter
.
finish
();
}
if
(
Common
.
isNotNull
(
list
)){
list
.
clear
();
}
out
.
flush
();
}
catch
(
Exception
e
){
log
.
error
(
"执行异常"
,
e
);
}
finally
{
try
{
if
(
null
!=
out
)
{
out
.
close
();
}
}
catch
(
IOException
e
)
{
log
.
error
(
"执行异常"
,
e
);
}
}
}
/**
* @Author hgw
* @Description 自动化办理查询导出
* @Date 2025-4-25 18:29:18
* @Param
* @return
**/
@Override
public
void
doExportSocialSoldierAll
(
HttpServletResponse
response
,
SocialHandleSearchVo
searchVo
,
String
idStr
,
String
[]
exportFields
)
{
String
fileName
=
DispatchConstants
.
SOCIAL_SOLDIER_EXPORT_ALL
+
DateUtil
.
getThisTime
()
+
CommonConstants
.
XLSX
;
//获取要导出的列表
List
<
SocialSoldierExportVo
>
list
=
new
ArrayList
<>();
long
count
=
getSocialSoldierAllCount
(
searchVo
,
idStr
);
ServletOutputStream
out
=
null
;
try
{
out
=
response
.
getOutputStream
();
response
.
setContentType
(
CommonConstants
.
MULTIPART_FORM_DATA
);
response
.
setHeader
(
CommonConstants
.
CONTENT_DISPOSITION
,
CommonConstants
.
ATTACHMENT_FILENAME
+
URLEncoder
.
encode
(
fileName
,
CommonConstants
.
UTF8
));
// 这里 需要指定写用哪个class去写,然后写到第一个sheet,然后文件流会自动关闭
ExcelWriter
excelWriter
=
EasyExcelFactory
.
write
(
out
,
SocialSoldierExportVo
.
class
).
build
();
int
index
=
0
;
if
(
count
>
CommonConstants
.
ZERO_INT
){
WriteSheet
writeSheet
;
ExcelUtil
<
SocialSoldierExportVo
>
util
;
for
(
int
i
=
0
;
i
<=
count
;
)
{
// 获取实际记录
searchVo
.
setLimitStart
(
i
);
searchVo
.
setLimitEnd
(
CommonConstants
.
EXCEL_EXPORT_LIMIT
);
list
=
getSocialSoldierAllList
(
searchVo
,
idStr
);
if
(
Common
.
isNotNull
(
list
)){
util
=
new
ExcelUtil
<>(
SocialSoldierExportVo
.
class
);
for
(
SocialSoldierExportVo
vo:
list
){
util
.
convertEntity
(
vo
,
null
,
null
,
null
);
}
}
if
(
Common
.
isNotNull
(
list
)){
writeSheet
=
EasyExcelFactory
.
writerSheet
(
DispatchConstants
.
SOCIAL_SOLDIER_EXPORT
+
index
).
build
();
excelWriter
.
write
(
list
,
writeSheet
);
index
++;
i
+=
CommonConstants
.
EXCEL_EXPORT_LIMIT
;
}
if
(
Common
.
isNotNull
(
list
)){
list
.
clear
();
}
}
excelWriter
.
finish
();
}
else
{
...
...
@@ -5464,6 +5564,11 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
return
baseMapper
.
getTSocialSoldierHandlePage
(
page
,
tDispatchInfo
,
null
);
}
@Override
public
IPage
<
TSocialSoldierPageVo
>
getPageSocialSoldierAll
(
Page
<
TSocialSoldierPageVo
>
page
,
SocialHandleSearchVo
tDispatchInfo
)
{
return
baseMapper
.
getPageSocialSoldierAll
(
page
,
tDispatchInfo
,
null
);
}
@Override
public
IPage
<
TDispatchInfo
>
getTDispatchSocialHandlePage
(
Page
<
TDispatchInfo
>
page
,
SocialHandleSearchVo
tDispatchInfo
)
{
return
baseMapper
.
getTDispatchSocialHandlePage
(
page
,
tDispatchInfo
,
null
);
...
...
@@ -6202,7 +6307,8 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
handleStatus
=
CommonConstants
.
TWO_STRING
;
}
dispatch
=
dispatchMap
.
get
(
excel
.
getEmpIdcard
());
if
(
Common
.
isEmpty
(
dispatch
))
{
//批量办理增加派单类型 fxj 2025-04-24 V1.7.10
if
(
Common
.
isEmpty
(
dispatch
)
||
!
excel
.
getType
().
equals
(
dispatch
.
getType
()))
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
MsgUtils
.
getMessage
(
ErrorCodes
.
FUND_IMPORT_HANDLE_NOT_EXITS
),
excel
));
continue
;
}
...
...
@@ -6368,7 +6474,8 @@ public class TDispatchInfoServiceImpl extends ServiceImpl<TDispatchInfoMapper, T
}
dispatch
=
dispatchMap
.
get
(
excel
.
getEmpIdcard
());
if
(
Common
.
isEmpty
(
dispatch
))
{
//批量办理增加派单类型 fxj 2025-04-24 V1.7.10
if
(
Common
.
isEmpty
(
dispatch
)
||
!
excel
.
getType
().
equals
(
dispatch
.
getType
()))
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
MsgUtils
.
getMessage
(
ErrorCodes
.
SOCIAL_IMPORT_HANDLE_NOT_EXITS
),
excel
));
continue
;
}
...
...
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TSocialInfoServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -32,6 +32,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.*
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.SysHouseHoldInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo
;
...
...
@@ -39,6 +40,7 @@ import com.yifu.cloud.plus.v1.yifu.social.entity.TSocialInfo;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.SysHouseHoldInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TDispatchInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TAuditInfoService
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TSocialInfoService
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SocialAddAndReduceVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialInfoSearchVo
;
...
...
@@ -69,6 +71,8 @@ public class TSocialInfoServiceImpl extends ServiceImpl<TSocialInfoMapper, TSoci
private
final
SysHouseHoldInfoMapper
sysHouseHoldInfoMapper
;
private
final
TAuditInfoService
tAuditInfoService
;
/**
* 社保明细表简单分页查询
* @param tSocialInfo 社保明细表
...
...
@@ -503,4 +507,204 @@ public class TSocialInfoServiceImpl extends ServiceImpl<TSocialInfoMapper, TSoci
return
baseMapper
.
getSocialSoldierByAddId
(
addId
);
}
/**
* @param idList 社保IDlist
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 批量转人工
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Override
public
R
<
String
>
doRenGongBatch
(
List
<
String
>
idList
,
String
isSocial
,
YifuUser
user
)
{
for
(
String
id
:
idList
)
{
doRenGong
(
id
,
isSocial
,
user
);
}
return
R
.
ok
(
"成功!"
);
}
/**
* @param id 社保ID
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 转人工
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Override
public
R
<
String
>
doRenGong
(
String
id
,
String
isSocial
,
YifuUser
user
)
{
TSocialInfo
socialInfo
=
this
.
getById
(
id
);
if
(
socialInfo
==
null
||
Common
.
isEmpty
(
socialInfo
.
getId
()))
{
return
R
.
failed
(
"未找到社保"
);
}
else
{
TDispatchInfo
disExist
=
dispatchInfoMapper
.
selectOne
(
Wrappers
.<
TDispatchInfo
>
query
().
lambda
()
.
eq
(
TDispatchInfo:
:
getSocialId
,
id
)
.
eq
(
TDispatchInfo:
:
getStatus
,
CommonConstants
.
TWO_STRING
)
.
orderByDesc
(
TDispatchInfo:
:
getCreateTime
).
last
(
CommonConstants
.
LAST_ONE_SQL
));
String
handleRemark
=
"派增"
;
// 有可以转的项目,则可以转
boolean
canUpdate
=
false
;
if
(
disExist
!=
null
&&
CommonConstants
.
ONE_STRING
.
equals
(
disExist
.
getType
()))
{
handleRemark
=
"派减"
;
}
// 判断养工失转人工
if
((
CommonConstants
.
ONE_STRING
.
equals
(
isSocial
)
||
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
&&
Common
.
isNotNull
(
socialInfo
.
getYgsHandleStatus
()))
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
())
||
CommonConstants
.
FOUR_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
())
||
CommonConstants
.
SIX_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
()))
{
// 全部的,不反馈某一个失败
if
(!
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
{
return
R
.
failed
(
"当前养老工伤失业-办理状态不可以转人工!"
);
}
}
else
{
socialInfo
.
setYgsHandleStatus
(
CommonConstants
.
FIVE_STRING
);
handleRemark
+=
"养老、工伤、失业手动转人工;"
;
canUpdate
=
true
;
}
}
// 判断医生大转人工
if
((
CommonConstants
.
TWO_STRING
.
equals
(
isSocial
)
||
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
&&
Common
.
isNotNull
(
socialInfo
.
getYsdHandleStatus
()))
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
())
||
CommonConstants
.
FOUR_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
())
||
CommonConstants
.
SIX_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
()))
{
// 全部的,不反馈某一个失败
if
(!
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
{
return
R
.
failed
(
"当前医疗生育大病-办理状态不可以转人工!"
);
}
}
else
{
socialInfo
.
setYsdHandleStatus
(
CommonConstants
.
FIVE_STRING
);
handleRemark
+=
"医疗、生育、大病手动转人工"
;
canUpdate
=
true
;
}
}
// 更新社保和加日志
return
doUpdateCoreAndLog
(
user
,
socialInfo
,
handleRemark
,
canUpdate
,
disExist
);
}
}
/**
* @param idList 社保IDlist
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 批量转自动化
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Override
public
R
<
String
>
doAutoBatch
(
List
<
String
>
idList
,
String
isSocial
,
YifuUser
user
)
{
for
(
String
id
:
idList
)
{
doAuto
(
id
,
isSocial
,
user
);
}
return
R
.
ok
(
"成功!"
);
}
/**
* @param id 社保ID
* @param isSocial 1:社保 2:医保 3:全部
* @param user 当前登录人
* @Description: 转自动化
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
@Override
public
R
<
String
>
doAuto
(
String
id
,
String
isSocial
,
YifuUser
user
)
{
TSocialInfo
socialInfo
=
this
.
getById
(
id
);
if
(
socialInfo
==
null
||
Common
.
isEmpty
(
socialInfo
.
getId
()))
{
return
R
.
failed
(
"未找到社保"
);
}
else
{
TDispatchInfo
disExist
=
dispatchInfoMapper
.
selectOne
(
Wrappers
.<
TDispatchInfo
>
query
().
lambda
()
.
eq
(
TDispatchInfo:
:
getSocialId
,
id
)
.
eq
(
TDispatchInfo:
:
getStatus
,
CommonConstants
.
TWO_STRING
)
.
orderByDesc
(
TDispatchInfo:
:
getCreateTime
).
last
(
CommonConstants
.
LAST_ONE_SQL
));
String
handleRemark
=
"派增"
;
// 有可以转的项目,则可以转
boolean
canUpdate
=
false
;
if
(
disExist
!=
null
&&
CommonConstants
.
ONE_STRING
.
equals
(
disExist
.
getType
()))
{
handleRemark
=
"派减"
;
}
// 判断养工失转自动化
if
((
CommonConstants
.
ONE_STRING
.
equals
(
isSocial
)
||
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
&&
Common
.
isNotNull
(
socialInfo
.
getYgsHandleStatus
())
&&
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getYgsHandleStatus
()))
{
// 养工失状态为待办理或派减待办理
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getPensionHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getPensionHandle
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getWorkInjuryHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getWorkInjuryHandle
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getUnemployHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getUnemployHandle
()))
{
socialInfo
.
setYgsHandleStatus
(
CommonConstants
.
ONE_STRING
);
handleRemark
+=
"养老、工伤、失业手动转自动化;"
;
canUpdate
=
true
;
}
else
if
(!
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
{
// 全部的,不反馈某一个失败
return
R
.
failed
(
"当前养老工伤失业-办理状态不可以转自动化!"
);
}
}
// 判断医生大转自动化
if
((
CommonConstants
.
TWO_STRING
.
equals
(
isSocial
)
||
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
&&
Common
.
isNotNull
(
socialInfo
.
getYsdHandleStatus
())
&&
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getYsdHandleStatus
()))
{
// 医生大状态为待办理或派减待办理
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getMedicalHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getMedicalHandle
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getBirthHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getBirthHandle
())
||
CommonConstants
.
ZERO_STRING
.
equals
(
socialInfo
.
getBigailmentHandle
())
||
CommonConstants
.
FIVE_STRING
.
equals
(
socialInfo
.
getBigailmentHandle
()))
{
socialInfo
.
setYsdHandleStatus
(
CommonConstants
.
ONE_STRING
);
handleRemark
+=
"医疗、生育、大病手动转自动化"
;
canUpdate
=
true
;
}
else
if
(!
CommonConstants
.
THREE_STRING
.
equals
(
isSocial
))
{
// 全部的,不反馈某一个失败
return
R
.
failed
(
"当前医疗生育大病-办理状态不可以转自动化!"
);
}
}
// 更新社保和加日志
return
doUpdateCoreAndLog
(
user
,
socialInfo
,
handleRemark
,
canUpdate
,
disExist
);
}
}
/**
* @param user 当前登录人
* @param socialInfo 社保信息
* @param handleRemark 操作备注
* @param canUpdate 是否可以更新
* @Description: 更新社保和加日志
* @Author: hgw
* @Date: 2025/4/25 17:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.lang.String>
**/
private
R
<
String
>
doUpdateCoreAndLog
(
YifuUser
user
,
TSocialInfo
socialInfo
,
String
handleRemark
,
boolean
canUpdate
,
TDispatchInfo
disExist
)
{
if
(
canUpdate
)
{
this
.
updateById
(
socialInfo
);
if
(
disExist
!=
null
)
{
socialInfo
.
setDispatchId
(
disExist
.
getId
());
}
// 加流程进展明细
tAuditInfoService
.
doSaveAuditInfo
(
socialInfo
,
handleRemark
,
handleRemark
,
handleRemark
,
user
,
CommonConstants
.
ONE_STRING
);
return
R
.
ok
(
"成功"
);
}
else
{
if
(
Common
.
isNotNull
(
handleRemark
)
&&
handleRemark
.
length
()
>
2
)
{
return
R
.
failed
(
"【"
+
handleRemark
+
"】状态未变更,请刷新后查看列表状态!"
);
}
else
{
return
R
.
failed
(
"状态未变更,请刷新后查看列表状态!"
);
}
}
}
}
yifu-social/yifu-social-biz/src/main/resources/mapper/SysHouseHoldInfoMapper.xml
View file @
3c5d3ea4
...
...
@@ -56,6 +56,7 @@
<result
property=
"mediclPassword"
column=
"MEDICL_PASSWORD"
/>
<result
property=
"isSign"
column=
"IS_SIGN"
/>
<result
property=
"customerNoYsd"
column=
"CUSTOMER_NO_YSD"
/>
<result
property=
"isSingle"
column=
"IS_SINGLE"
/>
</resultMap>
<resultMap
id=
"sysHouseHoldSingleInfoMap"
type=
"com.yifu.cloud.plus.v1.yifu.social.entity.SysHouseHoldInfo"
>
...
...
@@ -97,7 +98,8 @@
a.SOCIAL_PASSWORD,
a.MEDICL_PASSWORD,
a.IS_SIGN,
a.CUSTOMER_NO_YSD
a.CUSTOMER_NO_YSD,
a.IS_SINGLE
</sql>
<sql
id=
"sysHouseHoldInfo_where"
>
<if
test=
"sysHouseHoldInfo != null"
>
...
...
yifu-social/yifu-social-biz/src/main/resources/mapper/TDispatchInfoMapper.xml
View file @
3c5d3ea4
...
...
@@ -104,7 +104,7 @@
<result
property=
"firstPayTime"
column=
"FIRST_PAY_TIME"
/>
<result
property=
"graduationTime"
column=
"GRADUATION_TIME"
/>
<result
property=
"autoFlag"
column=
"AUTO_FLAG"
/>
<result
property=
"isSingle"
column=
"IS_SINGLE"
/>
</resultMap>
<resultMap
id=
"dispatchPageMap"
type=
"com.yifu.cloud.plus.v1.yifu.social.vo.TDispatchInfoPageVo"
extends=
"tDispatchInfoMap"
>
...
...
@@ -434,7 +434,7 @@
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME,
a.GRADUATION_TIME,a.AUTO_FLAG
a.GRADUATION_TIME,a.AUTO_FLAG
,a.IS_SINGLE
</sql>
<sql
id=
"tDispatchInfo_where"
>
<if
test=
"tDispatchInfo != null"
>
...
...
@@ -1358,6 +1358,75 @@
order by a.AUDIT_TIME desc
</select>
<!--tDispatchInfo 自动化办理查询导出-->
<select
id=
"getSocialSoldierAllList"
resultMap=
"socialSoldierExportMap"
>
SELECT
a.TYPE,
a.SOCIAL_HANDLE_STATUS,
if(ifnull(h.id,0) != '0',h.PENSION_HANDLE,s.PENSION_HANDLE) PENSION_HANDLE,
if(ifnull(h.id,0) != '0',h.MEDICAL_HANDLE,s.MEDICAL_HANDLE) MEDICAL_HANDLE,
if(ifnull(h.id,0) != '0',h.UNEMPLOY_HANDLE,s.UNEMPLOY_HANDLE) UNEMPLOY_HANDLE,
if(ifnull(h.id,0) != '0',h.WORK_INJURY_HANDLE,s.WORK_INJURY_HANDLE) WORK_INJURY_HANDLE,
if(ifnull(h.id,0) != '0',h.BIRTH_HANDLE,s.BIRTH_HANDLE) BIRTH_HANDLE,
if(ifnull(h.id,0) != '0',h.BIGAILMENT_HANDLE,s.BIGAILMENT_HANDLE) BIGAILMENT_HANDLE,
a.EMP_NAME,
a.EMP_IDCARD,
a.EDUCATION_NAME,
a.BELONG_UNIT_NAME,
a.SETTLE_DOMAIN_NAME,
a.EMP_TYPE,
a.POST,
a.EMP_MOBILE,
a.ID_CARD_ADDRESS,
a.EMP_REGIS_TYPE,
a.EMP_NATIONAL,
a.WORKING_HOURS,
a.CONTRACT_TERM,
a.CONTRACT_START,
a.CONTRACT_END,
a.CREATE_NAME,
a.CONTACT_ADDRESS,
s.RECORD_BASE,
s.PAYMENT_TYPE,
a.SOCIAL_HOUSEHOLD_NAME,
if(ifnull(h.id,0) != '0',h.SOCIAL_PROVINCE,s.SOCIAL_PROVINCE) SOCIAL_PROVINCE,
if(ifnull(h.id,0) != '0',h.SOCIAL_CITY,s.SOCIAL_CITY) SOCIAL_CITY,
if(ifnull(h.id,0) != '0',h.SOCIAL_TOWN,s.SOCIAL_TOWN) SOCIAL_TOWN,
if(ifnull(h.id,0) != '0',h.PENSION_START,s.PENSION_START) PENSION_START,
if(ifnull(h.id,0) != '0',h.UNIT_PENSION_CARDINAL,s.UNIT_PENSION_CARDINAL) UNIT_PENSION_CARDINAL,
if(ifnull(h.id,0) != '0',h.MEDICAL_START,s.MEDICAL_START) MEDICAL_START,
if(ifnull(h.id,0) != '0',h.UNIT_MEDICAL_CARDINAL,s.UNIT_MEDICAL_CARDINAL) UNIT_MEDICAL_CARDINAL,
if(ifnull(h.id,0) != '0',h.UNEMPLOY_START,s.UNEMPLOY_START) UNEMPLOY_START,
if(ifnull(h.id,0) != '0',h.UNIT_UNEMPLOYMENT_CARDINAL,s.UNIT_UNEMPLOYMENT_CARDINAL) UNIT_UNEMPLOYMENT_CARDINAL,
if(ifnull(h.id,0) != '0',h.WORK_INJURY_START,s.WORK_INJURY_START) WORK_INJURY_START,
if(ifnull(h.id,0) != '0',h.UNIT_WORK_INJURY_CARDINAL,s.UNIT_WORK_INJURY_CARDINAL) UNIT_WORK_INJURY_CARDINAL,
if(ifnull(h.id,0) != '0',h.BIRTH_START,s.BIRTH_START) BIRTH_START,
if(ifnull(h.id,0) != '0',h.UNIT_BIRTH_CARDINAL,s.UNIT_BIRTH_CARDINAL) UNIT_BIRTH_CARDINAL,
if(ifnull(h.id,0) != '0',h.BIGAILMENT_START,s.BIGAILMENT_START) BIGAILMENT_START,
if(ifnull(h.id,0) != '0',h.UNIT_BIGAILMENT_CARDINAL,s.UNIT_BIGAILMENT_CARDINAL) UNIT_BIGAILMENT_CARDINAL,
if(ifnull(h.id,0) != '0',h.UNIT_BIGAILMENT_MONEY,s.UNIT_BIGAILMENT_MONEY) UNIT_BIGAILMENT_MONEY,
if(ifnull(h.id,0) != '0',h.PERSONAL_BIGAILMENT_MONEY,s.PERSONAL_BIGAILMENT_MONEY) PERSONAL_BIGAILMENT_MONEY,
a.TRUST_REMARK,
a.REDUCE_REASON,
'1' as EXPORT_SOCIAL_FLAG,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME,
a.GRADUATION_TIME,
IF(a.LEAVE_DATE is not null,DATE_FORMAT(a.LEAVE_DATE,"%Y-%m-%d"),"") as "LEAVE_DATE"
,if(a.type ='0' and s.add_ygs_Handle_Status != '0', s.add_ygs_Handle_Status, s.ygs_Handle_Status) ygs_Handle_Status
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_ysd_Handle_Status, s.ysd_Handle_Status) ysd_Handle_Status
,if(a.type ='0' and s.add_ygs_Handle_Status != '0', s.add_YGS_REMARK, s.YGS_REMARK) YGS_REMARK
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_YSD_REMARK, s.YSD_REMARK) YSD_REMARK
,if(a.type ='0' and s.add_ygs_Handle_Status != '0', s.add_YGS_REQUEST_ID, s.YGS_REQUEST_ID) YGS_REQUEST_ID
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_YSD_REQUEST_ID, s.YSD_REQUEST_ID) YSD_REQUEST_ID
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
<include
refid=
"where_getSocialSoldier"
/>
order by a.AUDIT_TIME desc
</select>
<update
id=
"updateSocialRecords"
>
update
t_dispatch_info a
...
...
@@ -1395,6 +1464,20 @@
) a
</select>
<!-- 导出社保士兵count -->
<select
id=
"getSocialSoldierAllCount"
resultType=
"java.lang.Integer"
>
SELECT
count(1)
from (
SELECT
1
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
<include
refid=
"where_getSocialSoldier"
/>
) a
</select>
<resultMap
id=
"socialSoldierPageMap"
type=
"com.yifu.cloud.plus.v1.yifu.social.vo.TSocialSoldierPageVo"
extends=
"tDispatchInfoMap"
>
<result
property=
"socialHouseholdName"
column=
"SOCIAL_HOUSEHOLD_NAME"
/>
<result
property=
"ygsHandleStatus"
column=
"YGS_HANDLE_STATUS"
/>
...
...
@@ -1499,6 +1582,102 @@
order by a.AUDIT_TIME desc
</select>
<!-- hgw 2025-4-25 18:09:12 自动化办理查询——派单维度 -->
<select
id=
"getPageSocialSoldierAll"
resultMap=
"socialSoldierPageMap"
>
SELECT
a.ID,
a.EMP_ID,
a.EMP_NAME,
a.EMP_NO,
a.EMP_IDCARD,
a.EMP_TYPE,
a.EMP_MOBILE,
a.EMP_NATIONAL,
a.STATUS,
a.TYPE,
a.SOCIAL_ID,
a.FUND_ID,
a.TYPE_SUB,
a.PROCESS_INST_ID,
a.SETTLE_DOMAIN,
a.DELETE_FLAG,
a.SOCIAL_REDUCE_DATE,
a.FUND_REDUCE_DATE,
a.LEAVE_DATE,
a.REDUCE_REASON,
a.REDUCE_REMARK,
a.BELONG_UNIT,
a.CURRENT_OPERATOR,
a.DISPATCH_ID_BAK,
a.CONTRACT_START,
a.CONTRACT_END,
a.CONTRACT_TERM,
a.EMP_REGIS_TYPE,
a.ENJOIN_DATE,
a.FILE_ADDR,
a.POST,
a.TRUST_REMARK,
a.FILE_PROVINCE,
a.FILE_CITY,
a.FILE_TOWN,
a.CONTRACT_TYPE,
a.SOCIAL_HANDLE_STATUS,
a.FUND_HANDLE_STATUS,
a.HANDLE_REMARK,
a.AUDIT_REMARK,
a.FUND_HANDLE_REMARK,
a.SOCIAL_HANDLE_REMARK,
a.SOCIAL_PROVINCE,
a.SOCIAL_CITY,
a.SOCIAL_TOWN,
a.FUND_PROVINCE,
a.FUND_CITY,
a.FUND_TOWN,
a.AUDIT_USER,
a.AUDIT_USER_NAME,
a.AUDIT_TIME,
a.WORKING_HOURS,
a.CREATE_BY,
a.UPDATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_TIME,
a.ORGAN_NAME,
a.DISPATCH_ITEM,
a.SETTLE_DOMAIN_NAME,
a.BELONG_UNIT_NAME,
a.DISPATCH_CODE,
a.AGAIN_DISPATCH_CODE,
a.SETTLE_DOMAIN_CODE,
a.CONTRACT_SUB_NAME,
a.CONTRACT_ID,
a.EDUCATION_NAME,
a.TRY_PERIOD,
a.ID_CARD_PROVINCE,
a.ID_CARD_CITY,
a.ID_CARD_TOWN,
a.ID_CARD_ADDRESS,
a.APPLY_NO,
a.ORDER_ID,
a.SCHOOL_NAME,
a.MAJOR,
a.FIRST_PAY_TIME,
a.GRADUATION_TIME,a.AUTO_FLAG
,a.SOCIAL_HOUSEHOLD_NAME
,s.YGS_REMARK_OLD,s.YSD_REMARK_OLD
,if(a.type ='0' and s.add_ygs_Handle_Status != '0', s.add_ygs_Handle_Status, s.ygs_Handle_Status) ygs_Handle_Status
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_ysd_Handle_Status, s.ysd_Handle_Status) ysd_Handle_Status
,if(a.type ='0' and s.add_ygs_Handle_Status != '0', s.add_YGS_REMARK, s.YGS_REMARK) YGS_REMARK
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_YSD_REMARK, s.YSD_REMARK) YSD_REMARK
,if(a.type ='0' and s.add_ygs_Handle_Status != '0', s.add_YGS_REQUEST_ID, s.YGS_REQUEST_ID) YGS_REQUEST_ID
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_YSD_REQUEST_ID, s.YSD_REQUEST_ID) YSD_REQUEST_ID
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
<include
refid=
"where_getSocialSoldier"
/>
order by a.AUDIT_TIME desc
</select>
<!--tDispatchInfo 社保办理数据查询-->
<select
id=
"getTDispatchSocialHandlePage"
resultMap=
"dispatchPageMap"
>
SELECT
...
...
@@ -1951,6 +2130,9 @@
</foreach>
</if>
<if
test=
"tDispatchInfo != null"
>
<if
test=
"tDispatchInfo.trustRemark != null and tDispatchInfo.trustRemark.trim() != ''"
>
AND a.TRUST_REMARK = #{tDispatchInfo.trustRemark}
</if>
<if
test=
"tDispatchInfo.empTypeList != null and tDispatchInfo.empTypeList.length>0"
>
AND a.EMP_TYPE IN
<foreach
collection=
"tDispatchInfo.empTypeList"
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
>
...
...
@@ -2058,6 +2240,9 @@
</foreach>
</if>
<if
test=
"tDispatchInfo != null"
>
<if
test=
"tDispatchInfo.trustRemark != null and tDispatchInfo.trustRemark.trim() != ''"
>
AND a.TRUST_REMARK = #{tDispatchInfo.trustRemark}
</if>
<if
test=
"tDispatchInfo.dispatchItems != null and tDispatchInfo.dispatchItems.size >0"
>
AND
<foreach
item=
"item"
index=
"index"
collection=
"tDispatchInfo.dispatchItems"
open=
"("
separator=
"or"
close=
")"
>
...
...
@@ -2181,6 +2366,9 @@
<if
test=
"tDispatchInfo != null"
>
<if
test=
"tDispatchInfo.trustRemark != null and tDispatchInfo.trustRemark.trim() != ''"
>
AND a.TRUST_REMARK = #{tDispatchInfo.trustRemark}
</if>
<if
test=
"tDispatchInfo.dispatchItems != null and tDispatchInfo.dispatchItems.size >0"
>
AND
<foreach
item=
"item"
index=
"index"
collection=
"tDispatchInfo.dispatchItems"
open=
"("
separator=
"or"
close=
")"
>
...
...
yifu-upms/yifu-upms-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/admin/service/impl/SysUserServiceImpl.java
View file @
3c5d3ea4
...
...
@@ -528,8 +528,8 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
List
<
String
>
list2
=
list
.
stream
().
map
(
PersonVo:
:
getUid
).
collect
(
Collectors
.
toList
());
List
<
String
>
collect
=
list1
.
stream
().
filter
(
s
->
!
list2
.
contains
(
s
)
).
collect
(
Collectors
.
toList
());
log
.
error
(
"要重置为不可用的用户列表:"
+
collect
);
if
(!
collect
.
isEmpty
())
{
log
.
error
(
"要重置为不可用的用户列表:"
+
collect
);
LambdaUpdateWrapper
<
SysUser
>
settleUpdate
=
new
LambdaUpdateWrapper
<>();
settleUpdate
.
in
(
SysUser:
:
getUsername
,
collect
)
.
set
(
SysUser:
:
getDelFlag
,
CommonConstants
.
ONE_STRING
);
...
...
yifu-upms/yifu-upms-biz/src/main/resources/application.yml
View file @
3c5d3ea4
...
...
@@ -26,7 +26,8 @@ mybatis-plus:
logic-not-delete-value
:
0
configuration
:
map-underscore-to-camel-case
:
true
# 放开日志-hgw-2025-04-23
#log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
# spring security 配置
security
:
oauth2
:
...
...
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