Commit a7d251ad authored by 刘林's avatar 刘林

fix(jg):告知类暂存功能开发

parent af9aa706
package com.yeejoin.amos.boot.module.jg.api.dto;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 4个告知暂存列表分页查询
*
* @author system_generator
* @date 2023-12-20
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "JgNoticeToBeSubmitDto", description = "4个告知暂存列表分页查询")
public class JgNoticeToBeSubmitDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "业务类型")
private String businessType;
@ApiModelProperty(value = "申请单号")
private String applyNo;
@ApiModelProperty(value = "设备种类")
private String equListName;
@ApiModelProperty(value = "设备类别")
private String equCategoryName;
@ApiModelProperty(value = "申请日期")
@JsonFormat(pattern = "yyyy-MM-dd")
private String createDate;
@ApiModelProperty(value = "接收机构")
private String receiveOrgName;
@ApiModelProperty(value = "状态")
private String status;
}
...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.jg.api.mapper; ...@@ -3,6 +3,7 @@ package com.yeejoin.amos.boot.module.jg.api.mapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto; import com.yeejoin.amos.boot.module.jg.api.dto.CompanyEquipCountDto;
import com.yeejoin.amos.boot.module.jg.api.dto.JgInstallationNoticeDto; import com.yeejoin.amos.boot.module.jg.api.dto.JgInstallationNoticeDto;
import com.yeejoin.amos.boot.module.jg.api.dto.JgNoticeToBeSubmitDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgInstallationNotice; import com.yeejoin.amos.boot.module.jg.api.entity.JgInstallationNotice;
import com.yeejoin.amos.boot.module.jg.api.vo.SortVo; import com.yeejoin.amos.boot.module.jg.api.vo.SortVo;
import com.yeejoin.amos.boot.module.jg.api.vo.tableDataExportVo.InstallationVo; import com.yeejoin.amos.boot.module.jg.api.vo.tableDataExportVo.InstallationVo;
...@@ -69,4 +70,6 @@ public interface JgInstallationNoticeMapper extends CustomBaseMapper<JgInstallat ...@@ -69,4 +70,6 @@ public interface JgInstallationNoticeMapper extends CustomBaseMapper<JgInstallat
List<JgInstallationNotice> selectNotInsertProjectConstructionInstallNoticeList(); List<JgInstallationNotice> selectNotInsertProjectConstructionInstallNoticeList();
Set<Long> queryListByEqsAndStatus(@Param("records") Set<String> records, @Param("noticeStatus") String noticeStatus); Set<Long> queryListByEqsAndStatus(@Param("records") Set<String> records, @Param("noticeStatus") String noticeStatus);
Page<JgNoticeToBeSubmitDto> queryNoticeToBeSubmitPage(@Param("page") Page<JgNoticeToBeSubmitDto> page, @Param("companyCode")String companyCode);
} }
...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.IService; ...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.yeejoin.amos.boot.biz.common.bo.CompanyBo; import com.yeejoin.amos.boot.biz.common.bo.CompanyBo;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.module.jg.api.dto.JgInstallationNoticeDto; import com.yeejoin.amos.boot.module.jg.api.dto.JgInstallationNoticeDto;
import com.yeejoin.amos.boot.module.jg.api.dto.JgNoticeToBeSubmitDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgInstallationNotice; import com.yeejoin.amos.boot.module.jg.api.entity.JgInstallationNotice;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
...@@ -88,4 +89,8 @@ public interface IJgInstallationNoticeService extends IService<JgInstallationNot ...@@ -88,4 +89,8 @@ public interface IJgInstallationNoticeService extends IService<JgInstallationNot
JgInstallationNotice cancelApplication(Long sequenceNbr, String cancelReason); JgInstallationNotice cancelApplication(Long sequenceNbr, String cancelReason);
Object getDeviceListByProjectContraption(String projectContraptionSeq); Object getDeviceListByProjectContraption(String projectContraptionSeq);
Page<JgNoticeToBeSubmitDto> queryNoticeToBeSubmitPage(Page<JgNoticeToBeSubmitDto> page, ReginParams selectedOrgInfo);
Map<String, Map<String, Object>> getNoticeToBeSubmitDetails(Long sequenceNbr, CompanyBo company, String businessType);
} }
...@@ -385,4 +385,66 @@ ...@@ -385,4 +385,66 @@
</foreach> </foreach>
</if> </if>
</select> </select>
<select id="queryNoticeToBeSubmitPage" resultType="com.yeejoin.amos.boot.module.jg.api.dto.JgNoticeToBeSubmitDto">
SELECT
isn.sequence_nbr AS sequenceNbr,
'安装告知' AS businessType,
isn.apply_no AS applyNo,
ec1.name AS equListName,
ec2.name AS equCategoryName,
isn.receive_org_name AS receiveOrgName,
CASE isn.notice_status WHEN '6610' THEN '待提交' ELSE isn.notice_status END AS status,
DATE_FORMAT(isn.create_date, '%Y-%m-%d') AS createDate
FROM tzs_jg_installation_notice isn
LEFT JOIN tz_equipment_category ec1 ON ec1.code = isn.equ_list_code
LEFT JOIN tz_equipment_category ec2 ON ec2.code = isn.equ_category_code
WHERE isn.is_delete = false AND isn.notice_status = '6610'
AND isn.install_unit_credit_code = #{companyCode}
UNION ALL
SELECT
isn.sequence_nbr AS sequenceNbr,
'改造告知' AS businessType,
isn.apply_no AS applyNo,
isn.equ_list_name AS equListName,
isn.equ_category_name AS equCategoryName,
isn.receive_org_name AS receiveOrgName,
CASE isn.notice_status WHEN '6610' THEN '待提交' ELSE isn.notice_status END AS status,
DATE_FORMAT(isn.create_date, '%Y-%m-%d') AS createDate
FROM tzs_jg_reform_notice isn
WHERE isn.is_delete = false AND isn.notice_status = '6610'
AND isn.install_unit_credit_code = #{companyCode}
UNION ALL
SELECT
isn.sequence_nbr AS sequenceNbr,
'维修告知' AS businessType,
isn.apply_no AS applyNo,
ec1.name AS equListName,
ec2.name AS equCategoryName,
isn.receive_org_name AS receiveOrgName,
CASE isn.notice_status WHEN '6610' THEN '待提交' ELSE isn.notice_status END AS status,
DATE_FORMAT(isn.create_date, '%Y-%m-%d') AS createDate
FROM tzs_jg_maintain_notice isn
LEFT JOIN tz_equipment_category ec1 ON ec1.code = isn.equ_list_code
LEFT JOIN tz_equipment_category ec2 ON ec2.code = isn.equ_category
WHERE isn.is_delete = false AND isn.notice_status = '6610'
AND isn.install_unit_credit_code = #{companyCode}
UNION ALL
SELECT
isn.sequence_nbr AS sequenceNbr,
'移装告知' AS businessType,
isn.apply_no AS applyNo,
ec1.name AS equListName,
ec2.name AS equCategoryName,
isn.receive_org_name AS receiveOrgName,
CASE isn.notice_status WHEN '6610' THEN '待提交' ELSE isn.notice_status END AS status,
DATE_FORMAT(isn.create_date, '%Y-%m-%d') AS createDate
FROM tzs_jg_transfer_notice isn
LEFT JOIN tz_equipment_category ec1 ON ec1.code = isn.equ_list_code
LEFT JOIN tz_equipment_category ec2 ON ec2.code = isn.equ_category
WHERE isn.is_delete = false
AND isn.notice_status = '6610'
AND isn.install_unit_credit_code = #{companyCode}
ORDER BY createDate DESC, applyNo DESC
</select>
</mapper> </mapper>
...@@ -8,6 +8,7 @@ import com.yeejoin.amos.boot.biz.common.bo.ReginParams; ...@@ -8,6 +8,7 @@ import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.controller.BaseController; import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.biz.utils.CommonResponseUtil; import com.yeejoin.amos.boot.module.common.biz.utils.CommonResponseUtil;
import com.yeejoin.amos.boot.module.jg.api.dto.JgInstallationNoticeDto; import com.yeejoin.amos.boot.module.jg.api.dto.JgInstallationNoticeDto;
import com.yeejoin.amos.boot.module.jg.api.dto.JgNoticeToBeSubmitDto;
import com.yeejoin.amos.boot.module.jg.api.entity.JgInstallationNotice; import com.yeejoin.amos.boot.module.jg.api.entity.JgInstallationNotice;
import com.yeejoin.amos.boot.module.jg.api.service.IJgInstallationNoticeService; import com.yeejoin.amos.boot.module.jg.api.service.IJgInstallationNoticeService;
import com.yeejoin.amos.boot.module.jg.biz.service.impl.CommonServiceImpl; import com.yeejoin.amos.boot.module.jg.biz.service.impl.CommonServiceImpl;
...@@ -188,4 +189,32 @@ public class JgInstallationNoticeController extends BaseController { ...@@ -188,4 +189,32 @@ public class JgInstallationNoticeController extends BaseController {
String projectContraptionSeq = ValidationUtil.isEmpty(params.get("sequenceNbr")) ? String.valueOf(params.get("record")) : params.get("sequenceNbr").toString(); String projectContraptionSeq = ValidationUtil.isEmpty(params.get("sequenceNbr")) ? String.valueOf(params.get("record")) : params.get("sequenceNbr").toString();
return ResponseHelper.buildResponse(iJgInstallationNoticeService.getDeviceListByProjectContraption(projectContraptionSeq)); return ResponseHelper.buildResponse(iJgInstallationNoticeService.getDeviceListByProjectContraption(projectContraptionSeq));
} }
/**
* 4个告知暂存列表分页查询
*
* @param current 当前页
* @param size 每页大小
* @return Page
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/queryNoticeToBeSubmitPage")
@ApiOperation(httpMethod = "GET", value = "4个告知暂存列表分页查询", notes = "4个告知暂存列表分页查询")
public ResponseModel<Page<JgNoticeToBeSubmitDto>> queryNoticeToBeSubmitPage(@RequestParam(value = "number") int current,
@RequestParam(value = "size") int size) {
Page<JgNoticeToBeSubmitDto> page = new Page<>(current, size);
return ResponseHelper.buildResponse(iJgInstallationNoticeService.queryNoticeToBeSubmitPage(page,getSelectedOrgInfo()));
}
/**
* 4个告知暂存详情查询
*
* @param sequenceNbr 主键
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/getNoticeToBeSubmitDetails")
@ApiOperation(httpMethod = "GET", value = "4个告知暂存详情查询", notes = "4个告知暂存详情查询")
public ResponseModel<Map<String, Map<String, Object>>> getNoticeToBeSubmitDetails(@RequestParam("sequenceNbr") Long sequenceNbr,
@RequestParam("businessType") String businessType) {
return ResponseHelper.buildResponse(iJgInstallationNoticeService.getNoticeToBeSubmitDetails(sequenceNbr, getSelectedOrgInfo().getCompany(), businessType));
}
} }
...@@ -197,6 +197,13 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN ...@@ -197,6 +197,13 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
EventPublisher eventPublisher; EventPublisher eventPublisher;
@Autowired @Autowired
private JgUseRegistrationServiceImpl jgUseRegistrationService; private JgUseRegistrationServiceImpl jgUseRegistrationService;
@Autowired
private JgReformNoticeServiceImpl jgReformNoticeService;
@Autowired
private JgTransferNoticeServiceImpl jgTransferNoticeService;
@Autowired
private JgMaintainNoticeServiceImpl jgMaintainNoticeService;
/** /**
* 安装改造维修单位吱资质类型:1234-安改维、1236-制造单位 * 安装改造维修单位吱资质类型:1234-安改维、1236-制造单位
...@@ -2030,6 +2037,39 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN ...@@ -2030,6 +2037,39 @@ public class JgInstallationNoticeServiceImpl extends BaseService<JgInstallationN
} }
@Override @Override
public Page<JgNoticeToBeSubmitDto> queryNoticeToBeSubmitPage(Page<JgNoticeToBeSubmitDto> page, ReginParams reginParams) {
String companyCode = reginParams.getCompany().getCompanyCode();
return jgInstallationNoticeMapper.queryNoticeToBeSubmitPage(page, companyCode);
}
@Override
public Map<String, Map<String, Object>> getNoticeToBeSubmitDetails(Long sequenceNbr, CompanyBo company, String businessType) {
Map<String, Map<String, Object>> notice = null;
switch (businessType) {
case "安装告知":
notice = this.queryBySequenceNbr(sequenceNbr, company);
notice.put("notice", notice.get("installationInfo"));
notice.remove("installationInfo");
break;
case "改造告知":
jgReformNoticeService.queryBySequenceNbr(sequenceNbr);
break;
case "维修告知":
notice = jgMaintainNoticeService.queryBySequenceNbr(sequenceNbr, company);
notice.put("notice", notice.get("maintainInfo"));
break;
case "移装告知":
notice = jgTransferNoticeService.queryBySequenceNbr(sequenceNbr, company);
notice.put("notice", notice.get("transferInfo"));
break;
default:
this.queryBySequenceNbr(sequenceNbr, company);
}
return notice;
}
@Override
public boolean beforeCheck(JgInstallationNotice notice) { public boolean beforeCheck(JgInstallationNotice notice) {
return notice.getInstanceId() != null && !notice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_FINISHED.getCode())) &&!notice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_DISCARD.getCode())); return notice.getInstanceId() != null && !notice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_FINISHED.getCode())) &&!notice.getNoticeStatus().equals(String.valueOf(FlowStatusEnum.TO_BE_DISCARD.getCode()));
} }
......
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