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
4ae6e7bd
Commit
4ae6e7bd
authored
Jul 17, 2025
by
fangxinjiang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
税友反馈文件下载-fxj
parent
19000d23
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
1790 additions
and
1298 deletions
+1790
-1298
SocialFriendConfig.java
.../cloud/plus/v1/yifu/social/config/SocialFriendConfig.java
+207
-12
TDispatchInfoController.java
...us/v1/yifu/social/controller/TDispatchInfoController.java
+13
-0
TDispatchInfoMapper.java
...cloud/plus/v1/yifu/social/mapper/TDispatchInfoMapper.java
+10
-0
TDispatchInfoService.java
...oud/plus/v1/yifu/social/service/TDispatchInfoService.java
+2
-0
TDispatchInfoServiceImpl.java
...v1/yifu/social/service/impl/TDispatchInfoServiceImpl.java
+1487
-1281
application-test.yml
...l/yifu-social-biz/src/main/resources/application-test.yml
+16
-4
TDispatchInfoMapper.xml
...ial-biz/src/main/resources/mapper/TDispatchInfoMapper.xml
+55
-1
No files found.
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/config/SocialFriendConfig.java
View file @
4ae6e7bd
...
@@ -9,9 +9,12 @@ import com.yifu.cloud.plus.v1.yifu.common.core.exception.CheckedException;
...
@@ -9,9 +9,12 @@ import com.yifu.cloud.plus.v1.yifu.common.core.exception.CheckedException;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
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.DateUtil
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.SysHouseHoldInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TSocialFriendBackLog
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TSocialFriendBackLog
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.FriendResult
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.FriendResult
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SociaFriendYgsAddVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SociaFriendYgsAddVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SocialSoldierBackVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SocialSoldierExportVo
;
import
lombok.Data
;
import
lombok.Data
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.beans.factory.annotation.Value
;
...
@@ -19,13 +22,12 @@ import org.springframework.context.annotation.Configuration;
...
@@ -19,13 +22,12 @@ import org.springframework.context.annotation.Configuration;
import
org.springframework.http.*
;
import
org.springframework.http.*
;
import
org.springframework.security.core.parameters.P
;
import
org.springframework.security.core.parameters.P
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.client.RestTemplate
;
import
org.springframework.web.util.UriComponentsBuilder
;
import
java.net.URL
;
import
java.security.SignatureException
;
import
java.security.SignatureException
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.*
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.TreeMap
;
import
static
com
.
alibaba
.
fastjson
.
serializer
.
SerializerFeature
.*;
import
static
com
.
alibaba
.
fastjson
.
serializer
.
SerializerFeature
.*;
...
@@ -64,6 +66,12 @@ public class SocialFriendConfig {
...
@@ -64,6 +66,12 @@ public class SocialFriendConfig {
// url拉结果数据
// url拉结果数据
@Value
(
"${socialFriend.urlUpload}"
)
@Value
(
"${socialFriend.urlUpload}"
)
private
String
urlUpload
;
private
String
urlUpload
;
// url人员维度网厅源文件下载(个人审核查询证明)
@Value
(
"${socialFriend.urlDownloadEmployeeAsync}"
)
private
String
urlDownloadEmployeeAsync
;
@Value
(
"${socialFriend.urlDownloadEmployeeFeedback}"
)
// URL人员维度网厅源文件下载反馈
private
String
urlDownloadEmployeeFeedback
;
private
static
final
String
APP_KEY
=
"appKey"
;
private
static
final
String
APP_KEY
=
"appKey"
;
...
@@ -71,10 +79,11 @@ public class SocialFriendConfig {
...
@@ -71,10 +79,11 @@ public class SocialFriendConfig {
private
static
final
String
X_REQ_NONCE
=
"xReqNonce"
;
private
static
final
String
X_REQ_NONCE
=
"xReqNonce"
;
private
static
final
String
VERSION
=
"version"
;
private
static
final
String
VERSION
=
"version"
;
private
static
final
SerializerFeature
[]
features
=
new
SerializerFeature
[]
{
private
static
final
SerializerFeature
[]
features
=
new
SerializerFeature
[]{
WriteMapNullValue
,
WriteNullNumberAsZero
,
WriteNullListAsEmpty
,
WriteMapNullValue
,
WriteNullNumberAsZero
,
WriteNullListAsEmpty
,
WriteNullStringAsEmpty
,
WriteDateUseDateFormat
WriteNullStringAsEmpty
,
WriteDateUseDateFormat
};
};
/**
/**
* @param : listVo 同一类(户、增减)的前100个
* @param : listVo 同一类(户、增减)的前100个
* @param : vo 第一个,存账密等信息
* @param : vo 第一个,存账密等信息
...
@@ -158,11 +167,11 @@ public class SocialFriendConfig {
...
@@ -158,11 +167,11 @@ public class SocialFriendConfig {
if
(
Common
.
isNotNull
(
vo
.
getQyzgshbxzyhmc
()))
{
if
(
Common
.
isNotNull
(
vo
.
getQyzgshbxzyhmc
()))
{
JSONArray
qyzgshbxzyhmclbArr
=
new
JSONArray
();
JSONArray
qyzgshbxzyhmclbArr
=
new
JSONArray
();
qyzgshbxzyhmclbArr
.
add
(
vo
.
getQyzgshbxzyhmc
());
qyzgshbxzyhmclbArr
.
add
(
vo
.
getQyzgshbxzyhmc
());
if
(
type
<
3
&&
vo
.
getImgListYgs
()
!=
null
&&
!
vo
.
getImgListYgs
().
isEmpty
())
{
if
(
type
<
3
&&
vo
.
getImgListYgs
()
!=
null
&&
!
vo
.
getImgListYgs
().
isEmpty
())
{
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYgs
());
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYgs
());
}
}
if
(
type
>
2
&&
vo
.
getImgListYsd
()
!=
null
&&
!
vo
.
getImgListYsd
().
isEmpty
())
{
if
(
type
>
2
&&
vo
.
getImgListYsd
()
!=
null
&&
!
vo
.
getImgListYsd
().
isEmpty
())
{
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYsd
());
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYsd
());
}
}
...
@@ -174,11 +183,11 @@ public class SocialFriendConfig {
...
@@ -174,11 +183,11 @@ public class SocialFriendConfig {
}
else
if
(
Common
.
isNotNull
(
vo
.
getQyzgjbylbxcbdjb
()))
{
}
else
if
(
Common
.
isNotNull
(
vo
.
getQyzgjbylbxcbdjb
()))
{
JSONArray
qyzgshbxzyhmclbArr
=
new
JSONArray
();
JSONArray
qyzgshbxzyhmclbArr
=
new
JSONArray
();
qyzgshbxzyhmclbArr
.
add
(
vo
.
getQyzgjbylbxcbdjb
());
qyzgshbxzyhmclbArr
.
add
(
vo
.
getQyzgjbylbxcbdjb
());
if
(
type
<
3
&&
vo
.
getImgListYgs
()
!=
null
&&
!
vo
.
getImgListYgs
().
isEmpty
())
{
if
(
type
<
3
&&
vo
.
getImgListYgs
()
!=
null
&&
!
vo
.
getImgListYgs
().
isEmpty
())
{
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYgs
());
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYgs
());
}
}
if
(
type
>
2
&&
vo
.
getImgListYsd
()
!=
null
&&
!
vo
.
getImgListYsd
().
isEmpty
())
{
if
(
type
>
2
&&
vo
.
getImgListYsd
()
!=
null
&&
!
vo
.
getImgListYsd
().
isEmpty
())
{
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
// 税友新附件接口说用原来的:那就一批任务里面用一份文件就可以了 还是原来的那个字段 2025-5-16 16:57:00 王赣松
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYsd
());
qyzgshbxzyhmclbArr
.
addAll
(
vo
.
getImgListYsd
());
}
}
...
@@ -295,7 +304,7 @@ public class SocialFriendConfig {
...
@@ -295,7 +304,7 @@ public class SocialFriendConfig {
}
}
}
}
}
else
{
}
else
{
backLog
.
setSocialId
(
appAddUrl
+
"返回dataResultList为空"
);
backLog
.
setSocialId
(
appAddUrl
+
"返回dataResultList为空"
);
}
}
return
urlStr
;
return
urlStr
;
}
}
...
@@ -662,7 +671,7 @@ public class SocialFriendConfig {
...
@@ -662,7 +671,7 @@ public class SocialFriendConfig {
JSONObject
blxmjglb
;
JSONObject
blxmjglb
;
String
zt
;
String
zt
;
String
cwxx
;
String
cwxx
;
for
(
int
i
=
0
;
i
<
ryywbljglbArr
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
ryywbljglbArr
.
size
();
i
++)
{
ryywbljglb
=
(
JSONObject
)
ryywbljglbArr
.
get
(
i
);
ryywbljglb
=
(
JSONObject
)
ryywbljglbArr
.
get
(
i
);
result
=
new
FriendResult
();
result
=
new
FriendResult
();
// 身份证
// 身份证
...
@@ -757,4 +766,190 @@ public class SocialFriendConfig {
...
@@ -757,4 +766,190 @@ public class SocialFriendConfig {
return
birthStr
;
return
birthStr
;
}
}
/**
* @return
* @Author fxj
* @Description
* @Date 14:33 2025/7/15
* @Param type 0 社保 1 医保
* @Param subType 0 增员 1 减员
**/
public
HashMap
<
String
,
String
>
getDownloadEmployeeAsync
(
RestTemplate
restTemplate
,
SysHouseHoldInfo
houseHold
,
SocialSoldierBackVo
backVo
)
{
HashMap
<
String
,
String
>
result
=
new
HashMap
<>();
try
{
// 构建请求头
HttpHeaders
headers
=
buildCommonHeaders
(
null
);
// 构建请求体 JSON
JSONObject
requestBody
=
buildDownloadRequestJson
(
houseHold
,
backVo
);
HttpEntity
<
String
>
formEntity
=
new
HttpEntity
<>(
requestBody
.
toJSONString
(),
headers
);
// 发起异步下载请求
String
downloadEmployeeAsyncUrl
=
urlPre
+
urlDownloadEmployeeAsync
;
String
dataResultList
=
restTemplate
.
postForObject
(
downloadEmployeeAsyncUrl
,
formEntity
,
String
.
class
);
if
(
Common
.
isNotNull
(
dataResultList
))
{
JSONObject
response
=
JSON
.
parseObject
(
dataResultList
);
JSONObject
head
=
JSON
.
parseObject
(
response
.
getString
(
"head"
));
if
(
"Y"
.
equals
(
head
.
getString
(
"status"
)))
{
String
requestId
=
JSON
.
parseObject
(
response
.
getString
(
"body"
)).
getString
(
"requestId"
);
result
.
put
(
backVo
.
getSocialId
(),
requestId
);
/*if (Common.isNotNull(requestId)) {
urls.addAll(getDownloadFeedbackUrls(restTemplate, requestId));
}*/
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"获取税友人员审核查询证明文件失败"
,
e
);
}
return
result
;
}
// 构建公共请求头
private
HttpHeaders
buildCommonHeaders
(
String
requestId
)
throws
SignatureException
{
String
version
=
"1.0.0"
;
String
timestamp
=
String
.
valueOf
(
new
Date
().
getTime
());
String
xReqNonce
=
"1"
;
HttpHeaders
headers
=
new
HttpHeaders
();
headers
.
setContentType
(
MediaType
.
APPLICATION_JSON
);
headers
.
add
(
"accept"
,
MediaType
.
ALL_VALUE
);
headers
.
add
(
APP_KEY
,
appKey
);
headers
.
add
(
TIMESTAMP
,
timestamp
);
headers
.
add
(
X_REQ_NONCE
,
xReqNonce
);
headers
.
add
(
VERSION
,
version
);
String
signature
=
SocialFriendSign
.
qianMing
(
getMapParam
(
appKey
,
appSecret
,
xReqNonce
,
version
,
timestamp
,
requestId
));
headers
.
add
(
"signature"
,
signature
);
return
headers
;
}
// 构建请求参数 JSON
private
JSONObject
buildDownloadRequestJson
(
SysHouseHoldInfo
vo
,
SocialSoldierBackVo
exportVo
)
{
JSONObject
json
=
new
JSONObject
();
/*json.put("bizNo", "211429621163811844098020250715-172343");
json.put("qymc", "安徽皖信人力资源管理有限公司0");
json.put("nsrsbh", "91340152570242449C");
json.put("areaid", "340100");*/
json
.
put
(
"bizNo"
,
exportVo
.
getSocialId
());
json
.
put
(
"qymc"
,
vo
.
getName
());
json
.
put
(
"nsrsbh"
,
vo
.
getUnitCreditCode
());
json
.
put
(
"areaid"
,
vo
.
getAreaCode
());
JSONArray
ywblzhlbArr
=
new
JSONArray
();
JSONObject
jsonYwblzhlbYgs
=
new
JSONObject
();
jsonYwblzhlbYgs
.
put
(
"mm"
,
vo
.
getSocialPassword
());
jsonYwblzhlbYgs
.
put
(
"blxm"
,
"社保"
);
jsonYwblzhlbYgs
.
put
(
"dwbh"
,
vo
.
getCustomerNo
());
jsonYwblzhlbYgs
.
put
(
"zh"
,
vo
.
getSocialAccount
());
jsonYwblzhlbYgs
.
put
(
"mmlx"
,
"4"
);
ywblzhlbArr
.
add
(
jsonYwblzhlbYgs
);
json
.
put
(
"ywblzhlb"
,
ywblzhlbArr
);
JSONArray
rylbArr
=
new
JSONArray
();
JSONObject
rylbContent
=
new
JSONObject
();
rylbContent
.
put
(
"xm"
,
exportVo
.
getEmpName
());
rylbContent
.
put
(
"zzlx"
,
"居民身份证"
);
rylbContent
.
put
(
"zzhm"
,
exportVo
.
getEmpIdcard
());
rylbContent
.
put
(
"blxmlb"
,
new
String
[]{});
JSONObject
tszdxx
=
new
JSONObject
();
tszdxx
.
put
(
"jblx"
,
"增员"
);
rylbContent
.
put
(
"tszdxx"
,
tszdxx
);
rylbArr
.
add
(
rylbContent
);
json
.
put
(
"rylb"
,
rylbArr
);
json
.
put
(
"ywlx"
,
"个人审核查询证明"
);
JSONArray
blxmbArr
=
new
JSONArray
();
JSONObject
blxm
=
new
JSONObject
();
blxm
.
put
(
"blxm"
,
"社保"
);
blxmbArr
.
add
(
blxm
);
json
.
put
(
"blxmlb"
,
blxmbArr
);
return
json
;
}
// 获取反馈 URL 列表
public
List
<
String
>
getDownloadFeedbackUrls
(
RestTemplate
restTemplate
,
String
requestId
)
{
List
<
String
>
urls
=
new
ArrayList
<>();
String
downloadEmployeeFeedbackUrl
=
urlPre
+
urlDownloadEmployeeFeedback
+
"?requestId="
+
requestId
;
int
retryCount
=
0
;
final
int
maxRetries
=
2
;
final
long
delayMillis
=
20000
;
// 20 seconds
try
{
// 构建请求头
HttpHeaders
headers
=
buildCommonHeaders
(
requestId
);
// 构建请求体
HttpEntity
<
String
>
formEntity
=
new
HttpEntity
<>(
headers
);
while
(
retryCount
<=
maxRetries
)
{
ResponseEntity
<
String
>
response
=
restTemplate
.
exchange
(
downloadEmployeeFeedbackUrl
,
HttpMethod
.
GET
,
formEntity
,
String
.
class
);
// 处理返回值
if
(
response
!=
null
&&
response
.
getStatusCodeValue
()
==
200
)
{
JSONObject
dataObject
=
JSON
.
parseObject
(
response
.
getBody
());
String
head
=
dataObject
.
getString
(
"head"
);
if
(
Common
.
isNotNull
(
head
))
{
JSONObject
headObject
=
JSON
.
parseObject
(
head
);
if
(
"Y"
.
equals
(
headObject
.
getString
(
"status"
)))
{
JSONObject
bodyObject
=
JSON
.
parseObject
(
dataObject
.
getString
(
"body"
));
String
ryywbljglb
=
bodyObject
.
getString
(
"ryywbljglb"
);
JSONArray
ryywbljglbArr
=
JSON
.
parseArray
(
ryywbljglb
);
if
(
ryywbljglbArr
!=
null
&&
!
ryywbljglbArr
.
isEmpty
()){
for
(
Object
itemObj
:
ryywbljglbArr
)
{
JSONObject
ryywbljglbItem
=
(
JSONObject
)
itemObj
;
JSONArray
blxmjglbArr
=
JSON
.
parseArray
(
ryywbljglbItem
.
getString
(
"blxmjglb"
));
if
(
blxmjglbArr
!=
null
&&
!
blxmjglbArr
.
isEmpty
()){
for
(
Object
blxmjglbObj
:
blxmjglbArr
)
{
JSONObject
blxmjglbItem
=
(
JSONObject
)
blxmjglbObj
;
JSONArray
jgmxlbArr
=
JSON
.
parseArray
(
blxmjglbItem
.
getString
(
"jgmxlb"
));
if
(
jgmxlbArr
!=
null
&&
!
jgmxlbArr
.
isEmpty
()){
for
(
Object
jgmxlbObj
:
jgmxlbArr
)
{
JSONObject
jgmxlbItem
=
(
JSONObject
)
jgmxlbObj
;
JSONArray
wjdzlb
=
jgmxlbItem
.
getJSONArray
(
"wjdzlb"
);
if
(
wjdzlb
!=
null
&&
!
wjdzlb
.
isEmpty
())
{
urls
.
addAll
(
wjdzlb
.
toJavaList
(
String
.
class
));
}
}
}
}
}
}
}
}
}
}
// 如果成功获取到数据,则跳出循环
if
(!
urls
.
isEmpty
())
{
break
;
}
// 如果没有获取到数据,等待一段时间后重试
if
(
retryCount
<
maxRetries
)
{
Thread
.
sleep
(
delayMillis
);
retryCount
++;
}
else
{
break
;
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"获取税友人员审核查询证明文件反馈链接失败"
,
e
);
}
return
urls
;
}
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/TDispatchInfoController.java
View file @
4ae6e7bd
...
@@ -947,4 +947,17 @@ public class TDispatchInfoController {
...
@@ -947,4 +947,17 @@ public class TDispatchInfoController {
return
tDispatchInfoService
.
doExportRoster
(
socialId
,
type
,
unitCreditCode
);
return
tDispatchInfoService
.
doExportRoster
(
socialId
,
type
,
unitCreditCode
);
}
}
/**
* @Author fxj
* @Description
* @Date 15:20 2025/7/15
**/
@PostMapping
(
"/doExportSocialSoldierAllBackFile"
)
@Operation
(
description
=
"自动化办理查询导出反馈文件"
)
@SysLog
(
"自动化办理查询导出反馈文件"
)
public
void
doExportSocialSoldierAllBackFile
(
HttpServletResponse
response
,
HttpServletRequest
request
,
@RequestBody
SocialHandleSearchVo
searchVo
)
{
tDispatchInfoService
.
doExportSocialSoldierAllBackFile
(
response
,
searchVo
,
searchVo
.
getIdStr
());
}
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/mapper/TDispatchInfoMapper.java
View file @
4ae6e7bd
...
@@ -306,4 +306,14 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
...
@@ -306,4 +306,14 @@ public interface TDispatchInfoMapper extends BaseMapper<TDispatchInfo> {
List
<
String
>
getSingleFlagMap
(
@Param
(
"idsList"
)
List
<
String
>
idsList
);
List
<
String
>
getSingleFlagMap
(
@Param
(
"idsList"
)
List
<
String
>
idsList
);
// 获取自动生成减员离职证明的派单ID
// 获取自动生成减员离职证明的派单ID
List
<
String
>
getAutoDocFlagMap
(
@Param
(
"idsList"
)
List
<
String
>
idsList
);
List
<
String
>
getAutoDocFlagMap
(
@Param
(
"idsList"
)
List
<
String
>
idsList
);
/**
* @Author fxj
* @Description 自动化办理查询导出反馈文件
* @Date 15:29 2025/7/15
**/
List
<
SocialSoldierBackVo
>
getSocialSoldierAllListBackFile
(
@Param
(
"tDispatchInfo"
)
SocialHandleSearchVo
dispatchInfo
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
int
updateBackFileFlag
(
@Param
(
"idsStr"
)
List
<
String
>
idsStr
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TDispatchInfoService.java
View file @
4ae6e7bd
...
@@ -187,4 +187,6 @@ public interface TDispatchInfoService extends IService<TDispatchInfo> {
...
@@ -187,4 +187,6 @@ public interface TDispatchInfoService extends IService<TDispatchInfo> {
List
<
SocialHandleExportVo
>
getRecordRosterList
(
SocialHandleSearchVo
searchVo
,
String
idStr
);
List
<
SocialHandleExportVo
>
getRecordRosterList
(
SocialHandleSearchVo
searchVo
,
String
idStr
);
R
<
URL
>
doExportRoster
(
String
socialId
,
String
type
,
String
unitCreditCode
);
R
<
URL
>
doExportRoster
(
String
socialId
,
String
type
,
String
unitCreditCode
);
void
doExportSocialSoldierAllBackFile
(
HttpServletResponse
response
,
SocialHandleSearchVo
searchVo
,
String
idStr
);
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TDispatchInfoServiceImpl.java
View file @
4ae6e7bd
This source diff could not be displayed because it is too large. You can
view the blob
instead.
yifu-social/yifu-social-biz/src/main/resources/application-test.yml
View file @
4ae6e7bd
...
@@ -57,11 +57,23 @@ soldier:
...
@@ -57,11 +57,23 @@ soldier:
urlPre
:
http://36.7.147.29:55555
urlPre
:
http://36.7.147.29:55555
#税友相关属性配置
#税友相关属性配置
socialFriend
:
socialFriend
:
urlPre
:
https://test-openapi.17win.com
#urlPre : https://test-openapi.17win.com
#urlPushAdd: /gateway/socins/hrss/employee/v2/register
#urlGetInfoAdd: /gateway/socins/hrss/employee/v2/getRegisterFeedback
#urlPushReduce: /gateway/socins/hrss/employee/v2/stop
#urlGetInfoReduce: /gateway/socins/hrss/employee/v2/getStopFeedback
#urlDownloadEmployeeAsync: /gateway/pts/hrss/sourceFile/downloadEmployeeAsync
#urlDownloadEmployeeFeedback: /gateway/pts/hrss/sourceFile/downloadEmployeeFeedback
#urlUpload : /gateway/file/upload
#appKey : 89357285571962202409230949030
#appSecret : V52dkvxtFUgIvzlfNE9G8g==
urlPre
:
https://openapi.17win.com
urlPushAdd
:
/gateway/socins/hrss/employee/v2/register
urlPushAdd
:
/gateway/socins/hrss/employee/v2/register
urlGetInfoAdd
:
/gateway/socins/hrss/employee/v2/getRegisterFeedback
urlGetInfoAdd
:
/gateway/socins/hrss/employee/v2/getRegisterFeedback
urlPushReduce
:
/gateway/socins/hrss/employee/v2/stop
urlPushReduce
:
/gateway/socins/hrss/employee/v2/stop
urlGetInfoReduce
:
/gateway/socins/hrss/employee/v2/getStopFeedback
urlGetInfoReduce
:
/gateway/socins/hrss/employee/v2/getStopFeedback
urlUpload
:
/gateway/file/upload
urlDownloadEmployeeAsync
:
/gateway/pts/hrss/sourceFile/downloadEmployeeAsync
appKey
:
89357285571962202409230949030
urlDownloadEmployeeFeedback
:
/gateway/pts/hrss/sourceFile/downloadEmployeeFeedback
appSecret
:
V52dkvxtFUgIvzlfNE9G8g==
urlUpload
:
/gateway/file/upload
\ No newline at end of file
appKey
:
3082B14EE2114C2D93B3A222DD925C26=
appSecret
:
VmURqoxqmoKnNLXzAWynqQ==
\ No newline at end of file
yifu-social/yifu-social-biz/src/main/resources/mapper/TDispatchInfoMapper.xml
View file @
4ae6e7bd
...
@@ -356,7 +356,16 @@
...
@@ -356,7 +356,16 @@
<result
property=
"firstPayTime"
column=
"FIRST_PAY_TIME"
/>
<result
property=
"firstPayTime"
column=
"FIRST_PAY_TIME"
/>
<result
property=
"graduationTime"
column=
"GRADUATION_TIME"
/>
<result
property=
"graduationTime"
column=
"GRADUATION_TIME"
/>
</resultMap>
</resultMap>
<!-- 社保反馈文件下载专用 -->
<resultMap
id=
"socialSoldierBackMap"
type=
"com.yifu.cloud.plus.v1.yifu.social.vo.SocialSoldierBackVo"
>
<result
property=
"dispatchId"
column=
"id"
/>
<result
property=
"socialId"
column=
"social_id"
/>
<result
property=
"empName"
column=
"EMP_NAME"
/>
<result
property=
"empIdcard"
column=
"EMP_IDCARD"
/>
<result
property=
"ygsHandleStatus"
column=
"ygs_Handle_Status"
/>
<result
property=
"ysdHandleStatus"
column=
"ysd_Handle_Status"
/>
<result
property=
"socialHouseholdName"
column=
"SOCIAL_HOUSEHOLD_NAME"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
<sql
id=
"Base_Column_List"
>
a.ID,
a.ID,
a.EMP_ID,
a.EMP_ID,
...
@@ -1514,6 +1523,7 @@
...
@@ -1514,6 +1523,7 @@
<result
property=
"ysdRequestId"
column=
"YSD_REQUEST_ID"
/>
<result
property=
"ysdRequestId"
column=
"YSD_REQUEST_ID"
/>
<result
property=
"ygsSocialStartDateNext"
column=
"YGS_SOCIAL_START_DATE_NEXT"
/>
<result
property=
"ygsSocialStartDateNext"
column=
"YGS_SOCIAL_START_DATE_NEXT"
/>
<result
property=
"ysdSocialStartDateNext"
column=
"YSD_SOCIAL_START_DATE_NEXT"
/>
<result
property=
"ysdSocialStartDateNext"
column=
"YSD_SOCIAL_START_DATE_NEXT"
/>
<result
property=
"backFileFlag"
column=
"BACK_FILE_FLAG"
/>
</resultMap>
</resultMap>
<!-- hgw 2024-5-10 10:42:33 社保士兵列表查询 -->
<!-- hgw 2024-5-10 10:42:33 社保士兵列表查询 -->
...
@@ -1602,6 +1612,7 @@
...
@@ -1602,6 +1612,7 @@
,s.YGS_REQUEST_ID,s.YSD_REQUEST_ID
,s.YGS_REQUEST_ID,s.YSD_REQUEST_ID
,if(a.type ='0',YGS_SOCIAL_START_DATE_NEXT,null) YGS_SOCIAL_START_DATE_NEXT
,if(a.type ='0',YGS_SOCIAL_START_DATE_NEXT,null) YGS_SOCIAL_START_DATE_NEXT
,if(a.type ='0',YSD_SOCIAL_START_DATE_NEXT,null) YSD_SOCIAL_START_DATE_NEXT
,if(a.type ='0',YSD_SOCIAL_START_DATE_NEXT,null) YSD_SOCIAL_START_DATE_NEXT
,a.BACK_FILE_FLAG
FROM t_dispatch_info a
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
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
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
...
@@ -1701,6 +1712,7 @@
...
@@ -1701,6 +1712,7 @@
,if(a.type ='0' and s.add_ysd_Handle_Status != '0', s.add_YSD_REQUEST_ID, s.YSD_REQUEST_ID) YSD_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
,if(a.type ='0',YGS_SOCIAL_START_DATE_NEXT,null) YGS_SOCIAL_START_DATE_NEXT
,if(a.type ='0',YGS_SOCIAL_START_DATE_NEXT,null) YGS_SOCIAL_START_DATE_NEXT
,if(a.type ='0',YSD_SOCIAL_START_DATE_NEXT,null) YSD_SOCIAL_START_DATE_NEXT
,if(a.type ='0',YSD_SOCIAL_START_DATE_NEXT,null) YSD_SOCIAL_START_DATE_NEXT
,a.BACK_FILE_FLAG
FROM t_dispatch_info a
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
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
left join t_dispatch_social_fund_info h on a.id = h.REDUCE_SOCIAL_FUND_ID
...
@@ -2136,6 +2148,9 @@
...
@@ -2136,6 +2148,9 @@
<include
refid=
"where_getSocialRecordRoster_base"
/>
<include
refid=
"where_getSocialRecordRoster_base"
/>
<if
test=
"tDispatchInfo != null"
>
<if
test=
"tDispatchInfo != null"
>
<if
test=
"tDispatchInfo.backFileFlag != null and tDispatchInfo.backFileFlag.trim() != ''"
>
AND a.BACK_FILE_FLAG = #{tDispatchInfo.backFileFlag}
</if>
<if
test=
"tDispatchInfo.ygsHandleStatus != null and tDispatchInfo.ygsHandleStatus.trim() != ''"
>
<if
test=
"tDispatchInfo.ygsHandleStatus != null and tDispatchInfo.ygsHandleStatus.trim() != ''"
>
AND s.YGS_HANDLE_STATUS = #{tDispatchInfo.ygsHandleStatus}
AND s.YGS_HANDLE_STATUS = #{tDispatchInfo.ygsHandleStatus}
</if>
</if>
...
@@ -2825,4 +2840,43 @@
...
@@ -2825,4 +2840,43 @@
#{item}
#{item}
</foreach>
</foreach>
</select>
</select>
<!--tDispatchInfo 自动化办理查询导出反馈文件-->
<select
id=
"getSocialSoldierAllListBackFile"
resultMap=
"socialSoldierBackMap"
>
SELECT
a.id,
a.social_id,
a.EMP_NAME,
a.EMP_IDCARD
,s.ygs_Handle_Status
,s.ysd_Handle_Status
,a.SOCIAL_HOUSEHOLD_NAME
FROM t_dispatch_info a
left join t_social_info s on a.SOCIAL_ID = s.id
<where>
a.DELETE_FLAG = '0'
AND a.social_id is not null
and a.AUTO_FLAG = '0'
and a.type = '0'
<!-- 税友反馈接口目前只支持社保附件下载,必须是办理成功的 -->
and s.ygs_Handle_Status = '6'
<if
test=
"idsStr != null and idsStr.size > 0"
>
AND a.ID in
<foreach
item=
"items"
index=
"index"
collection=
"idsStr"
open=
"("
separator=
","
close=
")"
>
#{items}
</foreach>
</if>
</where>
order by a.AUDIT_TIME desc
</select>
<update
id=
"updateBackFileFlag"
>
update t_dispatch_info a set a.BACK_FILE_FLAG = '已下载'
WHERE 1=2
<if
test=
"idsStr != null and idsStr.size > 0"
>
or a.ID in
<foreach
item=
"items"
index=
"index"
collection=
"idsStr"
open=
"("
separator=
","
close=
")"
>
#{items}
</foreach>
</if>
</update>
</mapper>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment