Commit f87a83b3 authored by 刘林's avatar 刘林

fix(jg):密评完整性问题处理

parent 97b75ca6
......@@ -50,7 +50,15 @@
FROM tzs_jg_maintenance_contract_eq ede
LEFT JOIN idx_biz_jg_supervision_info si ON si."RECORD" = ede.equ_id
WHERE ede.equip_transfer_id = tjmc.sequence_nbr
) AS orgBranchCodes
) AS orgBranchCodes,
(
SELECT mri.ME_MASTER1_PHONE AS phone
FROM tzs_jg_maintenance_contract_eq ede
LEFT JOIN idx_biz_jg_maintenance_record_info mri
ON mri."RECORD" = ede.equ_id
WHERE ede.equip_transfer_id = tjmc.sequence_nbr
order by mri.REC_DATE limit 1
) AS phone
FROM
tzs_jg_maintenance_contract tjmc
</sql>
......
......@@ -252,182 +252,199 @@ public class IdxBizJgProjectContraptionServiceImplService extends BaseEntityServ
*/
@Override
public IPage<IdxBizJgProjectContraption> proConPageByParams(int current, int size, String sort, Map<String, String> params, ReginParams reginParams) {
Page<IdxBizJgProjectContraption> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
CompanyBo company = reginParams.getCompany();
String companyType = company.getCompanyType();
String companyCode = company.getCompanyCode();
SortVo sortVo = commonService.sortFieldConversion(sort);
// 是否是否纳管:true - 已纳管 false-未纳管
boolean isIntoManagement = Boolean.parseBoolean(params.get(IS_INTO_MANAGEMENT));
// 使用登记编号
String useRegistrationCode = params.get(USE_REGISTRATION_CODE);
// 使用登记编号是否为空 true/false
String regCodeIsNull = params.get(REG_CODE_IS_NULL);
// 工程装置名称
String projectContraption = params.get(PROJECT_CONTRAPTION);
// 工程装置编号
String projectContraptionNo = params.get(PROJECT_CONTRAPTION_NO);
//属地监管部门code
String orgBranchCode = params.get(ORG_BRANCH_CODE);
String dataSource = params.get(DATA_SOURCE);
// 设备类别code
String equCategory = params.get(EQU_CATEGORY);
// 设备类品种code
String equDefine = params.get(EQU_DEFINE);
String dataQualityScore = params.get(DATA_QUALITY_SCORE);
String dataQuality = params.get(DATA_QUALITY);
// 证详情-查询标识
String useRegDetail = params.get("useRegDetail");
// 登录人公司类型:企业,监管
String companyLevel = this.getCompanyLevel(company);
// 未在业务流程中
boolean isNotInBusiness = !ValidationUtil.isEmpty(params.get("isNotInBusiness")) && params.get("isNotInBusiness").equals("true");
// 查询在业务流程中sql
String inBusinessSQL = "SELECT 1 FROM tzs_jg_change_registration_reform A WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.audit_status <> '使用单位待提交' \n" +
" AND A.audit_status <> '一级受理已驳回' \n" +
" AND A.audit_status <> '使用单位已撤回' \n" +
" AND A.audit_status <> '已完成' \n" +
" AND A.audit_status <> '已作废' UNION ALL\n" +
"SELECT 1 FROM tzs_jg_installation_notice A \n" +
"WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.notice_status <> '6614' \n" +
" AND A.notice_status <> '6615' \n" +
" AND A.notice_status <> '6610' \n" +
" AND A.notice_status <> '6616' \n" +
" AND A.notice_status <> '6617' UNION ALL\n" +
"SELECT 1 FROM tzs_jg_reform_notice A \n" +
"WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.notice_status <> '6614' \n" +
" AND A.notice_status <> '6615' \n" +
" AND A.notice_status <> '6610' \n" +
" AND A.notice_status <> '6616' \n" +
" AND A.notice_status <> '6617' UNION ALL\n" +
"SELECT 1 FROM tzs_jg_use_registration A \n" +
"WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.status <> '使用单位待提交' \n" +
" AND A.status <> '一级受理已驳回' \n" +
" AND A.status <> '使用单位已撤回' \n" +
" AND A.status <> '已完成' \n" +
" AND A.status <> '已作废'";
//获取省
String province = params.get("province");
if(!StringUtils.isEmpty(province) && province.contains("_")){
province= province.split("_")[0];
}
//获取市
String city = params.get("city");
if(!StringUtils.isEmpty(city) && city.contains("_")){
city= city.split("_")[0];
}
//获取区
String county = params.get("county");
if(!StringUtils.isEmpty(county) && county.contains("_")){
county= county.split("_")[0];
}
//获取街道
String street = params.get("street");
if(!StringUtils.isEmpty(street) && street.contains("_")){
street= street.split("_")[0];
}
String useUnitCreditCode = params.get(USE_UNIT_CREDIT_CODE);
if(!StringUtils.isEmpty(useUnitCreditCode) && useUnitCreditCode.contains("_")){
useUnitCreditCode= useUnitCreditCode.split("_")[0];
}
String useUnitName = params.get(USE_UNIT_NAME);
LambdaQueryChainWrapper<IdxBizJgProjectContraption> queryWrapper = lambdaQuery()
// 企业按照公司类型进行过滤
.eq(BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel) && CompanyTypeEnum.CONSTRUCTION.getName().equals(companyType), IdxBizJgProjectContraption::getUscUnitCreditCode, companyCode)
.eq(BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel) && CompanyTypeEnum.USE.getName().equals(companyType), IdxBizJgProjectContraption::getUseUnitCreditCode, companyCode)
.eq(BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel) && CompanyTypeEnum.INDIVIDUAL.getName().equals(companyType), IdxBizJgProjectContraption::getUseUnitCreditCode, companyCode.split("_").length > 1 ? companyCode.split("_")[1] : companyCode)
// 监管机构按照属地监管部门orgCode进行过滤【最大数据集合】
.likeRight(ValidationUtil.isEmpty(useRegDetail) && BaseController.COMPANY_TYPE_SUPERVISION.equals(companyLevel), IdxBizJgProjectContraption::getOrgCode, company.getOrgCode())
.eq(!ValidationUtil.isEmpty(params.get(IS_INTO_MANAGEMENT)), IdxBizJgProjectContraption::getIsIntoManagement, isIntoManagement)
.eq(!ValidationUtil.isEmpty(useRegistrationCode), IdxBizJgProjectContraption::getUseRegistrationCode, useRegistrationCode)
.eq(!ValidationUtil.isEmpty(equCategory), IdxBizJgProjectContraption::getEquCategory, equCategory)
.eq(!ValidationUtil.isEmpty(equDefine), IdxBizJgProjectContraption::getEquDefine, equDefine)
.eq(!ValidationUtil.isEmpty(province), IdxBizJgProjectContraption::getProvince, province)
.eq(!ValidationUtil.isEmpty(city), IdxBizJgProjectContraption::getCity, city)
.eq(!ValidationUtil.isEmpty(county), IdxBizJgProjectContraption::getCounty, county)
.eq(!ValidationUtil.isEmpty(street), IdxBizJgProjectContraption::getStreet, street)
.eq(!ValidationUtil.isEmpty(dataQualityScore), IdxBizJgProjectContraption::getDataQualityScore, dataQualityScore)
.in(!ValidationUtil.isEmpty(dataQuality), IdxBizJgProjectContraption::getDataQualityScore, JSON.parseArray(dataQuality, String.class))
.eq(!ValidationUtil.isEmpty(useUnitCreditCode), IdxBizJgProjectContraption::getUseUnitCreditCode, useUnitCreditCode)
.like(!ValidationUtil.isEmpty(useUnitName), IdxBizJgProjectContraption::getUseUnitName, useUnitName)
.like(!ValidationUtil.isEmpty(projectContraption), IdxBizJgProjectContraption::getProjectContraption, projectContraption)
.eq(!ValidationUtil.isEmpty(orgBranchCode) && BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel), IdxBizJgProjectContraption::getOrgCode, orgBranchCode) // 企业 等于匹配
.likeRight(!ValidationUtil.isEmpty(orgBranchCode) && BaseController.COMPANY_TYPE_SUPERVISION.equals(companyLevel), IdxBizJgProjectContraption::getOrgCode, orgBranchCode) // 监管 右模糊匹配
.like(!ValidationUtil.isEmpty(projectContraptionNo), IdxBizJgProjectContraption::getProjectContraptionNo, projectContraptionNo)
.and(!ValidationUtil.isEmpty(dataSource), w -> {
if ("jg".equals(dataSource)) {
w.likeRight(IdxBizJgProjectContraption::getDataSource, "jg").notLike(IdxBizJgProjectContraption::getDataSource, "jg_his");
} else if ("jg_his".equals(dataSource)) {
w.likeRight(IdxBizJgProjectContraption::getDataSource, "jg_his").notLike(IdxBizJgProjectContraption::getDataSource, "jg_his_black");
} else if ("jg_his_black".equals(dataSource)) {
w.eq(IdxBizJgProjectContraption::getDataSource, "jg_his_black").or().likeRight(IdxBizJgProjectContraption::getDataSource, "jg_his_black_");
} else {
w.eq(IdxBizJgProjectContraption::getDataSource, dataSource);
}
})
.isNull(!ValidationUtil.isEmpty(regCodeIsNull) && Boolean.TRUE.equals(Boolean.valueOf(regCodeIsNull)), IdxBizJgProjectContraption::getUseRegistrationCode)
.isNotNull(!ValidationUtil.isEmpty(regCodeIsNull) && Boolean.FALSE.equals(Boolean.valueOf(regCodeIsNull)), IdxBizJgProjectContraption::getUseRegistrationCode)
.isNull(IdxBizJgProjectContraption::getProjectContraptionParentId)
.notExists(isNotInBusiness, inBusinessSQL);
if (sortVo != null && "ASC".equalsIgnoreCase(sortVo.getSortType())) {
queryWrapper.orderByAsc(resolveField(sortVo.getField()));
} else if (sortVo != null && "DESC".equalsIgnoreCase(sortVo.getSortType())) {
queryWrapper.orderByDesc(resolveField(sortVo.getField()));
} else {
queryWrapper.orderByDesc(IdxBizJgProjectContraption::getRecDate);
}
IPage<IdxBizJgProjectContraption> pageList = queryWrapper.page(page);
// 单位类型区分的企业还是监管
String companyType2 = CommonServiceImpl.getCompanyType(company);
if (!ValidationUtil.isEmpty(pageList.getRecords())) {
Map<String, Boolean> projectContraptionUseMap = getPidUseMap(pageList);
pageList.getRecords().forEach(record -> {
BigDecimal pipelineLength = BigDecimal.valueOf(record.getPipelineLength());
BigDecimal roundedValue = pipelineLength.setScale(3, RoundingMode.HALF_UP);
BigDecimal strippedValue = roundedValue.stripTrailingZeros();
record.setPipelineLength(Double.valueOf(strippedValue.toPlainString()));
record.setDataSourceName(EquipSourceEnum.getDataSourceName(record.getDataSource()));
record.setDataQualityScore(commonService.castDataQualityScore2Name(record.getDataQualityScore(), record.getIsIntoManagement()));
record.setFullAddress(
Stream.of(record.getProvinceName(), record.getCityName(), record.getCountyName(), record.getStreetName(), record.getAddress())
.map(value -> value == null ? "" : value)
.collect(Collectors.joining())
);
record.setCompanyType(companyType2);
// 来源类型:前端控制编辑按钮显示隐藏
record.setRegType(CommonServiceImpl.genRegTypeByDataSource(record.getDataSource()));
record.setIsIntoManagementName(IsIntoManagementEnum.getName(record.getIsIntoManagement()));
// 设置是否发生过后续业务::前端控制编辑按钮显示隐藏
record.setHappenAfterBiz(projectContraptionUseMap.getOrDefault(record.getSequenceNbr() + "", false));
});
try {
Page<IdxBizJgProjectContraption> page = new Page<>();
page.setCurrent(current);
page.setSize(size);
CompanyBo company = reginParams.getCompany();
String companyType = company.getCompanyType();
String companyCode = company.getCompanyCode();
SortVo sortVo = commonService.sortFieldConversion(sort);
// 是否是否纳管:true - 已纳管 false-未纳管
boolean isIntoManagement = Boolean.parseBoolean(params.get(IS_INTO_MANAGEMENT));
// 使用登记编号
String useRegistrationCode = params.get(USE_REGISTRATION_CODE);
// 使用登记编号是否为空 true/false
String regCodeIsNull = params.get(REG_CODE_IS_NULL);
// 工程装置名称
String projectContraption = params.get(PROJECT_CONTRAPTION);
// 工程装置编号
String projectContraptionNo = params.get(PROJECT_CONTRAPTION_NO);
//属地监管部门code
String orgBranchCode = params.get(ORG_BRANCH_CODE);
String dataSource = params.get(DATA_SOURCE);
// 设备类别code
String equCategory = params.get(EQU_CATEGORY);
// 设备类品种code
String equDefine = params.get(EQU_DEFINE);
String dataQualityScore = params.get(DATA_QUALITY_SCORE);
String dataQuality = params.get(DATA_QUALITY);
// 证详情-查询标识
String useRegDetail = params.get("useRegDetail");
// 登录人公司类型:企业,监管
String companyLevel = this.getCompanyLevel(company);
// 未在业务流程中
boolean isNotInBusiness = !ValidationUtil.isEmpty(params.get("isNotInBusiness")) && params.get("isNotInBusiness").equals("true");
// 查询在业务流程中sql
String inBusinessSQL = "SELECT 1 FROM tzs_jg_change_registration_reform A WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.audit_status <> '使用单位待提交' \n" +
" AND A.audit_status <> '一级受理已驳回' \n" +
" AND A.audit_status <> '使用单位已撤回' \n" +
" AND A.audit_status <> '已完成' \n" +
" AND A.audit_status <> '已作废' UNION ALL\n" +
"SELECT 1 FROM tzs_jg_installation_notice A \n" +
"WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.notice_status <> '6614' \n" +
" AND A.notice_status <> '6615' \n" +
" AND A.notice_status <> '6610' \n" +
" AND A.notice_status <> '6616' \n" +
" AND A.notice_status <> '6617' UNION ALL\n" +
"SELECT 1 FROM tzs_jg_reform_notice A \n" +
"WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.notice_status <> '6614' \n" +
" AND A.notice_status <> '6615' \n" +
" AND A.notice_status <> '6610' \n" +
" AND A.notice_status <> '6616' \n" +
" AND A.notice_status <> '6617' UNION ALL\n" +
"SELECT 1 FROM tzs_jg_use_registration A \n" +
"WHERE\n" +
" idx_biz_jg_project_contraption.sequence_nbr = A.\"project_contraption_id\" \n" +
" AND A.\"is_delete\" = 0 \n" +
" AND A.status <> '使用单位待提交' \n" +
" AND A.status <> '一级受理已驳回' \n" +
" AND A.status <> '使用单位已撤回' \n" +
" AND A.status <> '已完成' \n" +
" AND A.status <> '已作废'";
//获取省
String province = params.get("province");
if(!StringUtils.isEmpty(province) && province.contains("_")){
province= province.split("_")[0];
}
//获取市
String city = params.get("city");
if(!StringUtils.isEmpty(city) && city.contains("_")){
city= city.split("_")[0];
}
//获取区
String county = params.get("county");
if(!StringUtils.isEmpty(county) && county.contains("_")){
county= county.split("_")[0];
}
//获取街道
String street = params.get("street");
if(!StringUtils.isEmpty(street) && street.contains("_")){
street= street.split("_")[0];
}
String useUnitCreditCode = params.get(USE_UNIT_CREDIT_CODE);
if(!StringUtils.isEmpty(useUnitCreditCode) && useUnitCreditCode.contains("_")){
useUnitCreditCode= useUnitCreditCode.split("_")[0];
}
String useUnitName = params.get(USE_UNIT_NAME);
LambdaQueryChainWrapper<IdxBizJgProjectContraption> queryWrapper = lambdaQuery()
// 企业按照公司类型进行过滤
.eq(BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel) && CompanyTypeEnum.CONSTRUCTION.getName().equals(companyType), IdxBizJgProjectContraption::getUscUnitCreditCode, companyCode)
.eq(BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel) && CompanyTypeEnum.USE.getName().equals(companyType), IdxBizJgProjectContraption::getUseUnitCreditCode, companyCode)
.eq(BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel) && CompanyTypeEnum.INDIVIDUAL.getName().equals(companyType), IdxBizJgProjectContraption::getUseUnitCreditCode, companyCode.split("_").length > 1 ? companyCode.split("_")[1] : companyCode)
// 监管机构按照属地监管部门orgCode进行过滤【最大数据集合】
.likeRight(ValidationUtil.isEmpty(useRegDetail) && BaseController.COMPANY_TYPE_SUPERVISION.equals(companyLevel), IdxBizJgProjectContraption::getOrgCode, company.getOrgCode())
.eq(!ValidationUtil.isEmpty(params.get(IS_INTO_MANAGEMENT)), IdxBizJgProjectContraption::getIsIntoManagement, isIntoManagement)
.eq(!ValidationUtil.isEmpty(useRegistrationCode), IdxBizJgProjectContraption::getUseRegistrationCode, useRegistrationCode)
.eq(!ValidationUtil.isEmpty(equCategory), IdxBizJgProjectContraption::getEquCategory, equCategory)
.eq(!ValidationUtil.isEmpty(equDefine), IdxBizJgProjectContraption::getEquDefine, equDefine)
.eq(!ValidationUtil.isEmpty(province), IdxBizJgProjectContraption::getProvince, province)
.eq(!ValidationUtil.isEmpty(city), IdxBizJgProjectContraption::getCity, city)
.eq(!ValidationUtil.isEmpty(county), IdxBizJgProjectContraption::getCounty, county)
.eq(!ValidationUtil.isEmpty(street), IdxBizJgProjectContraption::getStreet, street)
.eq(!ValidationUtil.isEmpty(dataQualityScore), IdxBizJgProjectContraption::getDataQualityScore, dataQualityScore)
.in(!ValidationUtil.isEmpty(dataQuality), IdxBizJgProjectContraption::getDataQualityScore, JSON.parseArray(dataQuality, String.class))
.eq(!ValidationUtil.isEmpty(useUnitCreditCode), IdxBizJgProjectContraption::getUseUnitCreditCode, useUnitCreditCode)
.like(!ValidationUtil.isEmpty(useUnitName), IdxBizJgProjectContraption::getUseUnitName, useUnitName)
.like(!ValidationUtil.isEmpty(projectContraption), IdxBizJgProjectContraption::getProjectContraption, projectContraption)
.eq(!ValidationUtil.isEmpty(orgBranchCode) && BaseController.COMPANY_TYPE_COMPANY.equals(companyLevel), IdxBizJgProjectContraption::getOrgCode, orgBranchCode) // 企业 等于匹配
.likeRight(!ValidationUtil.isEmpty(orgBranchCode) && BaseController.COMPANY_TYPE_SUPERVISION.equals(companyLevel), IdxBizJgProjectContraption::getOrgCode, orgBranchCode) // 监管 右模糊匹配
.like(!ValidationUtil.isEmpty(projectContraptionNo), IdxBizJgProjectContraption::getProjectContraptionNo, projectContraptionNo)
.and(!ValidationUtil.isEmpty(dataSource), w -> {
if ("jg".equals(dataSource)) {
w.likeRight(IdxBizJgProjectContraption::getDataSource, "jg").notLike(IdxBizJgProjectContraption::getDataSource, "jg_his");
} else if ("jg_his".equals(dataSource)) {
w.likeRight(IdxBizJgProjectContraption::getDataSource, "jg_his").notLike(IdxBizJgProjectContraption::getDataSource, "jg_his_black");
} else if ("jg_his_black".equals(dataSource)) {
w.eq(IdxBizJgProjectContraption::getDataSource, "jg_his_black").or().likeRight(IdxBizJgProjectContraption::getDataSource, "jg_his_black_");
} else {
w.eq(IdxBizJgProjectContraption::getDataSource, dataSource);
}
})
.isNull(!ValidationUtil.isEmpty(regCodeIsNull) && Boolean.TRUE.equals(Boolean.valueOf(regCodeIsNull)), IdxBizJgProjectContraption::getUseRegistrationCode)
.isNotNull(!ValidationUtil.isEmpty(regCodeIsNull) && Boolean.FALSE.equals(Boolean.valueOf(regCodeIsNull)), IdxBizJgProjectContraption::getUseRegistrationCode)
.isNull(IdxBizJgProjectContraption::getProjectContraptionParentId)
.notExists(isNotInBusiness, inBusinessSQL);
if (sortVo != null && "ASC".equalsIgnoreCase(sortVo.getSortType())) {
queryWrapper.orderByAsc(resolveField(sortVo.getField()));
} else if (sortVo != null && "DESC".equalsIgnoreCase(sortVo.getSortType())) {
queryWrapper.orderByDesc(resolveField(sortVo.getField()));
} else {
queryWrapper.orderByDesc(IdxBizJgProjectContraption::getRecDate);
}
List<Long> projectContraptionIdList = pageList.getRecords().stream().map(IdxBizJgProjectContraption::getSequenceNbr).collect(Collectors.toList());
Map<String, Boolean> canEditMap = this.checkContraptionIsCanEdit(projectContraptionIdList);
pageList.getRecords().forEach(record -> record.setCanEdit(canEditMap.get(record.getSequenceNbr()+"")));
Map<String, Boolean> canDeleteMap = this.checkContraptionIsCanDelete(projectContraptionIdList, isIntoManagement);
pageList.getRecords().forEach(record -> record.setCanDelete(canDeleteMap.get(record.getSequenceNbr()+"")));
//判断是否有检验结果录入
judgeCheckResult(pageList.getRecords());
IPage<IdxBizJgProjectContraption> pageList = queryWrapper.page(page);
// 单位类型区分的企业还是监管
String companyType2 = CommonServiceImpl.getCompanyType(company);
if (!ValidationUtil.isEmpty(pageList.getRecords())) {
Map<String, Boolean> projectContraptionUseMap = getPidUseMap(pageList);
pageList.getRecords().forEach(record -> {
BigDecimal pipelineLength = BigDecimal.valueOf(record.getPipelineLength());
BigDecimal roundedValue = pipelineLength.setScale(3, RoundingMode.HALF_UP);
BigDecimal strippedValue = roundedValue.stripTrailingZeros();
record.setPipelineLength(Double.valueOf(strippedValue.toPlainString()));
record.setDataSourceName(EquipSourceEnum.getDataSourceName(record.getDataSource()));
record.setDataQualityScore(commonService.castDataQualityScore2Name(record.getDataQualityScore(), record.getIsIntoManagement()));
record.setFullAddress(
Stream.of(record.getProvinceName(), record.getCityName(), record.getCountyName(), record.getStreetName(), record.getAddress())
.map(value -> value == null ? "" : value)
.collect(Collectors.joining())
);
record.setCompanyType(companyType2);
// 来源类型:前端控制编辑按钮显示隐藏
record.setRegType(CommonServiceImpl.genRegTypeByDataSource(record.getDataSource()));
record.setIsIntoManagementName(IsIntoManagementEnum.getName(record.getIsIntoManagement()));
// 设置是否发生过后续业务::前端控制编辑按钮显示隐藏
record.setHappenAfterBiz(projectContraptionUseMap.getOrDefault(record.getSequenceNbr() + "", false));
});
List<Long> projectContraptionIdList = pageList.getRecords().stream().map(IdxBizJgProjectContraption::getSequenceNbr).collect(Collectors.toList());
Map<String, Boolean> canEditMap = this.checkContraptionIsCanEdit(projectContraptionIdList);
pageList.getRecords().forEach(record -> record.setCanEdit(canEditMap.get(record.getSequenceNbr()+"")));
Map<String, Boolean> canDeleteMap = this.checkContraptionIsCanDelete(projectContraptionIdList, isIntoManagement);
pageList.getRecords().forEach(record -> record.setCanDelete(canDeleteMap.get(record.getSequenceNbr()+"")));
//判断是否有检验结果录入
judgeCheckResult(pageList.getRecords());
List<IdxBizJgUseInfo> useInfos = useInfoService.lambdaQuery().select(IdxBizJgUseInfo::getRecord,IdxBizJgUseInfo::getPhone)
.in(IdxBizJgUseInfo::getProjectContraptionId, projectContraptionIdList).list();
useInfos.forEach(info -> System.out.println("record=" + info.getRecord() + ", phone=" + info.getPhone()));
}
return pageList;
} catch (Exception ex) {
String msg = ex.getMessage() == null ? "" : ex.getMessage();
if (msg.contains("eyibc decrypt error")
|| msg.contains("EYIBCException")
|| msg.contains("olym jdbc error")
|| msg.contains("数据非法")
|| msg.contains("Code: 100023:sql parse error")
|| msg.contains("decrypt error, code: -65")) {
throw new BadRequest("数据完整性被破坏(解密失败),请联系管理员。");
}
throw new BadRequest("系统内部错误,请联系管理员。");
}
return pageList;
}
/**
......
......@@ -118,45 +118,58 @@ public class JgMaintenanceContractServiceImpl extends BaseService<JgMaintenanceC
* 分页查询
*/
public Page<JgMaintenanceContractVo> queryForPage(Page<JgMaintenanceContract> page, String sort, JgMaintenanceContractDto dto, ReginParams reginParams, String client) {
if (ObjectUtils.isEmpty(dto)) {
dto = new JgMaintenanceContractDto();
}
Page<JgMaintenanceContractDto> contractList;
Page<JgMaintenanceContractVo> result = new Page<>();
CompanyBo company = reginParams.getCompany();
SortVo sortMap = commonService.sortFieldConversion(sort);
Map<String, Object> companyTypeMap = jrmInstallationNoticeService.getCompanyType();
String companyLevel = "";
String companyType = "";
if (companyTypeMap.containsKey("companyLevel")) {
companyLevel = companyTypeMap.get("companyLevel").toString();
}
if (companyTypeMap.containsKey("companyType")) {
companyType = companyTypeMap.get("companyType").toString();
}
if ("supervision".equals(companyLevel)) {
// 监管单位查询
if (client.equals("jgLook")) {
dto.setOrgBranchCode(company.getOrgCode());
} else { // 接收机构查询
dto.setReceiveOrgCodeFilter(company.getCompanyCode());
try {
if (ObjectUtils.isEmpty(dto)) {
dto = new JgMaintenanceContractDto();
}
} else if ("company".equals(companyLevel)) {
if (companyType.contains(CompanyTypeEnum.USE.getCode()) || companyType.contains(CompanyTypeEnum.INDIVIDUAL.getCode())) {
// 使用单位用"使用单位统一信用代码"匹配数据
dto.setUseUnitCodeFilter(company.getCompanyCode());
dto.setRoleIds(null);
Page<JgMaintenanceContractDto> contractList;
Page<JgMaintenanceContractVo> result = new Page<>();
CompanyBo company = reginParams.getCompany();
SortVo sortMap = commonService.sortFieldConversion(sort);
Map<String, Object> companyTypeMap = jrmInstallationNoticeService.getCompanyType();
String companyLevel = "";
String companyType = "";
if (companyTypeMap.containsKey("companyLevel")) {
companyLevel = companyTypeMap.get("companyLevel").toString();
}
if (companyTypeMap.containsKey("companyType")) {
companyType = companyTypeMap.get("companyType").toString();
}
if ("supervision".equals(companyLevel)) {
// 监管单位查询
if (client.equals("jgLook")) {
dto.setOrgBranchCode(company.getOrgCode());
} else { // 接收机构查询
dto.setReceiveOrgCodeFilter(company.getCompanyCode());
}
} else if ("company".equals(companyLevel)) {
if (companyType.contains(CompanyTypeEnum.USE.getCode()) || companyType.contains(CompanyTypeEnum.INDIVIDUAL.getCode())) {
// 使用单位用"使用单位统一信用代码"匹配数据
dto.setUseUnitCodeFilter(company.getCompanyCode());
dto.setRoleIds(null);
}
if (companyType.contains(CompanyTypeEnum.CONSTRUCTION.getCode())) {
// 维保单位用"维保单位统一信用代码"匹配数据
dto.setMaintenanceUnitCodeFilter(company.getCompanyCode());
}
}
if (companyType.contains(CompanyTypeEnum.CONSTRUCTION.getCode())) {
// 维保单位用"维保单位统一信用代码"匹配数据
dto.setMaintenanceUnitCodeFilter(company.getCompanyCode());
contractList = maintenanceContractMapper.getContractList(page, sortMap, dto, reginParams.getUserModel().getUserId(), client);
List<JgMaintenanceContractDto> records = contractList.getRecords().stream().peek(x -> x.setUnitType(company.getCompanyType())).collect(Collectors.toList());
contractList.setRecords(records);
BeanUtils.copyProperties(contractList, result);
return result;
} catch (Exception ex) {
String msg = ex.getMessage() == null ? "" : ex.getMessage();
if (msg.contains("eyibc decrypt error")
|| msg.contains("EYIBCException")
|| msg.contains("olym jdbc error")
|| msg.contains("数据非法")
|| msg.contains("Code: 100023:sql parse error")
|| msg.contains("decrypt error, code: -65")) {
throw new BadRequest("数据完整性被破坏(解密失败),请联系管理员。");
}
throw new BadRequest("系统内部错误,请联系管理员。");
}
contractList = maintenanceContractMapper.getContractList(page, sortMap, dto, reginParams.getUserModel().getUserId(), client);
List<JgMaintenanceContractDto> records = contractList.getRecords().stream().peek(x -> x.setUnitType(company.getCompanyType())).collect(Collectors.toList());
contractList.setRecords(records);
BeanUtils.copyProperties(contractList, result);
return result;
}
/**
......
......@@ -233,13 +233,17 @@ public class TzBaseEnterpriseInfoServiceImpl
// }
SortVo sortMap = userInfoService.sortFieldConversion(sort);
// 密评专用(查tz_flc_reg_unit_info表中的admin_login_pwd字段,以用于验证密评数据完整性)
regUnitInfoService.lambdaQuery().eq(RegUnitInfo::getUnitCode, tzBaseEnterpriseInfoDto.getUseUnitCode()).select(RegUnitInfo::getUnitCode, RegUnitInfo::getAdminLoginPwd);
List<RegUnitInfo> regUnitInfoList = regUnitInfoService.lambdaQuery().select(RegUnitInfo::getUnitCode, RegUnitInfo::getAdminLoginPwd)
.eq(RegUnitInfo::getName, tzBaseEnterpriseInfoDto.getUseUnit()).list();
regUnitInfoList.forEach(info -> System.out.println("unitCode=" + info.getUnitCode() + ", adminLoginPwd=" + info.getAdminLoginPwd()));
return this.baseMapper.pageList(page, tzBaseEnterpriseInfoDto, orgCode, sortMap, officeRegion);
} catch (Exception ex) {
String msg = ex.getMessage() == null ? "" : ex.getMessage();
if (msg.contains("eyibc decrypt error")
|| msg.contains("EYIBCException")
|| msg.contains("olym jdbc error")
|| msg.contains("100022:")
|| msg.contains("数据非法")
|| msg.contains("decrypt error, code: -65")) {
throw new BadRequest("数据完整性被破坏(解密失败),请联系管理员。");
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment