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
27e184c9
Commit
27e184c9
authored
Aug 11, 2025
by
hcing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(tcm): 风险报送 接口开发
parent
62e2ffcf
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
626 additions
and
89 deletions
+626
-89
RiskProcessesDto.java
...eejoin/amos/boot/module/tcm/api/dto/RiskProcessesDto.java
+5
-1
RiskReportDto.java
...m/yeejoin/amos/boot/module/tcm/api/dto/RiskReportDto.java
+28
-5
RiskProcesses.java
...eejoin/amos/boot/module/tcm/api/entity/RiskProcesses.java
+6
-5
RiskReport.java
...m/yeejoin/amos/boot/module/tcm/api/entity/RiskReport.java
+14
-8
DisposalMethodEnums.java
...n/amos/boot/module/tcm/api/enums/DisposalMethodEnums.java
+23
-0
RiskReportProcessStatus.java
...os/boot/module/tcm/api/enums/RiskReportProcessStatus.java
+34
-0
RiskReportStage.java
...ejoin/amos/boot/module/tcm/api/enums/RiskReportStage.java
+44
-0
RiskUnitType.java
.../yeejoin/amos/boot/module/tcm/api/enums/RiskUnitType.java
+29
-0
RiskReportMapper.java
...oin/amos/boot/module/tcm/api/mapper/RiskReportMapper.java
+10
-0
IRiskReportService.java
.../amos/boot/module/tcm/api/service/IRiskReportService.java
+13
-0
RiskReportMapper.xml
...le-tcm-api/src/main/resources/mapper/RiskReportMapper.xml
+96
-0
RiskReportController.java
.../boot/module/tcm/biz/controller/RiskReportController.java
+34
-53
RiskReportServiceImpl.java
...ot/module/tcm/biz/service/impl/RiskReportServiceImpl.java
+290
-17
No files found.
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/dto/RiskProcessesDto.java
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
dto
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
/**
...
...
@@ -60,4 +61,7 @@ public class RiskProcessesDto extends BaseDto {
@ApiModelProperty
(
value
=
"创建人"
)
private
String
createUserName
;
@ApiModelProperty
(
value
=
"风险处置单位/监管单位"
)
private
String
riskDisposalUnit
;
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/dto/RiskReportDto.java
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
dto
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.RiskProcesses
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.util.Date
;
import
java.util.List
;
/**
* 风险报送表
...
...
@@ -16,17 +18,20 @@ import java.util.Date;
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"RiskReportDto"
,
description
=
"风险报送表"
)
public
class
RiskReportDto
extends
BaseDto
{
@ApiModel
(
value
=
"RiskReportDto"
,
description
=
"风险报送表"
)
public
class
RiskReportDto
extends
BaseDto
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"报送编号"
)
private
String
reportNo
;
@ApiModelProperty
(
value
=
"风险类型"
)
private
String
riskType
;
@ApiModelProperty
(
value
=
"风险类型code"
)
private
String
riskTypeCode
;
@ApiModelProperty
(
value
=
"风险类型名称"
)
private
String
riskTypeName
;
@ApiModelProperty
(
value
=
"报送单位seq"
)
private
String
reportCompanySeq
;
...
...
@@ -103,4 +108,22 @@ public class RiskReportDto extends BaseDto {
@ApiModelProperty
(
value
=
"创建人"
)
private
String
createUserName
;
@ApiModelProperty
(
value
=
"登录人所在单位类型/监管supervision/企业company"
)
private
String
unitType
;
@ApiModelProperty
(
value
=
"暂存or提交标志"
)
private
Boolean
submitFlag
;
@ApiModelProperty
(
value
=
"报送单位Name-搜索用"
)
private
String
reportCompanyNameWithSearch
;
@ApiModelProperty
(
value
=
"风险企业"
)
private
String
riskCompany
;
@ApiModelProperty
(
value
=
"风险处置单位"
)
private
String
riskDisposalUnit
;
@ApiModelProperty
(
value
=
"风险处置单位"
)
private
List
<
RiskProcesses
>
riskProcesses
;
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/entity/RiskProcesses.java
View file @
27e184c9
...
...
@@ -2,10 +2,9 @@ package com.yeejoin.amos.boot.module.tcm.api.entity;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
com.yeejoin.amos.boot.biz.common.entity.BaseEntity
;
import
lombok.*
;
import
java.util.Date
;
/**
...
...
@@ -15,8 +14,10 @@ import java.util.Date;
* @date 2025-08-08
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@TableName
(
"tzs_risk_processes"
)
public
class
RiskProcesses
extends
BaseEntity
{
...
...
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/entity/RiskReport.java
View file @
27e184c9
...
...
@@ -2,10 +2,8 @@ package com.yeejoin.amos.boot.module.tcm.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
com.yeejoin.amos.boot.biz.common.entity.BaseEntity
;
import
lombok.*
;
import
java.util.Date
;
...
...
@@ -16,8 +14,10 @@ import java.util.Date;
* @date 2025-08-08
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@TableName
(
"tzs_risk_report"
)
public
class
RiskReport
extends
BaseEntity
{
...
...
@@ -30,10 +30,16 @@ public class RiskReport extends BaseEntity {
private
String
reportNo
;
/**
* 风险类型
* 风险类型
code 平台字典值 RISK_TYPE
*/
@TableField
(
"risk_type"
)
private
String
riskType
;
@TableField
(
"risk_type_code"
)
private
String
riskTypeCode
;
/**
* 风险类型name 平台字典值 RISK_TYPE
*/
@TableField
(
"risk_type_name"
)
private
String
riskTypeName
;
/**
* 报送单位seq
...
...
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/enums/DisposalMethodEnums.java
0 → 100644
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
enums
;
import
lombok.AllArgsConstructor
;
import
lombok.Getter
;
/**
* 处置方式-风险报送使用
*/
@Getter
@AllArgsConstructor
public
enum
DisposalMethodEnums
{
CONFIRM_DISPOSAL
(
"10001"
,
"确认已处置"
,
"情况说明"
),
NOT_NEED_DISPOSAL
(
"10002"
,
"无需处置"
,
"情况说明"
),
ISSUED_DISPOSAL
(
"10003"
,
"下发整改"
,
"整改意见"
),
REPORT_DISPOSAL
(
"10004"
,
"整改上报"
,
"整改情况"
),
REPORT_FOR_WARDE
(
"10005"
,
"转办"
,
"情况说明"
);
private
final
String
code
;
private
final
String
name
;
private
final
String
title
;
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/enums/RiskReportProcessStatus.java
0 → 100644
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
enums
;
import
lombok.Getter
;
/**
* 风险报告处理状态枚举
*/
@Getter
public
enum
RiskReportProcessStatus
{
DRAFT
(
"草稿"
),
TO_HANDLE
(
"待处理"
),
TO_RECTIFY
(
"待整改"
),
TO_CONFIRM
(
"待确认"
),
COMPLETED
(
"已办理"
);
private
final
String
name
;
RiskReportProcessStatus
(
String
name
)
{
this
.
name
=
name
;
}
/**
* 根据中文名称获取枚举
*/
public
static
RiskReportProcessStatus
fromName
(
String
name
)
{
for
(
RiskReportProcessStatus
status
:
values
())
{
if
(
status
.
name
.
equals
(
name
))
{
return
status
;
}
}
return
null
;
}
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/enums/RiskReportStage.java
0 → 100644
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
enums
;
import
lombok.Getter
;
/**
* 风险报告状态枚举
*/
@Getter
public
enum
RiskReportStage
{
/**
* 草稿状态
*/
DRAFT
(
"草稿"
),
/**
* 监管处置
*/
SUPERVISION
(
"监管处置"
),
/**
* 企业整改
*/
COMPANY_RECTIFICATION
(
"企业整改"
);
private
final
String
name
;
RiskReportStage
(
String
name
)
{
this
.
name
=
name
;
}
/**
* 根据中文名称获取枚举
*/
public
static
RiskReportStage
fromName
(
String
name
)
{
for
(
RiskReportStage
status
:
values
())
{
if
(
status
.
name
.
equals
(
name
))
{
return
status
;
}
}
return
null
;
}
}
\ No newline at end of file
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/enums/RiskUnitType.java
0 → 100644
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
enums
;
public
enum
RiskUnitType
{
DISPOSAL
(
"处置单位"
),
// 处置单位
RECTIFICATION
(
"整改单位"
);
// 整改单位
private
final
String
label
;
RiskUnitType
(
String
label
)
{
this
.
label
=
label
;
}
public
String
getLabel
()
{
return
label
;
}
/**
* 通过中文名称查找枚举
*/
public
static
RiskUnitType
fromLabel
(
String
label
)
{
for
(
RiskUnitType
type
:
values
())
{
if
(
type
.
label
.
equals
(
label
))
{
return
type
;
}
}
throw
new
IllegalArgumentException
(
"未知的单位类型: "
+
label
);
}
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/mapper/RiskReportMapper.java
View file @
27e184c9
...
...
@@ -2,8 +2,10 @@ package com.yeejoin.amos.boot.module.tcm.api.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskReportDto
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.RiskReport
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Select
;
import
java.util.Map
;
...
...
@@ -18,4 +20,12 @@ public interface RiskReportMapper extends BaseMapper<RiskReport> {
Page
<
Map
<
String
,
String
>>
allAgencyWithPage
(
@Param
(
"page"
)
Page
<
Map
<
String
,
String
>>
page
,
@Param
(
"isAdmin"
)
boolean
isAdmin
,
@Param
(
"companyName"
)
String
companyName
);
Page
<
RiskReport
>
queryForRiskReportPage
(
@Param
(
"page"
)
Page
<
RiskReport
>
page
,
@Param
(
"dto"
)
RiskReportDto
reportDto
);
Map
<
String
,
String
>
getCompanyBySeq
(
@Param
(
"companySeq"
)
String
companySeq
);
@Select
(
"select risk_disposal_unit_org_code from tzs_risk_report where sequence_nbr = #{sequenceNbr}"
)
String
getRiskDisposalUnitOrgCode
(
Long
sequenceNbr
);
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/service/IRiskReportService.java
View file @
27e184c9
...
...
@@ -2,6 +2,9 @@ package com.yeejoin.amos.boot.module.tcm.api.service;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskProcessesDto
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskReportDto
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.RiskReport
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
java.util.List
;
...
...
@@ -20,4 +23,14 @@ public interface IRiskReportService {
JSONObject
superviseOrgForEnter
(
String
enterSeq
);
List
<
DictionarieValueModel
>
riskTypeByPermission
();
Page
<
RiskReport
>
queryForRiskReportPage
(
RiskReportDto
reportDto
,
int
current
,
int
size
);
RiskReport
saveOrUpdateReport
(
RiskReportDto
dto
);
RiskReportDto
selectRiskDetail
(
Long
sequenceNbr
);
Boolean
forWardeBySeq
(
Long
riskReportSeq
,
RiskProcessesDto
riskProcessesDto
);
List
<
String
>
permissionButton
(
Long
sequenceNbr
);
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/resources/mapper/RiskReportMapper.xml
View file @
27e184c9
...
...
@@ -2,6 +2,15 @@
<!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.tcm.api.mapper.RiskReportMapper"
>
<select
id=
"getCompanyBySeq"
resultType=
"java.util.Map"
>
SELECT sequence_nbr AS "companySeq",
company_code AS "companyCode",
company_name AS "companyName",
org_code AS "companyOrgCode"
FROM privilege_company
WHERE sequence_nbr = #{companySeq}
</select>
<select
id=
"allAgencyWithPage"
resultType=
"java.util.Map"
>
SELECT
sequence_nbr AS "key",
...
...
@@ -21,4 +30,91 @@
sequence_nbr
</select>
<sql
id=
"baseSelectForRiskReport"
>
SELECT sequence_nbr,
is_delete,
report_no,
risk_type_code,
risk_type_name,
report_company_seq,
report_company_name,
risk_company_seq,
risk_company_name,
risk_disposal_unit_seq,
risk_disposal_unit_name,
risk_disposal_unit_org_code,
all_risk_disposal_unit_org_code,
risk_equip_record,
operation_user_id,
risk_main_title,
risk_main_content,
report_user_id,
report_user_name,
report_user_phone,
current_stage,
current_status,
end_date,
create_date,
create_user_id
</sql>
<select
id=
"queryForRiskReportPage"
resultType=
"com.yeejoin.amos.boot.module.tcm.api.entity.RiskReport"
>
select * FROM
(
SELECT * FROM (
-- 风险单位
<include
refid=
"baseSelectForRiskReport"
/>
FROM tzs_risk_report AS rr1
WHERE rr1."risk_company_code" = #{dto.riskCompanyCode}
UNION
-- 报送单位(排除草稿)
<include
refid=
"baseSelectForRiskReport"
/>
FROM tzs_risk_report AS rr2
WHERE rr2."report_company_code" = #{dto.reportCompanyCode}
AND rr2."current_status" != '草稿'
<!-- 处置单位 -->
<if
test=
'dto.unitType != null and dto.unitType != "" and dto.unitType == "supervision"'
>
UNION
<include
refid=
"baseSelectForRiskReport"
/>
FROM tzs_risk_report AS rr3
WHERE rr3."all_risk_disposal_unit_org_code" like CONCAT('%', #{dto.riskDisposalUnitOrgCode}, '%')
</if>
<!-- 自己的草稿状态 -->
<if
test=
'dto.createUserId != null and dto.createUserId != ""'
>
UNION
<include
refid=
"baseSelectForRiskReport"
/>
FROM tzs_risk_report AS rr4
WHERE rr4."create_user_id" = #{dto.createUserId}
AND rr4."current_status" = '草稿'
</if>
) AS temp
<where>
temp."is_delete" = 'f'
<if
test=
"dto.riskTypeCode != null and dto.riskTypeCode != ''"
>
AND temp."risk_type_code" = #{dto.riskTypeCode}
</if>
<if
test=
"dto.currentStatus != null and dto.currentStatus != ''"
>
AND temp."current_status" = #{dto.currentStatus}
</if>
<if
test=
"dto.riskMainTitle != null and dto.riskMainTitle != ''"
>
AND temp."risk_main_title" LIKE CONCAT('%', #{dto.riskMainTitle}, '%')
</if>
<if
test=
"dto.reportCompanyNameWithSearch != null and dto.reportCompanyNameWithSearch != ''"
>
AND temp."report_company_name" LIKE CONCAT('%', #{dto.reportCompanyNameWithSearch}, '%')
</if>
<if
test=
"dto.riskCompanyName != null and dto.riskCompanyName != ''"
>
AND temp."risk_company_name" LIKE CONCAT('%', #{dto.riskCompanyName}, '%')
</if>
<if
test=
"dto.riskDisposalUnitName != null and dto.riskDisposalUnitName != ''"
>
AND temp."risk_disposal_unit_name" LIKE CONCAT('%', #{dto.riskDisposalUnitName}, '%')
</if>
</where>
) as t
ORDER BY t."create_date" DESC
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-biz/src/main/java/com/yeejoin/amos/boot/module/tcm/biz/controller/RiskReportController.java
View file @
27e184c9
...
...
@@ -3,6 +3,8 @@ package com.yeejoin.amos.boot.module.tcm.biz.controller;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskProcessesDto
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskReportDto
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.RiskReport
;
import
com.yeejoin.amos.boot.module.tcm.api.service.IRiskReportService
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
...
...
@@ -15,7 +17,6 @@ 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
;
...
...
@@ -67,47 +68,34 @@ public class RiskReportController extends BaseController {
}
/**
*
新增
*
风险报送列表分页查询
*
* @return
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/save"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"新增"
,
notes
=
"新增"
)
public
ResponseModel
<
RiskReport
>
save
(
@RequestBody
RiskReport
entity
)
{
// entity = riskReportServiceImpl.createWithModel(entity);
return
ResponseHelper
.
buildResponse
(
entity
);
}
/**
* 根据sequenceNbr更新
*
* @param sequenceNbr 主键
* @return
* @param current 当前页
* @param size 每页大小
* @return result
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PutMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"PUT"
,
value
=
"根据sequenceNbr更新"
,
notes
=
"根据sequenceNbr更新"
)
public
ResponseModel
<
RiskReport
>
updateBySequenceNbrRiskReport
(
@RequestBody
RiskReport
entity
,
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
)
{
entity
.
setSequenceNbr
(
sequenceNbr
);
return
ResponseHelper
.
buildResponse
(
null
);
@PostMapping
(
value
=
"/page"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
RiskReport
>>
queryForRiskReportPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestBody
RiskReportDto
reportDto
)
{
;
return
ResponseHelper
.
buildResponse
(
iRiskReportService
.
queryForRiskReportPage
(
reportDto
,
current
,
size
));
}
/**
* 根据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
(
null
);
@
PostMapping
(
value
=
"/saveOrUpdateReport
"
)
@ApiOperation
(
httpMethod
=
"
POST"
,
value
=
"风险上报"
,
notes
=
"风险上报
"
)
public
ResponseModel
<
RiskReport
>
saveOrUpdateReport
(
@RequestBody
RiskReportDto
dto
)
{
return
ResponseHelper
.
buildResponse
(
iRiskReportService
.
saveOrUpdateReport
(
dto
)
);
}
/**
* 根据sequenceNbr查询
* 根据sequenceNbr查询
详情
*
* @param sequenceNbr 主键
* @return
...
...
@@ -115,37 +103,30 @@ public class RiskReportController extends BaseController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据sequenceNbr查询单个"
,
notes
=
"根据sequenceNbr查询单个"
)
public
ResponseModel
<
RiskReport
>
selectOne
(
@PathVariable
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
null
);
public
ResponseModel
<
RiskReport
Dto
>
selectRiskDetail
(
@PathVariable
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
iRiskReportService
.
selectRiskDetail
(
sequenceNbr
)
);
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
* 转办
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
value
=
"/page"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
RiskReport
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
)
{
Page
<
RiskReport
>
page
=
new
Page
<
RiskReport
>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
null
);
@PutMapping
(
value
=
"/forWarde/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"PUT"
,
value
=
"转办"
,
notes
=
"转办"
)
public
ResponseModel
<
Boolean
>
forWardeBySeq
(
@PathVariable
Long
sequenceNbr
,
@RequestBody
RiskProcessesDto
riskProcessesDto
)
{
return
ResponseHelper
.
buildResponse
(
iRiskReportService
.
forWardeBySeq
(
sequenceNbr
,
riskProcessesDto
));
}
/**
* 列表全部数据查询
*
* @return
* 风险详情中的按钮权限(保存/保存提交/转办/处置/提交整改)
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@
ApiOperation
(
httpMethod
=
"GET"
,
value
=
"列表全部数据查询"
,
notes
=
"列表全部数据查询
"
)
@
GetMapping
(
value
=
"/list
"
)
public
ResponseModel
<
List
<
RiskReport
>>
selectForList
(
)
{
return
ResponseHelper
.
buildResponse
(
null
);
@
PutMapping
(
value
=
"/permissionButton/{sequenceNbr}
"
)
@
ApiOperation
(
httpMethod
=
"PUT"
,
value
=
"风险详情中的按钮权限"
,
notes
=
"风险详情中的按钮权限
"
)
public
ResponseModel
<
List
<
String
>>
permissionButton
(
@PathVariable
(
value
=
"sequenceNbr"
)
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
iRiskReportService
.
permissionButton
(
sequenceNbr
)
);
}
}
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/RiskReportServiceImpl.java
View file @
27e184c9
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
biz
.
service
.
impl
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
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.biz.common.utils.RedisKey
;
import
com.yeejoin.amos.boot.biz.common.utils.RedisUtils
;
import
com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskProcessesDto
;
import
com.yeejoin.amos.boot.module.tcm.api.dto.RiskReportDto
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.RiskProcesses
;
import
com.yeejoin.amos.boot.module.tcm.api.entity.RiskReport
;
import
com.yeejoin.amos.boot.module.tcm.api.enums.
PersonManageRoleEnum
;
import
com.yeejoin.amos.boot.module.tcm.api.enums.
*
;
import
com.yeejoin.amos.boot.module.tcm.api.mapper.RiskReportMapper
;
import
com.yeejoin.amos.boot.module.tcm.api.service.IRiskReportService
;
import
com.yeejoin.amos.feign.privilege.Privilege
;
...
...
@@ -13,14 +24,27 @@ import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.redisson.api.RLock
;
import
org.redisson.api.RedissonClient
;
import
org.springframework.beans.BeanUtils
;
import
org.springframework.data.redis.core.RedisTemplate
;
import
org.springframework.data.redis.core.ValueOperations
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.ObjectUtils
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.List
;
import
java.util.Map
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
import
java.time.LocalTime
;
import
java.time.ZoneId
;
import
java.time.format.DateTimeFormatter
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.concurrent.atomic.AtomicBoolean
;
import
java.util.stream.Collectors
;
/**
* 风险报送表服务实现类
...
...
@@ -28,6 +52,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
* @author system_generator
* @date 2025-08-08
*/
@Slf4j
@Service
@RequiredArgsConstructor
public
class
RiskReportServiceImpl
extends
BaseService
<
RiskReport
,
RiskReport
,
RiskReportMapper
>
implements
IRiskReportService
{
...
...
@@ -36,24 +61,29 @@ public class RiskReportServiceImpl extends BaseService<RiskReport, RiskReport, R
* 风险类型
*/
public
static
final
String
RISK_TYPE
=
"RISK_TYPE"
;
private
static
final
String
LOCK_KEY
=
"lock:sequence:risk"
;
private
static
final
String
SEQUENCE_TYPE_AF
=
"%03d"
;
private
static
final
String
SEQUENCE_KEY
=
"SXBS"
;
public
static
final
String
COMPANY_CODE
=
"companyCode"
;
public
static
final
String
COMPANY_NAME
=
"companyName"
;
public
static
final
String
COMPANY_ORG_CODE
=
"companyOrgCode"
;
public
static
final
String
COMPANY_SEQ
=
"companySeq"
;
private
final
SnowflakeIdUtil
sequence
;
private
final
RedisUtils
redisUtils
;
private
final
RiskReportMapper
riskReportMapper
;
private
final
RiskProcessesServiceImpl
riskProcessesService
;
private
final
RedissonClient
redissonClient
;
private
final
RedisTemplate
<
String
,
String
>
redisTemplate
;
/**
* 分页查询
*/
public
Page
<
RiskReport
>
queryForRiskReportPage
(
Page
<
RiskReport
>
page
)
{
return
this
.
queryForPage
(
page
,
null
,
false
);
}
/**
*
列表查询 示例
*
@return 当前登录用户信息
*/
p
ublic
List
<
RiskReport
>
queryForRiskReportList
()
{
return
this
.
queryForList
(
""
,
false
);
p
rotected
ReginParams
getSelectedOrgInfo
()
{
return
JSONObject
.
parseObject
(
redisUtils
.
get
(
RedisKey
.
buildReginKey
(
RequestContext
.
getExeUserId
(),
RequestContext
.
getToken
())).
toString
(),
ReginParams
.
class
);
}
private
final
RedisUtils
redisUtils
;
private
final
RiskReportMapper
riskReportMapper
;
/**
* 包含全部监管机构及企业的分页列表
*
...
...
@@ -110,4 +140,246 @@ public class RiskReportServiceImpl extends BaseService<RiskReport, RiskReport, R
// 无报送权限
return
Collections
.
emptyList
();
}
/**
* 分页查询
*/
public
Page
<
RiskReport
>
queryForRiskReportPage
(
RiskReportDto
reportDto
,
int
current
,
int
size
)
{
Page
<
RiskReport
>
page
=
new
Page
<>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
CompanyBo
company
=
getSelectedOrgInfo
().
getCompany
();
if
(
company
.
getLevel
().
equals
(
BaseController
.
COMPANY_TYPE_COMPANY
))
{
reportDto
.
setUnitType
(
BaseController
.
COMPANY_TYPE_COMPANY
);
}
else
{
reportDto
.
setUnitType
(
BaseController
.
COMPANY_TYPE_SUPERVISION
);
}
reportDto
.
setReportCompanyCode
(
company
.
getCompanyCode
());
reportDto
.
setRiskCompanyCode
(
company
.
getCompanyCode
());
reportDto
.
setRiskDisposalUnitOrgCode
(
company
.
getCompanyCode
());
reportDto
.
setCreateUserId
(
RequestContext
.
getExeUserId
());
return
riskReportMapper
.
queryForRiskReportPage
(
page
,
reportDto
);
}
/**
* 风险上报
*/
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
RiskReport
saveOrUpdateReport
(
RiskReportDto
dto
)
{
CompanyBo
company
=
getSelectedOrgInfo
().
getCompany
();
AgencyUserModel
userModel
=
getSelectedOrgInfo
().
getUserModel
();
Date
now
=
new
Date
();
Boolean
submitFlag
=
dto
.
getSubmitFlag
();
String
[]
riskCompany
=
dto
.
getRiskCompany
().
split
(
"_"
);
Map
<
String
,
String
>
riskCompanyMap
=
this
.
getCompanyBySeq
(
riskCompany
[
0
]);
String
[]
riskDisposalUnit
=
dto
.
getRiskDisposalUnit
().
split
(
"_"
);
Map
<
String
,
String
>
riskDisposalUnitMap
=
this
.
getCompanyBySeq
(
riskDisposalUnit
[
0
]);
RiskReport
riskReport
=
RiskReport
.
builder
()
.
reportNo
(
ObjectUtils
.
isEmpty
(
dto
.
getSequenceNbr
())
?
generateReportNo
()
:
null
)
.
riskTypeCode
(
dto
.
getRiskTypeCode
())
.
riskTypeName
(
getRiskTypeNameByCode
(
dto
.
getRiskTypeCode
()))
.
reportCompanySeq
(
company
.
getSequenceNbr
().
toString
())
.
reportCompanyCode
(
company
.
getCompanyCode
())
.
reportCompanyName
(
company
.
getCompanyName
())
.
riskCompanySeq
(
String
.
valueOf
(
riskCompanyMap
.
get
(
COMPANY_SEQ
)))
.
riskCompanyCode
(
riskCompanyMap
.
get
(
COMPANY_CODE
))
.
riskCompanyName
(
riskCompanyMap
.
get
(
COMPANY_NAME
))
.
riskDisposalUnitSeq
(
String
.
valueOf
(
riskDisposalUnitMap
.
get
(
COMPANY_SEQ
)))
.
riskDisposalUnitCode
(
riskDisposalUnitMap
.
get
(
COMPANY_CODE
))
.
riskDisposalUnitName
(
riskDisposalUnitMap
.
get
(
COMPANY_NAME
))
.
riskDisposalUnitOrgCode
(
riskDisposalUnitMap
.
get
(
COMPANY_ORG_CODE
))
.
allRiskDisposalUnitOrgCode
(
this
.
buildAllRiskDisposalUnitOrgCode
(
riskDisposalUnitMap
.
get
(
COMPANY_ORG_CODE
),
dto
.
getSequenceNbr
()))
.
riskEquipRecord
(
null
)
.
operationUserId
(
userModel
.
getUserId
())
.
riskMainTitle
(
dto
.
getRiskMainTitle
())
.
riskMainContent
(
dto
.
getRiskMainContent
())
.
riskMainFile
(
ObjectUtils
.
isEmpty
(
dto
.
getRiskMainFile
())
?
null
:
JSONObject
.
toJSONString
(
JSONArray
.
parseObject
(
dto
.
getRiskMainFile
())))
.
reportUserId
(
userModel
.
getUserId
())
.
reportUserName
(
userModel
.
getRealName
())
.
reportUserPhone
(
userModel
.
getLandlinePhone
())
.
currentStage
(
submitFlag
?
RiskReportStage
.
SUPERVISION
.
getName
()
:
RiskReportStage
.
DRAFT
.
getName
())
.
currentStatus
(
submitFlag
?
RiskReportProcessStatus
.
TO_HANDLE
.
getName
()
:
RiskReportProcessStatus
.
DRAFT
.
getName
())
.
createDate
(
now
)
.
createUserId
(
userModel
.
getUserId
())
.
createUserName
(
userModel
.
getRealName
())
.
build
();
riskReport
.
setSequenceNbr
(
ObjectUtils
.
isEmpty
(
dto
.
getSequenceNbr
())
?
sequence
.
nextId
()
:
dto
.
getSequenceNbr
());
riskReport
.
setIsDelete
(
Boolean
.
FALSE
);
this
.
saveOrUpdate
(
riskReport
);
return
riskReport
;
}
private
String
buildAllRiskDisposalUnitOrgCode
(
String
defaultOrgCode
,
Long
sequenceNbr
)
{
if
(!
ObjectUtils
.
isEmpty
(
sequenceNbr
))
{
String
riskDisposalUnitOrgCode
=
riskReportMapper
.
getRiskDisposalUnitOrgCode
(
sequenceNbr
);
String
collect
=
Arrays
.
stream
(
riskDisposalUnitOrgCode
.
split
(
","
))
.
filter
(
item
->
!
item
.
equals
(
defaultOrgCode
))
.
collect
(
Collectors
.
joining
(
","
));
return
defaultOrgCode
+
","
+
collect
;
}
return
defaultOrgCode
;
}
private
String
getRiskTypeNameByCode
(
String
riskTypeCode
)
{
List
<
DictionarieValueModel
>
riskType
=
Systemctl
.
dictionarieClient
.
dictValues
(
"RISK_TYPE"
).
getResult
();
return
riskType
.
stream
()
.
filter
(
item
->
item
.
getDictDataKey
().
equals
(
riskTypeCode
))
.
findFirst
()
.
map
(
DictionarieValueModel:
:
getDictDataValue
)
.
orElse
(
null
);
}
private
Map
<
String
,
String
>
getCompanyBySeq
(
String
companySeq
)
{
return
riskReportMapper
.
getCompanyBySeq
(
companySeq
);
}
public
String
generateReportNo
()
{
String
prefix
=
SEQUENCE_KEY
+
LocalDate
.
now
().
format
(
DateTimeFormatter
.
ofPattern
(
"yyyyMMdd"
));
RLock
lock
=
redissonClient
.
getLock
(
LOCK_KEY
);
try
{
if
(
lock
.
tryLock
(
10
,
TimeUnit
.
SECONDS
))
{
ValueOperations
<
String
,
String
>
ops
=
redisTemplate
.
opsForValue
();
String
seqStr
=
ops
.
get
(
SEQUENCE_KEY
);
long
seq
=
(
seqStr
!=
null
)
?
Long
.
parseLong
(
seqStr
)
:
0L
;
seq
++;
ops
.
set
(
SEQUENCE_KEY
,
String
.
valueOf
(
seq
));
// 设置当天23:59:59过期
long
expireMillis
=
calculateEndOfDay
(
new
Date
()).
getTime
()
-
System
.
currentTimeMillis
();
redisTemplate
.
expire
(
SEQUENCE_KEY
,
expireMillis
,
TimeUnit
.
MILLISECONDS
);
String
reportNo
=
prefix
+
String
.
format
(
SEQUENCE_TYPE_AF
,
seq
);
log
.
info
(
"生成报表编号:{}"
,
reportNo
);
return
reportNo
;
}
else
{
throw
new
RuntimeException
(
"获取锁失败,无法生成报表编号"
);
}
}
catch
(
InterruptedException
e
)
{
Thread
.
currentThread
().
interrupt
();
throw
new
RuntimeException
(
"线程中断异常"
,
e
);
}
finally
{
if
(
lock
.
isHeldByCurrentThread
())
{
lock
.
unlock
();
log
.
info
(
"释放锁"
);
}
}
}
private
static
Date
calculateEndOfDay
(
Date
date
)
{
LocalDateTime
endOfDay
=
LocalDateTime
.
ofInstant
(
date
.
toInstant
(),
ZoneId
.
systemDefault
())
.
with
(
LocalTime
.
MAX
);
return
Date
.
from
(
endOfDay
.
atZone
(
ZoneId
.
systemDefault
()).
toInstant
());
}
@Override
public
RiskReportDto
selectRiskDetail
(
Long
sequenceNbr
)
{
RiskReport
riskReport
=
this
.
baseMapper
.
selectOne
(
new
LambdaQueryWrapper
<
RiskReport
>()
.
select
(
RiskReport:
:
getSequenceNbr
,
RiskReport:
:
getReportNo
,
RiskReport:
:
getRiskTypeCode
,
RiskReport:
:
getRiskTypeName
,
RiskReport:
:
getReportCompanySeq
,
RiskReport:
:
getReportCompanyName
,
RiskReport:
:
getRiskCompanySeq
,
RiskReport:
:
getRiskCompanyName
,
RiskReport:
:
getRiskDisposalUnitSeq
,
RiskReport:
:
getRiskDisposalUnitName
,
RiskReport:
:
getRiskDisposalUnitOrgCode
,
RiskReport:
:
getAllRiskDisposalUnitOrgCode
,
RiskReport:
:
getRiskEquipRecord
,
RiskReport:
:
getOperationUserId
,
RiskReport:
:
getRiskMainContent
,
RiskReport:
:
getRiskMainTitle
,
RiskReport:
:
getRiskMainFile
,
RiskReport:
:
getReportUserId
,
RiskReport:
:
getReportUserName
,
RiskReport:
:
getCurrentStatus
,
RiskReport:
:
getEndDate
,
RiskReport:
:
getCreateDate
,
RiskReport:
:
getCreateUserId
,
RiskReport:
:
getCreateUserName
)
.
eq
(
RiskReport:
:
getSequenceNbr
,
sequenceNbr
));
List
<
RiskProcesses
>
riskProcesses
=
riskProcessesService
.
getBaseMapper
().
selectList
(
new
LambdaQueryWrapper
<
RiskProcesses
>()
// 排除转办的记录
// .ne(RiskProcesses::getDisposalWayCode, DisposalMethodEnums.REPORT_FOR_WARDE.getCode())
.
eq
(
RiskProcesses:
:
getRiskReportSeq
,
sequenceNbr
)
.
eq
(
RiskProcesses:
:
getIsDelete
,
Boolean
.
FALSE
)
.
orderByAsc
(
RiskProcesses:
:
getCreateDate
));
RiskReportDto
riskReportDto
=
new
RiskReportDto
();
BeanUtils
.
copyProperties
(
riskReport
,
riskReportDto
);
riskReportDto
.
setRiskProcesses
(
riskProcesses
);
riskReportDto
.
setRiskCompany
(
riskReport
.
getRiskCompanySeq
()
+
"_"
+
riskReport
.
getRiskCompanyName
());
riskReportDto
.
setRiskDisposalUnit
(
riskReport
.
getRiskDisposalUnitSeq
()
+
"_"
+
riskReport
.
getRiskDisposalUnitName
());
return
riskReportDto
;
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
Boolean
forWardeBySeq
(
Long
riskReportSeq
,
RiskProcessesDto
riskProcessesDto
)
{
ReginParams
selectedOrgInfo
=
getSelectedOrgInfo
();
AgencyUserModel
userModel
=
selectedOrgInfo
.
getUserModel
();
CompanyBo
company
=
getSelectedOrgInfo
().
getCompany
();
String
riskDisposalUnitSeq
=
riskProcessesDto
.
getRiskDisposalUnit
().
split
(
"_"
)[
0
];
Map
<
String
,
String
>
riskDisposalUnit
=
riskReportMapper
.
getCompanyBySeq
(
riskDisposalUnitSeq
);
String
riskDisposalUnitOrgCode
=
riskDisposalUnit
.
get
(
COMPANY_ORG_CODE
);
String
riskDisposalUnitCode
=
riskDisposalUnit
.
get
(
COMPANY_CODE
);
String
riskDisposalUnitName
=
riskDisposalUnit
.
get
(
COMPANY_NAME
);
String
allRiskDisposalUnitOrgCode
=
buildAllRiskDisposalUnitOrgCode
(
riskDisposalUnitOrgCode
,
riskReportSeq
);
this
.
update
(
new
LambdaUpdateWrapper
<
RiskReport
>().
eq
(
RiskReport:
:
getSequenceNbr
,
riskReportSeq
)
.
set
(
RiskReport:
:
getRiskDisposalUnitSeq
,
riskDisposalUnitSeq
)
.
set
(
RiskReport:
:
getRiskDisposalUnitName
,
riskDisposalUnitName
)
.
set
(
RiskReport:
:
getRiskDisposalUnitCode
,
riskDisposalUnitCode
)
.
set
(
RiskReport:
:
getAllRiskDisposalUnitOrgCode
,
allRiskDisposalUnitOrgCode
));
RiskProcesses
processes
=
RiskProcesses
.
builder
()
.
riskReportSeq
(
riskReportSeq
.
toString
())
.
unitType
(
RiskUnitType
.
DISPOSAL
.
getLabel
())
.
disposalWayCode
(
DisposalMethodEnums
.
REPORT_FOR_WARDE
.
getCode
())
.
disposalWayName
(
DisposalMethodEnums
.
REPORT_FOR_WARDE
.
getName
())
.
disposalContent
(
riskProcessesDto
.
getDisposalContent
())
.
operationCompanySeq
(
company
.
getSequenceNbr
().
toString
())
.
operationCompanyName
(
company
.
getCompanyName
())
.
operationUserId
(
userModel
.
getUserId
())
.
operationUserName
(
userModel
.
getUserName
())
.
createDate
(
new
Date
())
.
createUserId
(
userModel
.
getUserId
())
.
createUserName
(
userModel
.
getRealName
())
.
build
();
return
riskProcessesService
.
save
(
processes
);
}
/**
* 风险详情中的按钮权限(保存/保存提交/转办/处置/提交整改)根据业务状态走
*/
@Override
public
List
<
String
>
permissionButton
(
Long
sequenceNbr
)
{
CompanyBo
company
=
getSelectedOrgInfo
().
getCompany
();
RiskReport
riskReport
=
this
.
getById
(
sequenceNbr
);
String
currentStatus
=
riskReport
.
getCurrentStatus
();
String
riskDisposalUnitCode
=
riskReport
.
getRiskDisposalUnitCode
();
String
riskCompanyCode
=
riskReport
.
getRiskCompanyCode
();
// 草稿
if
(
currentStatus
.
equals
(
RiskReportProcessStatus
.
DRAFT
.
getName
()))
{
return
Arrays
.
asList
(
"存草稿"
,
"提交风险"
);
}
// 待处理 + 当前单位是处置单位
if
(
currentStatus
.
equals
(
RiskReportProcessStatus
.
TO_HANDLE
.
getName
())
&&
company
.
getCompanyCode
().
equals
(
riskDisposalUnitCode
))
{
return
Arrays
.
asList
(
"转办"
,
"处置"
);
}
// 待整改 + 当前单位是风险单位
if
(
currentStatus
.
equals
(
RiskReportProcessStatus
.
TO_RECTIFY
.
getName
())
&&
company
.
getCompanyCode
().
equals
(
riskCompanyCode
))
{
return
Collections
.
singletonList
(
"提交整改"
);
}
// 待确认 + 当前单位是处置单位
if
(
currentStatus
.
equals
(
RiskReportProcessStatus
.
TO_CONFIRM
.
getName
())
&&
company
.
getCompanyCode
().
equals
(
riskDisposalUnitCode
))
{
return
Arrays
.
asList
(
"转办"
,
"处置"
);
}
// 已办理 or 其他情况
return
Collections
.
emptyList
();
}
}
\ 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