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
66f4b62f
Commit
66f4b62f
authored
May 24, 2024
by
tianbo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
安全问题追溯提交
parent
b154420d
Hide whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
1123 additions
and
2 deletions
+1123
-2
SafetyProblemTracing.java
.../amos/boot/module/jg/api/entity/SafetyProblemTracing.java
+224
-0
SafetyProblemSourceTypeEnum.java
...boot/module/jg/api/enums/SafetyProblemSourceTypeEnum.java
+46
-0
SafetyProblemStatusEnum.java
...mos/boot/module/jg/api/enums/SafetyProblemStatusEnum.java
+40
-0
SafetyProblemTypeEnum.java
.../amos/boot/module/jg/api/enums/SafetyProblemTypeEnum.java
+51
-0
SafetyProblemTracingMapper.java
...boot/module/jg/api/mapper/SafetyProblemTracingMapper.java
+27
-0
SafetyProblemTracingModel.java
...s/boot/module/jg/api/model/SafetyProblemTracingModel.java
+140
-0
ISafetyProblemTracingService.java
...t/module/jg/api/service/ISafetyProblemTracingService.java
+9
-0
SafetyProblemTracingMapper.xml
.../src/main/resources/mapper/SafetyProblemTracingMapper.xml
+136
-0
SafetyProblemTracingController.java
...ule/jg/biz/controller/SafetyProblemTracingController.java
+193
-0
SafetyProblemTopicMessage.java
...oot/module/jg/biz/listener/SafetyProblemTopicMessage.java
+99
-0
IdxBizJgRegisterInfoServiceImpl.java
.../jg/biz/service/impl/IdxBizJgRegisterInfoServiceImpl.java
+1
-1
JgUseRegistrationServiceImpl.java
...ule/jg/biz/service/impl/JgUseRegistrationServiceImpl.java
+6
-1
SafetyProblemTracingGenServiceImpl.java
.../biz/service/impl/SafetyProblemTracingGenServiceImpl.java
+45
-0
SafetyProblemTracingServiceImpl.java
.../jg/biz/service/impl/SafetyProblemTracingServiceImpl.java
+106
-0
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/entity/SafetyProblemTracing.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
entity
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
;
import
java.util.Date
;
/**
* 安全追溯问题
*
* @author system_generator
* @date 2024-05-21
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@TableName
(
"tzs_safety_problem_tracing"
)
public
class
SafetyProblemTracing
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 问题编号
*/
@TableField
(
"problem_num"
)
private
String
problemNum
;
/**
* 问题类型(维保超期、检验超期、资质超期等)
*/
@TableField
(
"problem_type"
)
private
String
problemType
;
/**
* 问题来源类型(1个人、2设备、3企业)
*/
@TableField
(
"source_type"
)
private
String
sourceType
;
/**
* 问题来源ID(个人ID、设备ID、企业ID)
*/
@TableField
(
"source_id"
)
private
String
sourceId
;
/**
* 问题描述
*/
@TableField
(
"problem_desc"
)
private
String
problemDesc
;
/**
* 问题产生时间
*/
@TableField
(
"problem_time"
)
private
Date
problemTime
;
/**
* 主体单位名称
*/
@TableField
(
"principal_unit"
)
private
String
principalUnit
;
/**
* 主体单位统一代码
*/
@TableField
(
"principal_unit_code"
)
private
String
principalUnitCode
;
/**
* 主体单位类型(使用、安改维、检验检测等)
*/
@TableField
(
"principal_unit_type"
)
private
String
principalUnitType
;
/**
* 管辖机构名称
*/
@TableField
(
"governing_body"
)
private
String
governingBody
;
/**
* 管辖机构单位代码
*/
@TableField
(
"governing_body_code"
)
private
String
governingBodyCode
;
/**
* 管辖机构组织机构代码(例如50*60*70)
*/
@TableField
(
"governing_body_org_code"
)
private
String
governingBodyOrgCode
;
/**
* 主体单位所属区域名称(陕西省/西安市/莲湖区)
*/
@TableField
(
"region_name"
)
private
String
regionName
;
/**
* 所属区域代码(6100000/6100010/6100011)
*/
@TableField
(
"region_code"
)
private
String
regionCode
;
/**
* 问题状态(0未处理、1已处理)
*/
@TableField
(
"problem_status"
)
private
String
problemStatus
;
/**
* 问题状态代码(0未处理、1已处理)
*/
@TableField
(
"problem_status_code"
)
private
String
problemStatusCode
;
/**
* 更新人员
*/
@TableField
(
"rec_user"
)
private
String
recUser
;
/**
* 创建人ID
*/
@TableField
(
"create_user_id"
)
private
String
createUserId
;
/**
* 创建时间
*/
@TableField
(
"create_date"
)
private
Date
createDate
;
/**
* 创建人
*/
@TableField
(
"create_user"
)
private
String
createUser
;
/**
* 企业负责人
*/
@TableField
(
"unit_charger"
)
private
String
unitCharger
;
/**
* 企业负责人联系电话
*/
@TableField
(
"unit_charger_phone"
)
private
String
unitChargerPhone
;
/**
* 设备监管码
*/
@TableField
(
"equip_supervise_code"
)
private
String
equipSuperviseCode
;
/**
* 设备种类
*/
@TableField
(
"equip_list"
)
private
String
equipList
;
/**
* 人员名称
*/
@TableField
(
"user_name"
)
private
String
userName
;
/**
* 人员电话
*/
@TableField
(
"user_phone"
)
private
String
userPhone
;
/**
* 人员岗位
*/
@TableField
(
"user_post"
)
private
String
userPost
;
/**
* 扩展信息
*/
@TableField
(
"extraInfo"
)
private
String
extraInfo
;
/**
* 设备种类代码
*/
@TableField
(
"equip_list_code"
)
private
String
equipListCode
;
/**
* 问题类型代码(维保超期、检验超期、资质超期等)
*/
@TableField
(
"problem_type_code"
)
private
String
problemTypeCode
;
/**
* 问题来源类型code(1个人、2设备、3企业)
*/
@TableField
(
"source_type_code"
)
private
String
sourceTypeCode
;
/**
* 问题等级(一级、二级、三级)
*/
@TableField
(
"problem_level"
)
private
String
problemLevel
;
/**
* 问题等级code
*/
@TableField
(
"problem_level_code"
)
private
String
problemLevelCode
;
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/enums/SafetyProblemSourceTypeEnum.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
enums
;
/**
* 业务类型枚举
*
* @author Administrator
*/
public
enum
SafetyProblemSourceTypeEnum
{
/**
* 问题主体类型
*/
UNIT
(
"2"
,
"企业"
),
EQUIP
(
"3"
,
"设备"
),
PERSONNEL
(
"1"
,
"个人"
);
private
final
String
code
;
private
final
String
name
;
SafetyProblemSourceTypeEnum
(
String
code
,
String
name
)
{
this
.
code
=
code
;
this
.
name
=
name
;
}
public
static
String
getNameByType
(
String
code
)
{
String
name
=
null
;
for
(
SafetyProblemSourceTypeEnum
enumOne
:
SafetyProblemSourceTypeEnum
.
values
())
{
if
(
enumOne
.
getCode
().
equals
(
code
))
{
name
=
enumOne
.
getName
();
break
;
}
}
return
name
;
}
public
String
getCode
()
{
return
code
;
}
public
String
getName
()
{
return
name
;
}
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/enums/SafetyProblemStatusEnum.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
enums
;
import
lombok.Getter
;
/**
* 业务类型枚举
*
* @author Administrator
*/
public
enum
SafetyProblemStatusEnum
{
/**
* 问题主体类型
*/
UNHANDLED
(
"0"
,
"未处理"
),
HANDLED
(
"1"
,
"已处理"
);
@Getter
private
final
String
code
;
@Getter
private
final
String
name
;
SafetyProblemStatusEnum
(
String
code
,
String
name
)
{
this
.
code
=
code
;
this
.
name
=
name
;
}
public
static
String
getNameByType
(
String
code
)
{
String
name
=
null
;
for
(
SafetyProblemStatusEnum
enumOne
:
SafetyProblemStatusEnum
.
values
())
{
if
(
enumOne
.
getCode
().
equals
(
code
))
{
name
=
enumOne
.
getName
();
break
;
}
}
return
name
;
}
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/enums/SafetyProblemTypeEnum.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
enums
;
import
lombok.Getter
;
/**
* 业务类型枚举
*
* @author Administrator
*/
public
enum
SafetyProblemTypeEnum
{
/**
* 问题主体类型
*/
JYCQ
(
"2"
,
"检验超期"
,
"设备检验超期"
,
"jy/cq"
),
WBCQ
(
"1"
,
"维保超期"
,
"设备维保超期"
,
"wb/cq"
),
ZZCQ
(
"3"
,
"资质超期"
,
"企业资质超期"
,
"zz/cq"
);
@Getter
private
final
String
code
;
@Getter
private
final
String
name
;
@Getter
private
final
String
desc
;
@Getter
private
final
String
topic
;
SafetyProblemTypeEnum
(
String
code
,
String
name
,
String
desc
,
String
topic
)
{
this
.
code
=
code
;
this
.
name
=
name
;
this
.
desc
=
desc
;
this
.
topic
=
topic
;
}
public
static
String
getNameByType
(
String
code
)
{
String
name
=
null
;
for
(
SafetyProblemTypeEnum
enumOne
:
SafetyProblemTypeEnum
.
values
())
{
if
(
enumOne
.
getCode
().
equals
(
code
))
{
name
=
enumOne
.
getName
();
break
;
}
}
return
name
;
}
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/mapper/SafetyProblemTracingMapper.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.jg.api.entity.SafetyProblemTracing
;
import
com.yeejoin.amos.boot.module.jg.api.model.SafetyProblemTracingModel
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
/**
* 安全追溯问题 Mapper 接口
*
* @author system_generator
* @date 2024-05-21
*/
public
interface
SafetyProblemTracingMapper
extends
BaseMapper
<
SafetyProblemTracing
>
{
Page
<
SafetyProblemTracingModel
>
queryForSafetyProblemTracingPage
(
Page
<
SafetyProblemTracingModel
>
page
,
@Param
(
"problemModel"
)
SafetyProblemTracingModel
problemModel
);
Page
<
Map
<
String
,
Object
>>
queryEquipListByProblemId
(
Page
<
Map
<
String
,
Object
>>
page
,
String
problemId
);
Page
<
Map
<
String
,
Object
>>
queryPrincipalUnitByProblemId
(
Page
<
Map
<
String
,
Object
>>
page
,
String
problemId
,
String
sourceTypeCode
);
List
<
Map
<
String
,
Object
>>
queryOutOfMaintenanceRecord
();
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/model/SafetyProblemTracingModel.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
model
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.typroject.tyboot.core.rdbms.model.BaseModel
;
import
java.util.Date
;
import
java.util.Map
;
/**
* 安全追溯问题
*
* @author system_generator
* @date 2024-05-21
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"SafetyProblemTracingModel"
,
description
=
"安全追溯问题"
)
public
class
SafetyProblemTracingModel
extends
BaseModel
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"问题编号"
)
private
String
problemNum
;
@ApiModelProperty
(
value
=
"问题类型(维保超期、检验超期、资质超期等)"
)
private
String
problemType
;
@ApiModelProperty
(
value
=
"问题类型图片"
)
private
String
problemTypePic
;
@ApiModelProperty
(
value
=
"问题来源类型(1个人、2设备、3企业)"
)
private
String
sourceType
;
@ApiModelProperty
(
value
=
"问题来源ID(个人ID、设备ID、企业ID)"
)
private
String
sourceId
;
@ApiModelProperty
(
value
=
"问题描述"
)
private
String
problemDesc
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@ApiModelProperty
(
value
=
"问题产生查询开始时间"
)
private
Date
problemTimeStart
;
@ApiModelProperty
(
value
=
"问题产生时间"
)
private
Date
problemTime
;
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
@ApiModelProperty
(
value
=
"问题产生查询结束时间"
)
private
Date
problemTimeEnd
;
@ApiModelProperty
(
value
=
"主体单位名称"
)
private
String
principalUnit
;
@ApiModelProperty
(
value
=
"主体单位统一代码"
)
private
String
principalUnitCode
;
@ApiModelProperty
(
value
=
"主体单位类型(使用、安改维、检验检测等)"
)
private
String
principalUnitType
;
@ApiModelProperty
(
value
=
"管辖机构名称"
)
private
String
governingBody
;
@ApiModelProperty
(
value
=
"管辖机构单位代码"
)
private
String
governingBodyCode
;
@ApiModelProperty
(
value
=
"管辖机构组织机构代码(例如50*60*70)"
)
private
String
governingBodyOrgCode
;
@ApiModelProperty
(
value
=
"主体单位所属区域名称(陕西省/西安市/莲湖区)"
)
private
String
regionName
;
@ApiModelProperty
(
value
=
"所属区域代码(6100000/6100010/6100011)"
)
private
String
regionCode
;
@ApiModelProperty
(
value
=
"问题状态(0未处理、1已处理)"
)
private
String
problemStatus
;
@ApiModelProperty
(
value
=
"问题状态代码(0未处理、1已处理)"
)
private
String
problemStatusCode
;
@ApiModelProperty
(
value
=
"问题状态对象"
)
private
Map
<
String
,
String
>
problemStatusObj
;
@ApiModelProperty
(
value
=
"更新人员"
)
private
String
recUser
;
@ApiModelProperty
(
value
=
"创建人ID"
)
private
String
createUserId
;
@ApiModelProperty
(
value
=
"创建时间"
)
private
Date
createDate
;
@ApiModelProperty
(
value
=
"创建人"
)
private
String
createUser
;
@ApiModelProperty
(
value
=
"企业负责人"
)
private
String
unitCharger
;
@ApiModelProperty
(
value
=
"企业负责人联系电话"
)
private
String
unitChargerPhone
;
@ApiModelProperty
(
value
=
"设备监管码"
)
private
String
equipSuperviseCode
;
@ApiModelProperty
(
value
=
"设备种类"
)
private
String
equipList
;
@ApiModelProperty
(
value
=
"人员名称"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"人员电话"
)
private
String
userPhone
;
@ApiModelProperty
(
value
=
"人员岗位"
)
private
String
userPost
;
@ApiModelProperty
(
value
=
"扩展信息"
)
private
String
extraInfo
;
@ApiModelProperty
(
value
=
"设备种类代码"
)
private
String
equipListCode
;
@ApiModelProperty
(
value
=
"问题类型代码(维保超期、检验超期、资质超期等)"
)
private
String
problemTypeCode
;
@ApiModelProperty
(
value
=
"问题来源类型code(1个人、2设备、3企业)"
)
private
String
sourceTypeCode
;
@ApiModelProperty
(
value
=
"问题等级(一级、二级、三级)"
)
private
String
problemLevel
;
@ApiModelProperty
(
value
=
"问题等级code"
)
private
String
problemLevelCode
;
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/service/ISafetyProblemTracingService.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
service
;
/**
* 安全追溯问题接口类
*
* @author system_generator
* @date 2024-05-21
*/
public
interface
ISafetyProblemTracingService
{}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/resources/mapper/SafetyProblemTracingMapper.xml
0 → 100644
View file @
66f4b62f
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yeejoin.amos.boot.module.jg.api.mapper.SafetyProblemTracingMapper"
>
<select
id=
"queryForSafetyProblemTracingPage"
resultType=
"com.yeejoin.amos.boot.module.jg.api.model.SafetyProblemTracingModel"
>
select
spt.*,
(select extend::json->>'pic' from cb_data_dictionary where type = 'ISSUE_TYPE' and code = spt.problem_type_code) problemTypePic
from tzs_safety_problem_tracing spt
<where>
spt.is_delete = false
<if
test=
"problemModel.problemNum != null and problemModel.problemNum != ''"
>
and spt.problem_num = LIKE CONCAT('%', #{problemModel.problemNum}, '%')
</if>
<if
test=
"problemModel.problemStatus != null and problemModel.problemStatus != ''"
>
and spt.problem_status = #{problemModel.problemStatus}
</if>
<if
test=
"problemModel.sourceTypeCode != null and problemModel.sourceTypeCode != ''"
>
and spt.source_type_code = #{problemModel.sourceTypeCode}
</if>
<if
test=
"problemModel.problemLevelCode != null and problemModel.problemLevelCode != ''"
>
and spt.problem_level_code = #{problemModel.problemLevelCode}
</if>
<if
test=
"problemModel.problemTypeCode != null and problemModel.problemTypeCode != ''"
>
and spt.problem_type_code = #{problemModel.problemTypeCode}
</if>
<if
test=
"problemModel.problemTimeStart != null and problemModel.problemTimeEnd != null"
>
and to_char(spt.problem_time, 'YYYY-MM-DD') >= to_char(#{problemModel.problemTimeStart}::timestamp, 'YYYY-MM-DD') and to_char(spt.problem_time, 'YYYY-MM-DD')
<![CDATA[<=]]>
to_char(#{problemModel.problemTimeEnd}::timestamp, 'YYYY-MM-DD')
</if>
<if
test=
"problemModel.problemDesc != null and problemModel.problemDesc != ''"
>
and spt.problem_desc like CONCAT('%', #{problemModel.problemDesc}, '%')
</if>
<if
test=
"problemModel.sourceId != null and problemModel.sourceId != ''"
>
and spt.source_id = #{problemModel.sourceId}
</if>
<if
test=
"problemModel.governingBodyOrgCode != null and problemModel.governingBodyOrgCode != ''"
>
and spt.governing_body_org_code like CONCAT(#{problemModel.governingBodyOrgCode}, '%')
</if>
<if
test=
"problemModel.governingBodyCode != null and problemModel.governingBodyCode != ''"
>
and spt.governing_body_code = #{problemModel.governingBodyCode}
</if>
<if
test=
"problemModel.principalUnit != null and problemModel.principalUnit != ''"
>
and spt.principal_unit like CONCAT('%', #{problemModel.principalUnit}, '%')
</if>
<if
test=
"problemModel.principalUnitType != null and problemModel.principalUnitType != ''"
>
and spt.principal_unit_type = #{problemModel.principalUnitType}
</if>
<if
test=
"problemModel.regionCode != null and problemModel.regionCode != ''"
>
and spt.region_code like CONCAT(#{problemModel.regionCode}, '%')
</if>
</where>
order by spt.create_date desc
</select>
<select
id=
"queryEquipListByProblemId"
resultType=
"java.util.Map"
>
SELECT
spt.sequence_nbr problemSeq,
spt.source_id record,
ui."USE_UNIT_CREDIT_CODE" useUnitCreditCode,
ui."USE_UNIT_NAME" useUnitName,
(select name from tz_equipment_category where code = ri."EQU_LIST") equList,
(select name from tz_equipment_category where code = ri."EQU_CATEGORY") equCategory,
oi."CODE96333" code96333,
oi."SUPERVISORY_CODE" supervisoryCode
FROM
tzs_safety_problem_tracing spt
LEFT JOIN idx_biz_jg_use_info ui on ui."RECORD" = spt.source_id
LEFT JOIN idx_biz_jg_register_info ri on ri."RECORD" = spt.source_id
LEFT JOIN idx_biz_jg_other_info oi on oi."RECORD" = spt.source_id
WHERE
spt.is_delete = '0' and spt.sequence_nbr = #{problemId}
</select>
<select
id=
"queryPrincipalUnitByProblemId"
resultType=
"java.util.Map"
>
SELECT * FROM (
SELECT
'2' sourceTypeCode,
spt.sequence_nbr problemSeq,
ei.sequence_nbr sequenceNbr,
ei.use_unit unitName,
ei.use_unit_code useUnitCode,
ei.unit_type unitType,
ei.governing_body governingBody,
ei.use_contact useContact,
ei.contact_phone contactPhone
FROM
tzs_safety_problem_tracing spt
LEFT JOIN tz_base_enterprise_info ei on ei.sequence_nbr = spt.source_id
WHERE
spt.sequence_nbr = #{problemId}
UNION
SELECT
'3' sourceTypeCode,
spt.sequence_nbr problemSeq,
ei.sequence_nbr sequenceNbr,
ei.use_unit unitName,
ei.use_unit_code useUnitCode,
ei.unit_type unitType,
ei.governing_body governingBody,
ei.use_contact useContact,
ei.contact_phone contactPhone
FROM
tzs_safety_problem_tracing spt
LEFT JOIN tz_base_enterprise_info ei on ei.use_unit_code = spt.principal_unit_code
WHERE
spt.sequence_nbr = #{problemId}
) t WHERE t.sourceTypeCode = #{sourceTypeCode}
</select>
<select
id=
"queryOutOfMaintenanceRecord"
resultType=
"java.util.Map"
>
SELECT
mri."RECORD",
mri."INFORM_END" informEnd,
ui."USE_UNIT_NAME" useUnitName,
ui."USE_UNIT_CREDIT_CODE" useUnitCreditCode,
(select unit_type from tz_base_enterprise_info where use_unit_code = ui."USE_UNIT_CREDIT_CODE") unitType,
ri."EQU_LIST" equListCode,
(SELECT name FROM tz_equipment_category WHERE code = ri."EQU_LIST") equList,
(SELECT name FROM tz_equipment_category WHERE code = ri."EQU_CATEGORY") equCategory,
ri."EQU_CATEGORY" equCategoryCode,
oi."CODE96333" code96333,
oi."SUPERVISORY_CODE" supervisoryCode,
si."ORG_BRANCH_NAME" orgBranchName,
si."ORG_BRANCH_CODE" orgBranchCode,
si."COMPANY_ORG_BRANCH_CODE" companyOrgBranchCode
FROM
idx_biz_jg_maintenance_record_info mri
LEFT JOIN idx_biz_jg_use_info ui ON ui."RECORD" = mri."RECORD"
LEFT JOIN idx_biz_jg_register_info ri ON ri."RECORD" = mri."RECORD"
LEFT JOIN idx_biz_jg_other_info oi ON oi."RECORD" = mri."RECORD"
LEFT JOIN idx_biz_jg_supervision_info si on si."RECORD" = mri."RECORD"
WHERE mri."INFORM_END"
<![CDATA[<]]>
to_char(now(), 'YYYY-MM-DD')
AND ui."DATA_SOURCE" like 'jg%'
</select>
</mapper>
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
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
controller
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.bo.CompanyBo
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.module.jg.api.model.SafetyProblemTracingModel
;
import
com.yeejoin.amos.boot.module.jg.biz.service.impl.SafetyProblemTracingGenServiceImpl
;
import
com.yeejoin.amos.boot.module.jg.biz.service.impl.SafetyProblemTracingServiceImpl
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
javax.servlet.http.HttpServletRequest
;
import
java.util.List
;
import
java.util.Map
;
/**
* 安全追溯问题
*
* @author system_generator
* @date 2024-05-21
*/
@RestController
@Api
(
tags
=
"安全追溯问题Api"
)
@RequestMapping
(
value
=
"/safety-problem-tracing"
)
public
class
SafetyProblemTracingController
extends
BaseController
{
@Autowired
SafetyProblemTracingServiceImpl
safetyProblemTracingServiceImpl
;
@Autowired
SafetyProblemTracingGenServiceImpl
safetyProblemTracingGenService
;
/**
* 新增安全追溯问题
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/save"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"新增安全追溯问题"
,
notes
=
"新增安全追溯问题"
)
public
ResponseModel
<
SafetyProblemTracingModel
>
save
(
@RequestBody
SafetyProblemTracingModel
model
)
{
model
=
safetyProblemTracingServiceImpl
.
createWithModel
(
model
);
return
ResponseHelper
.
buildResponse
(
model
);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PutMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"PUT"
,
value
=
"根据sequenceNbr更新安全追溯问题"
,
notes
=
"根据sequenceNbr更新安全追溯问题"
)
public
ResponseModel
<
SafetyProblemTracingModel
>
updateBySequenceNbrSafetyProblemTracing
(
@RequestBody
SafetyProblemTracingModel
model
,
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
)
{
model
.
setSequenceNbr
(
sequenceNbr
);
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
updateWithModel
(
model
));
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@DeleteMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"DELETE"
,
value
=
"根据sequenceNbr删除安全追溯问题"
,
notes
=
"根据sequenceNbr删除安全追溯问题"
)
public
ResponseModel
<
Boolean
>
deleteBySequenceNbr
(
HttpServletRequest
request
,
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
){
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
removeById
(
sequenceNbr
));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据sequenceNbr查询单个安全追溯问题"
,
notes
=
"根据sequenceNbr查询单个安全追溯问题"
)
public
ResponseModel
<
SafetyProblemTracingModel
>
selectOne
(
@PathVariable
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
selectOne
(
sequenceNbr
));
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/page"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"分页查询安全追溯问题"
,
notes
=
"分页查询安全追溯问题"
)
public
ResponseModel
<
Page
<
SafetyProblemTracingModel
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestBody
(
required
=
false
)
SafetyProblemTracingModel
problemModel
)
{
ReginParams
loginParams
=
getSelectedOrgInfo
();
CompanyBo
company
=
loginParams
.
getCompany
();
if
(
company
.
getLevel
().
equals
(
"company"
))
{
return
ResponseHelper
.
buildResponse
(
new
Page
<>());
}
Page
<
SafetyProblemTracingModel
>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
problemModel
.
setGoverningBodyOrgCode
(
loginParams
.
getCompany
().
getOrgCode
());
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
queryForSafetyProblemTracingPage
(
page
,
problemModel
));
}
/**
* 设备问题列表分页查询
*
* @param current 当前页
* @param size 每页大小
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/equipId/page"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"设备问题列表分页查询"
,
notes
=
"设备问题列表分页查询"
)
public
ResponseModel
<
Page
<
SafetyProblemTracingModel
>>
queryProblemPageByEquipId
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestParam
(
value
=
"record"
)
String
equipId
)
{
Page
<
SafetyProblemTracingModel
>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
queryProblemPageByEquipId
(
page
,
equipId
));
}
/**
* 列表全部数据查询
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"列表全部数据查询安全追溯问题"
,
notes
=
"列表全部数据查询安全追溯问题"
)
@GetMapping
(
value
=
"/list"
)
public
ResponseModel
<
List
<
SafetyProblemTracingModel
>>
selectForList
()
{
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
queryForSafetyProblemTracingList
());
}
/**
* 根据问题ID及问题类型查询关联设备列表
*
* @param problemId 问题Id
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据问题ID及问题类型查询关联设备列表"
,
notes
=
"根据问题ID及问题类型查询关联设备列表"
)
@GetMapping
(
value
=
"/equip/list"
)
public
ResponseModel
<
Page
<
Map
<
String
,
Object
>>>
queryEquipListProblemById
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestParam
(
value
=
"sequenceNbr"
)
String
problemId
)
{
Page
<
Map
<
String
,
Object
>>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
queryEquipListByProblemId
(
page
,
problemId
));
}
/**
* 根据问题ID及问题类型查询关联企业
*
* @param problemId 问题Id
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据问题ID及问题类型查询关联企业"
,
notes
=
"根据问题ID及问题类型查询关联企业"
)
@GetMapping
(
value
=
"/unit/list"
)
public
ResponseModel
<
Page
<
Map
<
String
,
Object
>>>
queryPrincipalUnitByProblemId
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestParam
(
value
=
"sequenceNbr"
)
String
problemId
)
{
Page
<
Map
<
String
,
Object
>>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
safetyProblemTracingServiceImpl
.
queryPrincipalUnitByProblemId
(
page
,
problemId
));
}
/**
* test
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"test"
,
notes
=
"test"
)
@GetMapping
(
value
=
"/test"
)
public
ResponseModel
<
String
>
test
()
{
safetyProblemTracingGenService
.
queryEquipListByProblemId
();
return
ResponseHelper
.
buildResponse
(
"success"
);
}
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/listener/SafetyProblemTopicMessage.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
listener
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.google.common.collect.Lists
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.module.jg.api.entity.SafetyProblemTracing
;
import
com.yeejoin.amos.boot.module.jg.api.enums.SafetyProblemSourceTypeEnum
;
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.biz.service.impl.SafetyProblemTracingServiceImpl
;
import
com.yeejoin.amos.boot.module.jg.biz.service.impl.StartPlatformTokenService
;
import
lombok.extern.slf4j.Slf4j
;
import
org.eclipse.paho.client.mqttv3.MqttMessage
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.stereotype.Component
;
import
org.typroject.tyboot.component.emq.EmqKeeper
;
import
org.typroject.tyboot.component.emq.EmqxListener
;
import
javax.annotation.PostConstruct
;
import
javax.annotation.Resource
;
import
java.util.Date
;
import
java.util.List
;
@Component
@Slf4j
public
class
SafetyProblemTopicMessage
extends
EmqxListener
{
@Resource
protected
EmqKeeper
emqKeeper
;
@Value
(
"${safety.problem.tracing.topic:safetyProblemTracing/wb/cq}"
)
private
String
problemEventTopic
;
@PostConstruct
void
init
()
throws
Exception
{
emqKeeper
.
subscript
(
problemEventTopic
,
2
,
this
);
}
@Autowired
RedisUtils
redisUtil
;
@Autowired
StartPlatformTokenService
platformTokenService
;
@Autowired
SafetyProblemTracingServiceImpl
safetyProblemTracingService
;
@Override
public
void
processMessage
(
String
topic
,
MqttMessage
message
)
{
// TODO 提出单独模块处理生成问题
log
.
info
(
"接收问题生产消息开始"
);
platformTokenService
.
getToken
();
JSONObject
jsonObject
=
JSON
.
parseObject
(
message
.
toString
());
if
(
topic
.
endsWith
(
SafetyProblemTypeEnum
.
WBCQ
.
getTopic
()))
{
handleMaintenanceProblem
(
jsonObject
);
}
log
.
info
(
"接收问题生产消息完成"
);
}
private
void
handleMaintenanceProblem
(
JSONObject
jsonObject
)
{
JSONArray
maintenanceRecords
=
jsonObject
.
getJSONArray
(
"outOfMaintenanceRecords"
);
List
<
SafetyProblemTracing
>
safetyProblemTracingList
=
Lists
.
newArrayList
();
maintenanceRecords
.
forEach
(
item
->
{
JSONObject
json
=
(
JSONObject
)
item
;
SafetyProblemTracing
safetyProblemTracing
=
new
SafetyProblemTracing
();
// safetyProblemTracing.setProblemNum(json.getString("problemNum"));
safetyProblemTracing
.
setProblemType
(
SafetyProblemTypeEnum
.
WBCQ
.
getName
());
safetyProblemTracing
.
setProblemTypeCode
(
SafetyProblemTypeEnum
.
WBCQ
.
getCode
());
safetyProblemTracing
.
setProblemDesc
(
SafetyProblemTypeEnum
.
WBCQ
.
getDesc
());
// safetyProblemTracing.setProblemLevel(json.getString("problemLevel"));
// safetyProblemTracing.setProblemLevelCode(json.getString("problemLevelCode"));
safetyProblemTracing
.
setSourceType
(
SafetyProblemSourceTypeEnum
.
EQUIP
.
getName
());
safetyProblemTracing
.
setSourceTypeCode
(
SafetyProblemSourceTypeEnum
.
EQUIP
.
getCode
());
safetyProblemTracing
.
setSourceId
(
json
.
getString
(
"RECORD"
));
safetyProblemTracing
.
setProblemTime
(
new
Date
());
safetyProblemTracing
.
setEquipSuperviseCode
(
json
.
getString
(
"supervisoryCode"
));
safetyProblemTracing
.
setEquipList
(
json
.
getString
(
"equList"
));
safetyProblemTracing
.
setEquipListCode
(
json
.
getString
(
"equListCode"
));
safetyProblemTracing
.
setPrincipalUnit
(
json
.
getString
(
"useUnitName"
));
safetyProblemTracing
.
setPrincipalUnitCode
(
json
.
getString
(
"useUnitCreditCode"
));
safetyProblemTracing
.
setPrincipalUnitType
(
json
.
getString
(
"unitType"
));
safetyProblemTracing
.
setGoverningBody
(
json
.
getString
(
"orgBranchName"
));
safetyProblemTracing
.
setGoverningBodyCode
(
json
.
getString
(
"companyOrgBranchCode"
));
safetyProblemTracing
.
setGoverningBodyOrgCode
(
json
.
getString
(
"orgBranchCode"
));
// safetyProblemTracing.setRegionName(json.getString("regionName"));
safetyProblemTracing
.
setRegionCode
(
json
.
getString
(
"regionCode"
));
safetyProblemTracing
.
setCreateDate
(
new
Date
());
// safetyProblemTracing.setCreateUser(json.getString("createUser"));
// safetyProblemTracing.setCreateUserId(json.getString("createUserId"));
safetyProblemTracing
.
setProblemStatus
(
SafetyProblemStatusEnum
.
UNHANDLED
.
getName
());
safetyProblemTracing
.
setProblemStatusCode
(
SafetyProblemStatusEnum
.
UNHANDLED
.
getCode
());
safetyProblemTracingList
.
add
(
safetyProblemTracing
);
});
safetyProblemTracingService
.
saveBatch
(
safetyProblemTracingList
);
}
}
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/IdxBizJgRegisterInfoServiceImpl.java
View file @
66f4b62f
...
...
@@ -1263,7 +1263,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
// DATA_SOURCE 为“jg”的数据(从监管新加的设备)
// 20240314 提出的监管业务不要让企业用户选到之前一码通认领或补录的设备,让从监管业务中去新增
BoolQueryBuilder
dBuilder
=
QueryBuilders
.
boolQuery
();
dBuilder
.
must
(
QueryBuilders
.
termQuery
(
"DATA_SOURCE"
,
QueryParser
.
escape
(
"jg"
)
));
dBuilder
.
must
(
QueryBuilders
.
prefixQuery
(
"DATA_SOURCE"
,
"jg"
));
boolMust
.
must
(
dBuilder
);
String
queryType
=
map
.
getString
(
"QUERY_TYPE"
);
...
...
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/JgUseRegistrationServiceImpl.java
View file @
66f4b62f
...
...
@@ -1995,7 +1995,11 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
workflowResultDto
.
setNextTaskCode
(
"已完成"
);
workflowResultDto
.
setNextTaskId
(
jgUseRegistration
.
getNextTaskId
());
workflowResultDto
.
setNextExecutorUserIds
(
jgUseRegistration
.
getNextExecuteUserIds
());
this
.
updateData
(
jgUseRegistration
.
getSequenceNbr
(),
"0"
,
workflowResultDto
,
null
,
false
);
if
(
jgUseRegistration
.
getManageType
().
equals
(
"unit"
))
{
this
.
updateUseRegUnitData
(
jgUseRegistration
.
getSequenceNbr
(),
"0"
,
workflowResultDto
,
false
);
}
else
{
this
.
updateData
(
jgUseRegistration
.
getSequenceNbr
(),
"0"
,
workflowResultDto
,
null
,
false
);
}
});
}
}
\ No newline at end of file
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
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
service
.
impl
;
import
com.alibaba.fastjson.JSONObject
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.SafetyProblemTracingMapper
;
import
lombok.SneakyThrows
;
import
net.javacrumbs.shedlock.spring.annotation.SchedulerLock
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.scheduling.annotation.Scheduled
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.component.emq.EmqKeeper
;
import
java.nio.charset.StandardCharsets
;
import
java.util.List
;
import
java.util.Map
;
/**
* 安全追溯问题生成服务实现类
*
* @author system_generator
* @date 2024-05-21
*/
@Service
public
class
SafetyProblemTracingGenServiceImpl
{
@Autowired
SafetyProblemTracingMapper
safetyProblemTracingMapper
;
@Autowired
EmqKeeper
emqKeeper
;
@Scheduled
(
cron
=
"0 0 1 * * ?"
)
@SchedulerLock
(
name
=
"executeSafetyProblemCheck1"
,
lockAtMostFor
=
"PT5H"
,
lockAtLeastFor
=
"PT60S"
)
public
void
queryEquipListByProblemId
()
{
executeMaintenanceCheck
();
}
@SneakyThrows
private
void
executeMaintenanceCheck
()
{
List
<
Map
<
String
,
Object
>>
outOfMaintenanceRecords
=
safetyProblemTracingMapper
.
queryOutOfMaintenanceRecord
();
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"outOfMaintenanceRecords"
,
outOfMaintenanceRecords
);
emqKeeper
.
getMqttClient
().
publish
(
"wb/cq"
,
jsonObject
.
toString
().
getBytes
(
StandardCharsets
.
UTF_8
),
2
,
false
);
}
}
\ No newline at end of file
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/SafetyProblemTracingServiceImpl.java
0 → 100644
View file @
66f4b62f
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.google.common.collect.Lists
;
import
com.yeejoin.amos.boot.module.jg.api.entity.SafetyProblemTracing
;
import
com.yeejoin.amos.boot.module.jg.api.enums.SafetyProblemSourceTypeEnum
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.SafetyProblemTracingMapper
;
import
com.yeejoin.amos.boot.module.jg.api.model.SafetyProblemTracingModel
;
import
com.yeejoin.amos.boot.module.jg.api.service.ISafetyProblemTracingService
;
import
com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgRegisterInfoService
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 安全追溯问题服务实现类
*
* @author system_generator
* @date 2024-05-21
*/
@Service
public
class
SafetyProblemTracingServiceImpl
extends
BaseService
<
SafetyProblemTracingModel
,
SafetyProblemTracing
,
SafetyProblemTracingMapper
>
implements
ISafetyProblemTracingService
{
@Autowired
IIdxBizJgRegisterInfoService
idxBizJgRegisterInfoService
;
/**
* 分页查询
*/
public
Page
<
SafetyProblemTracingModel
>
queryForSafetyProblemTracingPage
(
Page
<
SafetyProblemTracingModel
>
page
,
SafetyProblemTracingModel
problemModel
)
{
return
this
.
baseMapper
.
queryForSafetyProblemTracingPage
(
page
,
problemModel
);
}
public
Page
<
SafetyProblemTracingModel
>
queryProblemPageByEquipId
(
Page
<
SafetyProblemTracingModel
>
page
,
String
equipId
)
{
SafetyProblemTracingModel
problemModel
=
new
SafetyProblemTracingModel
();
problemModel
.
setSourceId
(
equipId
);
return
this
.
baseMapper
.
queryForSafetyProblemTracingPage
(
page
,
problemModel
);
}
/**
* 根据ID查询
*/
public
SafetyProblemTracingModel
selectOne
(
Long
sequenceNbr
)
{
SafetyProblemTracingModel
entity
=
new
SafetyProblemTracingModel
();
LambdaQueryWrapper
<
SafetyProblemTracing
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
SafetyProblemTracing:
:
getSequenceNbr
,
sequenceNbr
);
SafetyProblemTracing
problem
=
this
.
baseMapper
.
selectOne
(
queryWrapper
);
BeanUtil
.
copyProperties
(
problem
,
entity
);
Map
<
String
,
String
>
problemStatusObj
=
new
HashMap
<>();
problemStatusObj
.
put
(
"problemStatusCode"
,
entity
.
getProblemStatusCode
());
entity
.
setProblemStatusObj
(
problemStatusObj
);
return
entity
;
}
/**
* 列表查询 示例
*/
public
List
<
SafetyProblemTracingModel
>
queryForSafetyProblemTracingList
()
{
return
this
.
queryForList
(
""
,
false
);
}
public
Page
<
Map
<
String
,
Object
>>
queryEquipListByProblemId
(
Page
<
Map
<
String
,
Object
>>
page
,
String
problemId
)
{
LambdaQueryWrapper
<
SafetyProblemTracing
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
SafetyProblemTracing:
:
getSequenceNbr
,
problemId
);
SafetyProblemTracing
problem
=
this
.
baseMapper
.
selectOne
(
queryWrapper
);
Page
<
Map
<
String
,
Object
>>
list
=
new
Page
<>();
if
(
problem
.
getSourceTypeCode
().
equals
(
SafetyProblemSourceTypeEnum
.
EQUIP
.
getCode
()))
{
list
=
this
.
baseMapper
.
queryEquipListByProblemId
(
page
,
problemId
);
}
else
{
JSONObject
jsonObject
=
new
JSONObject
();
jsonObject
.
put
(
"USE_UNIT_CREDIT_CODE"
,
problem
.
getPrincipalUnitCode
());
jsonObject
.
put
(
"number"
,
page
.
getCurrent
());
jsonObject
.
put
(
"size"
,
page
.
getSize
());
Page
<
JSONObject
>
result
=
idxBizJgRegisterInfoService
.
queryForEquipmentRegisterPage
(
jsonObject
);
List
<
Map
<
String
,
Object
>>
finalList
=
Lists
.
newArrayList
();
result
.
getRecords
().
forEach
(
item
->
{
Map
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
"equList"
,
item
.
get
(
"EQU_LIST"
));
map
.
put
(
"equCategory"
,
item
.
get
(
"EQU_CATEGORY"
));
map
.
put
(
"useUnitName"
,
item
.
get
(
"USE_UNIT_NAME"
));
map
.
put
(
"code96333"
,
item
.
get
(
"CODE96333"
));
map
.
put
(
"supervisoryCode"
,
item
.
get
(
"SUPERVISORY_CODE"
));
finalList
.
add
(
map
);
});
BeanUtils
.
copyProperties
(
result
,
list
);
list
.
setRecords
(
finalList
);
}
return
list
;
}
public
Page
<
Map
<
String
,
Object
>>
queryPrincipalUnitByProblemId
(
Page
<
Map
<
String
,
Object
>>
page
,
String
problemId
)
{
LambdaQueryWrapper
<
SafetyProblemTracing
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
SafetyProblemTracing:
:
getSequenceNbr
,
problemId
);
SafetyProblemTracing
problem
=
this
.
baseMapper
.
selectOne
(
queryWrapper
);
return
this
.
baseMapper
.
queryPrincipalUnitByProblemId
(
page
,
problemId
,
problem
.
getSourceTypeCode
());
}
}
\ No newline at end of file
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