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
c48bcba5
Commit
c48bcba5
authored
Jun 27, 2024
by
suhuiguang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.检验检测报检规则3.0版本
parent
181926e9
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
108 additions
and
52 deletions
+108
-52
JyjcInspectionApplication.java
...oot/module/jyjc/api/entity/JyjcInspectionApplication.java
+6
-0
InspectionEquipInfoModel.java
.../boot/module/jyjc/api/model/InspectionEquipInfoModel.java
+1
-0
JyjcInspectionApplicationModel.java
...module/jyjc/api/model/JyjcInspectionApplicationModel.java
+5
-0
RuleActionHandler.java
...n/amos/boot/module/jyjc/biz/action/RuleActionHandler.java
+33
-33
JyjcInspectionApplicationController.java
...c/biz/controller/JyjcInspectionApplicationController.java
+21
-13
InspectionEquipInfo.java
...n/amos/boot/module/jyjc/biz/rule/InspectionEquipInfo.java
+6
-0
JyjcInspectionApplicationServiceImpl.java
...iz/service/impl/JyjcInspectionApplicationServiceImpl.java
+11
-5
JyjcOpeningApplicationServiceImpl.java
...c/biz/service/impl/JyjcOpeningApplicationServiceImpl.java
+25
-1
No files found.
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/entity/JyjcInspectionApplication.java
View file @
c48bcba5
...
...
@@ -217,4 +217,10 @@ public class JyjcInspectionApplication extends BaseEntity {
@TableField
(
value
=
"plan_data"
,
typeHandler
=
JacksonTypeHandler
.
class
)
private
JSONObject
planData
;
/**
* 是否必须处理: true-必须处理,false-可不予受理
*/
@TableField
(
value
=
"is_must_accept"
)
private
Boolean
isMustAccept
;
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/model/InspectionEquipInfoModel.java
View file @
c48bcba5
...
...
@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
java.io.Serializable
;
/**
* @author LiuLin
* @date 2024年01月02日 16:47
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/model/JyjcInspectionApplicationModel.java
View file @
c48bcba5
...
...
@@ -166,6 +166,11 @@ public class JyjcInspectionApplicationModel extends BaseModel {
@ApiModelProperty
(
value
=
"是否已经进行计划排期"
)
private
Boolean
isExistPlanData
;
/**
* 是否必须处理: true-必须处理,false-可不予受理
*/
private
Boolean
isMustAccept
;
public
String
getProcessInstanceId
()
{
return
this
.
instanceId
!=
null
?
this
.
instanceId
:
this
.
processInstanceId
;
}
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-biz/src/main/java/com/yeejoin/amos/boot/module/jyjc/biz/action/RuleActionHandler.java
View file @
c48bcba5
...
...
@@ -27,6 +27,7 @@ import java.time.LocalDate;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
...
...
@@ -41,7 +42,6 @@ public class RuleActionHandler {
private
final
EmqKeeper
emqKeeper
;
private
final
TzBaseUnitLicenceMapper
baseUnitLicenceMapper
;
private
final
TzBaseEnterpriseInfoMapper
tzBaseEnterpriseInfoMapper
;
private
final
RuleCommonServiceImpl
ruleCommonService
;
private
final
RedissonClient
redissonClient
;
private
RedisUtils
redisUtils
;
...
...
@@ -58,7 +58,6 @@ public class RuleActionHandler {
this
.
emqKeeper
=
emqKeeper
;
this
.
baseUnitLicenceMapper
=
baseUnitLicenceMapper
;
this
.
tzBaseEnterpriseInfoMapper
=
tzBaseEnterpriseInfoMapper
;
this
.
ruleCommonService
=
ruleCommonService
;
this
.
redissonClient
=
redissonClient
;
this
.
redisUtils
=
redisUtils
;
}
...
...
@@ -73,8 +72,9 @@ public class RuleActionHandler {
* @param legalInspectionCodes 法定的检验机构code,多个用逗号分割,检验机构的最大集合-不为空
* @param inspectionCompanyType 需要显示的单位类型:legal-法定、third-第3方、all-全部,默认都是legal-法定,预留需求变更点
* @param isMatchItem 是否需要匹配核准代码:true-匹配; false-不匹配
* @param isMustAccept true-必须处理,false-可不予受理
*/
public
void
filterInspectionOrgAction
(
Object
bizObj
,
String
itemCode
,
Boolean
isMatchArea
,
String
defaultInspectionCode
,
String
legalInspectionCodes
,
String
inspectionCompanyType
,
Boolean
isMatchItem
)
{
public
void
filterInspectionOrgAction
(
Object
bizObj
,
String
itemCode
,
Boolean
isMatchArea
,
String
defaultInspectionCode
,
String
legalInspectionCodes
,
String
inspectionCompanyType
,
Boolean
isMatchItem
,
Boolean
isMustAccept
)
{
log
.
info
(
"收到首次提交的检验机构匹配规则回调:请求变量参数:{},核对项目编码:{},是否进行属地过滤:{},默认的检验机构code:{}, 法定的检验机构code:{}, 法定的检验机构code: {},是否需要匹配核准代码:{}"
,
bizObj
,
itemCode
,
isMatchArea
,
defaultInspectionCode
,
legalInspectionCodes
,
inspectionCompanyType
,
isMatchItem
);
InspectionEquipInfo
inspectionEquipInfo
=
(
InspectionEquipInfo
)
bizObj
;
// 规则不支持或者的关系消息会重复故去重处理
...
...
@@ -93,10 +93,10 @@ public class RuleActionHandler {
// 1.获取所有的符合资质条件的单位许可信息
List
<
TzBaseUnitLicence
>
unitLicenceList
=
getBaseUnitLicenceList
(
itemCode
,
isMatchItem
);
// 2.匹配过滤机构信息,默认检验机构(目前检测没配置规则,后续检测也需要配置规则时,需要规则那回调方法新增参数,区分检验还是检测)
List
<
TzBaseEnterpriseInfoDto
>
tzBaseEnterpriseInfoList
=
getInspectionUnitListForFirstCommit
(
unitLicenceList
,
isMatchArea
,
inspectionEquipInfo
,
OpenBizTypeEnum
.
JY
.
getCode
(),
defaultInspectionCode
,
legalInspectionCodes
);
List
<
TzBaseEnterpriseInfoDto
>
tzBaseEnterpriseInfoList
=
getInspectionUnitListForFirstCommit
(
unitLicenceList
,
isMatchArea
,
inspectionEquipInfo
,
OpenBizTypeEnum
.
JY
.
getCode
(),
defaultInspectionCode
,
legalInspectionCodes
,
isMustAccept
);
publishMqttMessage
(
inspectionEquipInfo
.
getComponentKey
(),
tzBaseEnterpriseInfoList
);
}
catch
(
MqttException
|
InterruptedException
e
)
{
log
.
error
(
"
Error publishing MQTT message
: {}"
,
e
.
getMessage
());
log
.
error
(
"
首次提交的检验机构匹配动作执行失败
: {}"
,
e
.
getMessage
());
}
finally
{
if
(
lock
.
isHeldByCurrentThread
())
{
lock
.
unlock
();
...
...
@@ -122,15 +122,16 @@ public class RuleActionHandler {
* @param defaultInspectionCode 默认的检验机构code
* @param inspectionCompanyType 需要显示的单位类型:legal-法定、third-第3方、all-全部,默认都是legal-法定,预留需求变更点
* @param legalInspectionCodes 法定的检验机构code,多个用逗号分割,检验机构的最大集合-不为空
* @param isMustAccept true-必须处理,false-可不予受理
*/
public
void
noAcceptInspectionOrgMatchAction
(
Object
bizObj
,
String
itemCode
,
Boolean
isMatchArea
,
String
defaultInspectionCode
,
String
inspectionCompanyType
,
Boolean
isMatchItem
,
String
legalInspectionCodes
)
{
public
void
noAcceptInspectionOrgMatchAction
(
Object
bizObj
,
String
itemCode
,
Boolean
isMatchArea
,
String
defaultInspectionCode
,
String
inspectionCompanyType
,
Boolean
isMatchItem
,
String
legalInspectionCodes
,
Boolean
isMustAccept
)
{
log
.
info
(
"收到不予受理的检验机构匹配规则回调:请求变量参数:{},核对项目编码:{},是否进行属地过滤:{},默认的检验机构code:{}, 法定的检验机构code:{}, 法定的检验机构code: {},是否需要匹配核准代码:{}"
,
bizObj
,
itemCode
,
isMatchArea
,
defaultInspectionCode
,
legalInspectionCodes
,
inspectionCompanyType
,
isMatchItem
);
InspectionEquipInfo
inspectionEquipInfo
=
(
InspectionEquipInfo
)
bizObj
;
try
{
// 1.获取所有的符合资质条件的单位许可信息
List
<
TzBaseUnitLicence
>
unitLicenceList
=
getBaseUnitLicenceList
(
itemCode
,
isMatchItem
);
// 2.匹配过滤机构信息,默认检验机构(目前检测没配置规则,后续检测也需要配置规则时,需要规则那回调方法新增参数,区分检验还是检测)
List
<
TzBaseEnterpriseInfoDto
>
tzBaseEnterpriseInfoList
=
getInspectionUnitListForNoAccept
(
unitLicenceList
,
isMatchArea
,
inspectionEquipInfo
,
OpenBizTypeEnum
.
JY
.
getCode
(),
defaultInspectionCode
,
legalInspectionCodes
,
inspectionCompanyType
);
List
<
TzBaseEnterpriseInfoDto
>
tzBaseEnterpriseInfoList
=
getInspectionUnitListForNoAccept
(
unitLicenceList
,
isMatchArea
,
inspectionEquipInfo
,
OpenBizTypeEnum
.
JY
.
getCode
(),
defaultInspectionCode
,
legalInspectionCodes
,
inspectionCompanyType
,
isMustAccept
);
publishMqttMessage
(
inspectionEquipInfo
.
getComponentKey
(),
tzBaseEnterpriseInfoList
);
}
catch
(
MqttException
e
)
{
log
.
error
(
"Error publishing MQTT message: {}"
,
e
.
getMessage
());
...
...
@@ -154,15 +155,17 @@ public class RuleActionHandler {
return
tzBaseUnitLicences
;
}
private
List
<
TzBaseEnterpriseInfoDto
>
getInspectionUnitListForNoAccept
(
List
<
TzBaseUnitLicence
>
unitLicenceList
,
Boolean
isMatchArea
,
InspectionEquipInfo
inspectionEquipInfo
,
String
openBizType
,
String
defaultInspectionCode
,
String
legalInspectionCodes
,
String
inspectionCompanyType
)
{
private
List
<
TzBaseEnterpriseInfoDto
>
getInspectionUnitListForNoAccept
(
List
<
TzBaseUnitLicence
>
unitLicenceList
,
Boolean
isMatchArea
,
InspectionEquipInfo
inspectionEquipInfo
,
String
openBizType
,
String
defaultInspectionCode
,
String
legalInspectionCodes
,
String
inspectionCompanyType
,
Boolean
isCanNoAccept
)
{
// 是否进行属地过滤
String
areaCode
=
isMatchArea
?
inspectionEquipInfo
.
getAreaCode
()
:
""
;
// 所有符合单位的code
List
<
String
>
unitCodes
=
unitLicenceList
.
stream
().
map
(
TzBaseUnitLicence:
:
getUnitCode
).
collect
(
Collectors
.
toLis
t
());
Set
<
String
>
unitCodes
=
unitLicenceList
.
stream
().
map
(
TzBaseUnitLicence:
:
getUnitCode
).
collect
(
Collectors
.
toSe
t
());
List
<
TzBaseEnterpriseInfoDto
>
matchEnterpriseInfos
=
new
ArrayList
<>();
// 按照资质 + areaCode,进行设备单位的筛选
if
(
unitCodes
.
size
()
>
0
)
{
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
unitCodes
,
areaCode
,
openBizType
);
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
new
ArrayList
<>(
unitCodes
),
areaCode
,
openBizType
);
// 返回下一步是否可不予返回,供下一节点审核时显示判断是否显示不予受理按钮,在提交时数据会写入到主表:true-必须处理,false-可不予受理
this
.
setIsCanNoAccept
(
matchEnterpriseInfos
,
isCanNoAccept
);
}
// 第三方时需要去掉法定机构
if
(
inspectionCompanyType
.
equals
(
InspectionCompanyType
.
THIRD
.
getCode
()))
{
...
...
@@ -176,44 +179,57 @@ public class RuleActionHandler {
matchEnterpriseInfos
=
matchEnterpriseInfos
.
stream
().
filter
(
e
->
defaultInspectionCode
.
contains
(
e
.
getUseCode
())).
collect
(
Collectors
.
toList
());
log
.
info
(
"匹配到的法定检验机构:{}"
,
matchEnterpriseInfos
);
}
// 代码严谨判断,如前置
调整法定机构单位为
注册,返回全部的法定机构和第3方机构
// 代码严谨判断,如前置
条件法定机构单位未
注册,返回全部的法定机构和第3方机构
if
(
matchEnterpriseInfos
.
isEmpty
())
{
log
.
info
(
"指定的默认的检验机构未匹配到,将返回所有的检验机构包括第三方和法定检验机构,省特检院除外"
);
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
null
,
null
,
openBizType
);
matchEnterpriseInfos
=
matchEnterpriseInfos
.
stream
().
filter
(
c
->
!
specialInspectionCompanyCode
.
contains
(
c
.
getUseCode
())).
collect
(
Collectors
.
toList
());
// 返回下一步是否可不予返回,供下一节点审核时显示判断是否显示不予受理按钮,在提交时数据会写入到主表:true-必须处理,false-可不予受理
this
.
setIsCanNoAccept
(
matchEnterpriseInfos
,
false
);
log
.
info
(
"指定的默认的检验机构未匹配到,将返回所有的检验机构包括第三方和法定检验机构,数据为:{}"
,
matchEnterpriseInfos
);
}
return
matchEnterpriseInfos
;
}
private
List
<
TzBaseEnterpriseInfoDto
>
getInspectionUnitListForFirstCommit
(
List
<
TzBaseUnitLicence
>
unitLicenceList
,
Boolean
isMatchArea
,
InspectionEquipInfo
inspectionEquipInfo
,
String
openBizType
,
String
defaultInspectionCode
,
String
legalInspectionCodes
)
{
private
List
<
TzBaseEnterpriseInfoDto
>
getInspectionUnitListForFirstCommit
(
List
<
TzBaseUnitLicence
>
unitLicenceList
,
Boolean
isMatchArea
,
InspectionEquipInfo
inspectionEquipInfo
,
String
openBizType
,
String
defaultInspectionCode
,
String
legalInspectionCodes
,
Boolean
isCanNoAccept
)
{
// 是否进行属地过滤
String
areaCode
=
isMatchArea
?
inspectionEquipInfo
.
getAreaCode
()
:
""
;
// 所有符合单位的code
Lis
t
<
String
>
unitCodes
=
unitLicenceList
.
stream
()
Se
t
<
String
>
unitCodes
=
unitLicenceList
.
stream
()
.
map
(
TzBaseUnitLicence:
:
getUnitCode
)
.
collect
(
Collectors
.
to
Lis
t
());
.
collect
(
Collectors
.
to
Se
t
());
// 将法定机构和符合资质要求的机构取交集
List
<
String
>
legalUnitCodes
=
Arrays
.
stream
(
legalInspectionCodes
.
split
(
","
)).
filter
(
unitCodes:
:
contains
).
collect
(
Collectors
.
toList
());
List
<
TzBaseEnterpriseInfoDto
>
matchEnterpriseInfos
=
new
ArrayList
<>();
// 按照资质 + areaCode,进行设备单位的筛选
if
(
legalUnitCodes
.
size
()
>
0
)
{
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
legalUnitCodes
,
areaCode
,
openBizType
);
// 返回下一步是否可不予返回,供下一节点审核时显示判断是否显示不予受理按钮,在提交时数据会写入
this
.
setIsCanNoAccept
(
matchEnterpriseInfos
,
isCanNoAccept
);
}
// 未匹配到法定机构时,返回指定的默认的法定机构
// 未匹配到法定机构时,返回指定的默认的法定机构
, 默认及法定机构不进行开通区域的匹配
if
(
matchEnterpriseInfos
.
isEmpty
())
{
log
.
info
(
"按照资质、区域未匹配到法定检验机构"
);
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
new
ArrayList
<>(
Arrays
.
asList
(
defaultInspectionCode
.
split
(
","
))),
areaCode
,
openBizType
);
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
new
ArrayList
<>(
Arrays
.
asList
(
defaultInspectionCode
.
split
(
","
))),
""
,
openBizType
);
// 返回下一步是否可不予返回,供下一节点审核时显示判断是否显示不予受理按钮,在提交时数据会写入到主表:true-必须处理,false-可不予受理
this
.
setIsCanNoAccept
(
matchEnterpriseInfos
,
isCanNoAccept
);
}
// 代码严谨判断,如前置
调整法定机构单位为
注册,返回全部的法定机构和第3方机构
// 代码严谨判断,如前置
条件法定机构单位未
注册,返回全部的法定机构和第3方机构
if
(
matchEnterpriseInfos
.
isEmpty
())
{
log
.
info
(
"指定的默认的检验机构未匹配到,将返回所有的检验机构包括第三方和法定检验机构,省特检院除外"
);
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
null
,
null
,
openBizType
);
matchEnterpriseInfos
=
matchEnterpriseInfos
.
stream
().
filter
(
c
->
!
specialInspectionCompanyCode
.
contains
(
c
.
getUseCode
())).
collect
(
Collectors
.
toList
());
// 返回下一步是否可不予返回,供下一节点审核时显示判断是否显示不予受理按钮,在提交时数据会写入到主表:true-必须处理,false-可不予受理
this
.
setIsCanNoAccept
(
matchEnterpriseInfos
,
false
);
}
return
matchEnterpriseInfos
;
}
private
void
setIsCanNoAccept
(
List
<
TzBaseEnterpriseInfoDto
>
matchEnterpriseInfos
,
Boolean
isCanNoAccept
)
{
matchEnterpriseInfos
.
forEach
(
m
->
{
m
.
setUseCodeAndName
(
m
.
getUseCode
()
+
"_"
+
isCanNoAccept
);
});
}
private
void
publishMqttMessage
(
String
componentKey
,
Object
message
)
throws
MqttException
{
log
.
info
(
"报检规则推送到web主题:{}:,消息内容为:{}"
,
String
.
format
(
TopicEnum
.
INSPECTION_LIST_PUSH
.
getTopic
(),
componentKey
),
JSON
.
toJSONString
(
message
));
...
...
@@ -226,21 +242,5 @@ public class RuleActionHandler {
}
}
public
List
<
TzBaseEnterpriseInfoDto
>
getInspectionUnitList
(
List
<
TzBaseUnitLicence
>
unitLicenceList
,
Boolean
isMatchArea
,
String
record
,
String
openBizType
)
{
// 是否进行属地过滤
String
areaCode
=
isMatchArea
?
ruleCommonService
.
getArea
(
record
)
:
""
;
// 所有符合单位的code
List
<
String
>
unitCodes
=
unitLicenceList
.
stream
().
map
(
TzBaseUnitLicence:
:
getUnitCode
).
collect
(
Collectors
.
toList
());
List
<
TzBaseEnterpriseInfoDto
>
matchEnterpriseInfos
=
new
ArrayList
<>();
// 按照资质 + areaCode,进行设备单位的筛选
if
(
unitCodes
.
size
()
>
0
)
{
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
unitCodes
,
areaCode
,
openBizType
);
}
if
(
matchEnterpriseInfos
.
isEmpty
())
{
log
.
info
(
"按照资质、区域未匹配到对应的单位、按照地市未匹配到单位,将返回全部单位"
);
return
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
null
,
null
,
openBizType
);
}
return
matchEnterpriseInfos
;
}
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-biz/src/main/java/com/yeejoin/amos/boot/module/jyjc/biz/controller/JyjcInspectionApplicationController.java
View file @
c48bcba5
...
...
@@ -38,17 +38,25 @@ import java.util.Map;
public
class
JyjcInspectionApplicationController
extends
BaseController
{
@Autowired
JyjcInspectionApplicationServiceImpl
jyjcInspectionApplicationServiceImpl
;
private
JyjcInspectionApplicationServiceImpl
jyjcInspectionApplicationServiceImpl
;
// 业务通用发起——基本信息
private
static
final
String
basic
=
"basic"
;
// 业务通用发起——设备信息
private
static
final
String
equipPageInfo
=
"equipPageInfo"
;
// 业务通用发起——技术参数-
private
static
final
String
filePageData
=
"filePageData"
;
/**
* 业务通用发起——基本信息
*/
private
static
final
String
BASIC
=
"basic"
;
/**
* 业务通用发起——设备信息
*/
private
static
final
String
EQUIP_PAGE_INFO
=
"equipPageInfo"
;
/**
* 业务通用发起——技术参数
*/
private
static
final
String
FILE_PAGE_DATA
=
"filePageData"
;
@Autowired
EventPublisher
eventPublisher
;
private
EventPublisher
eventPublisher
;
/**
* 新增
...
...
@@ -59,11 +67,11 @@ public class JyjcInspectionApplicationController extends BaseController {
@PostMapping
(
value
=
"/save"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"暂存、提交"
,
notes
=
"新增"
)
public
ResponseModel
<
List
<
JyjcInspectionApplicationModel
>>
save
(
@RequestBody
JSONObject
model
)
{
if
(
model
.
containsKey
(
basic
))
{
if
(
model
.
containsKey
(
BASIC
))
{
JSONObject
finallyJson
=
new
JSONObject
();
Map
<
String
,
Object
>
basicObj
=
(
Map
<
String
,
Object
>)
model
.
get
(
basic
);
Map
<
String
,
Object
>
equipPageInfoObj
=
(
Map
<
String
,
Object
>)
model
.
get
(
equipPageInfo
);
Map
<
String
,
Object
>
filePageDataObj
=
(
Map
<
String
,
Object
>)
model
.
get
(
filePageData
);
Map
<
String
,
Object
>
basicObj
=
(
Map
<
String
,
Object
>)
model
.
get
(
BASIC
);
Map
<
String
,
Object
>
equipPageInfoObj
=
(
Map
<
String
,
Object
>)
model
.
get
(
EQUIP_PAGE_INFO
);
Map
<
String
,
Object
>
filePageDataObj
=
(
Map
<
String
,
Object
>)
model
.
get
(
FILE_PAGE_DATA
);
finallyJson
.
putAll
(
model
);
finallyJson
.
putAll
(
basicObj
);
finallyJson
.
putAll
(
equipPageInfoObj
);
...
...
@@ -122,7 +130,7 @@ public class JyjcInspectionApplicationController extends BaseController {
@GetMapping
(
value
=
"/{sequenceNbr}"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据sequenceNbr查询单个"
,
notes
=
"根据sequenceNbr查询单个"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
selectOne
(
@PathVariable
Long
sequenceNbr
)
{
return
ResponseHelper
.
buildResponse
(
jyjcInspectionApplicationServiceImpl
.
selectBySeq
(
sequenceNbr
));
return
ResponseHelper
.
buildResponse
(
jyjcInspectionApplicationServiceImpl
.
selectBySeq
(
sequenceNbr
,
getSelectedOrgInfo
().
getCompany
().
getCompanyType
()
));
}
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-biz/src/main/java/com/yeejoin/amos/boot/module/jyjc/biz/rule/InspectionEquipInfo.java
View file @
c48bcba5
...
...
@@ -54,4 +54,10 @@ public class InspectionEquipInfo implements Serializable {
@ApiModelProperty
(
value
=
"所在区域"
)
private
String
areaCode
;
@ApiModelProperty
(
value
=
"设备所在区/县行政编码"
)
private
String
districtOrCountyCode
;
@ApiModelProperty
(
value
=
"是否是球阀,压力容器定向规则使用"
)
private
Boolean
isBallValve
=
false
;
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-biz/src/main/java/com/yeejoin/amos/boot/module/jyjc/biz/service/impl/JyjcInspectionApplicationServiceImpl.java
View file @
c48bcba5
...
...
@@ -195,6 +195,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
// 校验流程中的不能再次提交
this
.
checkForFlowingEquip
(
model
);
if
(
CharSequenceUtil
.
isNotEmpty
(
model
.
getProcessInstanceId
())
&&
model
.
getOperationType
().
equals
(
"0"
))
{
// 之前有工作流,再次提交
model
.
setOperationType
(
"2"
);
}
...
...
@@ -215,7 +216,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
String
[]
inspectionUnit
=
model
.
getInspectionUnitCode
().
split
(
"_"
);
if
(
inspectionUnit
.
length
==
2
)
{
model
.
setInspectionUnitCode
(
inspectionUnit
[
0
]);
model
.
setI
nspectionUnitName
(
inspectionUnit
[
1
]
);
model
.
setI
sMustAccept
(
Boolean
.
parseBoolean
(
inspectionUnit
[
1
])
);
}
else
{
this
.
setInspectionUnitNameAfterSave
(
model
);
}
...
...
@@ -358,6 +359,13 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
model
.
setDockingUnitCode
(
jyjcOpeningApplications
.
get
(
0
).
getDockingUnitCode
());
}
}
String
[]
inspectionUnit
=
model
.
getInspectionUnitCode
().
split
(
"_"
);
if
(
inspectionUnit
.
length
==
2
)
{
model
.
setInspectionUnitCode
(
inspectionUnit
[
0
]);
model
.
setIsMustAccept
(
Boolean
.
parseBoolean
(
inspectionUnit
[
1
]));
}
else
{
this
.
setInspectionUnitNameAfterSave
(
model
);
}
this
.
setInspectionUnitNameAfterSave
(
model
);
//更新报检装备监管码
...
...
@@ -569,9 +577,8 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
return
this
.
queryForList
(
""
,
false
);
}
public
Map
<
String
,
Object
>
selectBySeq
(
Long
sequenceNbr
)
{
public
Map
<
String
,
Object
>
selectBySeq
(
Long
sequenceNbr
,
String
companyType
)
{
JyjcInspectionApplicationModel
model
=
this
.
getBaseMapper
().
selectDataBySeq
(
sequenceNbr
);
int
times
=
noAcceptLogService
.
count
(
new
LambdaQueryWrapper
<
JyjcInspectionApplicationNoAcceptLog
>().
eq
(
JyjcInspectionApplicationNoAcceptLog:
:
getApplicationSeq
,
sequenceNbr
).
eq
(
JyjcInspectionApplicationNoAcceptLog:
:
getInspectionUnitCode
,
shanxiCompanyCode
));
Map
<
String
,
Object
>
map
=
BeanUtil
.
beanToMap
(
model
);
List
<
Map
<
String
,
Object
>>
dataByApplicationSeq
=
jyjcInspectionApplicationAttachmentService
.
getBaseMapper
().
getDataByApplicationSeq
(
sequenceNbr
);
Map
<
String
,
Object
>
attMap
=
new
HashMap
<>();
...
...
@@ -606,8 +613,7 @@ public class JyjcInspectionApplicationServiceImpl extends BaseService<JyjcInspec
map
.
put
(
"equip"
,
arrayList
);
}
map
.
putAll
(
attMap
);
// 陕西特检验院不予首次的次数
map
.
put
(
"sytjybyslcs"
,
times
);
map
.
put
(
"companyType"
,
companyType
);
this
.
setPlanData
(
sequenceNbr
,
map
);
return
map
;
}
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-biz/src/main/java/com/yeejoin/amos/boot/module/jyjc/biz/service/impl/JyjcOpeningApplicationServiceImpl.java
View file @
c48bcba5
...
...
@@ -32,6 +32,7 @@ import com.yeejoin.amos.boot.module.ymt.api.dto.TzBaseEnterpriseInfoDto;
import
com.yeejoin.amos.boot.module.ymt.api.dto.TzBaseUnitLicenceDto
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.BaseUnitLicence
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseUnitLicence
;
import
com.yeejoin.amos.boot.module.ymt.api.entity.TzsUserInfo
;
import
com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum
;
import
com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum
;
...
...
@@ -130,6 +131,12 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
@Autowired
RedissonClient
redissonClient
;
@Autowired
private
RuleCommonServiceImpl
ruleCommonService
;
@Autowired
private
TzBaseEnterpriseInfoMapper
tzBaseEnterpriseInfoMapper
;
private
static
Map
<
String
,
DictionarieValueModel
>
permissionLevelMap
;
private
static
List
<
DictionarieValueModel
>
permissionItemList
;
...
...
@@ -902,7 +909,24 @@ public class JyjcOpeningApplicationServiceImpl extends BaseService<JyjcOpeningAp
@Override
public
List
<
TzBaseEnterpriseInfoDto
>
getUnitListByRecord
(
String
record
)
{
return
ruleActionHandler
.
getInspectionUnitList
(
new
ArrayList
<>(),
true
,
record
,
OpenBizTypeEnum
.
JC
.
getCode
());
return
this
.
getInspectionUnitList
(
new
ArrayList
<>(),
true
,
record
,
OpenBizTypeEnum
.
JC
.
getCode
());
}
private
List
<
TzBaseEnterpriseInfoDto
>
getInspectionUnitList
(
List
<
TzBaseUnitLicence
>
unitLicenceList
,
Boolean
isMatchArea
,
String
record
,
String
openBizType
)
{
// 是否进行属地过滤
String
areaCode
=
isMatchArea
?
ruleCommonService
.
getArea
(
record
)
:
""
;
// 所有符合单位的code
Set
<
String
>
unitCodes
=
unitLicenceList
.
stream
().
map
(
TzBaseUnitLicence:
:
getUnitCode
).
collect
(
Collectors
.
toSet
());
List
<
TzBaseEnterpriseInfoDto
>
matchEnterpriseInfos
=
new
ArrayList
<>();
// 按照资质 + areaCode,进行设备单位的筛选
if
(
unitCodes
.
size
()
>
0
)
{
matchEnterpriseInfos
=
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
new
ArrayList
<>(
unitCodes
),
areaCode
,
openBizType
);
}
if
(
matchEnterpriseInfos
.
isEmpty
())
{
log
.
info
(
"按照资质、区域未匹配到对应的单位、按照地市未匹配到单位,将返回全部单位"
);
return
tzBaseEnterpriseInfoMapper
.
getInspectionUnitListByCode
(
null
,
null
,
openBizType
);
}
return
matchEnterpriseInfos
;
}
/**
...
...
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