Commit d4f09191 authored by 刘林's avatar 刘林

fix(jg):登记证管理性能优化

parent 6a654cf4
...@@ -53,4 +53,6 @@ public interface JgUseRegistrationManageMapper extends BaseMapper<JgUseRegistrat ...@@ -53,4 +53,6 @@ public interface JgUseRegistrationManageMapper extends BaseMapper<JgUseRegistrat
JgUseRegistrationManage getLatestJgUseRegistrationManage(@Param("useUnitCreditCode")String useUnitCreditCode, @Param("equDefineCode")String equDefineCode); JgUseRegistrationManage getLatestJgUseRegistrationManage(@Param("useUnitCreditCode")String useUnitCreditCode, @Param("equDefineCode")String equDefineCode);
Integer checkUseRegCertInBusiness(@Param("useRegistrationCode")String useRegistrationCode); Integer checkUseRegCertInBusiness(@Param("useRegistrationCode")String useRegistrationCode);
Page<JgUseRegistrationManageDto> queryUseRegistrationManagePage(@Param("page") Page<JgUseRegistrationManageDto> page, @Param("dto") JgUseRegistrationManageDto dto, @Param("sort") SortVo sortMap);
} }
...@@ -79,11 +79,7 @@ ...@@ -79,11 +79,7 @@
</where> </where>
</select> </select>
<select id="queryForPage" resultType="com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationManageDto"> <select id="queryForPage" resultType="com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationManageDto">
<include refid="page_list"/>, <include refid="page_list"/>
(SELECT ei.sequence_nbr from idx_biz_jg_use_info ui
LEFT JOIN idx_biz_jg_register_info ri ON ri.record = ui.record
LEFT JOIN tz_base_enterprise_info ei ON ei.use_unit_code = ui.ESTATE_UNIT_CREDIT_CODE
WHERE ri.USE_ORG_CODE = tjurm.use_registration_code ORDER BY ui.REC_DATE DESC limit 1) AS estateUnitName
FROM tzs_jg_use_registration_manage tjurm FROM tzs_jg_use_registration_manage tjurm
<where> <where>
tjurm.is_delete = 0 tjurm.is_delete = 0
...@@ -593,4 +589,99 @@ ...@@ -593,4 +589,99 @@
ORDER BY tjur.certificate_no DESC ORDER BY tjur.certificate_no DESC
LIMIT 1 LIMIT 1
</select> </select>
<select id="queryUseRegistrationManagePage" resultType="com.yeejoin.amos.boot.module.jg.api.dto.JgUseRegistrationManageDto">
<include refid="page_list"/>
,estate.sequence_nbr AS estateUnitName
FROM tzs_jg_use_registration_manage tjurm
LEFT JOIN (
SELECT DISTINCT ON (ri.use_org_code)
ri.use_org_code, ei.sequence_nbr
FROM idx_biz_jg_register_info ri
JOIN idx_biz_jg_use_info ui ON ui.record = ri.record
JOIN tz_base_enterprise_info ei ON ei.use_unit_code = ui.ESTATE_UNIT_CREDIT_CODE
ORDER BY ri.use_org_code, ui.rec_date DESC
) estate ON estate.use_org_code = tjurm.use_registration_code
<where>
tjurm.is_delete = 0
<if test="dto.equList != null and dto.equList != ''">
and tjurm.equ_list = #{dto.equList}
</if>
<if test="dto.equListCode != null and dto.equListCode != ''">
and tjurm.equ_list_code = #{dto.equListCode}
</if>
<if test="dto.equCategory != null and dto.equCategory != ''">
and tjurm.equ_category = #{dto.equCategory}
</if>
<if test="dto.equCategoryCode != null and dto.equCategoryCode != ''">
and tjurm.equ_category_code = #{dto.equCategoryCode}
</if>
<if test="dto.equDefine != null and dto.equDefine != ''">
and tjurm.equ_define = #{dto.equDefine}
</if>
<if test="dto.equDefineCode != null and dto.equDefineCode != ''">
and tjurm.equ_define_code = #{dto.equDefineCode}
</if>
-- 使用登记证编号
<if test="dto.useRegistrationCode != null and dto.useRegistrationCode != ''">
and tjurm.use_registration_code like concat('%',#{dto.useRegistrationCode},'%')
</if>
-- 申请单号
<if test="dto.applyNo != null and dto.applyNo != ''">
and tjurm.apply_no like concat('%',#{dto.applyNo},'%')
</if>
-- 登记证书唯一码
<if test="dto.certificateNo != null and dto.certificateNo != ''">
and tjurm.certificate_no = #{dto.certificateNo}
</if>
<if test="dto.auditPassDate != null and dto.auditPassDate != ''">
and tjurm.audit_pass_date like concat('%',DATE_FORMAT(#{dto.auditPassDate},'%Y-%m-%d'),'%')
</if>
<if test="dto.certificateStatus != null and dto.certificateStatus != ''">
and tjurm.certificate_status = #{dto.certificateStatus}
</if>
<if test="dto.useUnitCreditCodeForSearch != null and dto.useUnitCreditCodeForSearch != ''">
and tjurm.use_unit_credit_code = #{dto.useUnitCreditCodeForSearch}
</if>
<if test="dto.useUnitCreditNameForSearch != null and dto.useUnitCreditNameForSearch != ''">
and tjurm.use_unit_name like concat ('%',#{dto.useUnitCreditNameForSearch},'%')
</if>
<if test="dto.receiveCompanyCode != null and dto.receiveCompanyCode != ''">
and (tjurm.receive_company_code = #{dto.receiveCompanyCode}
or tjurm.receive_company_code is null or tjurm.receive_company_code = '')
</if>
-- 企业根据企业统一信用代码匹配
<if test="dto.dataType == 'company' ">
AND tjurm.use_unit_credit_code = #{dto.useUnitCreditCode}
</if>
-- 监管单位根据接受机构匹配
<if test="dto.dataType == 'supervision' ">
AND tjurm.receive_company_code = #{dto.receiveCompanyCode}
</if>
-- 是否车用气瓶(whetherVehicleCylinder)= 1 ,过滤出车用气瓶使用登记证数据
<if test="dto.whetherVehicleCylinder != null and dto.whetherVehicleCylinder == 1 ">
AND tjurm.reg_type = '车用气瓶登记'
</if>
<if test="dto.isScrap != null and dto.isScrap != ''">
and tjurm.is_scrap = #{dto.isScrap}
</if>
<if test="dto.isDoBusiness != null and dto.isDoBusiness != ''">
and tjurm.is_do_business = #{dto.isDoBusiness}
</if>
<if test="dto.cityName != null and dto.cityName != ''">
and tjurm.equ_use_address LIKE CONCAT('%', #{dto.cityName}, '%')
</if>
<if test="dto.carNumber != null and dto.carNumber != ''">
and tjurm.car_number LIKE CONCAT('%', #{dto.carNumber}, '%')
</if>
<if test="dto.certInBusinessFlag != null and dto.certInBusinessFlag != '' and dto.certInBusinessFlag == 'false'">
and NOT EXISTS ( <include refid="useRegCertInBusiness"/> )
</if>
ORDER BY
<if test="sort != null">
tjurm.${sort.field} ${sort.sortType},
</if>
tjurm.create_date DESC
</where>
</select>
</mapper> </mapper>
...@@ -815,7 +815,7 @@ public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgCh ...@@ -815,7 +815,7 @@ public class JgChangeVehicleRegistrationUnitServiceImpl extends BaseService<JgCh
public Page<JgUseRegistrationManageDto> getUseRegistrationCodeData(Page<JgUseRegistrationManageDto> page, public Page<JgUseRegistrationManageDto> getUseRegistrationCodeData(Page<JgUseRegistrationManageDto> page,
JgUseRegistrationManageDto dto) { JgUseRegistrationManageDto dto) {
return jgUseRegistrationManageService.queryForJgUseRegistrationManagePage(page, dto, null); return jgUseRegistrationManageService.queryUseRegistrationManagePage(page, dto, null);
} }
public Map<String, Object> getEquList(String useRegistrationCode) { public Map<String, Object> getEquList(String useRegistrationCode) {
......
...@@ -330,6 +330,20 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr ...@@ -330,6 +330,20 @@ public class JgUseRegistrationManageServiceImpl extends BaseService<JgUseRegistr
return jgUseRegistrationManageMapper.queryForPage(page, dto, sortMap); return jgUseRegistrationManageMapper.queryForPage(page, dto, sortMap);
} }
/**
* 分页查询证管理表-选择证使用,添加产权单位id
*/
public Page<JgUseRegistrationManageDto> queryUseRegistrationManagePage(Page<JgUseRegistrationManageDto> page,
JgUseRegistrationManageDto dto,
String sort) {
SortVo sortMap = commonServiceImpl.sortFieldConversion(sort);
if (ApplicationFormTypeEnum.BF.getBusinessCode().equals(dto.getApplyType()) && (!CylinderTypeEnum.CYLINDER.getCode().equals(dto.getEquCategoryCode()) || dto.getRegType().equals(BusinessTypeEnum.JG_VEHICLE_GAS_APPLICATION.getName()))){
dto.setCertificateStatus(null);
dto.setIsScrap("0");
}
return jgUseRegistrationManageMapper.queryUseRegistrationManagePage(page, dto, sortMap);
}
public Page<JgUseRegistrationManageDto> queryForJgUseRegistrationManagePageForJG(JgUseRegistrationManageDto dto, String sort, int current, int size) { public Page<JgUseRegistrationManageDto> queryForJgUseRegistrationManagePageForJG(JgUseRegistrationManageDto dto, String sort, int current, int size) {
Page<JgUseRegistrationManageDto> page = new Page<JgUseRegistrationManageDto>(); Page<JgUseRegistrationManageDto> page = new Page<JgUseRegistrationManageDto>();
page.setCurrent(current); page.setCurrent(current);
......
...@@ -258,10 +258,14 @@ ...@@ -258,10 +258,14 @@
</select> </select>
<select id="selectEquipCount" resultType="java.util.Map"> <select id="selectEquipCount" resultType="java.util.Map">
SELECT ibjui.project_contraption_id, CAST(count(1) AS INTEGER) AS count SELECT tu.project_contraption_id,
FROM idx_biz_jg_use_info ibjui CAST(COUNT(1) AS INTEGER) AS count
WHERE ibjui.project_contraption_id in FROM (
<foreach collection ='projectContraptionIdList' item='id' index='index' open="(" close= ")" separator=","> SELECT "RECORD", project_contraption_id
FROM idx_biz_jg_use_info
WHERE project_contraption_id = ANY(
ARRAY[
<foreach collection="projectContraptionIdList" item="id" index="index" separator=",">
#{id} #{id}
</foreach> </foreach>
GROUP BY ibjui.project_contraption_id GROUP BY ibjui.project_contraption_id
......
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