Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
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
项目统一框架
amos-boot-biz
Commits
86653211
Commit
86653211
authored
Aug 25, 2025
by
tianbo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix(module:jg): 修复监管单位查看功能及优化数据修正逻辑
- 修复监管单位查看功能,增加 client 参数区分不同客户端类型 - 优化数据修正逻辑,分别针对人员资质、企业许可、设备维保和检验超期问题进行修复 - 更新 ES 设备信息以反映最新的监管单位变更
parent
7583ea0a
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
205 additions
and
51 deletions
+205
-51
JgChangeRegistrationNameMapper.java
.../module/jg/api/mapper/JgChangeRegistrationNameMapper.java
+3
-2
CommonMapper.xml
...-module-jg-api/src/main/resources/mapper/CommonMapper.xml
+1
-1
JgChangeRegistrationNameMapper.xml
.../main/resources/mapper/JgChangeRegistrationNameMapper.xml
+36
-24
JgChangeRegistrationNameController.java
...jg/biz/controller/JgChangeRegistrationNameController.java
+6
-2
SafetyProblemTracingController.java
...ule/jg/biz/controller/SafetyProblemTracingController.java
+30
-12
JgChangeRegistrationNameServiceImpl.java
...biz/service/impl/JgChangeRegistrationNameServiceImpl.java
+5
-5
SafetyProblemTracingGenServiceImpl.java
.../biz/service/impl/SafetyProblemTracingGenServiceImpl.java
+89
-4
TzBaseEnterpriseInfoServiceImpl.java
...tcm/biz/service/impl/TzBaseEnterpriseInfoServiceImpl.java
+35
-1
No files found.
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/mapper/JgChangeRegistrationNameMapper.java
View file @
86653211
...
...
@@ -30,8 +30,9 @@ public interface JgChangeRegistrationNameMapper extends BaseMapper<JgChangeRegis
@Param
(
"sort"
)
SortVo
sortMap
,
@Param
(
"dto"
)
JgChangeRegistrationNameDto
dto
,
@Param
(
"roleIds"
)
List
<
String
>
roleIds
,
@Param
(
"companyCode"
)
String
companyCode
,
@Param
(
"currentUserId"
)
String
exeUserId
);
@Param
(
"superviseOrgCode"
)
String
superviseOrgCode
,
@Param
(
"currentUserId"
)
String
exeUserId
,
@Param
(
"client"
)
String
client
);
List
<
ChangeRegistrationNameVo
>
queryChangeRegistrationNameInIds
(
@Param
(
"ids"
)
List
<
String
>
ids
);
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/resources/mapper/CommonMapper.xml
View file @
86653211
...
...
@@ -2714,7 +2714,7 @@
tup.cert_no certNo,
tup.expiry_date expiryDate,
tup.expiry_date as problemTime,
tui.name
userName,
tui.name userName,
tui.sequence_nbr userSeq
FROM
tzs_user_permission tup
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/resources/mapper/JgChangeRegistrationNameMapper.xml
View file @
86653211
...
...
@@ -18,27 +18,31 @@
</delete>
<sql
id=
"page_list"
>
select ur.sequence_nbr as sequenceNbr,
ur.instance_id as instanceId,
ur.audit_status as auditStatus,
ur.apply_no as applyNo,
DATE_FORMAT(ur.rec_date,'%Y-%m-%d') as recDate,
DATE_FORMAT(ur.create_date,'%Y-%m-%d') as createDate,
DATE_FORMAT(ur.audit_pass_date,'%Y-%m-%d') as auditPassDate,
ur.receive_org_code as receiveOrgCode,
ur.receive_org_name as receiveOrgName,
ur.receive_company_code as receiveCompanyCode,
ur.use_unit_name as useUnitName,
ur.new_use_unit_name AS newUseUnitName,
ur.promoter,
ur.create_user_id as createUserId,
ur.next_executor_ids as nextExecutorIds,
ur.next_execute_user_ids as nextExecuteUserIds,
ur.next_task_id as nextTaskId,
(select group_concat(use_registration_code) from (SELECT use_registration_code from tzs_jg_use_registration_manage where sequence_nbr in (SELECT
certificate_seq from tzs_jg_change_registration_name_eq where name_change_registration_id = ur.sequence_nbr )order by rec_date desc)) as
certificateCodes
from tzs_jg_change_registration_name ur
SELECT
ur.sequence_nbr AS sequenceNbr,
ur.instance_id AS instanceId,
ur.audit_status AS auditStatus,
ur.apply_no AS applyNo,
DATE_FORMAT(ur.rec_date, '%Y-%m-%d') AS recDate,
DATE_FORMAT(ur.create_date, '%Y-%m-%d') AS createDate,
DATE_FORMAT(ur.audit_pass_date, '%Y-%m-%d') AS auditPassDate,
ur.receive_org_code AS receiveOrgCode,
ur.receive_org_name AS receiveOrgName,
ur.receive_company_code AS receiveCompanyCode,
ur.use_unit_name AS useUnitName,
ur.new_use_unit_name AS newUseUnitName,
ur.promoter,
ur.create_user_id AS createUserId,
ur.next_executor_ids AS nextExecutorIds,
ur.next_execute_user_ids AS nextExecuteUserIds,
ur.next_task_id AS nextTaskId,
GROUP_CONCAT(DISTINCT urm.use_registration_code) AS certificateCodes,
GROUP_CONCAT(DISTINCT urm.supervise_org_code) AS superviseOrgCode
FROM tzs_jg_change_registration_name ur
LEFT JOIN tzs_jg_change_registration_name_eq eq
ON ur.sequence_nbr = eq.name_change_registration_id
LEFT JOIN tzs_jg_use_registration_manage urm
ON eq.certificate_seq = urm.sequence_nbr
</sql>
<select
id=
"getListPage"
resultType=
"java.util.Map"
>
...
...
@@ -69,15 +73,23 @@
</foreach>
</if>
<if
test=
"dto.type == 'supervision'"
>
AND (ur.receive_company_code = #{companyCode} or ur.transfer_to_user_ids LIKE concat ('%',
#{currentUserId}, '%'))
AND ur.instance_id is not null
<choose>
<when
test=
"client == 'jgLook'"
>
and urm.supervise_org_code like concat(#{superviseOrgCode},'%')
</when>
<otherwise>
AND (ur.receive_company_code = #{dto.receiveCompanyCode} or ur.transfer_to_user_ids LIKE concat ('%',
#{currentUserId}, '%'))
AND ur.instance_id is not null
</otherwise>
</choose>
</if>
<if
test=
"dto.type == 'company'"
>
and (ur.use_unit_credit_code = #{dto.useUnitCreditCode} or ur.transfer_to_user_ids LIKE concat ('%',
#{currentUserId}, '%'))
</if>
</where>
group by ur.sequence_nbr
order by
<if
test=
"sort != null"
>
ur.${sort.field} ${sort.sortType},
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/controller/JgChangeRegistrationNameController.java
View file @
86653211
...
...
@@ -13,6 +13,7 @@ import com.yeejoin.amos.boot.module.jg.biz.service.impl.JgChangeRegistrationName
import
com.yeejoin.amos.boot.module.ymt.api.common.StringUtil
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiParam
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -115,7 +116,9 @@ public class JgChangeRegistrationNameController extends BaseController {
public
ResponseModel
<
Page
<
Map
<
String
,
Object
>>>
getList
(
JgChangeRegistrationNameDto
dto
,
@RequestParam
(
value
=
"sort"
,
required
=
false
)
String
sort
,
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
)
{
@RequestParam
(
value
=
"size"
)
int
size
,
@ApiParam
(
value
=
"客户端类型: jgAudit-监管审核;jgLook-监管查看"
)
@RequestParam
(
value
=
"client"
,
required
=
false
,
defaultValue
=
"jgAudit"
)
String
client
)
{
Page
<
Map
<
String
,
Object
>>
page
=
new
Page
<>(
current
,
size
);
ReginParams
reginParams
=
getSelectedOrgInfo
();
if
(
reginParams
.
getCompany
().
getLevel
().
equals
(
COMPANY_TYPE_COMPANY
)){
...
...
@@ -123,8 +126,9 @@ public class JgChangeRegistrationNameController extends BaseController {
dto
.
setUseUnitCreditCode
(
reginParams
.
getCompany
().
getCompanyCode
());
}
else
{
dto
.
setType
(
COMPANY_TYPE_SUPERVISION
);
dto
.
setReceiveCompanyCode
(
reginParams
.
getCompany
().
getCompanyCode
());
}
return
ResponseHelper
.
buildResponse
(
jgChangeRegistrationNameService
.
getList
(
dto
,
sort
,
page
,
dto
.
getRoleIds
(),
reginParams
.
getCompany
().
getCompanyCode
()
));
return
ResponseHelper
.
buildResponse
(
jgChangeRegistrationNameService
.
getList
(
dto
,
sort
,
page
,
dto
.
getRoleIds
(),
reginParams
.
getCompany
().
getOrgCode
(),
client
));
}
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/controller/SafetyProblemTracingController.java
View file @
86653211
...
...
@@ -218,7 +218,7 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"生成维保、检验检测超期数据"
,
notes
=
"生成维保、检验检测超期数据"
)
@GetMapping
(
value
=
"/gen/test1"
)
public
ResponseModel
<
String
>
test1
()
{
...
...
@@ -231,7 +231,7 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"生成检验检测超期数据"
,
notes
=
"生成检验检测超期数据"
)
@GetMapping
(
value
=
"/gen/test2"
)
public
ResponseModel
<
String
>
test2
()
{
...
...
@@ -244,7 +244,7 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"生成维保超期数据"
,
notes
=
"生成维保超期数据"
)
@GetMapping
(
value
=
"/gen/test3"
)
public
ResponseModel
<
String
>
test3
()
{
...
...
@@ -257,7 +257,7 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"生成人员资质超期数据"
,
notes
=
"生成人员资质超期数据"
)
@GetMapping
(
value
=
"/gen/test4"
)
public
ResponseModel
<
String
>
test4
()
{
...
...
@@ -269,12 +269,30 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"修改维保超期脏数据 && 修改检验检测超期数据"
,
notes
=
"修改维保超期脏数据 && 修改检验检测超期数据"
)
@GetMapping
(
value
=
"/gen/update3"
)
public
ResponseModel
<
String
>
update3
()
{
safetyProblemTracingGenService
.
update3MaintenanceCheck
();
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"修复维保超期脏数据 && 修复检验检测超期数据"
,
notes
=
"修复维保超期脏数据 && 修复检验检测超期数据"
)
@GetMapping
(
value
=
"/repair/maintenanceInspectionOverdue"
)
public
ResponseModel
<
String
>
repairMaintenanceAndInspectionOverdueProblem
()
{
safetyProblemTracingGenService
.
repairMaintenanceAndInspectionOverdueProblem
();
return
ResponseHelper
.
buildResponse
(
"success"
);
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"修复企业许可超期数据"
,
notes
=
"修复企业许可超期数据"
)
@GetMapping
(
value
=
"/repair/unitLicenceOverdue"
)
public
ResponseModel
<
String
>
repairEnterpriseOverdueProblem
()
{
safetyProblemTracingGenService
.
repairEnterpriseOverdueProblem
();
return
ResponseHelper
.
buildResponse
(
"success"
);
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"修复人员资质超期数据"
,
notes
=
"修复人员资质超期数据"
)
@GetMapping
(
value
=
"/repair/personnelQualificationOverdue"
)
public
ResponseModel
<
String
>
repairPersonnelQualificationOverdueProblem
()
{
safetyProblemTracingGenService
.
repairPersonnelQualificationOverdueProblem
();
return
ResponseHelper
.
buildResponse
(
"success"
);
}
...
...
@@ -283,7 +301,7 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"成企业许可超期问题数据"
,
notes
=
"成企业许可超期问题数据"
)
@GetMapping
(
value
=
"/gen/unitLicenseProblem"
)
public
ResponseModel
<
String
>
genUnitLicenseProblem
()
{
...
...
@@ -296,7 +314,7 @@ public class SafetyProblemTracingController extends BaseController {
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"生成超设计使用年限问题"
,
notes
=
"生成超设计使用年限问题"
)
@GetMapping
(
value
=
"/gen/overDesignLifeProblem"
)
public
ResponseModel
<
String
>
genOverDesignLifeProblem
()
{
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/service/impl/JgChangeRegistrationNameServiceImpl.java
View file @
86653211
...
...
@@ -18,7 +18,9 @@ import com.yeejoin.amos.boot.module.jg.api.entity.*;
import
com.yeejoin.amos.boot.module.jg.api.enums.BusinessTypeEnum
;
import
com.yeejoin.amos.boot.module.jg.api.enums.CompanyTypeEnum
;
import
com.yeejoin.amos.boot.module.jg.api.enums.WorkFlowStatusEnum
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.*
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeRegistrationNameEqMapper
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgChangeRegistrationNameMapper
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgRegistrationHistoryMapper
;
import
com.yeejoin.amos.boot.module.jg.api.service.IJgChangeRegistrationNameService
;
import
com.yeejoin.amos.boot.module.jg.api.vo.SortVo
;
import
com.yeejoin.amos.boot.module.jg.biz.config.LocalBadRequest
;
...
...
@@ -27,10 +29,8 @@ import com.yeejoin.amos.boot.module.jg.biz.context.FlowingEquipRedisContext;
import
com.yeejoin.amos.boot.module.jg.biz.event.publisher.EventPublisher
;
import
com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient
;
import
com.yeejoin.amos.boot.module.jg.biz.service.ICmWorkflowService
;
import
com.yeejoin.amos.boot.module.jg.biz.feign.WorkFlowFeignService
;
import
com.yeejoin.amos.boot.module.jg.biz.service.ICompensateFlowDataOfRedis
;
import
com.yeejoin.amos.boot.module.ymt.api.common.StringUtil
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.UseInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum
;
...
...
@@ -1089,7 +1089,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
}
public
Page
<
Map
<
String
,
Object
>>
getList
(
JgChangeRegistrationNameDto
dto
,
String
sort
,
Page
<
Map
<
String
,
Object
>>
page
,
List
<
String
>
roleIds
,
String
companyCode
)
{
public
Page
<
Map
<
String
,
Object
>>
getList
(
JgChangeRegistrationNameDto
dto
,
String
sort
,
Page
<
Map
<
String
,
Object
>>
page
,
List
<
String
>
roleIds
,
String
superviseOrgCode
,
String
client
)
{
if
(
org
.
apache
.
commons
.
lang3
.
StringUtils
.
isNotBlank
(
dto
.
getReceiveOrgCode
()))
{
String
[]
receiveOrgIdList
=
dto
.
getReceiveOrgCode
().
split
(
"_"
);
if
(
receiveOrgIdList
.
length
>
1
)
{
...
...
@@ -1098,7 +1098,7 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
}
}
SortVo
sortMap
=
commonService
.
sortFieldConversion
(
sort
);
return
this
.
baseMapper
.
getListPage
(
page
,
sortMap
,
dto
,
roleIds
,
companyCode
,
RequestContext
.
getExeUserId
()
);
return
this
.
baseMapper
.
getListPage
(
page
,
sortMap
,
dto
,
roleIds
,
superviseOrgCode
,
RequestContext
.
getExeUserId
(),
client
);
}
@Override
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/service/impl/SafetyProblemTracingGenServiceImpl.java
View file @
86653211
...
...
@@ -13,7 +13,9 @@ import com.yeejoin.amos.boot.module.jg.api.enums.SafetyProblemStatusEnum;
import
com.yeejoin.amos.boot.module.jg.api.enums.SafetyProblemTypeEnum
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.CommonMapper
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgOtherInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzsUserInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.mapper.TzBaseEnterpriseInfoMapper
;
import
com.yeejoin.amos.boot.module.ymt.api.mapper.TzsUserInfoMapper
;
import
net.javacrumbs.shedlock.spring.annotation.SchedulerLock
;
import
org.eclipse.paho.client.mqttv3.MqttException
;
...
...
@@ -56,6 +58,10 @@ public class SafetyProblemTracingGenServiceImpl{
@Autowired
TzsUserInfoMapper
tzsUserInfoMapper
;
@Autowired
TzBaseEnterpriseInfoMapper
tzBaseEnterpriseInfoMapper
;
@Scheduled
(
cron
=
"0 0 1 * * ?"
)
@SchedulerLock
(
name
=
"executeSafetyProblemCheck"
,
lockAtMostFor
=
"PT5H"
,
lockAtLeastFor
=
"PT10M"
)
public
void
executeSafetyProblemCheck
()
{
...
...
@@ -118,8 +124,87 @@ public class SafetyProblemTracingGenServiceImpl{
logger
.
info
(
"企业许可超期检查结束"
);
}
public
void
update3MaintenanceCheck
()
{
logger
.
info
(
"开始修正数据"
);
public
void
repairPersonnelQualificationOverdueProblem
()
{
logger
.
info
(
"开始人员资质超期数据修正"
);
// 查询当天资质超期的人员数据
List
<
Map
<
String
,
Object
>>
outOfQualificationRecords
=
commonMapper
.
queryOutOfCertificationRecord
();
if
(
ValidationUtil
.
isEmpty
(
outOfQualificationRecords
))
{
return
;
}
Set
<
String
>
realOutOfQualificationRecord
=
outOfQualificationRecords
.
stream
().
map
(
m
->
m
.
get
(
"problemSourceId"
).
toString
()).
collect
(
Collectors
.
toSet
());
// 需要修正业务表的数据
List
<
String
>
correctData
=
Lists
.
newArrayList
();
List
<
SafetyProblemTracing
>
problemList
=
safetyProblemTracingService
.
list
(
new
LambdaQueryWrapper
<
SafetyProblemTracing
>()
.
select
(
SafetyProblemTracing:
:
getSourceId
,
SafetyProblemTracing:
:
getPrincipalUnitCode
)
.
eq
(
SafetyProblemTracing:
:
getProblemStatusCode
,
SafetyProblemStatusEnum
.
UNHANDLED
.
getCode
())
.
eq
(
SafetyProblemTracing:
:
getProblemTypeCode
,
SafetyProblemTypeEnum
.
ZZCQ
.
getProblemTypeCode
())
.
eq
(
SafetyProblemTracing:
:
getIsDelete
,
Boolean
.
FALSE
)
);
if
(!
ValidationUtil
.
isEmpty
(
problemList
))
{
Set
<
String
>
problemIds
=
problemList
.
stream
().
map
(
SafetyProblemTracing:
:
getSourceId
).
collect
(
Collectors
.
toSet
());
problemIds
.
removeAll
(
realOutOfQualificationRecord
);
correctData
.
addAll
(
problemIds
);
if
(!
ValidationUtil
.
isEmpty
(
correctData
))
{
// 更新问题表
safetyProblemTracingService
.
lambdaUpdate
()
.
set
(
SafetyProblemTracing:
:
getProblemStatusCode
,
SafetyProblemStatusEnum
.
HANDLED
.
getCode
())
.
set
(
SafetyProblemTracing:
:
getProblemStatus
,
SafetyProblemStatusEnum
.
HANDLED
.
getName
())
.
in
(
SafetyProblemTracing:
:
getSourceId
,
correctData
)
.
eq
(
SafetyProblemTracing:
:
getProblemTypeCode
,
SafetyProblemTypeEnum
.
ZZCQ
.
getProblemTypeCode
())
.
eq
(
SafetyProblemTracing:
:
getIsDelete
,
Boolean
.
FALSE
)
.
update
();
}
}
logger
.
info
(
"人员资质超期数据修正结束,更新数据:{}条"
,
correctData
.
size
());
}
public
void
repairEnterpriseOverdueProblem
()
{
logger
.
info
(
"开始企业许可超期数据修正"
);
// 查询当天许可超期的企业许可数据
List
<
Map
<
String
,
Object
>>
outOfQualificationRecords
=
commonMapper
.
queryOutOfQualificationRecord
();
if
(
ValidationUtil
.
isEmpty
(
outOfQualificationRecords
))
{
return
;
}
Set
<
String
>
realOutOfQualificationRecord
=
outOfQualificationRecords
.
stream
().
map
(
m
->
m
.
get
(
"problemSourceId"
).
toString
()).
collect
(
Collectors
.
toSet
());
// 需要修正业务表的数据
List
<
String
>
correctData
=
Lists
.
newArrayList
();
List
<
SafetyProblemTracing
>
problemList
=
safetyProblemTracingService
.
list
(
new
LambdaQueryWrapper
<
SafetyProblemTracing
>()
.
select
(
SafetyProblemTracing:
:
getSourceId
,
SafetyProblemTracing:
:
getPrincipalUnitCode
)
.
eq
(
SafetyProblemTracing:
:
getProblemStatusCode
,
SafetyProblemStatusEnum
.
UNHANDLED
.
getCode
())
.
eq
(
SafetyProblemTracing:
:
getProblemTypeCode
,
SafetyProblemTypeEnum
.
XKCQ
.
getProblemTypeCode
())
.
eq
(
SafetyProblemTracing:
:
getIsDelete
,
Boolean
.
FALSE
)
);
if
(!
ValidationUtil
.
isEmpty
(
problemList
))
{
Set
<
String
>
problemIds
=
problemList
.
stream
().
map
(
SafetyProblemTracing:
:
getSourceId
).
collect
(
Collectors
.
toSet
());
problemIds
.
removeAll
(
realOutOfQualificationRecord
);
correctData
.
addAll
(
problemIds
);
if
(!
ValidationUtil
.
isEmpty
(
correctData
))
{
// 更新问题表
safetyProblemTracingService
.
lambdaUpdate
()
.
set
(
SafetyProblemTracing:
:
getProblemStatusCode
,
SafetyProblemStatusEnum
.
HANDLED
.
getCode
())
.
set
(
SafetyProblemTracing:
:
getProblemStatus
,
SafetyProblemStatusEnum
.
HANDLED
.
getName
())
.
in
(
SafetyProblemTracing:
:
getSourceId
,
correctData
)
.
eq
(
SafetyProblemTracing:
:
getProblemTypeCode
,
SafetyProblemTypeEnum
.
XKCQ
.
getProblemTypeCode
())
.
eq
(
SafetyProblemTracing:
:
getIsDelete
,
Boolean
.
FALSE
)
.
update
();
}
// 更新企业表问题状态。同一企业所有资质都正常才更新
Set
<
String
>
problemUnitCreditCode
=
problemList
.
stream
().
map
(
SafetyProblemTracing:
:
getPrincipalUnitCode
).
collect
(
Collectors
.
toSet
());
Set
<
String
>
problemUnitCodes
=
outOfQualificationRecords
.
stream
().
map
(
item
->
item
.
get
(
"useUnitCode"
).
toString
()).
collect
(
Collectors
.
toSet
());
// 错误问题企业如果没在当天的许可超期数据中,则更新企业状态为正常
problemUnitCreditCode
.
removeAll
(
problemUnitCodes
);
if
(!
ValidationUtil
.
isEmpty
(
problemUnitCreditCode
))
{
tzBaseEnterpriseInfoMapper
.
update
(
new
TzBaseEnterpriseInfo
(),
new
LambdaUpdateWrapper
<
TzBaseEnterpriseInfo
>()
.
set
(
TzBaseEnterpriseInfo:
:
getStatus
,
"1"
)
.
in
(
TzBaseEnterpriseInfo:
:
getUseCode
,
problemUnitCreditCode
));
}
}
logger
.
info
(
"企业许可超期数据修正结束,更新数据:{}条"
,
correctData
.
size
());
}
public
void
repairMaintenanceAndInspectionOverdueProblem
()
{
logger
.
info
(
"开始设备维保备案和建议检查超期数据修正"
);
Set
<
String
>
realOutOfMaintenanceRecord
=
commonMapper
.
queryOutOfMaintenanceRecord
().
stream
().
map
(
m
->
m
.
get
(
"RECORD"
).
toString
()).
collect
(
Collectors
.
toSet
());
Set
<
String
>
realOutOfInspectRecord
=
commonMapper
.
queryOutOfInspectionRecord
().
stream
().
map
(
m
->
m
.
get
(
"RECORD"
).
toString
()).
collect
(
Collectors
.
toSet
());
// 需要修正业务表+es的数据
...
...
@@ -149,7 +234,7 @@ public class SafetyProblemTracingGenServiceImpl{
// 没有则可以愉快地更新设备状态为正常
correctData
.
addAll
(
maintenanceSet
);
// 再次查询检验这些数据有没有维保超期问题
inspectionSet
.
re
tain
All
(
realOutOfMaintenanceRecord
);
inspectionSet
.
re
move
All
(
realOutOfMaintenanceRecord
);
// 没有则可以愉快地更新设备状态为正常
correctData
.
addAll
(
inspectionSet
);
...
...
@@ -161,7 +246,7 @@ public class SafetyProblemTracingGenServiceImpl{
equipEsDto
.
setProblemStatus
(
null
);
}
esEquipmentCategory
.
saveAll
(
equipEsDtoIter
);
logger
.
info
(
"
修改正数据条数:{}
"
,
correctData
.
size
());
logger
.
info
(
"
设备维保备案和检验超期数据修正完成,更新数据:{}条
"
,
correctData
.
size
());
}
private
List
<
String
>
handleOutOfMaintenanceErrorData
(
Set
<
String
>
realOutOfMaintenanceRecord
)
{
...
...
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-biz/src/main/java/com/yeejoin/amos/boot/module/tcm/biz/service/impl/TzBaseEnterpriseInfoServiceImpl.java
View file @
86653211
...
...
@@ -18,6 +18,8 @@ import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import
com.yeejoin.amos.boot.biz.common.utils.DateUtils
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisKey
;
import
com.yeejoin.amos.boot.module.common.api.constant.TZSCommonConstant
;
import
com.yeejoin.amos.boot.module.common.api.dao.ESEquipmentCategory
;
import
com.yeejoin.amos.boot.module.common.api.dto.ESEquipmentCategoryDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.UserPermissionDto
;
import
com.yeejoin.amos.boot.module.common.api.enums.UnitDataSourceEnum
;
import
com.yeejoin.amos.boot.module.common.biz.event.CommonPublisher
;
...
...
@@ -131,6 +133,9 @@ public class TzBaseEnterpriseInfoServiceImpl
@Autowired
private
EmqKeeper
emqKeeper
;
@Autowired
private
ESEquipmentCategory
esEquipmentCategory
;
private
static
final
Map
<
String
,
String
>
JYJC_CERT_MAP
=
new
HashMap
<>();
@Autowired
...
...
@@ -1458,7 +1463,9 @@ public class TzBaseEnterpriseInfoServiceImpl
tzBaseEnterpriseInfoMapper
.
updateRedundantSupervisionOrgCodeUnit
(
newModel
.
getString
(
"companyName"
),
newOrgCode
,
oldOrgCode
);
// 3.2 更新业务表统计表冗余的监管单位orgCode
tzBaseEnterpriseInfoMapper
.
updateRedundantSupervisionOrgCodeStatistics
(
newOrgCode
,
oldOrgCode
);
// 4. 发送数据刷新事件 - 内存分页处理
// 4. 更新idx_biz_view_jg_all es设备信息
updateEquipmentJgAllEs
(
newOrgCode
,
oldOrgCode
,
equipmentRecordList
);
// 5. 发送数据刷新事件 - 内存分页处理
// 处理企业数据
publishDataRefreshEvents
(
companySeqList
,
DataRefreshEvent
.
DataType
.
enterprise
,
1000
);
// 处理设备数据
...
...
@@ -1470,6 +1477,33 @@ public class TzBaseEnterpriseInfoServiceImpl
}
}
private
void
updateEquipmentJgAllEs
(
String
newOrgCode
,
String
oldOrgCode
,
List
<
String
>
equipmentRecordList
)
{
if
(
ValidationUtil
.
isEmpty
(
equipmentRecordList
))
{
return
;
}
int
batchSize
=
1000
;
for
(
int
i
=
0
;
i
<
equipmentRecordList
.
size
();
i
+=
batchSize
)
{
int
endIndex
=
Math
.
min
(
i
+
batchSize
,
equipmentRecordList
.
size
());
List
<
String
>
subList
=
equipmentRecordList
.
subList
(
i
,
endIndex
);
Iterable
<
ESEquipmentCategoryDto
>
equipmentCategoryIterator
=
esEquipmentCategory
.
findAllById
(
subList
);
List
<
ESEquipmentCategoryDto
>
updatedCategories
=
new
ArrayList
<>();
equipmentCategoryIterator
.
forEach
(
equipmentCategory
->
{
if
(
ValidationUtil
.
isEmpty
(
equipmentCategory
.
getORG_BRANCH_CODE
()))
{
equipmentCategory
.
setORG_BRANCH_CODE
(
newOrgCode
);
// 补偿旧数据es属地监管部门为空,则用数据库中设备属地监管部门更新
}
else
{
equipmentCategory
.
setORG_BRANCH_CODE
(
equipmentCategory
.
getORG_BRANCH_CODE
().
replace
(
oldOrgCode
,
newOrgCode
));
}
updatedCategories
.
add
(
equipmentCategory
);
});
if
(!
updatedCategories
.
isEmpty
())
{
esEquipmentCategory
.
saveAll
(
updatedCategories
);
}
}
}
/**
* 分批发布数据刷新事件
* @param dataIds 数据ID列表
...
...
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