Commit 9a4e3a47 authored by 麻笑宇's avatar 麻笑宇

Merge remote-tracking branch 'origin/develop_tzs_register' into develop_tzs_register

parents c45293e1 71e5e5d7
package com.yeejoin.amos.boot.biz.common.utils;
import com.baomidou.mybatisplus.core.toolkit.IdWorker;
import org.springframework.stereotype.Component;
@Component
public class SnowflakeIdUtil {
public Long nextId() {
return IdWorker.getId();
}
}
......@@ -2,7 +2,6 @@ package com.yeejoin.amos.boot.biz.config;
import com.baomidou.mybatisplus.autoconfigure.ConfigurationCustomizer;
import com.baomidou.mybatisplus.core.config.GlobalConfig;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.interceptors.PermissionInterceptor;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
......@@ -25,11 +24,6 @@ public class MyBatisPlusConfig {
return globalConfig;
}
@Bean
public Sequence sequence() {
return new Sequence();
}
/**
* pageHelper插件支持
*
......
......@@ -317,7 +317,6 @@ public class RescueStationController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/import")
@ApiOperation(httpMethod = "POST", value = "救援站列表数据导入", notes = "救援站列表数据导入")
@CrossOrigin("*")
public ResponseModel<Object> expertDataImport(@RequestBody MultipartFile file) {
// 校验文件是否为空
if (file.isEmpty()) {
......
......@@ -31,7 +31,7 @@ import org.typroject.tyboot.core.foundation.utils.Bean;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.common.api.dto.DutyCarDto;
......@@ -66,7 +66,7 @@ public class DutyCommonServiceImpl implements IDutyCommonService {
DutyPersonShiftServiceImpl dutyPersonShiftService;
@Autowired
Sequence sequence;
SnowflakeIdUtil sequence;
@Autowired
HttpServletRequest request;
......
......@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.module.common.api.dto.DynamicFormInstanceDto;
......@@ -35,7 +35,7 @@ import java.util.stream.Collectors;
public class DynamicFormInstanceServiceImpl extends BaseService<DynamicFormInstanceDto, DynamicFormInstance, DynamicFormInstanceMapper> implements IDynamicFormInstanceService {
@Autowired
Sequence sequence;
SnowflakeIdUtil sequence;
@Autowired
DynamicFormColumnServiceImpl dynamicFormColumnService;
......
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.entity.DataDictionary;
import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.FirefightersContractDto;
import com.yeejoin.amos.boot.module.common.api.entity.FirefightersContract;
......@@ -36,7 +36,7 @@ public class FirefightersContractServiceImpl extends BaseService<FirefightersCon
@Autowired
SourceFileServiceImpl sourceFileService;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
DataDictionaryServiceImpl iDataDictionaryService;
......
......@@ -27,7 +27,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -75,7 +75,7 @@ public class KeySiteServiceImpl extends BaseService<KeySiteDto, KeySite, KeySite
EquipFeignClient equipFeignClient;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Value("${auth-key-key-site:key_site_info}")
private String authKey;
......
......@@ -5,7 +5,7 @@ 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.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.base.Joiner;
import com.google.common.collect.Lists;
......@@ -65,7 +65,7 @@ public class MaintenanceCompanyServiceImpl
DynamicFormColumnServiceImpl dynamicFormColumnServiceImpl;
@Autowired
Sequence sequence;
SnowflakeIdUtil sequence;
@Autowired
MaintenanceCompanyMapper maintenanceCompanyMapper;
......
......@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.common.biz.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
......@@ -35,7 +35,7 @@ import java.util.stream.Collectors;
public class SourceFileServiceImpl extends BaseService<SourceFileDto, SourceFile, SourceFileMapper> implements ISourceFileService {
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
/**
* 分页查询
......
......@@ -4,7 +4,7 @@ package com.yeejoin.amos.boot.module.cylinder.biz.event.listener;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.cylinder.api.dto.CylinderQuestionInfoDto;
import com.yeejoin.amos.boot.module.cylinder.api.entity.CylinderQuestionInfo;
import com.yeejoin.amos.boot.module.cylinder.biz.event.CylinderQuestionCreateEvent;
......@@ -40,11 +40,11 @@ public class CylinderQuestionCreateEventListener implements ApplicationListener<
private CylinderQuestionInfoServiceImpl cylinderQuestionInfoService;
private Sequence sequence;
private SnowflakeIdUtil sequence;
public CylinderQuestionCreateEventListener(CylinderInfoServiceImpl cylinderInfoService,
CylinderQuestionInfoServiceImpl cylinderQuestionInfoService,
Sequence sequence) {
SnowflakeIdUtil sequence) {
this.cylinderInfoService = cylinderInfoService;
this.cylinderQuestionInfoService = cylinderQuestionInfoService;
this.sequence = sequence;
......
......@@ -5,7 +5,7 @@ import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.cylinder.api.dto.CylinderFillingRecordStatisticsUnitDayDto;
import com.yeejoin.amos.boot.module.cylinder.api.entity.CylinderFillingRecordStatisticsUnitDay;
import com.yeejoin.amos.boot.module.cylinder.biz.event.CylinderStatisticsUnitDayInsertOrUpdateEvent;
......@@ -46,12 +46,12 @@ public class CylinderStatisticsUnitDayInsertOrUpdateEventListener implements App
private ReentrantLock reentrantLock = new ReentrantLock();
private Sequence sequence;
private SnowflakeIdUtil sequence;
private CylinderFillingRecordStatisticsUnitDayServiceImpl statisticsUnitDayService;
public CylinderStatisticsUnitDayInsertOrUpdateEventListener(CylinderFillingRecordStatisticsUnitDayServiceImpl statisticsUnitDayService,
Sequence sequence) {
SnowflakeIdUtil sequence) {
this.statisticsUnitDayService = statisticsUnitDayService;
this.sequence = sequence;
}
......
......@@ -118,11 +118,11 @@ public interface CommonMapper extends BaseMapper<EquipmentCategory> {
/**
* 查询出厂编码是否重复
* @param factoryNum 出厂编码
* @param sequenceNbr id
* @param record 设备record
* @return Integer
*/
Integer checkFactoryNumUnique(@Param("factoryNum") String factoryNum,
@Param("sequenceNbr") String sequenceNbr,
@Param("record") String record,
@Param("produceUnitCreditCode") String produceUnitCreditCode);
/**
......
......@@ -2,12 +2,11 @@ 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.JgEquipInsuranceDto;
import com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgEquipInsurance;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
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;
......@@ -24,4 +23,7 @@ public interface JgEquipInsuranceMapper extends BaseMapper<JgEquipInsurance> {
@Param("dto") JgEquipInsuranceDto dto);
JgEquipInsuranceDto getDetailById(@Param("sequenceNbr") Long sequenceNbr);
@MapKey("orgCode")
List<Map<String, Object>> getEquipInsuranceTotal(@Param("orgCode") String orgCode);
}
......@@ -804,6 +804,9 @@
AND ibjfi."FACTORY_NUM" = #{factoryNum}
AND ibjfi."PRODUCE_UNIT_CREDIT_CODE" = #{produceUnitCreditCode}
AND joi.CLAIM_STATUS = '已认领'
<if test="record != null and record !=''">
AND ibjfi."RECORD" <![CDATA[ <> ]]> #{record}
</if>
</select>
<select id="useRegistrationCertificateAccountUnique" resultType="java.lang.Integer">
......
......@@ -14,7 +14,7 @@
tjei.insurance_number as insuranceNumber,
tjei.insurance_expiration_date as insuranceExpirationDate,
date_format(tjei.rec_date,'%Y-%m-%d') as recDate,
jri.ORGANIZATION_NAME as receiveOrgName,
ibjsi.ORG_BRANCH_NAME as receiveOrgName,
jri.USE_ORG_CODE as useRegistrationCode,
ibjui.USE_UNIT_NAME as useUnitName,
ibjui.USE_INNER_CODE as useInnerCode,
......@@ -27,6 +27,7 @@
LEFT JOIN idx_biz_jg_register_info jri on tjei.equ_id = jri.RECORD
LEFT JOIN idx_biz_jg_use_info ibjui on tjei.equ_id = ibjui.RECORD
LEFT JOIN idx_biz_jg_factory_info ibjfi on tjei.equ_id = ibjfi.RECORD
LEFT JOIN idx_biz_jg_supervision_info ibjsi ON tjei.equ_id = ibjsi.RECORD
</sql>
<select id="getListPage" resultType="com.yeejoin.amos.boot.module.jg.api.dto.JgEquipInsuranceDto">
......@@ -61,4 +62,17 @@
<include refid="page-list"/>
where tjei.sequence_nbr = #{sequenceNbr} and tjei.is_delete = 0
</select>
<select id="getEquipInsuranceTotal" resultType="map">
SELECT
COALESCE(SUM(CASE WHEN jri.EQU_LIST = '3000' THEN 1 ELSE 0 END), 0) AS elevatorInsuranceCount,
COALESCE(SUM(CASE WHEN jri.EQU_CATEGORY = '2300' THEN 1 ELSE 0 END), 0) AS cylinderInsuranceCount
FROM
tzs_jg_equip_insurance tjei
LEFT JOIN idx_biz_jg_supervision_info ibjsi ON tjei.equ_id = ibjsi.RECORD
LEFT JOIN idx_biz_jg_register_info jri ON tjei.equ_id = jri.RECORD
WHERE
tjei.is_delete = 0
AND ibjsi.ORG_BRANCH_CODE LIKE CONCAT(#{orgCode}, '%');
</select>
</mapper>
......@@ -626,6 +626,7 @@
WHERE
ri."EQU_DEFINE" = '23T0'
and ui."DATA_SOURCE" like 'jg%'
and ui."DATA_SOURCE" not like 'jg_his%'
and ri.whether_vehicle_cylinder = 1
-- 保证使用单位选择设备时(record为null) 能选择到本单位的设备 并且 监管单位在查看时(record 不为null)可以匹配到所有的设备
<if test="jsonObject.useUnitCreditCode != null and jsonObject.useUnitCreditCode != '' and jsonObject.record == null">
......
......@@ -202,4 +202,22 @@ public class JgChangeRegistrationUnitController extends BaseController {
jgChangeRegistrationUnitServiceImpl.exportUseRegistrationCertificate(sequenceNbr, response, printType);
}
/**
* bug24304脏数据处理(单位变更登记 注销 一勾选过多,部分变更设备失败,现在将变更失败的设备变更过去)
*
* @param applyNos 单位变更 / 注销 的申请编号
* @return result
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/bug24304")
@ApiOperation(httpMethod = "GET", value = "bug24304脏数据处理(单位变更登记 注销 一勾选过多,部分变更设备失败,现在将变更失败的设备变更过去)",
notes = "bug24304脏数据处理(单位变更登记 注销 一勾选过多,部分变更设备失败,现在将变更失败的设备变更过去")
public ResponseModel<String> bug24304(@RequestParam(value = "businessType", defaultValue = "1")
@ApiParam(value = "业务类型 , 单位变更 =》 1, 注销 =》 2, 默认值为单位变更") String businessType,
@RequestParam(value = "applyNos")
@ApiParam(value = "单位变更/注销业务的申请编号,多个用逗号分隔") String applyNos) {
jgChangeRegistrationUnitServiceImpl.bug24304Handle(businessType, applyNos);
return ResponseHelper.buildResponse(businessType.equals("1") ? "单位变更" : "注销" + "业务," + "申请单号:" + applyNos + "数据修改成功");
}
}
......@@ -13,7 +13,6 @@ 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.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.base.Joiner;
......@@ -24,6 +23,7 @@ import com.yeejoin.amos.boot.biz.common.service.impl.DataDictionaryServiceImpl;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.common.api.dao.ESEquipmentCategory;
import com.yeejoin.amos.boot.module.common.api.dto.ESEquipmentCategoryDto;
import com.yeejoin.amos.boot.module.jg.api.dto.CodeGenerateDto;
......@@ -266,7 +266,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
@Autowired
private JgCertificateChangeRecordServiceImpl certificateChangeRecordService;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
private JgCertificateChangeRecordEqServiceImpl certificateChangeRecordEqService;
@Autowired
......@@ -379,11 +379,11 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
if (paramMap == null) {
throw new IllegalArgumentException("参数Map不能为空");
}
String record = null;
LinkedHashMap equipmentClassForm = (LinkedHashMap) checkAndCast(paramMap.get(EQUIP_CLASS_FORM_ID));
LinkedHashMap equipmentInfoForm = (LinkedHashMap) checkAndCast(paramMap.get(EQUIP_INFO_FORM_ID));
LinkedHashMap equipmentParamsForm = (LinkedHashMap) checkAndCast(paramMap.get(EQUIP_PARAMS_FORM_ID));
String submitType = String.valueOf(paramMap.get("submitType"));
String record = (String) equipmentInfoForm.get(RECORD);
try {
// 设备代码 字段的唯一性校验
......@@ -392,6 +392,8 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
checkFactoryNumUniqueness(equipmentInfoForm);
// 96333码 字段的唯一性校验
check96333Code(equipmentInfoForm);
// 气瓶 校验制造单位统一信用代码与出场编码唯一
checkFactoryNumUniqueWithGasCylinder(equipmentInfoForm, record);
} catch (Exception e) {
handleError(e, null);
}
......@@ -401,7 +403,7 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
boolean isManageType = (!ObjectUtils.isEmpty(manageType) && MANAGE_TYPE_UNIT.equals(manageType));
if (!isManageType) {
// 编辑校验
this.checkForEquipEdit(equipmentInfoForm.get(RECORD));
this.checkForEquipEdit(record);
}
// 操作类型
try {
......@@ -453,6 +455,14 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
}
}
private void checkFactoryNumUniqueWithGasCylinder(LinkedHashMap equipmentInfoForm, String record) {
if (equipmentInfoForm.get(EQU_LIST).equals("2000")
&& equipmentInfoForm.get(EQU_CATEGORY).equals("2300")
&& commonMapper.checkFactoryNumUnique(String.valueOf(equipmentInfoForm.get(FACTORY_NUM)), record, String.valueOf(equipmentInfoForm.get("PRODUCE_UNIT_CREDIT_CODE"))) > 0) {
throw new BadRequest("出厂编号/产品编码在该企业中已存在!");
}
}
private void checkFactoryNumUniqueness(LinkedHashMap equipmentInfoForm) {
// 车用气瓶业务里面的 出厂编号/产品编码 校验唯一性(产品编号在车用气瓶范围内全局唯一)
Integer factoryNum = commonMapper.checkFactoryNumUniquenessForVehicleCylinder((String) equipmentInfoForm.get(FACTORY_NUM), (String) equipmentInfoForm.get(RECORD));
......@@ -480,10 +490,10 @@ public class IdxBizJgRegisterInfoServiceImpl extends BaseService<IdxBizJgRegiste
throw new BadRequest(e.getMessage());
}
private void checkForEquipEdit(Object record) {
private void checkForEquipEdit(String record) {
// 标识编辑
if (record != null) {
Integer inUseTime = commonService.countEquipInUseTimesForEdit(record.toString());
if (!ValidationUtil.isEmpty(record)) {
Integer inUseTime = commonService.countEquipInUseTimesForEdit(record);
if (inUseTime > 0) {
throw new BadRequest("此设备在被其他业务引用,不可编辑!");
}
......
......@@ -37,7 +37,9 @@ import com.yeejoin.amos.boot.module.ymt.flc.api.entity.RegUnitInfo;
import com.yeejoin.amos.boot.module.ymt.flc.api.feign.AccessFeignService;
import com.yeejoin.amos.boot.module.ymt.flc.api.mapper.RegUnitInfoMapper;
import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
......@@ -932,7 +934,8 @@ public class JgChangeRegistrationNameServiceImpl extends BaseService<JgChangeReg
jgCertificateChangeRecord.setAuditPassDate(new Date());
jgCertificateChangeRecord.setRegType(CHANGE_NAME);
jgCertificateChangeRecord.setRegDate(jgChangeRegistrationName.getApplyDate());
jgCertificateChangeRecord.setChangeContent(jgChangeRegistrationName.getCreateUserName() + "办理了【" + CHANGE_NAME + "】," + "单号【" + jgChangeRegistrationName.getApplyNo() +
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgChangeRegistrationName.getCreateUserId());
jgCertificateChangeRecord.setChangeContent(jgChangeRegistrationName.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + CHANGE_NAME + "】," + "单号【" + jgChangeRegistrationName.getApplyNo() +
"】,原" + jgChangeRegistrationName.getUseUnitName() + "变更为" + jgChangeRegistrationName.getNewUseUnitName() + ",办理日期" + sdf.format(jgChangeRegistrationName.getAuditPassDate()));
jgCertificateChangeRecord.setRecUserId(jgChangeRegistrationName.getRecUserId());
jgCertificateChangeRecord.setRecDate(new Date());
......
......@@ -6,7 +6,7 @@ import com.alibaba.fastjson.JSON;
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.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -33,6 +33,9 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgRegisterInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgTechParamsElevatorMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.OtherInfoMapper;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
......@@ -149,7 +152,7 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
private JgCertificateChangeRecordEqServiceImpl jgCertificateChangeRecordEqService;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
/***
* @deprecated 根据查询调教获取分页对象
......@@ -483,7 +486,8 @@ public class JgChangeRegistrationReformServiceImpl extends BaseService<JgChangeR
jgCertificateChangeRecord.setAuditPassDate(new Date());
jgCertificateChangeRecord.setRegType(BUSINESS_TYPE);
jgCertificateChangeRecord.setRegDate(jgChangeRegistrationReform.getCreateDate());
jgCertificateChangeRecord.setChangeContent(jgChangeRegistrationReform.getCreateUserName() + "办理了【" + BUSINESS_TYPE + "】," + "单号【" + jgChangeRegistrationReform.getApplyNo() +
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgChangeRegistrationReform.getCreateUserId());
jgCertificateChangeRecord.setChangeContent(jgChangeRegistrationReform.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() +"办理了【" + BUSINESS_TYPE + "】," + "单号【" + jgChangeRegistrationReform.getApplyNo() +
"】" + ",办理日期" + sdf.format(jgChangeRegistrationReform.getAuditPassDate()));
jgCertificateChangeRecord.setRecUserId(jgChangeRegistrationReform.getRecUserId());
jgCertificateChangeRecord.setRecDate(new Date());
......
......@@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSON;
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.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.ImmutableMap;
......@@ -37,6 +37,9 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgOtherInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgRegisterInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgSupervisionInfoMapper;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
......@@ -129,7 +132,7 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
@Autowired
private JgUseRegistrationManageServiceImpl registrationManageService;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
private JgCertificateChangeRecordServiceImpl certificateChangeRecordService;
@Autowired
......@@ -907,7 +910,8 @@ public class JgChangeRegistrationTransferServiceImpl extends BaseService<JgChang
private String buildRecordContent(JgChangeRegistrationTransfer obj) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
return obj.getCreateUserName() + "办理了【移装变更登记】,单号【"
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(obj.getCreateUserId());
return obj.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【移装变更登记】,单号【"
+ obj.getApplyNo() + "】,移装后地址为" + obj.getFullAddress() + ",申请日期" + simpleDateFormat.format(new Date());
}
......
......@@ -33,8 +33,10 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgOtherInfoMapper;
import com.yeejoin.amos.boot.module.ymt.api.mapper.IdxBizJgUseInfoMapper;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
......@@ -487,7 +489,8 @@ public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgCh
jgCertificateChangeRecord.setAuditPassDate(new Date());
jgCertificateChangeRecord.setRegType(BUSINESS_NAME);
jgCertificateChangeRecord.setRegDate(jgChangeVehicleRegistrationUnit.getApplyDate());
jgCertificateChangeRecord.setChangeContent(jgChangeVehicleRegistrationUnit.getCreateUserName() + "办理了【" + BUSINESS_NAME + "】," + "单号【" + jgChangeVehicleRegistrationUnit.getApplyNo() +
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgChangeVehicleRegistrationUnit.getCreateUserId());
jgCertificateChangeRecord.setChangeContent(jgChangeVehicleRegistrationUnit.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + BUSINESS_NAME + "】," + "单号【" + jgChangeVehicleRegistrationUnit.getApplyNo() +
"】,原" + jgChangeVehicleRegistrationUnit.getUseUnitName() + "变更为" + jgChangeVehicleRegistrationUnit.getNewUseUnitName() + ",办理日期" + sdf.format(jgChangeVehicleRegistrationUnit.getAuditPassDate()));
jgCertificateChangeRecord.setRecUserId(jgChangeVehicleRegistrationUnit.getRecUserId());
jgCertificateChangeRecord.setRecDate(new Date());
......
......@@ -3,7 +3,7 @@ package com.yeejoin.amos.boot.module.jg.biz.service.impl;
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.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -107,7 +107,7 @@ public class JgEnableDisableServiceImpl extends BaseService<JgEnableDisableDto,
private JgRegistrationHistoryMapper jgRegistrationHistoryMapper;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
private IdxBizJgInspectionDetectionInfoServiceImpl jgInspectionDetectionInfoService;
......
......@@ -35,6 +35,8 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import java.io.IOException;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.*;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.ConcurrentHashMap;
......@@ -63,6 +65,13 @@ public class JgEquipInsuranceServiceImpl extends BaseService<JgEquipInsurance,Jg
private static final String INDEX_NAME = "idx_biz_view_jg_all";
public static final String REGION_CODE = "regionCode";
public static final String REGION_NAME = "regionName";
public static final String ELEVATOR = "elevator";
public static final String CYLINDER = "cylinder";
public static final String ELEVATOR_INSURANCE_COUNT = "elevatorInsuranceCount";
public static final String CYLINDER_INSURANCE_COUNT = "cylinderInsuranceCount";
public static final String ELEVATOR_INSURANCE_RATE = "elevatorInsuranceRate";
public static final String CYLINDER_INSURANCE_RATE = "cylinderInsuranceRate";
private static final Map<String, String> regionCodeOrgCodeMap = new ConcurrentHashMap<>();
......@@ -134,8 +143,7 @@ public class JgEquipInsuranceServiceImpl extends BaseService<JgEquipInsurance,Jg
public Map<String, Object> countLiabilityInsuranceStatisticsByCity() {
List<RegionModel> regionModelList = Systemctl.regionClient.queryByLevel("2").getResult();
List<Map<String, Object>> esQueryResults = processAsync(regionModelList, this::esQuery);
List<Map<String, Object>> insuranceResults = processAsync(regionModelList, this::getInsurance);
return assemblingHistogramData(esQueryResults, insuranceResults);
return assemblingHistogramData(esQueryResults);
}
// 公共方法,用于异步处理逻辑
......@@ -148,13 +156,6 @@ public class JgEquipInsuranceServiceImpl extends BaseService<JgEquipInsurance,Jg
.collect(Collectors.toList());
}
private Map<String, Object> getInsurance(RegionModel regionModel) {
Map<String, Object> resultMap = new HashMap<>();
resultMap.put("ELEVATOR_INSURANCE", "");
resultMap.put("CYLINDER_INSURANCE", "");
return resultMap;
}
public String getAndSetOrgCode(String cityCode) {
String orgCode = regionCodeOrgCodeMap.get(cityCode);
if (orgCode == null) {
......@@ -194,67 +195,93 @@ public class JgEquipInsuranceServiceImpl extends BaseService<JgEquipInsurance,Jg
SearchResponse searchResponse = restHighLevelClient.search(searchRequest, RequestOptions.DEFAULT);
// 获取所有聚合结果
Filters aggregation = searchResponse.getAggregations().get("equipmentCount");
return getStringObjectMap(regionModel, aggregation);
List<Map<String, Object>> equipInsuranceMap = this.baseMapper.getEquipInsuranceTotal(orgCode);
return getStringObjectMap(regionModel, aggregation, equipInsuranceMap);
} catch (IOException e) {
e.printStackTrace();
}
return Collections.emptyMap();
}
private static Map<String, Object> getStringObjectMap(RegionModel regionModel, Filters aggregation) {
private static Map<String, Object> getStringObjectMap(RegionModel regionModel, Filters aggregation, List<Map<String, Object>> equipInsuranceMap) {
long elevatorCount = 0;
long gasCylinderCount = 0;
long cylinderCount = 0;
BigDecimal elevatorInsuranceRate;
BigDecimal cylinderInsuranceRate;
// 遍历 bucket 获取电梯和气瓶的总数
for (Filters.Bucket bucket : aggregation.getBuckets()) {
String key = bucket.getKeyAsString();
long docCount = bucket.getDocCount();
if ("电梯".equals(key)) {
elevatorCount = docCount;
} else if ("气瓶".equals(key)) {
gasCylinderCount = docCount;
cylinderCount = docCount;
}
}
// 将Long类型的值转换为BigDecimal
BigDecimal cylinderInsuranceCount = BigDecimal.valueOf((Long) equipInsuranceMap.get(0).get(CYLINDER_INSURANCE_COUNT));
BigDecimal elevatorInsuranceCount = BigDecimal.valueOf((Long) equipInsuranceMap.get(0).get(ELEVATOR_INSURANCE_COUNT));
// 计算保险覆盖率,避免除以零的情况
elevatorInsuranceRate = elevatorCount == 0 ? BigDecimal.ZERO :
elevatorInsuranceCount.divide(BigDecimal.valueOf(elevatorCount), 2, RoundingMode.HALF_UP);
cylinderInsuranceRate = cylinderCount == 0 ? BigDecimal.ZERO :
cylinderInsuranceCount.divide(BigDecimal.valueOf(cylinderCount), 2, RoundingMode.HALF_UP);
// 构建结果Map
Map<String, Object> resultMap = new HashMap<>();
resultMap.put(REGION_CODE, regionModel.getRegionCode());
resultMap.put("REGION_NAME", regionModel.getRegionName());
resultMap.put("ELEVATOR", elevatorCount);
resultMap.put("CYLINDER", gasCylinderCount);
resultMap.put(REGION_NAME, regionModel.getRegionName());
resultMap.put(ELEVATOR, elevatorCount);
resultMap.put(CYLINDER, cylinderCount);
resultMap.put(ELEVATOR_INSURANCE_RATE, elevatorInsuranceRate);
resultMap.put(CYLINDER_INSURANCE_RATE, cylinderInsuranceRate);
return resultMap;
}
private static Map<String, Object> assemblingHistogramData(List<Map<String, Object>> esQueryResults,List<Map<String, Object>> insuranceResults) {
private static Map<String, Object> assemblingHistogramData(List<Map<String, Object>> esQueryResults) {
// 组装数据
Map<String, Object> result = new HashMap<>();
List<Map<String, Object>> seriesData = new ArrayList<>();
List<Map<String, Object>> barSeriesData = new ArrayList<>();
List<Map<String, Object>> lineSeriesData = new ArrayList<>();
List<String> axisData = new ArrayList<>();
List<String> cylinderDataList = new ArrayList<>();
List<String> elevatorDataList = new ArrayList<>();
List<String> cylinderDataListRate = new ArrayList<>();
List<String> elevatorDataListRate = new ArrayList<>();
esQueryResults.forEach(x -> {
axisData.add(String.valueOf(x.get("regionName")));
cylinderDataList.add(String.valueOf(x.get("CYLINDER")));
elevatorDataList.add(String.valueOf(x.get("ELEVATOR")));
axisData.add(String.valueOf(x.get(REGION_NAME)));
cylinderDataList.add(String.valueOf(x.get(CYLINDER)));
elevatorDataList.add(String.valueOf(x.get(ELEVATOR)));
elevatorDataListRate.add(String.valueOf(x.get(ELEVATOR_INSURANCE_RATE)));
cylinderDataListRate.add(String.valueOf(x.get(CYLINDER_INSURANCE_RATE)));
});
HashMap<String, Object> temMap1 = new HashMap<>();
temMap1.put("data", elevatorDataList);
temMap1.put("name", "电梯");
temMap1.put("type", "bar");
HashMap<String, Object> temMap2 = new HashMap<>();
temMap1.put("data", cylinderDataList);
temMap1.put("name", "气瓶");
temMap2.put("data", cylinderDataList);
temMap2.put("name", "气瓶");
temMap2.put("type", "bar");
HashMap<String, Object> temMap3 = new HashMap<>();
temMap1.put("data", elevatorDataListRate);
temMap1.put("name", "电梯覆盖率");
temMap3.put("data", elevatorDataListRate);
temMap3.put("name", "电梯覆盖率");
temMap3.put("type", "line");
HashMap<String, Object> temMap4 = new HashMap<>();
temMap2.put("data", cylinderDataListRate);
temMap2.put("name", "气瓶覆盖率");
seriesData.add(temMap1);
seriesData.add(temMap2);
seriesData.add(temMap3);
seriesData.add(temMap4);
result.put("seriesData", seriesData);
temMap4.put("data", cylinderDataListRate);
temMap4.put("name", "气瓶覆盖率");
temMap4.put("type", "line");
barSeriesData.add(temMap1);
barSeriesData.add(temMap2);
lineSeriesData.add(temMap3);
lineSeriesData.add(temMap4);
result.put("axisData", axisData);
result.put("barSeriesData", barSeriesData);
result.put("lineSeriesData", lineSeriesData);
return result;
}
}
\ No newline at end of file
......@@ -7,7 +7,7 @@ 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.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.util.StringUtil;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -50,8 +50,10 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquCodeTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
......@@ -161,7 +163,7 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
@Autowired
JgCertificateChangeRecordEqServiceImpl certificateChangeRecordEqService;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
private JgInstallationNoticeMapper jgInstallationNoticeMapper;
@Autowired
......@@ -1366,9 +1368,11 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
}
private String buildRecordContent(JgInstallationNotice obj) {
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(obj.getCreateUserId());
//张三办理了【单位变更】 ,单号【DWBG202407050001】,办理日期2024-07-05
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
return obj.getCreateUserName() + "办理了【" + BusinessTypeEnum.JG_INSTALLATION_NOTIFICATION.getName() + "】,单号【"
return obj.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + BusinessTypeEnum.JG_INSTALLATION_NOTIFICATION.getName() + "】,单号【"
+ obj.getApplyNo() + "】,申请日期" + simpleDateFormat.format(obj.getCreateDate());
}
......
......@@ -5,7 +5,7 @@ import com.alibaba.fastjson.JSON;
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.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -42,6 +42,9 @@ import com.yeejoin.amos.boot.module.ymt.api.entity.TzBaseEnterpriseInfo;
import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.Workflow;
import com.yeejoin.amos.feign.workflow.model.*;
......@@ -114,7 +117,7 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
ESEquipmentCategory esEquipmentCategory;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
SupervisoryCodeInfoMapper supervisoryCodeInfoMapper;
......@@ -1065,7 +1068,8 @@ public class JgMaintainNoticeServiceImpl extends BaseService<JgMaintainNoticeDto
private void saveRecord(JgMaintainNotice jgMaintainNotice, List<JgMaintainNoticeEq> jgMaintainNoticeEqList, String routePath) {
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
String content = jgMaintainNotice.getCreateUserName() + "办理了【维修告知】" +
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgMaintainNotice.getCreateUserId());
String content =jgMaintainNotice.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【维修告知】" +
"单号【" + jgMaintainNotice.getApplyNo() + "】,办理日期" + DateUtils.getDateNowShortStr();
List<JgCertificateChangeRecord> certificateChangeRecords = new ArrayList<>();
List<JgCertificateChangeRecordEq> changeRecordEqList = new ArrayList<>();
......
......@@ -6,7 +6,7 @@ import com.alibaba.fastjson.JSON;
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.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.util.StringUtil;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -112,7 +112,7 @@ public class JgReformNoticeServiceImpl extends BaseService<JgReformNoticeDto, Jg
@Autowired
RedisUtils redisUtils;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
IIdxBizJgRegisterInfoService idxBizJgRegisterInfoService;
@Autowired
......
......@@ -7,7 +7,6 @@ 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.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -15,6 +14,7 @@ import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.jg.api.dto.*;
import com.yeejoin.amos.boot.module.jg.api.entity.*;
import com.yeejoin.amos.boot.module.jg.api.enums.*;
......@@ -38,6 +38,7 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.EquimentEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentClassifityEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
......@@ -123,7 +124,7 @@ public class JgScrapCancelServiceImpl extends BaseService<JgScrapCancelDto, JgSc
private JgCertificateChangeRecordEqServiceImpl jgCertificateChangeRecordEqServiceImpl;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
/**
* 移装移装注销/报废注销判断
......@@ -1059,8 +1060,8 @@ public class JgScrapCancelServiceImpl extends BaseService<JgScrapCancelDto, JgSc
private void saveRecord(JgScrapCancel jgScrapCancel, List<JgScrapCancelEq> jgScrapCancelEqList, String routePath, List<JgUseRegistrationManage> jgUseRegistrationManageList) {
String userName = jgScrapCancel.getCreateUserName();
String content = userName + "办理了【" + CancelTypeEnum.getNameByType(jgScrapCancel.getCancelType()) + "】" +
String realName = Privilege.agencyUserClient.queryByUserId(jgScrapCancel.getCreateUserId()).getResult().getRealName();
String content = jgScrapCancel.getUseUnitName() + "的" + realName + "办理了【" + CancelTypeEnum.getNameByType(jgScrapCancel.getCancelType()) + "】" +
"单号【" + jgScrapCancel.getApplyNo() + "】,办理日期" + DateUtils.getDateNowShortStr();
List<JgCertificateChangeRecord> certificateChangeRecords = new ArrayList<>();
List<JgCertificateChangeRecordEq> changeRecordEqList = new ArrayList<>();
......
......@@ -21,14 +21,20 @@ import com.yeejoin.amos.boot.module.ymt.api.entity.IdxBizJgUseInfo;
import com.yeejoin.amos.boot.module.ymt.api.enums.ApplicationFormTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquipmentCategoryEnum;
import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.lucene.queryparser.classic.QueryParser;
import org.elasticsearch.action.search.ClearScrollRequest;
import org.elasticsearch.action.search.SearchRequest;
import org.elasticsearch.action.search.SearchResponse;
import org.elasticsearch.action.search.SearchScrollRequest;
import org.elasticsearch.client.RequestOptions;
import org.elasticsearch.client.RestHighLevelClient;
import org.elasticsearch.core.TimeValue;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.index.query.TermsQueryBuilder;
import org.elasticsearch.search.Scroll;
import org.elasticsearch.search.SearchHit;
import org.elasticsearch.search.builder.SearchSourceBuilder;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -51,6 +57,7 @@ import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
import java.util.stream.Collectors;
import static com.alibaba.fastjson.JSON.parseArray;
......@@ -114,6 +121,9 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
@Autowired
private RedisTemplate<String, String> redisTemplate;
private static final long SCROLL_TIMEOUT = 180000;
private static final int SIZE = 1000;
/**
* 将已经通过使用登记审批的证信息录入到 jg-use-registration-manage 表中
......@@ -343,30 +353,87 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
if (ValidationUtil.isEmpty(jgUseRegistrationManageList)) {
return new ArrayList<>();
}
List<JSONObject> result = new ArrayList<>();
// List<JSONObject> result = new ArrayList<>();
Set<String> useOrgCodes = jgUseRegistrationManageList.stream().map(JgUseRegistrationManage::getUseRegistrationCode).collect(Collectors.toSet());
// es中通过查询【使用登记证编号】所有设备
SearchRequest request = new SearchRequest("idx_biz_view_jg_all");
SearchSourceBuilder builder = new SearchSourceBuilder();
builder.trackTotalHits(true);
// SearchRequest request = new SearchRequest("idx_biz_view_jg_all");
// SearchSourceBuilder builder = new SearchSourceBuilder();
// builder.trackTotalHits(true);
BoolQueryBuilder boolQuery = QueryBuilders.boolQuery();
TermsQueryBuilder termsQuery = QueryBuilders.termsQuery("USE_ORG_CODE", useOrgCodes);
boolQuery.must(termsQuery);
builder.query(boolQuery);
builder.size(useOrgCodes.size());
request.source(builder);
// builder.query(boolQuery);
// builder.size(useOrgCodes.size());
// request.source(builder);
List<JSONObject> result = Collections.emptyList();
try {
SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
for (SearchHit hit : response.getHits().getHits()) {
JSONObject jsonObject = (JSONObject) JSONObject.toJSON(hit);
JSONObject dto2 = jsonObject.getJSONObject("sourceAsMap");
result.add(dto2);
result = searchResponse("idx_biz_view_jg_all", boolQuery, hit -> JSONObject.parseObject(hit.getSourceAsString(), JSONObject.class));
}catch (Exception ex){
ex.printStackTrace();
}
// try {
// SearchResponse response = restHighLevelClient.search(request, RequestOptions.DEFAULT);
// for (SearchHit hit : response.getHits().getHits()) {
// JSONObject jsonObject = (JSONObject) JSONObject.toJSON(hit);
// JSONObject dto2 = jsonObject.getJSONObject("sourceAsMap");
// result.add(dto2);
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
return result;
}
/**
* 构建SearchResponse
*
* @param indices 索引
* @param query queryBuilder
* @param fun 返回函数
* @param <T> 返回类型
* @return List, 可以使用fun转换为T结果
* @throws Exception e
*/
public <T> List<T> searchResponse(String indices, QueryBuilder query, Function<SearchHit, T> fun) throws Exception {
SearchRequest request = new SearchRequest(indices);
Scroll scroll = new Scroll(TimeValue.timeValueMillis(SCROLL_TIMEOUT));
SearchSourceBuilder sourceBuilder = new SearchSourceBuilder();
sourceBuilder.query(query);
sourceBuilder.size(SIZE);
request.scroll(scroll);
request.source(sourceBuilder);
List<String> scrollIdList = new ArrayList<>();
List<T> result = new ArrayList<>();
SearchResponse searchResponse = restHighLevelClient.search(request, RequestOptions.DEFAULT);
String scrollId = searchResponse.getScrollId();
SearchHit[] hits = searchResponse.getHits().getHits();
scrollIdList.add(scrollId);
try {
while (ArrayUtils.isNotEmpty(hits)) {
for (SearchHit hit : hits) {
result.add(fun.apply(hit));
}
if (hits.length < SIZE) {
break;
}
SearchScrollRequest searchScrollRequest = new SearchScrollRequest(scrollId);
searchScrollRequest.scroll(scroll);
SearchResponse searchScrollResponse = restHighLevelClient.scroll(searchScrollRequest, RequestOptions.DEFAULT);
scrollId = searchScrollResponse.getScrollId();
hits = searchScrollResponse.getHits().getHits();
scrollIdList.add(scrollId);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
ClearScrollRequest clearScrollRequest = new ClearScrollRequest();
clearScrollRequest.setScrollIds(scrollIdList);
restHighLevelClient.clearScroll(clearScrollRequest, RequestOptions.DEFAULT);
}
return result;
}
......@@ -541,6 +608,7 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
exportParamsMap.put("useInnerCode", deviceList.stream()
.map(equ -> String.valueOf(equ.get("USE_INNER_CODE")))
.filter(Objects::nonNull)
.distinct()
.collect(Collectors.joining(", ")));
}else{
exportParamsMap.put("fullAddress", manage.getEquUseAddress());
......
......@@ -10,7 +10,7 @@ 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.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
......@@ -45,6 +45,7 @@ import com.yeejoin.amos.boot.module.ymt.api.common.StringUtil;
import com.yeejoin.amos.boot.module.ymt.api.entity.*;
import com.yeejoin.amos.boot.module.ymt.api.enums.*;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
......@@ -180,7 +181,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
@Autowired
private RedissonClient redissonClient;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
private JgUseRegistrationEqServiceImpl jgUseRegistrationEqService;
@Autowired
......@@ -1368,9 +1369,12 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
}
private String buildRecordContent(JgUseRegistration obj, String businessName, Boolean flag) {
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(obj.getCreateUserId());
//张三办理了【单位变更】 ,单号【DWBG202407050001】,办理日期2024-07-05
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
return obj.getCreateUserName() + "办理了【" + businessName + (flag ? "设备增补" : "") + "】," +
return obj.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + businessName + (flag ? "设备增补" : "") + "】," +
"单号【" + obj.getApplyNo() + "】,申请日期" + simpleDateFormat.format(obj.getRecDate());
}
......@@ -2586,6 +2590,7 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
private void invalidUseRegistrationCertificate(JgUseRegistration jgUseRegistration) {
Integer count = jgUseRegistrationMapper.selectCount(new LambdaQueryWrapper<JgUseRegistration>()
.eq(JgUseRegistration::getUseRegistrationCode, jgUseRegistration.getUseRegistrationCode())
.ne(JgUseRegistration::getStatus, "已作废")
.eq(JgUseRegistration::getIsDelete, false));
// 一证对应多条使用登记单时,不作废证
if (count > 1) {
......@@ -3187,7 +3192,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
JgCertificateChangeRecord jgCertificateChangeRecord = new JgCertificateChangeRecord();
jgCertificateChangeRecord.setApplyNo("");
try {
changeContent = jgUseRegistration.getCreateUserName() + "办理了【" + BusinessTypeEnum.JG_INSTALLATION_NOTIFICATION.getName() + "】," +
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgUseRegistration.getCreateUserId());
changeContent = jgUseRegistration.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + BusinessTypeEnum.JG_INSTALLATION_NOTIFICATION.getName() + "】," +
"办理日期" + map.get("installStartDate");
jgCertificateChangeRecord.setAuditPassDate(simpleDateFormat.parse((String) map.get("installStartDate")));
jgCertificateChangeRecord.setRegDate(simpleDateFormat.parse((String) map.get("installStartDate")));
......@@ -3218,7 +3225,9 @@ public class JgUseRegistrationServiceImpl extends BaseService<JgUseRegistrationD
JgCertificateChangeRecord jgCertificateChangeRecord = new JgCertificateChangeRecord();
jgCertificateChangeRecord.setApplyNo("");
try {
changeContent = jgUseRegistration.getCreateUserName() + "办理了【" + BusinessTypeEnum.JG_MAINTENANCE_RECORD.getName() + "】," +
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(jgUseRegistration.getCreateUserId());
changeContent = jgUseRegistration.getUseUnitName()+"的"+agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + BusinessTypeEnum.JG_MAINTENANCE_RECORD.getName() + "】," +
"办理日期" + map.get("installStartDate");
jgCertificateChangeRecord.setAuditPassDate(simpleDateFormat.parse((String) map.get("informEnd")));
jgCertificateChangeRecord.setRegDate(simpleDateFormat.parse((String) map.get("informStart")));
......
......@@ -8,7 +8,7 @@ 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.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -45,8 +45,10 @@ import com.yeejoin.amos.boot.module.ymt.api.enums.EquCodeTypeEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.EquimentEnum;
import com.yeejoin.amos.boot.module.ymt.api.enums.FlowStatusEnum;
import com.yeejoin.amos.boot.module.ymt.api.mapper.*;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.Privilege;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
......@@ -123,7 +125,7 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
@Autowired
private RedisUtils redisUtils;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
private JgVehicleInformationEqMapper jgVehicleInformationEqMapper;
@Autowired
......@@ -1414,7 +1416,9 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
*/
private void invalidUseRegistrationCertificate(JgVehicleInformation jgVehicleInformation) {
Integer count = this.baseMapper.selectCount(new LambdaQueryWrapper<JgVehicleInformation>()
.eq(JgVehicleInformation::getUseRegistrationCode, jgVehicleInformation.getUseRegistrationCode()));
.eq(JgVehicleInformation::getUseRegistrationCode, jgVehicleInformation.getUseRegistrationCode())
.ne(JgVehicleInformation::getStatus, "已作废")
.eq(JgVehicleInformation::getIsDelete, false));
// 一证对应多条使用登记单时,不作废证
if (count > 1) {
return;
......@@ -1648,9 +1652,11 @@ public class JgVehicleInformationServiceImpl extends BaseService<JgVehicleInform
}
private String buildRecordContent(JgVehicleInformation obj) {
FeignClientResult<AgencyUserModel> agencyUserModelFeignClientResult = Privilege.agencyUserClient.queryByUserId(obj.getCreateUserId());
//张三办理了【单位变更】 ,单号【DWBG202407050001】,办理日期2024-07-05
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
return obj.getRecUserName() + "办理了【" + BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName() + "】," +
return obj.getUseUnitName()+"的"+ agencyUserModelFeignClientResult.getResult().getRealName() + "办理了【" + BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName() + "】," +
"单号【" + obj.getApplyNo() + "】,申请日期" + simpleDateFormat.format(obj.getRecDate());
}
......
package com.yeejoin.amos.boot.module.jyjc.biz.event.listener;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplicationNoAcceptLog;
import com.yeejoin.amos.boot.module.jyjc.api.enums.JYJCTypeEnum;
import com.yeejoin.amos.boot.module.jyjc.api.enums.RequestTypeEnum;
......@@ -43,7 +43,7 @@ import static com.yeejoin.amos.boot.module.jyjc.api.enums.CategoryEnum.getCatego
@Slf4j
public class EnableRuleDataPreparationListener implements ApplicationListener<InspectionOrgRefreshEvent> {
private Sequence sequence;
private SnowflakeIdUtil sequence;
private RegistrationInfoMapper registrationInfoMapper;
......@@ -63,7 +63,7 @@ public class EnableRuleDataPreparationListener implements ApplicationListener<In
private int threadNumber;
public EnableRuleDataPreparationListener(Sequence sequence,
public EnableRuleDataPreparationListener(SnowflakeIdUtil sequence,
RegistrationInfoMapper registrationInfoMapper,
RuleCommonServiceImpl ruleCommonService,
InspectionRuleEnableConfig inspectionRuleEnableConfig, InspectionApplicationPushEventListener applicationPushEventListener,
......@@ -198,7 +198,7 @@ public class EnableRuleDataPreparationListener implements ApplicationListener<In
private RegistrationInfo fetchRegistrationInfo(String record) {
return registrationInfoMapper.selectOne(
Wrappers.<RegistrationInfo>lambdaQuery().select(RegistrationInfo::getRecord, RegistrationInfo::getEquCategory,
RegistrationInfo::getEquDefine, RegistrationInfo::getEquList, RegistrationInfo::getWhetherSphericalTank)
RegistrationInfo::getEquDefine, RegistrationInfo::getEquList, RegistrationInfo::getWhetherSphericalTank)
.eq(RegistrationInfo::getRecord, record));
}
......
......@@ -5,8 +5,8 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.entity.TzsBaseEntity;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplicationEquip;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionApplicationPushLog;
import com.yeejoin.amos.boot.module.jyjc.api.enums.EquipCategoryEnum;
......@@ -95,7 +95,7 @@ public class InspectionApplicationPushEventListener implements ApplicationListen
KafkaProducer kafkaProducer;
@Autowired
Sequence sequence;
SnowflakeIdUtil sequence;
/**
......@@ -248,7 +248,7 @@ public class InspectionApplicationPushEventListener implements ApplicationListen
}
private void castStr2JsonField(Map<String, Object> echParamMap) {
if(echParamMap != null){
if (echParamMap != null) {
echParamMap.forEach((k, v) -> {
if (JyjcConstant.TECH_PARAM_JSON_FIELDS.contains(k) && v != null) {
echParamMap.put(k, JSON.parse(v.toString()));
......
......@@ -2,7 +2,7 @@ package com.yeejoin.amos.boot.module.jyjc.biz.event.listener;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.boot.module.jyjc.api.entity.JyjcInspectionResult;
import com.yeejoin.amos.boot.module.jyjc.biz.event.InspectionDetectionSaveToDbEvent;
import com.yeejoin.amos.boot.module.jyjc.biz.event.publisher.BizEmqPublisher;
......@@ -40,7 +40,7 @@ public class InspectionDetectionSaveToDbEventListener implements ApplicationList
CommonServiceImpl commonService;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
InspectionDetectionInfoMapper inspectionDetectionInfoMapper;
......
......@@ -8,7 +8,7 @@ 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.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
......@@ -101,7 +101,7 @@ public class JyjcInspectionResultServiceImpl extends BaseService<JyjcInspectionR
InspectionDetectionInfoMapper inspectionDetectionInfoMapper;
@Autowired
private Sequence sequence;
private SnowflakeIdUtil sequence;
@Autowired
TzBaseEnterpriseInfoMapper tzBaseEnterpriseInfoMapper;
......
......@@ -17,15 +17,8 @@ feign.client.config.default.read-timeout=30000
## eureka properties:
eureka.client.registry-fetch-interval-seconds=5
eureka.instance.prefer-ip-address=true
management.endpoint.health.show-details=always
management.endpoints.web.exposure.include=*
eureka.instance.health-check-url-path=/actuator/health
eureka.instance.lease-expiration-duration-in-seconds=10
eureka.instance.lease-renewal-interval-in-seconds=5
eureka.instance.metadata-map.management.context-path=${server.servlet.context-path}/actuator
eureka.instance.status-page-url-path=/actuator/info
eureka.instance.metadata-map.management.api-docs=http://localhost:${server.port}${server.servlet.context-path}/doc.html
knife4j.production=false
knife4j.enable=true
......
......@@ -25,14 +25,6 @@ public interface IRegUnitInfoService {
*/
RegUnitInfoDto registerUnit(RegUnitInfoDto model);
/**
* 单位校验
* @param unitCode 单位唯一编号
* @return RegUnitInfoDto
*/
RegUnitInfoDto unitCheck(String unitCode, String companyName,String registerType, String cardType);
/**
* 单位类型列表字典
* @return List<DataDictionary>
......@@ -84,4 +76,28 @@ public interface IRegUnitInfoService {
List<DataDictionary> getDictionaryListByType(String type) throws Exception;
List<DataDictionary> getXkItemList(String type);
/**
* 企业类型单位注册检验
* @param unitCode 单位code
* @param isNationwide 是否省外
* @return RegUnitInfoDto
*/
RegUnitInfoDto regBeforeCheckForEnterprises(String unitCode, Boolean isNationwide);
/**
* 事业单位类型注册检验
* @param unitCode 单位code
* @param isNationwide 是否省外
* @return RegUnitInfoDto
*/
RegUnitInfoDto regBeforeCheckForCause(String unitCode, Boolean isNationwide);
/**
* 个人类型注册检验
* @param unitCode 单位code
* @param cardType 证件类型
* @return RegUnitInfoDto
*/
RegUnitInfoDto regBeforeCheckForPerson(String unitCode, String cardType);
}
......@@ -14,6 +14,7 @@ import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
......@@ -110,18 +111,40 @@ public class RegUnitInfoController extends BaseController {
return ResponseHelper.buildResponse(iRegUnitInfoService.adminInfo(unitCode));
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/enterprises/{unitCode}/check")
@ApiOperation(httpMethod = "GET", value = "企业单位注册校验", notes = "企业单位注册校验")
public ResponseModel<RegUnitInfoDto> regBeforeCheckForEnterprises(@PathVariable String unitCode,
@ApiParam(value = "是否省外") @RequestParam Boolean isNationwide) {
if (ValidationUtil.isEmpty(unitCode)) {
throw new BadRequest("注册编码不能为空");
}
try {
RegUnitInfoDto regUnitInfoDto = iRegUnitInfoService.regBeforeCheckForEnterprises(unitCode, isNationwide);
return ResponseHelper.buildResponse(regUnitInfoDto);
} catch (Exception e) {
ResponseModel<RegUnitInfoDto> response = new ResponseModel<>();
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
response.setResult(null);
response.setDevMessage(e.getMessage());
response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
response.setTraceId(RequestContext.getTraceId());
response.setPath(request.getServletPath());
return response;
}
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/{unitCode}/check")
@ApiOperation(httpMethod = "GET", value = "单位注册校验", notes = "单位注册校验")
public ResponseModel<RegUnitInfoDto> unitCheck(@PathVariable String unitCode,
@RequestParam(required = false) String registerType,
@RequestParam(required = false) String cardType,
@RequestParam(required = false) String companyName) {
@GetMapping(value = "/cause/{unitCode}/check")
@ApiOperation(httpMethod = "GET", value = "事业单位注册校验", notes = "事业单位注册校验")
public ResponseModel<RegUnitInfoDto> regBeforeCheckForCause(@PathVariable String unitCode,
@ApiParam(value = "是否省外") @RequestParam Boolean isNationwide) {
if (ValidationUtil.isEmpty(unitCode)) {
throw new BadRequest("注册编码不能为空");
}
try {
RegUnitInfoDto regUnitInfoDto = iRegUnitInfoService.unitCheck(unitCode, companyName,registerType,cardType);
RegUnitInfoDto regUnitInfoDto = iRegUnitInfoService.regBeforeCheckForCause(unitCode, isNationwide);
return ResponseHelper.buildResponse(regUnitInfoDto);
} catch (Exception e) {
ResponseModel<RegUnitInfoDto> response = new ResponseModel<>();
......@@ -136,6 +159,30 @@ public class RegUnitInfoController extends BaseController {
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/person/{unitCode}/check")
@ApiOperation(httpMethod = "GET", value = "个人注册校验", notes = "个人注册校验")
public ResponseModel<RegUnitInfoDto> regBeforeCheckForPerson(@PathVariable String unitCode,
@RequestParam(required = false) String cardType) {
if (ValidationUtil.isEmpty(unitCode)) {
throw new BadRequest("注册编码不能为空");
}
try {
RegUnitInfoDto regUnitInfoDto = iRegUnitInfoService.regBeforeCheckForPerson(unitCode, cardType);
return ResponseHelper.buildResponse(regUnitInfoDto);
} catch (Exception e) {
ResponseModel<RegUnitInfoDto> response = new ResponseModel<>();
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
response.setResult(null);
response.setDevMessage(e.getMessage());
response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
response.setTraceId(RequestContext.getTraceId());
response.setPath(request.getServletPath());
return response;
}
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@GetMapping(value = "/unit-type/list")
@ApiOperation(httpMethod = "GET", value = "单位类型列表", notes = "单位类型列表")
public ResponseModel<List<DataDictionary>> unitTypeList() {
......
......@@ -168,4 +168,9 @@ tzs.auth.user.photo=/public/common/userPic.png
tzs.WxApp.appId=wx48a1b1915b10d14b
tzs.WxApp.secret=ac4f4a9d3c97676badb70c19a2f37b16
tzs.WxApp.grant-type=authorization_code
\ No newline at end of file
tzs.WxApp.grant-type=authorization_code
# ??????(0<=datacenter-id<=31)
mybatis-plus.global-config.datacenter-id=1
# ??????(0<=worker-id<=31)
mybatis-plus.global-config.worker-id=2
\ No newline at end of file
......@@ -2,7 +2,7 @@ package com.yeejoin.amos.patrol.business.data;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.yeejoin.amos.boot.biz.common.utils.SnowflakeIdUtil;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.component.robot.AmosRequestContext;
import com.yeejoin.amos.feign.privilege.Privilege;
......@@ -50,7 +50,7 @@ public class CheckRecordDataConsumer implements Runnable {
private AmosRequestContext requestContext;
private Sequence sequence;
private SnowflakeIdUtil sequence;
private CheckMapper checkMapper;
......@@ -66,7 +66,7 @@ public class CheckRecordDataConsumer implements Runnable {
inputItemDao = applicationContext.getBean(IInputItemDao.class);
planTaskDetailMapper = applicationContext.getBean(PlanTaskDetailMapper.class);
requestContext = applicationContext.getBean(AmosRequestContext.class);
sequence = applicationContext.getBean(Sequence.class);
sequence = applicationContext.getBean(SnowflakeIdUtil.class);
checkMapper = applicationContext.getBean(CheckMapper.class);
checkInputMapper = applicationContext.getBean(CheckInputMapper.class);
}
......
......@@ -157,7 +157,6 @@ public class YsEmergencyCaseController extends BaseController {
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/import")
@ApiOperation(httpMethod = "POST", value = "救援案例列表数据导入", notes = "救援案例列表数据导入")
@CrossOrigin("*")
public ResponseModel<Object> expertDataImport(@RequestBody MultipartFile file) {
// 校验文件是否为空
if (file.isEmpty()) {
......
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