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
481ce6a3
Commit
481ce6a3
authored
Jul 18, 2024
by
刘凡
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/develop_tzs_register_to_0715' into…
Merge remote-tracking branch 'origin/develop_tzs_register_to_0715' into develop_tzs_register_to_0715
parents
69c70f23
379e8f84
Show whitespace changes
Inline
Side-by-side
Showing
39 changed files
with
985 additions
and
77 deletions
+985
-77
ProblemStatusEnum.java
...join/amos/boot/module/jg/api/enums/ProblemStatusEnum.java
+63
-0
JgEquipTransferMapper.java
...amos/boot/module/jg/api/mapper/JgEquipTransferMapper.java
+4
-0
JgMaintenanceContractMapper.java
...oot/module/jg/api/mapper/JgMaintenanceContractMapper.java
+3
-0
JgEquipTransferMapper.xml
...g-api/src/main/resources/mapper/JgEquipTransferMapper.xml
+10
-0
JgMaintenanceContractMapper.xml
...src/main/resources/mapper/JgMaintenanceContractMapper.xml
+10
-0
JgEquipTransferController.java
...t/module/jg/biz/controller/JgEquipTransferController.java
+16
-17
JgMaintenanceContractController.java
...le/jg/biz/controller/JgMaintenanceContractController.java
+3
-4
ChangeUnitEquipUsedCheckImpl.java
...ule/jg/biz/service/impl/ChangeUnitEquipUsedCheckImpl.java
+1
-1
EquipTransferEquipUsedCheckImpl.java
.../jg/biz/service/impl/EquipTransferEquipUsedCheckImpl.java
+54
-0
IdxBizJgRegisterInfoServiceImpl.java
.../jg/biz/service/impl/IdxBizJgRegisterInfoServiceImpl.java
+27
-2
JgEquipTransferServiceImpl.java
...odule/jg/biz/service/impl/JgEquipTransferServiceImpl.java
+46
-14
JgMaintenanceContractServiceImpl.java
...jg/biz/service/impl/JgMaintenanceContractServiceImpl.java
+39
-12
MaintenanceContractEquipUsedCheckImpl.java
...z/service/impl/MaintenanceContractEquipUsedCheckImpl.java
+54
-0
InspectionTimelinesDto.java
...amos/boot/module/jyjc/api/dto/InspectionTimelinesDto.java
+20
-0
PublicityInspectOrgInfoDto.java
.../boot/module/jyjc/api/dto/PublicityInspectOrgInfoDto.java
+38
-0
JyjcInspectionApplication.java
...oot/module/jyjc/api/entity/JyjcInspectionApplication.java
+6
-0
JyjcInspectionResult.java
...mos/boot/module/jyjc/api/entity/JyjcInspectionResult.java
+7
-0
JYJCTypeEnum.java
...yeejoin/amos/boot/module/jyjc/api/enums/JYJCTypeEnum.java
+5
-5
JyjcBaseMapper.java
...join/amos/boot/module/jyjc/api/mapper/JyjcBaseMapper.java
+2
-0
JyjcInspectionApplicationMapper.java
...dule/jyjc/api/mapper/JyjcInspectionApplicationMapper.java
+30
-2
JyjcInspectionResultMapper.java
...ot/module/jyjc/api/mapper/JyjcInspectionResultMapper.java
+5
-0
JyjcOpeningApplicationMapper.java
.../module/jyjc/api/mapper/JyjcOpeningApplicationMapper.java
+8
-0
JyjcInspectionApplicationModel.java
...module/jyjc/api/model/JyjcInspectionApplicationModel.java
+3
-0
JyjcInspectionResultModel.java
...boot/module/jyjc/api/model/JyjcInspectionResultModel.java
+5
-0
JyjcBaseMapper.xml
...ule-jyjc-api/src/main/resources/mapper/JyjcBaseMapper.xml
+3
-0
JyjcInspectionApplicationMapper.xml
...main/resources/mapper/JyjcInspectionApplicationMapper.xml
+59
-0
JyjcInspectionResultMapper.xml
.../src/main/resources/mapper/JyjcInspectionResultMapper.xml
+24
-0
JyjcOpeningApplicationMapper.xml
...rc/main/resources/mapper/JyjcOpeningApplicationMapper.xml
+32
-0
DPStatisticsController.java
...ot/module/jyjc/biz/controller/DPStatisticsController.java
+71
-6
DPStatisticsServiceImpl.java
...module/jyjc/biz/service/impl/DPStatisticsServiceImpl.java
+194
-6
InspectionPlanServiceImpl.java
...dule/jyjc/biz/service/impl/InspectionPlanServiceImpl.java
+17
-5
JyjcInspectionResultServiceImpl.java
...yjc/biz/service/impl/JyjcInspectionResultServiceImpl.java
+11
-0
TzBaseEnterpriseInfoDto.java
...amos/boot/module/tcm/api/dto/TzBaseEnterpriseInfoDto.java
+3
-0
ProblemStatusEnum.java
...oin/amos/boot/module/tcm/api/enums/ProblemStatusEnum.java
+49
-0
TzBaseEnterpriseInfoMapper.java
...oot/module/tcm/api/mapper/TzBaseEnterpriseInfoMapper.java
+5
-3
ITzBaseEnterpriseInfoService.java
.../module/tcm/api/service/ITzBaseEnterpriseInfoService.java
+2
-0
TzBaseEnterpriseInfoMapper.xml
.../src/main/resources/mapper/TzBaseEnterpriseInfoMapper.xml
+3
-0
TzBaseEnterpriseInfoController.java
...le/tcm/biz/controller/TzBaseEnterpriseInfoController.java
+7
-0
TzBaseEnterpriseInfoServiceImpl.java
...tcm/biz/service/impl/TzBaseEnterpriseInfoServiceImpl.java
+46
-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/enums/ProblemStatusEnum.java
0 → 100644
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
enums
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* 问题状态
*/
public
enum
ProblemStatusEnum
{
NORMAL
(
"正常"
,
"0"
,
"已处理"
),
ABNORMAL
(
"异常"
,
"1"
,
"未处理"
);
private
String
name
;
private
String
code
;
private
String
desc
;
ProblemStatusEnum
(
String
name
,
String
code
,
String
desc
)
{
this
.
name
=
name
;
this
.
code
=
code
;
this
.
desc
=
desc
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
public
String
getDesc
()
{
return
desc
;
}
public
void
setDesc
(
String
desc
)
{
this
.
desc
=
desc
;
}
public
static
Map
<
String
,
String
>
getNameByCode
=
new
HashMap
<>();
public
static
Map
<
String
,
String
>
getCodeByName
=
new
HashMap
<>();
public
static
Map
<
String
,
String
>
getDescByCode
=
new
HashMap
<>();
public
static
Map
<
String
,
String
>
getNameByDesc
=
new
HashMap
<>();
static
{
for
(
ProblemStatusEnum
e
:
ProblemStatusEnum
.
values
())
{
getNameByCode
.
put
(
e
.
code
,
e
.
name
);
getNameByDesc
.
put
(
e
.
desc
,
e
.
name
);
getDescByCode
.
put
(
e
.
code
,
e
.
desc
);
getCodeByName
.
put
(
e
.
name
,
e
.
code
);
}
}
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/mapper/JgEquipTransferMapper.java
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
api
.
mapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto
;
import
com.yeejoin.amos.boot.module.jg.api.dto.JgEquipTransferDto
;
import
com.yeejoin.amos.boot.module.jg.api.entity.JgEquipTransfer
;
import
com.yeejoin.amos.boot.module.jg.api.vo.SortVo
;
import
org.apache.ibatis.annotations.MapKey
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
...
...
@@ -23,4 +25,6 @@ public interface JgEquipTransferMapper extends CustomBaseMapper<JgEquipTransfer>
@MapKey
(
"sequenceNbr"
)
List
<
Map
<
String
,
Object
>>
queryEquipInformation
(
Long
sequenceNbr
);
List
<
CompanyEquipCountDto
>
queryForFlowingEquipList
();
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/java/com/yeejoin/amos/boot/module/jg/api/mapper/JgMaintenanceContractMapper.java
View file @
481ce6a3
...
...
@@ -2,6 +2,7 @@ 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.dto.CompanyEquipCountDto
;
import
com.yeejoin.amos.boot.module.jg.api.dto.JgMaintenanceContractDto
;
import
com.yeejoin.amos.boot.module.jg.api.entity.JgMaintenanceContract
;
import
com.yeejoin.amos.boot.module.jg.api.vo.SortVo
;
...
...
@@ -30,4 +31,6 @@ public interface JgMaintenanceContractMapper extends BaseMapper<JgMaintenanceCon
void
updatePromoter
(
@Param
(
"id"
)
Long
id
);
List
<
Map
<
String
,
Object
>>
selectEquipList
(
@Param
(
"id"
)
Long
id
);
List
<
CompanyEquipCountDto
>
queryForFlowingEquipList
();
}
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/resources/mapper/JgEquipTransferMapper.xml
View file @
481ce6a3
...
...
@@ -210,4 +210,14 @@
jet.sequence_nbr = #{sequenceNbr}
LIMIT 1
</select>
<select
id=
"queryForFlowingEquipList"
resultType=
"com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto"
>
select a.use_unit_credit_code as companyCode,
group_concat(b.equ_id) as records
from tzs_jg_equip_transfer a,
tzs_jg_equip_transfer_eq b
where a.sequence_nbr = b.equip_transfer_id
and a.apply_status = '6612'
GROUP BY a.use_unit_credit_code
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-api/src/main/resources/mapper/JgMaintenanceContractMapper.xml
View file @
481ce6a3
...
...
@@ -155,4 +155,14 @@
left JOIN idx_biz_jg_register_info jri on mc.equ_id = jri.RECORD
WHERE mc.equip_transfer_id = #{id}
</select>
<select
id=
"queryForFlowingEquipList"
resultType=
"com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto"
>
select a.use_unit_code as companyCode,
group_concat(b.equ_id) as records
from tzs_jg_maintenance_contract a,
tzs_jg_maintenance_contract_eq b
where a.sequence_nbr = b.equip_transfer_id
and a.status in ('监管单位待受理','维保单位待受理')
GROUP BY a.use_unit_code
</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/JgEquipTransferController.java
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
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.jg.api.common.BaseException
;
import
com.yeejoin.amos.boot.module.jg.api.dto.JgEquipTransferDto
;
import
com.yeejoin.amos.boot.module.jg.biz.service.impl.JgEquipTransferServiceImpl
;
import
com.yeejoin.amos.component.feign.utils.FeignUtil
;
import
com.yeejoin.amos.feign.privilege.Privilege
;
import
com.yeejoin.amos.feign.privilege.model.CompanyModel
;
import
io.swagger.annotations.ApiParam
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.Api
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
java.util.*
;
import
com.yeejoin.amos.boot.module.jg.biz.service.impl.JgEquipTransferServiceImpl
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.jg.api.dto.JgEquipTransferDto
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.foundation.context.RequestContext
;
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
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* 设备移交
...
...
@@ -56,7 +55,7 @@ public class JgEquipTransferController extends BaseController {
public
ResponseModel
<
Object
>
updateBySequenceNbr
(
@RequestParam
(
"submitType"
)
String
submitType
,
@RequestBody
JgEquipTransferDto
equipTransferDto
,
@RequestParam
(
value
=
"op"
,
required
=
false
)
String
op
)
{
return
ResponseHelper
.
buildResponse
(
jgEquipTransferServiceImpl
.
updateEquipTransfer
(
submitType
,
equipTransferDto
,
op
));
return
ResponseHelper
.
buildResponse
(
jgEquipTransferServiceImpl
.
updateEquipTransfer
(
submitType
,
equipTransferDto
,
op
,
getSelectedOrgInfo
()
));
}
/**
...
...
@@ -112,10 +111,10 @@ public class JgEquipTransferController extends BaseController {
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"设备移交分页查询"
,
notes
=
"设备移交分页查询"
)
public
ResponseModel
<
Page
<
JgEquipTransferDto
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
,
@RequestParam
(
value
=
"sort"
,
required
=
false
)
String
sort
,
@RequestParam
(
value
=
"sort"
,
required
=
false
)
String
sort
,
@RequestBody
(
required
=
false
)
JgEquipTransferDto
dto
)
{
Page
<
JgEquipTransferDto
>
page
=
new
Page
<>(
current
,
size
);
return
ResponseHelper
.
buildResponse
(
jgEquipTransferServiceImpl
.
queryForJgEquipTransferPage
(
page
,
sort
,
dto
,
getSelectedOrgInfo
()));
return
ResponseHelper
.
buildResponse
(
jgEquipTransferServiceImpl
.
queryForJgEquipTransferPage
(
page
,
sort
,
dto
,
getSelectedOrgInfo
()));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
...
...
amos-boot-system-tzs/amos-boot-module-jg/amos-boot-module-jg-biz/src/main/java/com/yeejoin/amos/boot/module/jg/biz/controller/JgMaintenanceContractController.java
View file @
481ce6a3
...
...
@@ -13,8 +13,6 @@ import com.yeejoin.amos.boot.module.jg.api.vo.JgMaintenanceContractVo;
import
com.yeejoin.amos.boot.module.jg.biz.service.impl.JgMaintenanceContractServiceImpl
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -23,6 +21,7 @@ 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
java.util.Map
;
/**
...
...
@@ -176,8 +175,8 @@ public class JgMaintenanceContractController extends BaseController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@PostMapping
(
value
=
"/cancelApplication"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"维保备案作废"
,
notes
=
"维保备案作废"
)
public
ResponseModel
<
JgMaintenanceContract
>
cancelApplication
(
@RequestBody
JgMaintenanceContractDto
dto
){
JgMaintenanceContract
result
=
jgMaintenanceContractServiceImpl
.
cancelApplication
(
dto
.
getSequenceNbr
(),
dto
.
getCancelReason
());
public
ResponseModel
<
JgMaintenanceContract
>
cancelApplication
(
@RequestBody
JgMaintenanceContractDto
dto
)
{
JgMaintenanceContract
result
=
jgMaintenanceContractServiceImpl
.
cancelApplication
(
dto
.
getSequenceNbr
(),
dto
.
getCancelReason
());
return
ResponseHelper
.
buildResponse
(
result
);
}
}
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/ChangeUnitEquipUsedCheckImpl.java
View file @
481ce6a3
...
...
@@ -44,7 +44,7 @@ public class ChangeUnitEquipUsedCheckImpl extends BaseEquipUsedCheckService {
@Override
public
void
init
()
{
// 初始化
已经完成或者在流程中安装告知的
设备数据
// 初始化
在流程中
设备数据
List
<
CompanyEquipCountDto
>
companyEquipCountDtos
=
changeRegistrationUnitMapper
.
queryForFlowingEquipList
();
companyEquipCountDtos
.
forEach
(
c
->
{
RBucket
<
Set
<
String
>>
rBucket
=
redissonClient
.
getBucket
(
getFlowingEquipRedisKey
(
c
.
getCompanyCode
(),
bizType
));
...
...
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/EquipTransferEquipUsedCheckImpl.java
0 → 100644
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
service
.
impl
;
import
com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgEquipTransferMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.redisson.api.RBucket
;
import
org.redisson.api.RedissonClient
;
import
org.springframework.stereotype.Component
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
/**
* @author Administrator
*/
@Component
@Slf4j
public
class
EquipTransferEquipUsedCheckImpl
extends
BaseEquipUsedCheckService
{
private
RedissonClient
redissonClient
;
private
String
bizType
=
"equipmentHandover"
;
private
JgEquipTransferMapper
equipTransferMapper
;
public
EquipTransferEquipUsedCheckImpl
(
RedissonClient
redissonClient
,
JgEquipTransferMapper
equipTransferMapper
)
{
this
.
redissonClient
=
redissonClient
;
this
.
equipTransferMapper
=
equipTransferMapper
;
}
@Override
public
RedissonClient
getRedisClient
()
{
return
redissonClient
;
}
@Override
public
String
getApplyBizType
()
{
return
bizType
;
}
@Override
public
void
init
()
{
// 初始化在流程中的设备数据
List
<
CompanyEquipCountDto
>
companyEquipCountDtos
=
equipTransferMapper
.
queryForFlowingEquipList
();
companyEquipCountDtos
.
forEach
(
c
->
{
RBucket
<
Set
<
String
>>
rBucket
=
redissonClient
.
getBucket
(
getFlowingEquipRedisKey
(
c
.
getCompanyCode
(),
bizType
));
rBucket
.
set
(
Arrays
.
stream
(
c
.
getRecords
().
split
(
","
)).
collect
(
Collectors
.
toSet
()));
});
}
}
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 @
481ce6a3
...
...
@@ -28,10 +28,12 @@ import com.yeejoin.amos.boot.module.jg.api.dto.EquipmentInfoDto;
import
com.yeejoin.amos.boot.module.jg.api.entity.JgCertificateChangeRecord
;
import
com.yeejoin.amos.boot.module.jg.api.entity.JgCertificateChangeRecordEq
;
import
com.yeejoin.amos.boot.module.jg.api.entity.JgUseRegistrationManage
;
import
com.yeejoin.amos.boot.module.jg.api.entity.SafetyProblemTracing
;
import
com.yeejoin.amos.boot.module.jg.api.enums.*
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.CommonMapper
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgUseRegistrationMapper
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgVehicleInformationMapper
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.SafetyProblemTracingMapper
;
import
com.yeejoin.amos.boot.module.jg.biz.config.PressureVesselListener
;
import
com.yeejoin.amos.boot.module.jg.biz.context.EquipUsedCheckStrategyContext
;
import
com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient
;
...
...
@@ -654,7 +656,8 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
}
return
objMap
;
}
@Autowired
private
SafetyProblemTracingMapper
safetyProblemTracingMapper
;
/**
* 查询设备基本信息
*
...
...
@@ -669,6 +672,17 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
String
county
=
""
;
String
street
=
""
;
String
fullAddress
=
""
;
// 设备问题信息(大屏二级页面使用)
LambdaQueryWrapper
<
SafetyProblemTracing
>
lambdaQueryWrapper
=
new
LambdaQueryWrapper
<>();
lambdaQueryWrapper
.
eq
(
SafetyProblemTracing:
:
getSourceId
,
record
);
lambdaQueryWrapper
.
orderByDesc
(
SafetyProblemTracing:
:
getRecDate
);
List
<
SafetyProblemTracing
>
safetyProblemTracings
=
safetyProblemTracingMapper
.
selectList
(
lambdaQueryWrapper
);
if
(!
ObjectUtils
.
isEmpty
(
safetyProblemTracings
))
{
objMap
.
put
(
"problemStatus"
,
ProblemStatusEnum
.
getNameByDesc
.
get
(
safetyProblemTracings
.
get
(
0
).
getProblemStatus
()));
objMap
.
put
(
"problemTime"
,
safetyProblemTracings
.
get
(
0
).
getProblemTime
());
}
// 使用信息
IdxBizJgUseInfo
useInfo
=
idxBizJgUseInfoService
.
getOneData
(
record
);
if
(!
ValidationUtil
.
isEmpty
(
useInfo
))
{
...
...
@@ -2043,7 +2057,18 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
String
dataSource
=
OPERATESAVE
.
equals
(
operateType
)
?
(
"new"
.
equals
(
equipSource
)
?
"jg"
:
"jg_his"
)
:
equipmentInfoForm
.
get
(
"DATA_SOURCE"
).
toString
();
if
(
isCopy
)
{
String
sourceRecord
=
equipmentClassForm
.
get
(
RECORD
).
toString
();
dataSource
=
"new"
.
equals
(
equipSource
)
?
(
"jg_"
+
sourceRecord
)
:
(
"jg_his_"
+
sourceRecord
);
// dataSource = "new".equals(equipSource) ? ("jg_" + sourceRecord) : ("jg_his_" + sourceRecord);
// bug-21203
if
(
equipmentInfoForm
.
containsKey
(
"DATA_SOURCE"
)){
String
dataSourceCopy
=
equipmentInfoForm
.
get
(
"DATA_SOURCE"
).
toString
();
if
(
dataSourceCopy
.
startsWith
(
"jg_his"
)){
dataSource
=
"jg_his_"
+
sourceRecord
;
}
else
{
dataSource
=
"jg_"
+
sourceRecord
;
}
}
else
{
throw
new
BadRequest
(
"数据异常,请联系管理员"
);
}
}
record
=
OPERATESAVE
.
equals
(
operateType
)
?
UUID
.
randomUUID
().
toString
()
:
equipmentInfoForm
.
get
(
RECORD
).
toString
();
...
...
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/JgEquipTransferServiceImpl.java
View file @
481ce6a3
...
...
@@ -24,6 +24,7 @@ import com.yeejoin.amos.boot.module.jg.api.mapper.JgRegistrationHistoryMapper;
import
com.yeejoin.amos.boot.module.jg.api.service.IJgEquipTransferService
;
import
com.yeejoin.amos.boot.module.jg.api.service.IJgInstallationNoticeService
;
import
com.yeejoin.amos.boot.module.jg.api.vo.SortVo
;
import
com.yeejoin.amos.boot.module.jg.biz.context.EquipUsedCheckStrategyContext
;
import
com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient
;
import
com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgRegisterInfoService
;
import
com.yeejoin.amos.boot.module.ymt.api.common.BaseException
;
...
...
@@ -69,8 +70,11 @@ import java.util.stream.Stream;
@RequiredArgsConstructor
(
onConstructor_
=
@Autowired
)
public
class
JgEquipTransferServiceImpl
extends
BaseService
<
JgEquipTransferDto
,
JgEquipTransfer
,
JgEquipTransferMapper
>
implements
IJgEquipTransferService
{
private
static
final
String
EQUIP_TRANSFER_PROCESS_KEY
=
"equipmentHandover"
;
private
final
List
<
String
>
NOT_FLOWING_STATE
=
Arrays
.
asList
(
"6610"
,
"6614"
,
"6615"
,
"6617"
,
"6616"
);
private
static
final
String
SUBMIT_TYPE_FLOW
=
"1"
;
private
final
JgEquipTransferEqMapper
jgEquipTransferEqMapper
;
private
final
JgEquipTransferEqServiceImpl
equipTransferEqService
;
private
final
RedisUtils
redisUtils
;
private
final
TzsServiceFeignClient
tzsServiceFeignClient
;
...
...
@@ -148,17 +152,39 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
this
.
updateRedisBatch
(
transferList
);
// 创建历史数据
this
.
saveOrUpdateHisDataBatch
(
jgEquipTransferEqList
);
if
(
SUBMIT_TYPE_FLOW
.
equals
(
submitType
))
{
//放在最后面防止前面有异常
//如果是提交,用于校验设备是否已经在流程中,如果不在标记设备已经在流程中
jgEquipTransferEqList
.
forEach
(
equipTransferEq
->
EquipUsedCheckStrategyContext
.
getUsedStrategy
(
EQUIP_TRANSFER_PROCESS_KEY
)
.
equipRepeatUsedCheck
(
equipTransferEq
.
getEquId
(),
reginParams
.
getCompany
().
getCompanyCode
()));
}
return
transferList
;
}
/**
* 删除 redis校验重复引用设备的数据
*/
private
void
delRepeatUseEquipData
(
Long
id
,
String
status
,
String
companyCode
)
{
List
<
JgEquipTransferEq
>
list
=
equipTransferEqService
.
lambdaQuery
().
eq
(
JgEquipTransferEq:
:
getEquipTransferId
,
id
).
list
();
// 获取单位变更设备列表
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
;
}
List
<
String
>
records
=
list
.
stream
().
map
(
JgEquipTransferEq:
:
getEquId
).
collect
(
Collectors
.
toList
());
if
(
NOT_FLOWING_STATE
.
contains
(
status
))
{
EquipUsedCheckStrategyContext
.
getUsedStrategy
(
EQUIP_TRANSFER_PROCESS_KEY
)
.
delDataForCheckEquipRepeatUsed
(
records
,
companyCode
);
}
}
private
void
saveOrUpdateHisDataBatch
(
List
<
JgEquipTransferEq
>
jgEquipTransferEqList
)
{
jgEquipTransferEqList
.
forEach
(
j
->
{
commonService
.
saveOrUpdateHistory
(
BusinessTypeEnum
.
JG_EQUIPMENT_HANDOVER
.
getName
(),
getEquipInfoJson
(
j
.
getEquId
())
,
j
.
getEquId
(),
j
.
getEquipTransferId
());
jgEquipTransferEqList
.
forEach
(
j
->
{
commonService
.
saveOrUpdateHistory
(
BusinessTypeEnum
.
JG_EQUIPMENT_HANDOVER
.
getName
(),
getEquipInfoJson
(
j
.
getEquId
())
,
j
.
getEquId
(),
j
.
getEquipTransferId
());
});
}
private
JSON
getEquipInfoJson
(
String
record
)
{
Map
<
String
,
Object
>
equipMap
=
idxBizJgRegisterInfoService
.
getDetailFieldCamelCaseByRecord
(
record
);;
Map
<
String
,
Object
>
equipMap
=
idxBizJgRegisterInfoService
.
getDetailFieldCamelCaseByRecord
(
record
);
;
equipMap
.
remove
(
"useUnitCreditCode"
);
return
new
JSONObject
(
equipMap
);
}
...
...
@@ -289,10 +315,11 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
* @param submitType 保存或保存并提交
* @param equipTransferDto 设备移交和设备信息
* @param op
* @param reginParams
* @return 设备信息
*/
@Transactional
(
rollbackFor
=
{
Exception
.
class
,
BaseException
.
class
})
public
JgEquipTransferDto
updateEquipTransfer
(
String
submitType
,
JgEquipTransferDto
equipTransferDto
,
String
op
)
{
public
JgEquipTransferDto
updateEquipTransfer
(
String
submitType
,
JgEquipTransferDto
equipTransferDto
,
String
op
,
ReginParams
reginParams
)
{
if
(
Objects
.
isNull
(
equipTransferDto
)
||
StringUtils
.
isEmpty
(
submitType
))
{
throw
new
IllegalArgumentException
(
"参数不能为空"
);
}
...
...
@@ -375,14 +402,17 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
BeanUtils
.
copyProperties
(
equipTransferDto
,
equipTransfer
);
updateById
(
equipTransfer
);
}
this
.
updateHistorySingle
(
equipTransferDto
.
getSequenceNbr
());
List
<
JgEquipTransferEq
>
jgEquipTransferEqList
=
jgEquipTransferEqMapper
.
selectList
(
new
LambdaQueryWrapper
<
JgEquipTransferEq
>().
eq
(
JgEquipTransferEq:
:
getEquipTransferId
,
equipTransferDto
.
getSequenceNbr
()));
this
.
saveOrUpdateHisDataBatch
(
jgEquipTransferEqList
);
if
(
SUBMIT_TYPE_FLOW
.
equals
(
submitType
))
{
//放在最后面防止前面有异常
//如果是提交,用于校验设备是否已经在流程中,如果不在标记设备已经在流程中
jgEquipTransferEqList
.
forEach
(
equipTransferEq
->
EquipUsedCheckStrategyContext
.
getUsedStrategy
(
EQUIP_TRANSFER_PROCESS_KEY
)
.
equipRepeatUsedCheck
(
equipTransferEq
.
getEquId
(),
reginParams
.
getCompany
().
getCompanyCode
()));
}
return
equipTransferDto
;
}
private
void
updateHistorySingle
(
Long
seq
){
List
<
JgEquipTransferEq
>
eqs
=
jgEquipTransferEqMapper
.
selectList
(
new
LambdaQueryWrapper
<
JgEquipTransferEq
>().
eq
(
JgEquipTransferEq:
:
getEquipTransferId
,
seq
));
this
.
saveOrUpdateHisDataBatch
(
eqs
);
}
/**
* 通过和驳回
*
...
...
@@ -476,6 +506,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
}
updateById
(
jgEquipTransfer
);
commonService
.
saveExecuteFlowData2Redis
(
instanceId
,
this
.
buildInstanceRuntimeData
(
jgEquipTransfer
));
this
.
delRepeatUseEquipData
(
jgEquipTransfer
.
getSequenceNbr
(),
jgEquipTransfer
.
getApplyStatus
(),
jgEquipTransfer
.
getUseUnitCreditCode
());
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
finally
{
...
...
@@ -531,6 +562,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
jsonObject
.
put
(
"flowStatusLabel"
,
FlowStatusEnum
.
ROLLBACK
.
getName
());
commonService
.
rollbackTask
(
equipTransfer
.
getInstanceId
(),
jsonObject
);
commonService
.
saveExecuteFlowData2Redis
(
instanceId
,
this
.
buildInstanceRuntimeData
(
equipTransfer
));
this
.
delRepeatUseEquipData
(
equipTransfer
.
getSequenceNbr
(),
equipTransfer
.
getApplyStatus
(),
equipTransfer
.
getUseUnitCreditCode
());
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
finally
{
...
...
@@ -559,7 +591,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
}
}
SortVo
sortMap
=
commonService
.
sortFieldConversion
(
sort
);
Page
<
JgEquipTransferDto
>
equipTransferPage
=
this
.
baseMapper
.
queryForPage
(
page
,
sortMap
,
dto
,
reginParams
.
getUserModel
().
getUserId
());
Page
<
JgEquipTransferDto
>
equipTransferPage
=
this
.
baseMapper
.
queryForPage
(
page
,
sortMap
,
dto
,
reginParams
.
getUserModel
().
getUserId
());
equipTransferPage
.
getRecords
().
forEach
(
transfer
->
{
if
(
Objects
.
nonNull
(
transfer
.
getApplyStatus
()))
{
transfer
.
setApplyStatusDesc
(
FlowStatusEnum
.
getNameByType
(
Long
.
valueOf
(
transfer
.
getApplyStatus
())));
...
...
@@ -575,12 +607,12 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
return
null
;
}
Map
<
String
,
Object
>
equipTransferInfo
=
createEquipTransferInfo
(
equipTransfer
);
if
(
FlowStatusEnum
.
TO_BE_FINISHED
.
getCode
()
==
Integer
.
parseInt
(
equipTransfer
.
getApplyStatus
()))
{
if
(
FlowStatusEnum
.
TO_BE_FINISHED
.
getCode
()
==
Integer
.
parseInt
(
equipTransfer
.
getApplyStatus
()))
{
// 已完成状态显示历史数据
// 1.设备历史信息
JSONObject
his
=
commonService
.
queryHistoryData
(
sequenceNbr
);
// 兼容老数据
if
(
his
==
null
)
{
if
(
his
==
null
)
{
// 1.设备信息
Map
<
String
,
Object
>
equipMap
=
getEquipInfonNew
(
sequenceNbr
);
// 2.移交业务字段信息
...
...
@@ -741,7 +773,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
}
private
Map
<
String
,
Object
>
createEquipTransferInfo
(
JgEquipTransfer
equipTransfer
)
{
Map
<
String
,
Object
>
equipTransferInfo
=
new
HashMap
<>(
BeanUtil
.
beanToMap
(
equipTransfer
,
false
,
true
));
Map
<
String
,
Object
>
equipTransferInfo
=
new
HashMap
<>(
BeanUtil
.
beanToMap
(
equipTransfer
,
false
,
true
));
equipTransferInfo
.
put
(
"installUnitCreditCode"
,
equipTransfer
.
getInstallUnitCreditCode
()
+
"_"
+
equipTransfer
.
getInstallUnitName
());
return
equipTransferInfo
;
}
...
...
@@ -751,7 +783,7 @@ public class JgEquipTransferServiceImpl extends BaseService<JgEquipTransferDto,
Collection
<
JgEquipTransfer
>
jgEquipTransfers
=
this
.
listByIds
(
Arrays
.
asList
(
ids
));
for
(
JgEquipTransfer
notice
:
jgEquipTransfers
)
{
// 删除代办 + 中止流程
commonService
.
deleteTaskModel
(
String
.
valueOf
(
notice
.
getSequenceNbr
()),
notice
.
getInstanceId
());
commonService
.
deleteTaskModel
(
String
.
valueOf
(
notice
.
getSequenceNbr
()),
notice
.
getInstanceId
());
// 删除单子
this
.
baseMapper
.
deleteById
(
notice
.
getSequenceNbr
());
// 删除对应eq
...
...
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/JgMaintenanceContractServiceImpl.java
View file @
481ce6a3
...
...
@@ -25,6 +25,7 @@ import com.yeejoin.amos.boot.module.jg.api.service.IJgInstallationNoticeService;
import
com.yeejoin.amos.boot.module.jg.api.service.IJgMaintenanceContractService
;
import
com.yeejoin.amos.boot.module.jg.api.vo.JgMaintenanceContractVo
;
import
com.yeejoin.amos.boot.module.jg.api.vo.SortVo
;
import
com.yeejoin.amos.boot.module.jg.biz.context.EquipUsedCheckStrategyContext
;
import
com.yeejoin.amos.boot.module.jg.biz.feign.TzsServiceFeignClient
;
import
com.yeejoin.amos.boot.module.jg.biz.service.ICmWorkflowService
;
import
com.yeejoin.amos.boot.module.jg.biz.service.IIdxBizJgUseInfoService
;
...
...
@@ -72,6 +73,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
public
static
final
String
SUBMIT_DATA
=
"0"
;
public
static
final
String
SUBMIT_TYPE_FLOW
=
"1"
;
public
static
final
String
WB_PROCESS_DEFINITION_KEY
=
"maintenanceFiling"
;
private
final
List
<
String
>
NOT_FLOWING_STATE
=
Arrays
.
asList
(
"使用单位待提交"
,
"维保单位已驳回"
,
"使用单位已撤回"
,
"已作废"
,
"已完成"
);
@Autowired
TzsServiceFeignClient
tzsServiceFeignClient
;
...
...
@@ -211,6 +213,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
ProcessTaskDTO
complete
=
workflowService
.
completeOrReject
(
taskId
,
dto
,
operate
);
// 更新下一步执行人、创建待办
updateExecuteIds
(
instanceId
,
id
,
operate
,
complete
);
this
.
delRepeatUseEquipData
(
contract
.
getSequenceNbr
(),
contract
.
getStatus
(),
contract
.
getUseUnitCode
());
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
finally
{
...
...
@@ -220,6 +223,22 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
}
}
/**
* 删除 redis校验重复引用设备的数据
*/
private
void
delRepeatUseEquipData
(
Long
id
,
String
status
,
String
companyCode
)
{
List
<
JgMaintenanceContractEq
>
list
=
jgMaintenanceContractEqService
.
lambdaQuery
().
eq
(
JgMaintenanceContractEq:
:
getEquipTransferId
,
id
).
list
();
// 获取单位变更设备列表
if
(
CollectionUtils
.
isEmpty
(
list
))
{
return
;
}
List
<
String
>
records
=
list
.
stream
().
map
(
JgMaintenanceContractEq:
:
getEquId
).
collect
(
Collectors
.
toList
());
if
(
NOT_FLOWING_STATE
.
contains
(
status
))
{
EquipUsedCheckStrategyContext
.
getUsedStrategy
(
WB_PROCESS_DEFINITION_KEY
)
.
delDataForCheckEquipRepeatUsed
(
records
,
companyCode
);
}
}
public
InstanceRuntimeData
buildInstanceRuntimeData
(
JgMaintenanceContract
jgMaintenanceContract
)
{
return
InstanceRuntimeData
.
builder
()
.
nextExecuteUserIds
(
jgMaintenanceContract
.
getNextExecuteUserIds
())
...
...
@@ -256,7 +275,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
list
.
forEach
(
seq
->
{
JgMaintenanceContract
jgMaintenanceContract
=
this
.
baseMapper
.
selectById
(
seq
);
// 删除待办 及 中止流程
commonService
.
deleteTaskModel
(
String
.
valueOf
(
jgMaintenanceContract
.
getSequenceNbr
()),
jgMaintenanceContract
.
getInstanceId
());
commonService
.
deleteTaskModel
(
String
.
valueOf
(
jgMaintenanceContract
.
getSequenceNbr
()),
jgMaintenanceContract
.
getInstanceId
());
// 删除业务单
this
.
baseMapper
.
deleteById
(
seq
);
// 删除对应eq
...
...
@@ -370,6 +389,7 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
// redis流程实时数据更新
commonService
.
saveExecuteFlowData2Redis
(
instanceId
,
this
.
buildInstanceRuntimeData
(
contract
));
this
.
delRepeatUseEquipData
(
contract
.
getSequenceNbr
(),
contract
.
getStatus
(),
contract
.
getUseUnitCode
());
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
finally
{
...
...
@@ -441,9 +461,9 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
jgMaintenanceContractEqService
.
getBaseMapper
().
delete
(
lambda
);
}
// 更新关联设备信息
List
<
JgMaintenanceContractEq
>
equipList
=
new
ArrayList
<>();
if
(!
CollectionUtils
.
isEmpty
(
equipmentLists
))
{
contract
.
setEquNum
(
equipmentLists
.
size
());
List
<
JgMaintenanceContractEq
>
equipList
=
new
ArrayList
<>();
equipmentLists
.
forEach
(
x
->
{
JgMaintenanceContractEq
equip
=
new
JgMaintenanceContractEq
();
equip
.
setEquId
(
String
.
valueOf
(
x
.
get
(
"SEQUENCE_NBR"
)));
...
...
@@ -546,6 +566,11 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
updateById
(
contract
);
// 设备数据存历史数据,在流程完成时使用
commonService
.
saveOrUpdateHistory
(
BusinessTypeEnum
.
JG_MAINTENANCE_RECORD
.
getName
(),
JSON
.
parseArray
(
JSON
.
toJSONString
(
equipmentLists
)),
null
,
contract
.
getSequenceNbr
().
toString
());
if
(
SUBMIT_TYPE_FLOW
.
equals
(
submit
))
{
//放在最后面防止前面有异常
//如果是提交,用于校验设备是否已经在流程中,如果不在标记设备已经在流程中
equipList
.
forEach
(
equip
->
EquipUsedCheckStrategyContext
.
getUsedStrategy
(
WB_PROCESS_DEFINITION_KEY
)
.
equipRepeatUsedCheck
(
String
.
valueOf
(
equip
.
getEquId
()),
reginParams
.
getCompany
().
getCompanyCode
()));
}
return
Collections
.
singletonList
(
contract
);
}
...
...
@@ -784,37 +809,39 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
return
null
;
}
private
void
processElseDataByStatus
(
FlowStatusEnum
oldNoticeStatus
,
JgMaintenanceContract
maintenanceC
ontract
)
{
private
void
processElseDataByStatus
(
FlowStatusEnum
oldNoticeStatus
,
JgMaintenanceContract
c
ontract
)
{
switch
(
oldNoticeStatus
)
{
case
TO_BE_SUBMITTED:
// 1.写入历史表
this
.
saveHisDataBeforeUpdate
(
maintenanceC
ontract
);
this
.
saveHisDataBeforeUpdate
(
c
ontract
);
// 2.删除暂存时生成的待办
commonService
.
deleteTasksAndStopProcess
(
maintenanceContract
.
getInstanceId
(),
"监管单位主动作废"
);
commonService
.
deleteTasksAndStopProcess
(
contract
.
getInstanceId
(),
"监管单位主动作废"
);
break
;
case
TO_BE_FINISHED:
// 1.回退表单
updateIdxBizJgRegisterInfo
(
maintenanceC
ontract
);
updateIdxBizJgRegisterInfo
(
c
ontract
);
break
;
default
:
// 流程中(驳回、撤回等)
// 1.待办任务更新为已完成
this
.
finishedTask
(
maintenanceC
ontract
);
this
.
finishedTask
(
c
ontract
);
// 2.终止流程-工作流报错暂时注释掉
iCmWorkflowService
.
stopProcess
(
maintenanceContract
.
getInstanceId
(),
maintenanceC
ontract
.
getCancelReason
());
iCmWorkflowService
.
stopProcess
(
contract
.
getInstanceId
(),
c
ontract
.
getCancelReason
());
// 3.写入历史表
this
.
saveHisDataBeforeUpdate
(
maintenanceContract
);
this
.
saveHisDataBeforeUpdate
(
contract
);
// 4、释放流程中设备
this
.
delRepeatUseEquipData
(
contract
.
getSequenceNbr
(),
contract
.
getStatus
(),
contract
.
getUseUnitCode
());
}
}
private
void
updateIdxBizJgRegisterInfo
(
JgMaintenanceContract
maintenanceContract
)
{
LambdaQueryWrapper
<
JgMaintenanceContractEq
>
queryWrapper
=
new
LambdaQueryWrapper
<>();
queryWrapper
.
eq
(
JgMaintenanceContractEq:
:
getEquipTransferId
,
maintenanceContract
.
getSequenceNbr
());
List
<
JgMaintenanceContractEq
>
equipmentLists
=
maintenanceContractEqMapper
.
selectList
(
queryWrapper
);
if
(!
CollectionUtils
.
isEmpty
(
equipmentLists
))
{
List
<
String
>
list
=
equipmentLists
.
stream
().
filter
(
t
->
t
.
getEquId
()
!=
null
).
map
(
JgMaintenanceContractEq:
:
getEquId
).
collect
(
Collectors
.
toList
());
if
(!
CollectionUtils
.
isEmpty
(
equipmentLists
))
{
List
<
String
>
list
=
equipmentLists
.
stream
().
filter
(
t
->
t
.
getEquId
()
!=
null
).
map
(
JgMaintenanceContractEq:
:
getEquId
).
collect
(
Collectors
.
toList
());
maintenanceContractEqMapper
.
updateIdxBizJgRegisterInfo
(
list
);
}
}
...
...
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/MaintenanceContractEquipUsedCheckImpl.java
0 → 100644
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jg
.
biz
.
service
.
impl
;
import
com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto
;
import
com.yeejoin.amos.boot.module.jg.api.mapper.JgMaintenanceContractMapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.redisson.api.RBucket
;
import
org.redisson.api.RedissonClient
;
import
org.springframework.stereotype.Component
;
import
java.util.Arrays
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
/**
* @author Administrator
*/
@Component
@Slf4j
public
class
MaintenanceContractEquipUsedCheckImpl
extends
BaseEquipUsedCheckService
{
private
RedissonClient
redissonClient
;
private
String
bizType
=
"maintenanceFiling"
;
private
JgMaintenanceContractMapper
maintenanceContractMapper
;
public
MaintenanceContractEquipUsedCheckImpl
(
RedissonClient
redissonClient
,
JgMaintenanceContractMapper
maintenanceContractMapper
)
{
this
.
redissonClient
=
redissonClient
;
this
.
maintenanceContractMapper
=
maintenanceContractMapper
;
}
@Override
public
RedissonClient
getRedisClient
()
{
return
redissonClient
;
}
@Override
public
String
getApplyBizType
()
{
return
bizType
;
}
@Override
public
void
init
()
{
// 初始化在流程中的设备数据
List
<
CompanyEquipCountDto
>
companyEquipCountDtos
=
maintenanceContractMapper
.
queryForFlowingEquipList
();
companyEquipCountDtos
.
forEach
(
c
->
{
RBucket
<
Set
<
String
>>
rBucket
=
redissonClient
.
getBucket
(
getFlowingEquipRedisKey
(
c
.
getCompanyCode
(),
bizType
));
rBucket
.
set
(
Arrays
.
stream
(
c
.
getRecords
().
split
(
","
)).
collect
(
Collectors
.
toSet
()));
});
}
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/dto/InspectionTimelinesDto.java
0 → 100644
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jyjc
.
api
.
dto
;
import
lombok.Data
;
/**
* 机构进行检验时效统计对象
*
* @author Administrator
*/
@Data
public
class
InspectionTimelinesDto
{
private
String
city
;
private
String
name
;
private
String
unitCode
;
private
Long
count
;
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/dto/PublicityInspectOrgInfoDto.java
0 → 100644
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jyjc
.
api
.
dto
;
import
lombok.Data
;
/**
* 检验机构公示
*
* @author Administrator
*/
@Data
public
class
PublicityInspectOrgInfoDto
{
/**
* 单位名称
*/
private
String
unitName
;
/**
* 单位编码
*/
private
String
unitCode
;
/**
* 核准代码
*/
private
String
approvalNumber
;
/**
* 核准有效期
*/
private
String
aapprovalDeadline
;
/**
* 业务有限期
*/
private
String
businessDeadline
;
}
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 @
481ce6a3
...
...
@@ -219,6 +219,12 @@ public class JyjcInspectionApplication extends BaseEntity {
private
JSONObject
planData
;
/**
* 计划下发日期,统计办理时效使用
*/
@TableField
(
value
=
"plan_create_date"
)
private
Date
planCreateDate
;
/**
* 是否必须处理: true-必须处理,false-可不予受理
*/
@TableField
(
value
=
"is_must_accept"
)
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/entity/JyjcInspectionResult.java
View file @
481ce6a3
...
...
@@ -215,4 +215,11 @@ public class JyjcInspectionResult extends BaseEntity {
*/
@TableField
(
value
=
"safety_level"
)
private
String
safetyLevel
;
/**
* 计划下发日期,,统计办理时效使用"
*/
@TableField
(
value
=
"plan_create_date"
)
private
Date
planCreateDate
;
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/enums/JYJCTypeEnum.java
View file @
481ce6a3
...
...
@@ -19,12 +19,12 @@ public enum JYJCTypeEnum {
/**
* 检验检测类型
*/
DTJC
(
"DTJC"
,
"电梯检测"
,
"jc"
,
BizTypeEnum
.
DETECTION
.
getCode
()),
DQJY
(
"DQJY"
,
"定期检验"
,
"jy"
,
BizTypeEnum
.
FIRST_INSPECTION
.
getCode
()),
SCJY
(
"SCJY"
,
"首次检验"
,
"jy"
,
BizTypeEnum
.
FIRST_INSPECTION
.
getCode
()),
WXJDJY
(
"WXJDJY"
,
"维修监督检验"
,
"jy"
,
BizTypeEnum
.
SUPERVISE
.
getCode
()),
AZJDJY
(
"AZJDJY"
,
"安装监督检验"
,
"jy"
,
BizTypeEnum
.
SUPERVISE
.
getCode
()),
GZJDJY
(
"GZJDJY"
,
"改造监督检验"
,
"jy"
,
BizTypeEnum
.
SUPERVISE
.
getCode
()),
AZJDJY
(
"AZJDJY"
,
"安装监督检验"
,
"jy"
,
BizTypeEnum
.
SUPERVISE
.
getCode
());
WXJDJY
(
"WXJDJY"
,
"维修监督检验"
,
"jy"
,
BizTypeEnum
.
SUPERVISE
.
getCode
()),
SCJY
(
"SCJY"
,
"首次检验"
,
"jy"
,
BizTypeEnum
.
FIRST_INSPECTION
.
getCode
()),
DQJY
(
"DQJY"
,
"定期检验"
,
"jy"
,
BizTypeEnum
.
FIRST_INSPECTION
.
getCode
()),
DTJC
(
"DTJC"
,
"电梯检测"
,
"jc"
,
BizTypeEnum
.
DETECTION
.
getCode
());
private
final
String
code
;
private
final
String
name
;
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/mapper/JyjcBaseMapper.java
View file @
481ce6a3
...
...
@@ -42,4 +42,6 @@ public interface JyjcBaseMapper {
List
<
TzsUserInfoDto
>
selectUserByCompanyCodes
(
@Param
(
"companyCodes"
)
List
<
String
>
companyCodes
);
CompanyModel
selectOneCompanyByCode
(
String
companyCode
);
String
getOrgCodeByCompanyCode
(
String
companyCode
);
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/mapper/JyjcInspectionApplicationMapper.java
View file @
481ce6a3
...
...
@@ -2,11 +2,13 @@ package com.yeejoin.amos.boot.module.jyjc.api.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.dto.CountDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplication
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationEquipDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationEquipModel
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionApplicationModel
;
import
org.
springframework.data.repository.query
.Param
;
import
org.
apache.ibatis.annotations
.Param
;
import
java.util.List
;
import
java.util.Set
;
...
...
@@ -44,5 +46,31 @@ public interface JyjcInspectionApplicationMapper extends BaseMapper<JyjcInspecti
* @param equips 需要判断的设备
* @return 在流程中的设备records
*/
List
<
String
>
queryRecordListInFlowing
(
@org
.
apache
.
ibatis
.
annotations
.
Param
(
"equips"
)
List
<
JyjcInspectionApplicationEquipDto
>
equips
);
List
<
String
>
queryRecordListInFlowing
(
@Param
(
"equips"
)
List
<
JyjcInspectionApplicationEquipDto
>
equips
);
/**
* 按照检验类型、机构、时间统计检验数量(流程中及已完成的)
*
* @param orgCode 区域对应公司orgCode
* @param dpFilterParamDto 过滤条件
* @return 统计信息
*/
List
<
CountDto
>
queryAllFlowingAndFinishedInspectApp
(
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dto"
)
DPFilterParamDto
dpFilterParamDto
);
/**
* 查询待出结果的报检单据数量
*
* @param orgCode 区域对应公司orgCode
* @param dpFilterParamDto 过滤条件
* @return 统计信息
*/
List
<
CountDto
>
queryAllPendingResultInspectApp
(
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dto"
)
DPFilterParamDto
dpFilterParamDto
);
/**
* 按照8大类,查询指定区域下的报检数量、待检数量
* @param orgCode 指定区域对应的公司
* @param dpFilterParamDto 时间过滤条件
* @return List<CountDto>
*/
List
<
CountDto
>
queryAppByEquListForDP
(
@Param
(
"orgCode"
)
String
orgCode
,
@Param
(
"dto"
)
DPFilterParamDto
dpFilterParamDto
);
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/mapper/JyjcInspectionResultMapper.java
View file @
481ce6a3
...
...
@@ -2,10 +2,14 @@ package com.yeejoin.amos.boot.module.jyjc.api.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.InspectionTimelinesDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionResult
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcInspectionResultModel
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* 业务开通申请表 Mapper 接口
*
...
...
@@ -18,4 +22,5 @@ public interface JyjcInspectionResultMapper extends BaseMapper<JyjcInspectionRes
Page
<
JyjcInspectionResultModel
>
selectForPage
(
@Param
(
"page"
)
Page
<
JyjcInspectionResultModel
>
page
,
@Param
(
"jyjcInspectionResultModel"
)
JyjcInspectionResultModel
jyjcInspectionResultModel
,
@Param
(
"identity"
)
String
identity
);
List
<
InspectionTimelinesDto
>
queryInspectionTimelinessTopXX
(
@Param
(
"top"
)
String
top
,
@Param
(
"orgCode"
)
String
orgCode
);
}
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/mapper/JyjcOpeningApplicationMapper.java
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jyjc
.
api
.
mapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.PublicityInspectOrgInfoDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.model.JyjcOpeningApplicationModel
;
import
com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcOpeningApplication
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
...
...
@@ -26,4 +27,11 @@ public interface JyjcOpeningApplicationMapper extends BaseMapper<JyjcOpeningAppl
void
updatePromoter
(
@Param
(
"id"
)
Long
id
);
List
<
Long
>
selectOverdueData
();
/**
* 检验机构公示
* @param orgCode 区域对应的orgCode
* @return List<PublicityInspectOrgInfoDto>
*/
List
<
PublicityInspectOrgInfoDto
>
queryInspectionOrgListForPublicity
(
String
orgCode
);
}
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 @
481ce6a3
...
...
@@ -166,6 +166,9 @@ public class JyjcInspectionApplicationModel extends BaseModel {
@ApiModelProperty
(
value
=
"是否已经进行计划排期"
)
private
Boolean
isExistPlanData
;
@ApiModelProperty
(
value
=
"计划下发日期,统计办理时效使用,来源JyjcInspectionApplication.planCreateDate"
)
private
Date
planCreateDate
;
/**
* 是否必须处理: true-必须处理,false-可不予受理
*/
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/java/com/yeejoin/amos/boot/module/jyjc/api/model/JyjcInspectionResultModel.java
View file @
481ce6a3
...
...
@@ -150,6 +150,11 @@ public class JyjcInspectionResultModel extends BaseModel {
@ApiModelProperty
(
value
=
"监管码"
)
private
String
supervisoryCode
;
@ApiModelProperty
(
value
=
"计划下发日期,统计办理时效使用"
)
@JsonFormat
(
pattern
=
"yyyy-MM-dd"
)
private
Date
planCreateDate
;
/**
* 校验检验系统唯一流水号,排查问题,跟踪问题使用
*/
...
...
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/resources/mapper/JyjcBaseMapper.xml
View file @
481ce6a3
...
...
@@ -85,6 +85,9 @@
WHERE
c.company_code =#{companyCode}
</select>
<select
id=
"getOrgCodeByCompanyCode"
resultType=
"java.lang.String"
>
select org_code from privilege_company where company_code = #{companyCode} limit 1
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/resources/mapper/JyjcInspectionApplicationMapper.xml
View file @
481ce6a3
...
...
@@ -216,4 +216,63 @@
UPDATE tz_jyjc_inspection_application set promoter = null
where sequence_nbr = #{id}
</update>
<select
id=
"queryAllFlowingAndFinishedInspectApp"
resultType=
"com.yeejoin.amos.boot.biz.common.dto.CountDto"
>
SELECT
count(1) as longValue,
a.inspection_type as keyStr
FROM
"tz_jyjc_inspection_application" a,
tz_base_enterprise_info b
where
a.inspection_unit_code= b.use_unit_code
and b.supervise_org_code like CONCAT(#{orgCode}, '%')
and a.status != '6610' and a.status != '6615'
and date_ge(CAST(a.application_date as date),#{dto.beginDate})
and date_le(CAST(a.application_date as date),#{dto.endDate})
group by a.inspection_type
</select>
<select
id=
"queryAllPendingResultInspectApp"
resultType=
"com.yeejoin.amos.boot.biz.common.dto.CountDto"
>
SELECT
count(1) as longValue,
a.inspection_type as keyStr
FROM
tz_jyjc_inspection_application a,
tz_base_enterprise_info b
where
a.inspection_unit_code= b.use_unit_code
and b.supervise_org_code like CONCAT(#{orgCode}, '%') and a.status = '6616'
and EXISTS (select 1 from tz_jyjc_inspection_result r where r.result_status='1' and a.application_no = r.application_no)
and date_ge(CAST(a.accept_date as date),#{dto.beginDate}) and date_le(CAST(a.accept_date as date),#{dto.endDate})
group by a.inspection_type
</select>
<select
id=
"queryAppByEquListForDP"
resultType=
"com.yeejoin.amos.boot.biz.common.dto.CountDto"
>
-- 8大类 待检数量
SELECT
count(1) as longValue,
a.equip_classify as keyStr,
'pending' as label
FROM
tz_jyjc_inspection_application a,
tz_base_enterprise_info b
where
a.inspection_unit_code= b.use_unit_code
and b.supervise_org_code like CONCAT(#{orgCode}, '%') and a.status = '6616'
and EXISTS (select 1 from tz_jyjc_inspection_result r where r.result_status='1' and a.application_no = r.application_no)
and date_ge(CAST(a.accept_date as date),#{dto.beginDate}) and date_le(CAST(a.accept_date as date),#{dto.endDate})
GROUP BY a.equip_classify
-- 8大类 报检数量统计
union all
SELECT
count(1) as longValue,
a.equip_classify as keyStr,
'reporting' as label
FROM
tz_jyjc_inspection_application a,
tz_base_enterprise_info b
where
a.inspection_unit_code= b.use_unit_code
and b.supervise_org_code like CONCAT(#{orgCode}, '%') and a.status != '6610' and a.status != '6615'
and date_ge(CAST(a.application_date as date),#{dto.beginDate}) and date_le(CAST(a.application_date as date),#{dto.endDate})
GROUP BY a.equip_classify
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/resources/mapper/JyjcInspectionResultMapper.xml
View file @
481ce6a3
...
...
@@ -157,4 +157,28 @@
</where>
ORDER BY res.sequence_nbr DESC
</select>
<select
id=
"queryInspectionTimelinessTopXX"
resultType=
"com.yeejoin.amos.boot.module.jyjc.api.dto.InspectionTimelinesDto"
>
select
a1.avgtime as count,
a1.inspection_unit_code as unitCode,
b1.use_unit as name,
b1.city
from
(SELECT
ROUND(avg(EXTRACT(EPOCH FROM ( r.rec_date - r.plan_create_date)) / 60),0) as avgtime,
r.inspection_unit_code
FROM
tz_jyjc_inspection_result r,
tz_base_enterprise_info b
where
r.result_status ='2'
and r.inspection_unit_code= b.use_unit_code
AND b.supervise_org_code like CONCAT(#{orgCode}, '%')
GROUP BY r.inspection_unit_code ORDER BY avgtime
limit #{top}
) a1,
tz_base_enterprise_info b1
WHERE
a1.inspection_unit_code = b1.use_unit_code
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-api/src/main/resources/mapper/JyjcOpeningApplicationMapper.xml
View file @
481ce6a3
...
...
@@ -50,4 +50,36 @@
UPDATE tz_jyjc_opening_application set promoter = null
where sequence_nbr = #{id}
</update>
<select
id=
"queryInspectionOrgListForPublicity"
resultType=
"com.yeejoin.amos.boot.module.jyjc.api.dto.PublicityInspectOrgInfoDto"
>
select
b.use_unit as unitName,
l.cert_no as approvalNumber,
l.expiry_date as aapprovalDeadline,
b.use_code as unitCode,
a.expiry_date as businessDeadline,
a.licenceType
from
(SELECT
unit_code,
expiry_date,
unit_code_name,
case when
open_biz_type = 'jy' then '1233-1'
when
open_biz_type = 'jc' then '1233-2'
end as open_biz_type,
open_biz_type as licenceType
FROM
"tz_jyjc_opening_application"
where
status = '6616') a,
tz_base_enterprise_info b,
(select cert_no, min(expiry_date) as expiry_date, unit_code, cert_type_code from tz_base_unit_licence GROUP BY cert_no,unit_code,cert_type_code) l
where
a.unit_code= b.use_unit_code
and a.unit_code=l.unit_code
and l.cert_type_code = a.open_biz_type
and b.supervise_org_code like CONCAT(#{orgCode}, '%')
ORDER BY unitName
</select>
</mapper>
amos-boot-system-tzs/amos-boot-module-jyjc/amos-boot-module-jyjc-biz/src/main/java/com/yeejoin/amos/boot/module/jyjc/biz/controller/DPStatisticsController.java
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jyjc
.
biz
.
controller
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.InspectionTimelinesDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.PublicityInspectOrgInfoDto
;
import
com.yeejoin.amos.boot.module.jyjc.biz.service.impl.DPStatisticsServiceImpl
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.validation.FieldError
;
import
org.springframework.validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
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.exception.instance.BadRequest
;
...
...
@@ -42,7 +41,7 @@ public class DPStatisticsController {
@PostMapping
(
value
=
"/inspectTime/count/byEquListAndInspectType"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
inspectTimeCountByTypeAndEquList
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
inspectTimeCountByTypeAndEquList
(
dpFilterParamDto
));
...
...
@@ -53,10 +52,76 @@ public class DPStatisticsController {
@PostMapping
(
value
=
"/inspectTimeCount"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
inspectTimeCount
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
inspectTimeCount
(
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-左侧检验检测人员统计"
,
notes
=
"大屏-检验检测-左侧检验检测人员统计"
)
@PostMapping
(
value
=
"/jy/person/count"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
inspectPersonCount
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
inspectPersonCount
(
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-各检验类型业务数量统计"
,
notes
=
"大屏-检验检测-各检验类型业务数量统计"
)
@PostMapping
(
value
=
"/jy/allApp/countByType"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
inspectBizNumCountByType
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
queryAllFlowingAndFinishedInspectApp
(
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-各检验类型待检数量统计"
,
notes
=
"大屏-检验检测-各检验类型待检数量统计"
)
@PostMapping
(
value
=
"/jy/pendingApp/countByType"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
queryAllFlowingAndFinishedInspectApp
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
queryAllPendingResultInspectApp
(
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-按机构进行检验时效统计Top10排名"
,
notes
=
"大屏-检验检测-按机构进行检验时效统计Top10排名"
)
@PostMapping
(
value
=
"/jy/timeliness/top"
)
public
ResponseModel
<
List
<
InspectionTimelinesDto
>>
inspectionTimelinessTopXX
(
@RequestParam
(
required
=
false
,
defaultValue
=
"10"
)
String
top
,
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
queryInspectionTimelinessTopXX
(
top
,
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-检验检测机构公示"
,
notes
=
"大屏-检验检测-检验检测机构公示"
)
@PostMapping
(
value
=
"/jy/inspectionOrgList/publicity"
)
public
ResponseModel
<
List
<
PublicityInspectOrgInfoDto
>>
inspectionOrgListForPublicity
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
queryInspectionOrgListForPublicity
(
dpFilterParamDto
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"大屏-检验检测-八大类设备报检/待检数量统计"
,
notes
=
"大屏-检验检测-八大类设备报检/待检数量统计"
)
@PostMapping
(
value
=
"/jy/inspectionEquip/countByEquList"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
inspectionEquipCountByEquList
(
@Validated
@RequestBody
DPFilterParamDto
dpFilterParamDto
,
BindingResult
result
)
{
List
<
FieldError
>
fieldErrors
=
result
.
getFieldErrors
();
if
(!
fieldErrors
.
isEmpty
())
{
throw
new
BadRequest
(
fieldErrors
.
get
(
0
).
getDefaultMessage
());
}
return
ResponseHelper
.
buildResponse
(
statisticsService
.
queryInspectionEquipByEquList
(
dpFilterParamDto
));
}
}
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/DPStatisticsServiceImpl.java
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jyjc
.
biz
.
service
.
impl
;
import
cn.hutool.core.date.DateUtil
;
import
com.yeejoin.amos.boot.biz.common.dto.CountDto
;
import
com.yeejoin.amos.boot.module.common.api.dto.DPFilterParamDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.InspectTimeCountDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.InspectionTimelinesDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.dto.PublicityInspectOrgInfoDto
;
import
com.yeejoin.amos.boot.module.jyjc.api.enums.BizTypeEnum
;
import
com.yeejoin.amos.boot.module.jyjc.api.mapper.JyjcInspectionApplicationEquipMapper
;
import
com.yeejoin.amos.boot.module.jyjc.api.enums.JYJCTypeEnum
;
import
com.yeejoin.amos.boot.module.jyjc.api.mapper.*
;
import
com.yeejoin.amos.boot.module.ymt.api.dto.EquipmentCategoryDto
;
import
com.yeejoin.amos.boot.module.ymt.api.mapper.EquipmentCategoryMapper
;
import
com.yeejoin.amos.boot.module.ymt.api.mapper.TzsUserInfoMapper
;
import
com.yeejoin.amos.component.feign.model.FeignClientResult
;
import
com.yeejoin.amos.feign.systemctl.Systemctl
;
import
com.yeejoin.amos.feign.systemctl.model.RegionModel
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
...
...
@@ -15,6 +24,7 @@ import java.time.LocalDateTime;
import
java.time.format.DateTimeFormatter
;
import
java.time.temporal.TemporalAdjusters
;
import
java.util.*
;
import
java.util.concurrent.ConcurrentHashMap
;
import
java.util.stream.Collectors
;
/**
...
...
@@ -23,6 +33,7 @@ import java.util.stream.Collectors;
* @author Administrator
*/
@Service
@Slf4j
public
class
DPStatisticsServiceImpl
{
/**
...
...
@@ -39,9 +50,27 @@ public class DPStatisticsServiceImpl {
private
JyjcInspectionApplicationEquipMapper
inspectionApplicationEquipMapper
;
public
DPStatisticsServiceImpl
(
EquipmentCategoryMapper
equipmentCategoryMapper
,
JyjcInspectionApplicationEquipMapper
inspectionApplicationEquipMapper
)
{
private
JyjcInspectionApplicationMapper
inspectionApplicationMapper
;
private
TzsUserInfoMapper
tzsUserInfoMapper
;
private
JyjcBaseMapper
jyjcBaseMapper
;
private
JyjcInspectionResultMapper
inspectionResultMapper
;
private
JyjcOpeningApplicationMapper
openingApplicationMapper
;
private
static
Map
<
String
,
String
>
regionCodeOrgCodeMap
=
new
ConcurrentHashMap
<>();
public
DPStatisticsServiceImpl
(
EquipmentCategoryMapper
equipmentCategoryMapper
,
JyjcInspectionApplicationEquipMapper
inspectionApplicationEquipMapper
,
JyjcInspectionApplicationMapper
inspectionApplicationMapper
,
TzsUserInfoMapper
tzsUserInfoMapper
,
JyjcBaseMapper
jyjcBaseMapper
,
JyjcInspectionResultMapper
inspectionResultMapper
,
JyjcOpeningApplicationMapper
openingApplicationMapper
)
{
this
.
equipmentCategoryMapper
=
equipmentCategoryMapper
;
this
.
inspectionApplicationEquipMapper
=
inspectionApplicationEquipMapper
;
this
.
inspectionApplicationMapper
=
inspectionApplicationMapper
;
this
.
tzsUserInfoMapper
=
tzsUserInfoMapper
;
this
.
jyjcBaseMapper
=
jyjcBaseMapper
;
this
.
inspectionResultMapper
=
inspectionResultMapper
;
this
.
openingApplicationMapper
=
openingApplicationMapper
;
}
...
...
@@ -101,7 +130,7 @@ public class DPStatisticsServiceImpl {
}
private
List
<
Map
<
String
,
Object
>>
getLegendData
(
List
<
BizTypeEnum
>
bizTypeEnums
)
{
return
bizTypeEnums
.
stream
().
map
(
b
->
{
return
bizTypeEnums
.
stream
().
map
(
b
->
{
Map
<
String
,
Object
>
item
=
new
HashMap
<>();
item
.
put
(
"dataKey"
,
b
.
getCode
());
item
.
put
(
"value"
,
b
.
getName
());
...
...
@@ -130,11 +159,170 @@ public class DPStatisticsServiceImpl {
dpFilterParamDto
.
setBeginDate
(
LocalDateTime
.
of
(
firstDayOfPrevMonth
,
java
.
time
.
LocalTime
.
MIN
).
format
(
sdf
));
dpFilterParamDto
.
setEndDate
(
LocalDateTime
.
of
(
lastDayOfPrevMonth
,
java
.
time
.
LocalTime
.
MAX
).
format
(
sdf
));
Integer
inspectTimeCount
=
inspectionApplicationEquipMapper
.
inspectTimeCount
(
dpFilterParamDto
);
xDataList
.
add
(
firstDayOfPrevMonth
.
getMonthValue
()
+
"月"
);
xDataList
.
add
(
firstDayOfPrevMonth
.
getMonthValue
()
+
"月"
);
yDataList
.
add
(
null
==
inspectTimeCount
?
0
:
inspectTimeCount
);
}
returnMap
.
put
(
"xdata"
,
xDataList
);
returnMap
.
put
(
"ydata"
,
yDataList
);
returnMap
.
put
(
"xdata"
,
xDataList
);
returnMap
.
put
(
"ydata"
,
yDataList
);
return
returnMap
;
}
public
Map
<
String
,
Object
>
inspectPersonCount
(
DPFilterParamDto
dpFilterParamDto
)
{
// 1.查询条件构造未上送时间时,默认查询数据为近一个月数据
this
.
setDefaultFilter
(
dpFilterParamDto
);
// 2.按照前端约定格式返回数据
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
List
<
RegionModel
>
childRegion
=
this
.
getRegionList
(
dpFilterParamDto
);
if
(
childRegion
.
isEmpty
())
{
return
new
HashMap
<>(
0
);
}
//2.1 x轴数据构造
result
.
put
(
"xdata"
,
this
.
getXDataForInspectPersonCount
(
childRegion
));
//2.3 y轴数据构造
this
.
buildYDataForInspectPersonCount
(
result
,
childRegion
);
return
result
;
}
private
void
buildYDataForInspectPersonCount
(
Map
<
String
,
Object
>
result
,
List
<
RegionModel
>
childRegion
)
{
List
<
Long
>
yData
=
new
ArrayList
<>();
childRegion
.
forEach
(
regionModel
->
{
String
orgCode
=
this
.
getAndSetOrgCode
(
regionModel
.
getRegionCode
()
+
""
);
if
(
StringUtils
.
isEmpty
(
orgCode
))
{
yData
.
add
(
0L
);
}
else
{
Long
num
=
tzsUserInfoMapper
.
countUserByPostAndAreaCode
(
orgCode
,
"6615"
);
yData
.
add
(
num
);
}
});
result
.
put
(
"ydata"
,
yData
);
}
private
String
getAndSetOrgCode
(
String
regionCode
)
{
String
orgCode
=
regionCodeOrgCodeMap
.
get
(
regionCode
);
if
(
orgCode
==
null
)
{
orgCode
=
jyjcBaseMapper
.
getOrgCodeByCompanyCode
(
regionCode
);
if
(
orgCode
==
null
)
{
return
""
;
}
regionCodeOrgCodeMap
.
put
(
regionCode
,
orgCode
);
}
return
orgCode
;
}
private
List
<
String
>
getXDataForInspectPersonCount
(
List
<
RegionModel
>
childRegion
)
{
return
childRegion
.
stream
().
map
(
RegionModel:
:
getRegionName
).
collect
(
Collectors
.
toList
());
}
private
List
<
RegionModel
>
getRegionList
(
DPFilterParamDto
dpFilterParamDto
)
{
try
{
FeignClientResult
<
List
<
RegionModel
>>
feignClientResult
=
Systemctl
.
regionClient
.
queryByParentRegionCode
(
Integer
.
parseInt
(
dpFilterParamDto
.
getCityCode
()));
return
feignClientResult
.
getResult
();
}
catch
(
Exception
e
)
{
log
.
error
(
"查询行政区域失败:{}"
,
e
.
getMessage
());
}
return
new
ArrayList
<>();
}
public
Map
<
String
,
Object
>
queryAllFlowingAndFinishedInspectApp
(
DPFilterParamDto
dpFilterParamDto
)
{
// 1.查询条件构造未上送时间时,默认查询数据为近一个月数据
this
.
setDefaultFilter
(
dpFilterParamDto
);
// 2.按照前端约定格式返回数据
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
JYJCTypeEnum
[]
jyjcTypeEnums
=
JYJCTypeEnum
.
values
();
//2.1 x轴数据构造
result
.
put
(
"xdata"
,
this
.
getXDataForInspectBizNumCount
(
jyjcTypeEnums
));
//2.3 y轴数据构造
this
.
buildYDataForFlowingAndFinishedInspectApp
(
result
,
jyjcTypeEnums
,
dpFilterParamDto
);
return
result
;
}
public
Map
<
String
,
Object
>
queryAllPendingResultInspectApp
(
DPFilterParamDto
dpFilterParamDto
)
{
// 1.查询条件构造未上送时间时,默认查询数据为近一个月数据
this
.
setDefaultFilter
(
dpFilterParamDto
);
// 2.按照前端约定格式返回数据
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
JYJCTypeEnum
[]
jyjcTypeEnums
=
JYJCTypeEnum
.
values
();
//2.1 x轴数据构造
result
.
put
(
"xdata"
,
this
.
getXDataForInspectBizNumCount
(
jyjcTypeEnums
));
//2.3 y轴数据构造
this
.
buildYDataForPendingResultInspectApp
(
result
,
jyjcTypeEnums
,
dpFilterParamDto
);
return
result
;
}
private
void
buildYDataForPendingResultInspectApp
(
Map
<
String
,
Object
>
result
,
JYJCTypeEnum
[]
jyjcTypeEnums
,
DPFilterParamDto
dpFilterParamDto
)
{
String
orgCode
=
this
.
getAndSetOrgCode
(
dpFilterParamDto
.
getCityCode
());
List
<
CountDto
>
countDtoList
=
inspectionApplicationMapper
.
queryAllPendingResultInspectApp
(
orgCode
,
dpFilterParamDto
);
fillJYJCYData
(
result
,
jyjcTypeEnums
,
countDtoList
);
}
private
void
fillJYJCYData
(
Map
<
String
,
Object
>
result
,
JYJCTypeEnum
[]
jyjcTypeEnums
,
List
<
CountDto
>
countDtoList
)
{
List
<
Long
>
yData
=
new
ArrayList
<>();
for
(
JYJCTypeEnum
jyjcTypeEnum
:
jyjcTypeEnums
)
{
Long
num
=
countDtoList
.
stream
().
filter
(
c
->
c
.
getKeyStr
().
equals
(
jyjcTypeEnum
.
getCode
())).
mapToLong
(
CountDto:
:
getLongValue
).
sum
();
yData
.
add
(
num
);
}
result
.
put
(
"ydata"
,
yData
);
}
private
void
buildYDataForFlowingAndFinishedInspectApp
(
Map
<
String
,
Object
>
result
,
JYJCTypeEnum
[]
jyjcTypeEnums
,
DPFilterParamDto
dpFilterParamDto
)
{
String
orgCode
=
this
.
getAndSetOrgCode
(
dpFilterParamDto
.
getCityCode
());
List
<
CountDto
>
countDtoList
=
inspectionApplicationMapper
.
queryAllFlowingAndFinishedInspectApp
(
orgCode
,
dpFilterParamDto
);
fillJYJCYData
(
result
,
jyjcTypeEnums
,
countDtoList
);
}
private
List
<
String
>
getXDataForInspectBizNumCount
(
JYJCTypeEnum
[]
jyjcTypeEnums
)
{
return
Arrays
.
stream
(
jyjcTypeEnums
).
map
(
JYJCTypeEnum:
:
getName
).
collect
(
Collectors
.
toList
());
}
public
List
<
InspectionTimelinesDto
>
queryInspectionTimelinessTopXX
(
String
top
,
DPFilterParamDto
dpFilterParamDto
)
{
String
orgCode
=
this
.
getAndSetOrgCode
(
dpFilterParamDto
.
getCityCode
());
return
inspectionResultMapper
.
queryInspectionTimelinessTopXX
(
top
,
orgCode
);
}
public
List
<
PublicityInspectOrgInfoDto
>
queryInspectionOrgListForPublicity
(
DPFilterParamDto
dpFilterParamDto
)
{
String
orgCode
=
this
.
getAndSetOrgCode
(
dpFilterParamDto
.
getCityCode
());
return
openingApplicationMapper
.
queryInspectionOrgListForPublicity
(
orgCode
);
}
public
Map
<
String
,
Object
>
queryInspectionEquipByEquList
(
DPFilterParamDto
dpFilterParamDto
)
{
Map
<
String
,
Object
>
result
=
new
HashMap
<>();
// 1.查询条件构造未上送时间时,默认查询数据为近一个月数据
this
.
setDefaultFilter
(
dpFilterParamDto
);
String
orgCode
=
this
.
getAndSetOrgCode
(
dpFilterParamDto
.
getCityCode
());
// 2.x轴数据构建
List
<
EquipmentCategoryDto
>
equipmentCategoryDtos
=
equipmentCategoryMapper
.
selectClassify
();
this
.
setXDataForInspectionEquipByEquList
(
result
,
equipmentCategoryDtos
);
// 3.y轴数据设置
// 目前都单设备报检故统计主表即可
List
<
CountDto
>
countDtos
=
inspectionApplicationMapper
.
queryAppByEquListForDP
(
orgCode
,
dpFilterParamDto
);
Map
<
String
,
List
<
CountDto
>>
groupByMap
=
countDtos
.
stream
().
collect
(
Collectors
.
groupingBy
(
CountDto:
:
getLabel
));
this
.
setYDataForInspectionEquipByEquList
(
result
,
groupByMap
,
equipmentCategoryDtos
);
// 4.图列数据设置
this
.
setLegendDataForInspectionEquipByEquList
(
result
);
return
result
;
}
private
void
setYDataForInspectionEquipByEquList
(
Map
<
String
,
Object
>
result
,
Map
<
String
,
List
<
CountDto
>>
groupByMap
,
List
<
EquipmentCategoryDto
>
equipmentCategoryDtos
)
{
groupByMap
.
forEach
((
key
,
value
)
->
result
.
put
(
key
,
this
.
setInspectionEquipData
(
value
,
equipmentCategoryDtos
)));
}
private
List
<
Long
>
setInspectionEquipData
(
List
<
CountDto
>
countDtos
,
List
<
EquipmentCategoryDto
>
equipmentCategoryDtos
)
{
return
equipmentCategoryDtos
.
stream
().
map
(
e
->
countDtos
.
stream
().
filter
(
c
->
c
.
getKeyStr
().
equals
(
e
.
getCode
())).
mapToLong
(
CountDto:
:
getLongValue
).
sum
()).
collect
(
Collectors
.
toList
());
}
private
void
setLegendDataForInspectionEquipByEquList
(
Map
<
String
,
Object
>
result
)
{
Map
<
String
,
Object
>
item1
=
new
LinkedHashMap
<>();
item1
.
put
(
"dataKey"
,
"pending"
);
item1
.
put
(
"value"
,
"待检数量"
);
Map
<
String
,
Object
>
item2
=
new
LinkedHashMap
<>();
item2
.
put
(
"dataKey"
,
"reporting"
);
item2
.
put
(
"value"
,
"报检数量"
);
result
.
put
(
"legendData"
,
Arrays
.
asList
(
item1
,
item2
));
}
private
void
setXDataForInspectionEquipByEquList
(
Map
<
String
,
Object
>
result
,
List
<
EquipmentCategoryDto
>
equipmentCategoryDtos
)
{
// 8大类
List
<
String
>
names
=
equipmentCategoryDtos
.
stream
().
map
(
EquipmentCategoryDto:
:
getName
).
collect
(
Collectors
.
toList
());
result
.
put
(
"xdata"
,
names
);
}
}
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/InspectionPlanServiceImpl.java
View file @
481ce6a3
...
...
@@ -12,6 +12,7 @@ import org.springframework.stereotype.Service;
import
org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Optional
;
...
...
@@ -25,13 +26,16 @@ public class InspectionPlanServiceImpl {
private
JyjcInspectionApplicationEquipServiceImpl
applicationEquipService
;
private
JyjcInspectionResultServiceImpl
inspectionResultService
;
private
ESEquipmentCategory
esEquipmentCategory
;
public
InspectionPlanServiceImpl
(
JyjcInspectionApplicationServiceImpl
inspectionApplicationService
,
JyjcInspectionApplicationEquipServiceImpl
applicationEquipService
,
ESEquipmentCategory
esEquipmentCategory
)
{
JyjcInspectionResultServiceImpl
inspectionResultService
,
ESEquipmentCategory
esEquipmentCategory
)
{
this
.
inspectionApplicationService
=
inspectionApplicationService
;
this
.
applicationEquipService
=
applicationEquipService
;
this
.
inspectionResultService
=
inspectionResultService
;
this
.
esEquipmentCategory
=
esEquipmentCategory
;
}
...
...
@@ -40,15 +44,23 @@ public class InspectionPlanServiceImpl {
LambdaUpdateWrapper
<
JyjcInspectionApplication
>
updateWrapper
=
new
LambdaUpdateWrapper
<>();
updateWrapper
.
set
(
JyjcInspectionApplication:
:
getPlanData
,
JSONObject
.
toJSONString
(
model
));
updateWrapper
.
eq
(
BaseEntity:
:
getSequenceNbr
,
applicationSeq
);
updateWrapper
.
set
(
JyjcInspectionApplication:
:
getPlanCreateDate
,
new
Date
());
inspectionApplicationService
.
update
(
updateWrapper
);
// 异步写入计划排期日期,统计办理时效使用
this
.
updatePlanCreateDate
(
applicationSeq
);
return
model
;
}
private
void
updatePlanCreateDate
(
String
applicationSeq
)
{
JyjcInspectionApplication
inspectionApplication
=
inspectionApplicationService
.
getById
(
applicationSeq
);
inspectionResultService
.
updatePlanCreateDateByAppNo
(
inspectionApplication
.
getApplicationNo
());
}
public
JSONObject
getDetail
(
String
applicationSeq
)
{
JyjcInspectionApplication
inspectionApplication
=
inspectionApplicationService
.
getById
(
applicationSeq
);
// 初始时查询设备地址关联设备表
JSONObject
jsonObject
=
inspectionApplication
.
getPlanData
();
if
(
jsonObject
==
null
)
{
if
(
jsonObject
==
null
)
{
jsonObject
=
new
JSONObject
();
String
address
=
this
.
getOneEquipAddress
(
applicationSeq
);
jsonObject
.
put
(
"address"
,
address
);
...
...
@@ -61,10 +73,10 @@ public class InspectionPlanServiceImpl {
List
<
JyjcInspectionApplicationEquip
>
applicationEquips
=
applicationEquipService
.
list
(
new
LambdaQueryWrapper
<
JyjcInspectionApplicationEquip
>().
eq
(
JyjcInspectionApplicationEquip:
:
getApplicationSeq
,
applicationSeq
));
// 拼接地址
List
<
String
>
allAddress
=
new
ArrayList
<>();
applicationEquips
.
forEach
(
e
->
{
applicationEquips
.
forEach
(
e
->
{
String
record
=
e
.
getEquipUnicode
();
Optional
<
ESEquipmentCategoryDto
>
optional
=
esEquipmentCategory
.
findById
(
record
);
if
(
optional
.
isPresent
())
{
if
(
optional
.
isPresent
())
{
ESEquipmentCategoryDto
esEquipmentCategoryDto
=
optional
.
get
();
allAddress
.
add
(
this
.
concatDetailAddress
(
esEquipmentCategoryDto
));
}
...
...
@@ -77,6 +89,6 @@ public class InspectionPlanServiceImpl {
String
usePlace
=
esEquipmentCategoryDto
.
getUSE_PLACE
();
// 详细地址
String
address
=
esEquipmentCategoryDto
.
getADDRESS
();
return
String
.
format
(
"%s%s"
,
usePlace
,
address
);
return
String
.
format
(
"%s%s"
,
usePlace
,
address
);
}
}
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/JyjcInspectionResultServiceImpl.java
View file @
481ce6a3
...
...
@@ -7,6 +7,7 @@ import com.alibaba.fastjson.JSONArray;
import
com.alibaba.fastjson.JSONObject
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper
;
import
com.baomidou.mybatisplus.core.toolkit.Sequence
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
...
...
@@ -39,6 +40,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.core.io.Resource
;
import
org.springframework.scheduling.annotation.Async
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.util.CollectionUtils
;
...
...
@@ -504,4 +506,12 @@ public class JyjcInspectionResultServiceImpl extends BaseService<JyjcInspectionR
String
group
=
getPersonIdentityByType
(
selectedOrgInfo
.
getCompany
().
getCompanyType
());
return
JyjcInspectionApplicationServiceImpl
.
getDictionarieModels
(
group
);
}
@Async
public
void
updatePlanCreateDateByAppNo
(
String
appNo
)
{
LambdaUpdateWrapper
<
JyjcInspectionResult
>
updateWrapper
=
new
LambdaUpdateWrapper
<>();
updateWrapper
.
eq
(
JyjcInspectionResult:
:
getApplicationNo
,
appNo
);
updateWrapper
.
set
(
JyjcInspectionResult:
:
getPlanCreateDate
,
new
Date
());
this
.
update
(
updateWrapper
);
}
}
\ 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/dto/TzBaseEnterpriseInfoDto.java
View file @
481ce6a3
...
...
@@ -289,6 +289,9 @@ public class TzBaseEnterpriseInfoDto extends BaseDto {
@ApiModelProperty
(
value
=
"行业主管部门"
)
private
String
industrySupervisor
;
@ApiModelProperty
(
value
=
"企业问题状态"
)
private
String
status
;
private
String
region
;
...
...
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/enums/ProblemStatusEnum.java
0 → 100644
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
enums
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* 问题状态
*/
public
enum
ProblemStatusEnum
{
NORMAL
(
"正常"
,
"0"
),
ABNORMAL
(
"异常"
,
"1"
);
private
String
name
;
private
String
code
;
ProblemStatusEnum
(
String
name
,
String
code
)
{
this
.
name
=
name
;
this
.
code
=
code
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setStatus
(
String
code
)
{
this
.
code
=
code
;
}
public
static
Map
<
String
,
String
>
getName
=
new
HashMap
<>();
public
static
Map
<
String
,
String
>
getCode
=
new
HashMap
<>();
static
{
for
(
ProblemStatusEnum
e
:
ProblemStatusEnum
.
values
())
{
getName
.
put
(
e
.
code
,
e
.
name
);
getCode
.
put
(
e
.
name
,
e
.
code
);
}
}
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/mapper/TzBaseEnterpriseInfoMapper.java
View file @
481ce6a3
package
com
.
yeejoin
.
amos
.
boot
.
module
.
tcm
.
api
.
mapper
;
import
java.util.List
;
import
java.util.Map
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
...
...
@@ -11,6 +8,9 @@ import com.yeejoin.amos.boot.module.tcm.api.dto.TzBaseEnterpriseInfoDto;
import
com.yeejoin.amos.boot.module.tcm.api.entity.TzBaseEnterpriseInfo
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
/**
* 企业数据信息 Mapper 接口
*
...
...
@@ -54,4 +54,6 @@ public interface TzBaseEnterpriseInfoMapper extends BaseMapper<TzBaseEnterpriseI
List
<
TzBaseEnterpriseInfo
>
listNoQrCode
();
List
<
Map
<
String
,
Object
>>
getEquipType
(
@Param
(
"type"
)
String
type
);
Map
<
String
,
Object
>
getProblemInfoBySourceId
(
@Param
(
"sourceId"
)
String
sourceId
);
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/java/com/yeejoin/amos/boot/module/tcm/api/service/ITzBaseEnterpriseInfoService.java
View file @
481ce6a3
...
...
@@ -48,4 +48,6 @@ public interface ITzBaseEnterpriseInfoService extends IService<TzBaseEnterpriseI
String
setLabel
(
List
<
Long
>
enterpriseIds
,
List
<
String
>
enterpriseLabels
);
BaseUnitLicence
getUnitLicenceMessage
(
String
unitCode
);
Map
<
String
,
Object
>
getInfoByUseCodeMap
(
String
useCode
);
}
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-api/src/main/resources/mapper/TzBaseEnterpriseInfoMapper.xml
View file @
481ce6a3
...
...
@@ -172,5 +172,8 @@
</if>
</where>
</select>
<select
id=
"getProblemInfoBySourceId"
resultType=
"java.util.Map"
>
select * from tzs_safety_problem_tracing where source_id = #{sourceId} order by rec_date desc limit 1
</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/TzBaseEnterpriseInfoController.java
View file @
481ce6a3
...
...
@@ -200,6 +200,13 @@ public class TzBaseEnterpriseInfoController extends BaseController {
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@RequestMapping
(
value
=
"/getInfoByUseCode/map"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据统一信用代码查询企业详情返回map"
,
notes
=
"根据统一信用代码查询企业详情返回map"
)
public
ResponseModel
<
Map
<
String
,
Object
>>
getInfoByUseCodeMap
(
String
useCode
)
{
return
ResponseHelper
.
buildResponse
(
iTzBaseEnterpriseInfoService
.
getInfoByUseCodeMap
(
useCode
));
}
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@RequestMapping
(
value
=
"/getInfoByUseCodeList"
,
method
=
RequestMethod
.
GET
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"根据统一信用代码查询企业详情"
,
notes
=
"根据统一信用代码查询企业详情"
)
public
ResponseModel
<
IPage
<
TzBaseEnterpriseInfoDto
>>
getInfoByUseCodeList
(
String
useCode
)
{
...
...
amos-boot-system-tzs/amos-boot-module-tcm/amos-boot-module-tcm-biz/src/main/java/com/yeejoin/amos/boot/module/tcm/biz/service/impl/TzBaseEnterpriseInfoServiceImpl.java
View file @
481ce6a3
...
...
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.yeejoin.amos.boot.biz.common.bo.ReginParams
;
import
com.yeejoin.amos.boot.biz.common.entity.DataDictionary
;
import
com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl
;
...
...
@@ -21,6 +22,7 @@ import com.yeejoin.amos.boot.module.tcm.api.dto.TzsBaseInstitutionDto;
import
com.yeejoin.amos.boot.module.tcm.api.entity.*
;
import
com.yeejoin.amos.boot.module.tcm.api.enums.EnterpriseEnums
;
import
com.yeejoin.amos.boot.module.tcm.api.enums.LicenceTypeEnum
;
import
com.yeejoin.amos.boot.module.tcm.api.enums.ProblemStatusEnum
;
import
com.yeejoin.amos.boot.module.tcm.api.enums.UnitTypeEnum
;
import
com.yeejoin.amos.boot.module.tcm.api.mapper.TzBaseEnterpriseInfoMapper
;
import
com.yeejoin.amos.boot.module.tcm.api.mapper.TzsUserInfoMapper
;
...
...
@@ -237,6 +239,48 @@ public class TzBaseEnterpriseInfoServiceImpl
}
@Override
public
Map
<
String
,
Object
>
getInfoByUseCodeMap
(
String
useCode
)
{
TzBaseEnterpriseInfoDto
infoByUseCode
=
getInfoByUseCode
(
useCode
);
// 通过sourceId获取问题信息
Map
<
String
,
Object
>
problemInfo
=
baseMapper
.
getProblemInfoBySourceId
(
infoByUseCode
.
getSequenceNbr
().
toString
());
ObjectMapper
objectMapper
=
new
ObjectMapper
();
Map
<
String
,
Object
>
resultMap
=
new
HashMap
<>();
RegUnitIcDto
regUnitIcDto
=
infoByUseCode
.
getRegUnitIcDto
();
RegUnitInfoDto
regUnitInfoDto
=
infoByUseCode
.
getRegUnitInfoDto
();
TzsBaseInstitution
tzsBaseInstitution
=
infoByUseCode
.
getRegUnitMessage
();
Map
<
String
,
Object
>
regUnitIcDtoMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
regUnitInfoDtoMap
=
new
HashMap
<>();
Map
<
String
,
Object
>
tzsBaseInstitutionMap
=
new
HashMap
<>();
try
{
resultMap
=
objectMapper
.
convertValue
(
infoByUseCode
,
Map
.
class
);
regUnitIcDtoMap
=
objectMapper
.
convertValue
(
regUnitIcDto
,
Map
.
class
);
regUnitInfoDtoMap
=
objectMapper
.
convertValue
(
regUnitInfoDto
,
Map
.
class
);
tzsBaseInstitutionMap
=
objectMapper
.
convertValue
(
tzsBaseInstitution
,
Map
.
class
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
if
(!
ObjectUtils
.
isEmpty
(
regUnitIcDtoMap
)){
resultMap
.
putAll
(
regUnitIcDtoMap
);
}
if
(!
ObjectUtils
.
isEmpty
(
regUnitInfoDtoMap
)){
resultMap
.
putAll
(
regUnitInfoDtoMap
);
}
if
(!
ObjectUtils
.
isEmpty
(
tzsBaseInstitutionMap
)){
resultMap
.
putAll
(
tzsBaseInstitutionMap
);
}
resultMap
.
remove
(
"regUnitIcDto"
);
resultMap
.
remove
(
"regUnitInfoDto"
);
resultMap
.
remove
(
"tzsBaseInstitution"
);
resultMap
.
put
(
"problemTime"
,
problemInfo
.
get
(
"problem_time"
));
resultMap
.
put
(
"problemStatus"
,
ProblemStatusEnum
.
getName
.
get
(
resultMap
.
get
(
"status"
)));
return
resultMap
;
}
@Override
public
TzBaseEnterpriseInfoDto
getInfoByUseCode
(
String
useCode
)
{
TzBaseEnterpriseInfo
tzBaseEnterpriseInfo
=
tzBaseEnterpriseInfoMapper
.
selectOne
(
new
QueryWrapper
<
TzBaseEnterpriseInfo
>().
eq
(
"use_code"
,
useCode
));
...
...
@@ -869,4 +913,6 @@ public class TzBaseEnterpriseInfoServiceImpl
return
baseUnitLicenceService
.
getBaseMapper
().
selectOne
(
lambda
);
}
}
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