From ec50b949579b505bd09a3aad2b770c9d3ec40c20 Mon Sep 17 00:00:00 2001 From: niujiyi <18272501226@163.com> Date: Fri, 6 Nov 2026 10:51:29 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9B=91=E7=9D=A3=E7=AB=AF-=E4=B8=80=E6=9C=9F?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=BF=81=E7=A7=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zdxt-modules/zdxt-enforcement-code/pom.xml | 7 +- .../report/LawEnfOfficerController.java | 2 - .../report/StatisticsComplaintController.java | 23 +- .../StatisticsInspectionPlanController.java | 46 ++ .../domain/ComplaintStatistics.java | 3 + .../domain/EnterpriseComplaint.java | 13 + .../zdxt/enforcementcode/domain/FileData.java | 34 ++ .../enforcementcode/domain/MssqAddOrder.java | 497 ++++++++++++++++++ .../domain/MssqBaseDomain.java | 78 +++ .../enforcementcode/domain/MssqOrderFlow.java | 138 +++++ .../domain/bo/EnforcementRegistrationBo.java | 10 + .../mapper/ComplaintStatisticsMapper.java | 13 + .../mapper/EnterpriseComplaintMapper.java | 7 + .../mapper/LawEnfOfficerMapper.java | 2 + .../mapper/ZdxtFileMapper.java | 10 +- .../IStatisticsInspectionPlanReport.java | 3 + .../EnforcementRegistrationReportImpl.java | 4 +- .../report/impl/LawEnfOfficerSericeImpl.java | 23 + .../StatisticsInspectionPlanReportImpl.java | 54 ++ .../service/ComplaintsReportService.java | 22 + .../service/IEnterpriseComplaintService.java | 9 + .../impl/ComplaintsReportServiceImpl.java | 78 +++ .../EnforcementRegistrationServiceImpl.java | 13 +- .../impl/EnterpriseComplaintServiceImpl.java | 42 ++ .../EnterpriseComplaintMapper.xml | 41 ++ .../mapper/enforcementcode/ZdxtFileMapper.xml | 63 +++ .../ComplaintStatisticsReportMapper.xml | 31 ++ ...orcementRegistrationEINOFTReportMapper.xml | 7 +- .../system/mapper/SysDictDataMapper.java | 11 + .../mapper/system/SysDictDataMapper.xml | 5 + 30 files changed, 1273 insertions(+), 16 deletions(-) create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/FileData.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqAddOrder.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqBaseDomain.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqOrderFlow.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/ComplaintsReportService.java create mode 100644 zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ComplaintsReportServiceImpl.java diff --git a/zdxt-modules/zdxt-enforcement-code/pom.xml b/zdxt-modules/zdxt-enforcement-code/pom.xml index 2ba4dfe9..8776b05f 100644 --- a/zdxt-modules/zdxt-enforcement-code/pom.xml +++ b/zdxt-modules/zdxt-enforcement-code/pom.xml @@ -151,7 +151,12 @@ com.github.librepdf openpdf - + + + org.apache.pdfbox + pdfbox + 3.0.4 + commons-io diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java index 1c2603f7..2f5d9d07 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java @@ -3,9 +3,7 @@ package com.zdxt.enforcementcode.controller.web.supervision.report; import cn.dev33.satoken.annotation.SaIgnore; import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; -import com.zdxt.enforcementcode.domain.bo.dashboard.DashboardEnterpriseCheckListBo; import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; -import com.zdxt.enforcementcode.domain.vo.report.DashboardEnterpriseCheckListVo; import com.zdxt.enforcementcode.report.ILawEnfOfficerService; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsComplaintController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsComplaintController.java index fc4e9daf..67327a63 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsComplaintController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsComplaintController.java @@ -1,9 +1,12 @@ package com.zdxt.enforcementcode.controller.web.supervision.report; import com.zdxt.enforcementcode.domain.ComplaintStatistics; +import com.zdxt.enforcementcode.domain.MssqOrderFlow; import com.zdxt.enforcementcode.domain.bo.ComplaintStatisticsBo; import com.zdxt.enforcementcode.domain.vo.report.*; import com.zdxt.enforcementcode.report.IStatisticsComplaintReport; +import com.zdxt.enforcementcode.service.ComplaintsReportService; +import com.zdxt.enforcementcode.service.IEnterpriseComplaintService; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; @@ -15,7 +18,9 @@ import org.springframework.ui.Model; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * 执法投诉情况报表 @@ -30,6 +35,8 @@ import java.util.List; public class StatisticsComplaintController { private final IStatisticsComplaintReport reportService; + private final ComplaintsReportService complaintsReportService; + private final IEnterpriseComplaintService iEnterpriseComplaintService; /** Tab1概览 */ @GetMapping("/overview") @@ -52,18 +59,20 @@ public class StatisticsComplaintController { /** * 监督端-投诉明细 * @param id - * @param model + * @param * @return */ - /*@GetMapping("/details/{id}") - public String complaintsReportDetails(@PathVariable("id") String id, Model model) { + @GetMapping("/details") + public R> complaintsReportDetails(String id) { + + Map map = new HashMap<>(); ComplaintStatistics complaintStatistics = complaintsReportService.complaintById(id); - model.addAttribute("complaintStatistics", complaintStatistics); List mssqOrderFlowList = iEnterpriseComplaintService.selectEnterpriseComplaintProcess(complaintStatistics.getCid()); - model.addAttribute("mssqOrderFlowList", mssqOrderFlowList); - return prefix + "/details.html"; - }*/ + map.put("complaintStatistics", complaintStatistics); + map.put("mssqOrderFlowList", mssqOrderFlowList); + return R.ok(map); + } /** Tab2-投诉类型统计 */ @GetMapping("/typeStatList") diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsInspectionPlanController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsInspectionPlanController.java index d9e28f22..568e83eb 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsInspectionPlanController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsInspectionPlanController.java @@ -1,18 +1,24 @@ package com.zdxt.enforcementcode.controller.web.supervision.report; +import com.zdxt.enforcementcode.domain.ZdxtFile; import com.zdxt.enforcementcode.domain.bo.EnforcementInspectionProgramBo; +import com.zdxt.enforcementcode.domain.bo.ZdxtFileBo; +import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; import com.zdxt.enforcementcode.domain.vo.report.*; import com.zdxt.enforcementcode.report.IStatisticsInspectionPlanReport; +import com.zdxt.enforcementcode.service.IZdxtFileService; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.dromara.common.core.domain.R; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.excel.utils.ExcelUtil; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import java.util.Base64; import java.util.List; /** @@ -28,6 +34,7 @@ import java.util.List; public class StatisticsInspectionPlanController { private final IStatisticsInspectionPlanReport reportService; + private final IZdxtFileService zdxtFileService ; /** Tab1概览 */ @GetMapping("/overview") @@ -81,4 +88,43 @@ public class StatisticsInspectionPlanController { } } } + + + /** + * check 文件是否存在 + * @param id + * @return + */ + @PostMapping("/checkFile") + @ResponseBody + public boolean checkFile(String id){ + ZdxtFileBo bo = new ZdxtFileBo(); + bo.setGuid(id); + List files = zdxtFileService.queryList(bo); + return files.size()>0?true:false; + } + + /** + * 预览pdf + * @param + */ + @RequestMapping("/previewFile") + public void previewFile (String id,HttpServletResponse response){ + if(StringUtils.isEmpty(id)) return; + byte[] decodedBytes = Base64.getDecoder().decode(id); + String guid = new String(decodedBytes); + reportService.previewFile(guid,response); + } + + /** + * 下载pdf + * @param id + */ + @PostMapping("/downloadFile") + public void downloadFile (String id,HttpServletResponse response){ + if(StringUtils.isEmpty(id)) return; + byte[] decodedBytes = Base64.getDecoder().decode(id); + String guid = new String(decodedBytes); + reportService.previewFile(guid,response); + } } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/ComplaintStatistics.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/ComplaintStatistics.java index 9e5210b7..92710370 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/ComplaintStatistics.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/ComplaintStatistics.java @@ -8,6 +8,7 @@ import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import java.io.Serial; +import java.util.List; /** * 【请填写功能名称】对象 complaint_statistics @@ -94,5 +95,7 @@ public class ComplaintStatistics extends BaseEntity { */ private String enterpriseAddress; + private List fileList; + private EnterpriseComplaint enterpriseComplaint; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnterpriseComplaint.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnterpriseComplaint.java index c261ee75..cd4ba449 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnterpriseComplaint.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnterpriseComplaint.java @@ -8,6 +8,7 @@ import java.util.Date; import com.fasterxml.jackson.annotation.JsonFormat; import java.io.Serial; +import java.util.List; /** * 企业执法-在线投诉对象 enterprise_complaint @@ -153,4 +154,16 @@ public class EnterpriseComplaint extends BaseEntity { * 详细地址 */ private String detailedAddress; + + /** + * 投诉事项编码 多个逗号隔开 + */ + private String enforceTypeStr; + private String complaintTypeStr; + private String createTimeStr; + + /** + * 民生诉求数据处置流程 + */ + private List mssqOrderFlows; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/FileData.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/FileData.java new file mode 100644 index 00000000..765e4255 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/FileData.java @@ -0,0 +1,34 @@ +package com.zdxt.enforcementcode.domain; + +/** + * @Author: kylin + * @Date: 2024/7/3 5:46 下午 + * @Version: 1.0 + * @Desc: TODO + */ +public class FileData { + /** + * 附件名称 + */ + private String fileName; + /** + * 附件数据流,需要转成Base64编码格式 + */ + private String fileBytes; + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileBytes() { + return fileBytes; + } + + public void setFileBytes(String fileBytes) { + this.fileBytes = fileBytes; + } +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqAddOrder.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqAddOrder.java new file mode 100644 index 00000000..79f0a683 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqAddOrder.java @@ -0,0 +1,497 @@ +package com.zdxt.enforcementcode.domain; + +import java.util.List; + +/** + * 民生诉求工单DTO + */ +public class MssqAddOrder extends MssqBaseDomain { + + /** + * 诉求标题 + */ + private String requestTopic; + /** + * 诉求内容 + */ + private String requestContent; + + /** + * 联系人姓名 + */ + private String contactName; + + /** + * 联系人电话 + */ + private String contactTel; + + /** + * 证件类型:字典参数类型:zjlx + */ + private Integer certType; + + /** + * 证件号码 + */ + private String certCode; + + /** + * 联系地址 + */ + private String contactAddress; + /** + * 事发地址 + */ + private String requestArea; + + /** + * 事发详细地址X坐标 + */ + private String addressX; + + /** + * 事发详细地址Y坐标 + */ + private String addressY; + /** + * 来源渠道:字典参数类型:sqly + */ + private Integer requestFrom; + + /** + * 公开意向 y—公开 n—不公开 + */ + private String pubIntent; + + /** + * 工单类型:字典参数类型:sqlx + */ + private Integer orderType; + + /** + * 是否党员: 1: 是; 0: 否 + */ + private Integer isParty; + /** + * 第三方系统工单id + */ + private String extendId; + + /** + * 事发地址所属区 + */ + private String area; + + /** + * 事发地址所属街道 + */ + private String street; + + /** + * 是否保密: 1: 是; 0: 否 + */ + private Integer isSecrecy; + /** + * 事项编码 + */ + private String actCode; + + /** + * 诉求分类(个人/商事主体): 1: 个人; 2: 商事主体 + */ + private Integer formUserNature; + /** + * 涉事主体 + */ + private String thingSubject; + + /** + * 涉事主体地址(如:**区**街道**) + */ + private String subjectAddress; + + /** + * 上传附件数据集 + */ + private List fileDatas; + + + /** 工单编码 */ + private String proWoCode; + /** 工单编码,可以传递多个,最多20个 */ + private List proWoCodes; + /** 开始时间 YYYY-MM-DD HH24:MI:SS */ + private String startTime; + /** 结束时间 YYYY-MM-DD HH24:MI:SS */ + private String endTime; + + private String appId; + private String sign; + private String timestamp; + /** 评价渠道 */ + private String pf; + /** 回调网址 */ + private String backUrl; + /** 评价业务,诉求工单代码值4 */ + private String assessServiceType; + /** 业务主键(诉求工单编号) */ + private String assessServiceCode; + /** 评价对象名称(诉求工单事项名称,若无则传诉求工单标题) */ + private String assessObjectName; + /** 评价对象编码(诉求工单事项编号,若无则传诉求工单编号) */ + private String assessObjectCode; + /** 部门编码(处理部门编码,区平台可以用区编码,编码需要保持与通过工作门户下发的一致) */ + private String deptCode; + /** 评价人名称 */ + private String evaluatorName; + /** 评价人联系号码 */ + private String evaluatorPapersPhone; + /** 附件地址 */ + private List uploadPaths; + private String uploadPath; + + /** + * 获取工单流程信息-工单编码参数 + */ + private String orderCode; + + public String getUploadPath() { + return uploadPath; + } + + public void setUploadPath(String uploadPath) { + this.uploadPath = uploadPath; + } + + public List getUploadPaths() { + return uploadPaths; + } + + public void setUploadPaths(List uploadPaths) { + this.uploadPaths = uploadPaths; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + public String getSign() { + return sign; + } + + public void setSign(String sign) { + this.sign = sign; + } + + public String getTimestamp() { + return timestamp; + } + + public void setTimestamp(String timestamp) { + this.timestamp = timestamp; + } + + public String getPf() { + return pf; + } + + public void setPf(String pf) { + this.pf = pf; + } + + public String getBackUrl() { + return backUrl; + } + + public void setBackUrl(String backUrl) { + this.backUrl = backUrl; + } + + public String getAssessServiceType() { + return assessServiceType; + } + + public void setAssessServiceType(String assessServiceType) { + this.assessServiceType = assessServiceType; + } + + public String getAssessServiceCode() { + return assessServiceCode; + } + + public void setAssessServiceCode(String assessServiceCode) { + this.assessServiceCode = assessServiceCode; + } + + public String getAssessObjectName() { + return assessObjectName; + } + + public void setAssessObjectName(String assessObjectName) { + this.assessObjectName = assessObjectName; + } + + public String getAssessObjectCode() { + return assessObjectCode; + } + + public void setAssessObjectCode(String assessObjectCode) { + this.assessObjectCode = assessObjectCode; + } + + public String getDeptCode() { + return deptCode; + } + + public void setDeptCode(String deptCode) { + this.deptCode = deptCode; + } + + public String getEvaluatorName() { + return evaluatorName; + } + + public void setEvaluatorName(String evaluatorName) { + this.evaluatorName = evaluatorName; + } + + public String getEvaluatorPapersPhone() { + return evaluatorPapersPhone; + } + + public void setEvaluatorPapersPhone(String evaluatorPapersPhone) { + this.evaluatorPapersPhone = evaluatorPapersPhone; + } + + public String getProWoCode() { + return proWoCode; + } + + public void setProWoCode(String proWoCode) { + this.proWoCode = proWoCode; + } + + public List getProWoCodes() { + return proWoCodes; + } + + public void setProWoCodes(List proWoCodes) { + this.proWoCodes = proWoCodes; + } + + public Integer getRequestFrom() { + return requestFrom; + } + + public void setRequestFrom(Integer requestFrom) { + this.requestFrom = requestFrom; + } + + public String getStartTime() { + return startTime; + } + + public void setStartTime(String startTime) { + this.startTime = startTime; + } + + public String getEndTime() { + return endTime; + } + + public void setEndTime(String endTime) { + this.endTime = endTime; + } + + + public String getRequestTopic() { + return requestTopic; + } + + public void setRequestTopic(String requestTopic) { + this.requestTopic = requestTopic; + } + + public String getRequestContent() { + return requestContent; + } + + public void setRequestContent(String requestContent) { + this.requestContent = requestContent; + } + + public String getContactName() { + return contactName; + } + + public void setContactName(String contactName) { + this.contactName = contactName; + } + + public String getContactTel() { + return contactTel; + } + + public void setContactTel(String contactTel) { + this.contactTel = contactTel; + } + + public Integer getCertType() { + return certType; + } + + public void setCertType(Integer certType) { + this.certType = certType; + } + + public String getCertCode() { + return certCode; + } + + public void setCertCode(String certCode) { + this.certCode = certCode; + } + + public String getContactAddress() { + return contactAddress; + } + + public void setContactAddress(String contactAddress) { + this.contactAddress = contactAddress; + } + + public String getRequestArea() { + return requestArea; + } + + public void setRequestArea(String requestArea) { + this.requestArea = requestArea; + } + + public String getAddressX() { + return addressX; + } + + public void setAddressX(String addressX) { + this.addressX = addressX; + } + + public String getAddressY() { + return addressY; + } + + public void setAddressY(String addressY) { + this.addressY = addressY; + } + + public String getPubIntent() { + return pubIntent; + } + + public void setPubIntent(String pubIntent) { + this.pubIntent = pubIntent; + } + + public Integer getOrderType() { + return orderType; + } + + public void setOrderType(Integer orderType) { + this.orderType = orderType; + } + + public Integer getIsParty() { + return isParty; + } + + public void setIsParty(Integer isParty) { + this.isParty = isParty; + } + + public String getExtendId() { + return extendId; + } + + public void setExtendId(String extendId) { + this.extendId = extendId; + } + + public String getArea() { + return area; + } + + public void setArea(String area) { + this.area = area; + } + + public String getStreet() { + return street; + } + + public void setStreet(String street) { + this.street = street; + } + + public Integer getIsSecrecy() { + return isSecrecy; + } + + public void setIsSecrecy(Integer isSecrecy) { + this.isSecrecy = isSecrecy; + } + + public String getActCode() { + return actCode; + } + + public void setActCode(String actCode) { + this.actCode = actCode; + } + + public Integer getFormUserNature() { + return formUserNature; + } + + public void setFormUserNature(Integer formUserNature) { + this.formUserNature = formUserNature; + } + + public String getThingSubject() { + return thingSubject; + } + + public void setThingSubject(String thingSubject) { + this.thingSubject = thingSubject; + } + + public String getSubjectAddress() { + return subjectAddress; + } + + public void setSubjectAddress(String subjectAddress) { + this.subjectAddress = subjectAddress; + } + + public List getFileDatas() { + return fileDatas; + } + + public void setFileDatas(List fileDatas) { + this.fileDatas = fileDatas; + } + + public String getOrderCode() { + return orderCode; + } + + public void setOrderCode(String orderCode) { + this.orderCode = orderCode; + } +} + + diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqBaseDomain.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqBaseDomain.java new file mode 100644 index 00000000..c0c3d70d --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqBaseDomain.java @@ -0,0 +1,78 @@ +package com.zdxt.enforcementcode.domain; + +public class MssqBaseDomain { + + /** + * 认证token + */ + private String accessToken; + /** + * 分配的appId + */ + private String appid; + /** + * 请求头携带的appId + */ + private String gatewayAppId; + /** + * 请求头携带的签名 + */ + private String gatewaySig; + + /** + * 请求方式 + */ + private String invokingServiceRequestMethod; + /** + * 请求头携带的当前时间的时间戳 + */ + private String gatewayRtime; + + public String getAccessToken() { + return accessToken; + } + + public void setAccessToken(String accessToken) { + this.accessToken = accessToken; + } + + public String getAppid() { + return appid; + } + + public void setAppid(String appid) { + this.appid = appid; + } + + public String getGatewayAppId() { + return gatewayAppId; + } + + public void setGatewayAppId(String gatewayAppId) { + this.gatewayAppId = gatewayAppId; + } + + public String getGatewaySig() { + return gatewaySig; + } + + public void setGatewaySig(String gatewaySig) { + this.gatewaySig = gatewaySig; + } + + public String getGatewayRtime() { + return gatewayRtime; + } + + public void setGatewayRtime(String gatewayRtime) { + this.gatewayRtime = gatewayRtime; + } + + public String getInvokingServiceRequestMethod() { + return invokingServiceRequestMethod; + } + + public void setInvokingServiceRequestMethod(String invokingServiceRequestMethod) { + this.invokingServiceRequestMethod = invokingServiceRequestMethod; + } +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqOrderFlow.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqOrderFlow.java new file mode 100644 index 00000000..7938df9a --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqOrderFlow.java @@ -0,0 +1,138 @@ +package com.zdxt.enforcementcode.domain; + + +import lombok.Data; +import lombok.EqualsAndHashCode; + +@Data +@EqualsAndHashCode(callSuper = false) +public class MssqOrderFlow { + + /** + * 审批部门 + */ + private String appOrgName; + + /** + * 审批人名称 + */ + private String approveUserName; + + /** + * 审批时间 + */ + private String approveTime; + + /** + * 审批意见 + */ + private String approveContent; + /** + * 操作类型名 + */ + private String operName; + + /** + * 状态 + */ + private Integer state; + + /** + * 文件 + */ +// private AppFiles appFiles; + private String appOrgShortname; + + public String getAppOrgName() { + return appOrgName; + } + + public void setAppOrgName(String appOrgName) { + this.appOrgName = appOrgName; + } + + public String getApproveUserName() { + return approveUserName; + } + + public void setApproveUserName(String approveUserName) { + this.approveUserName = approveUserName; + } + + public String getApproveTime() { + return approveTime; + } + + public void setApproveTime(String approveTime) { + this.approveTime = approveTime; + } + + public String getApproveContent() { + return approveContent; + } + + public void setApproveContent(String approveContent) { + this.approveContent = approveContent; + } + + public String getOperName() { + return operName; + } + + public void setOperName(String operName) { + this.operName = operName; + } + + public Integer getState() { + return state; + } + + public void setState(Integer state) { + this.state = state; + } + +// public AppFiles getAppFiles() { +// return appFiles; +// } +// +// public void setAppFiles(AppFiles appFiles) { +// this.appFiles = appFiles; +// } + + public String getAppOrgShortname() { + return appOrgShortname; + } + + public void setAppOrgShortname(String appOrgShortname) { + this.appOrgShortname = appOrgShortname; + } + + class AppFiles { + /** + * 文件名称 + */ + private String fileName; + /** + * 文件地址 + */ + private String fileUrl; + + public String getFileName() { + return fileName; + } + + public void setFileName(String fileName) { + this.fileName = fileName; + } + + public String getFileUrl() { + return fileUrl; + } + + public void setFileUrl(String fileUrl) { + this.fileUrl = fileUrl; + } + + } +} + diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java index 1caedcd7..06922e70 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java @@ -402,4 +402,14 @@ public class EnforcementRegistrationBo extends BaseEntity { * 排序字段列 */ private String orderByColumn; + + /** + * 执法次数区间最小值 + */ + private Integer numMin; + + /** + * 执法次数区间最大值 + */ + private Integer numMax; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ComplaintStatisticsMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ComplaintStatisticsMapper.java index 22552412..c15929e0 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ComplaintStatisticsMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ComplaintStatisticsMapper.java @@ -40,5 +40,18 @@ public interface ComplaintStatisticsMapper extends BaseMapperPlus selectComplaintListForAreaStat(@Param("bo") ComplaintStatisticsBo bo, @Param("dataFilter") String dataFilter); + + /** + * 获取投诉举报列表,合并两个投诉表的投诉部门 + * @param complaintStatistics + * @return + */ + List complaintGetComplaintDepartment(ComplaintStatistics complaintStatistics); + /** + * 根据投诉统计id获取投诉举报详情 + * @param id + * @return + */ + ComplaintStatistics complaintGetComplaintDepartmentById(String id); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnterpriseComplaintMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnterpriseComplaintMapper.java index 20704372..eeb4c235 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnterpriseComplaintMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnterpriseComplaintMapper.java @@ -12,4 +12,11 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; */ public interface EnterpriseComplaintMapper extends BaseMapperPlus { + /** + * 查询企业执法-在线投诉 + * + * @param id 企业执法-在线投诉ID + * @return 企业执法-在线投诉 + */ + EnterpriseComplaint selectEnterpriseComplaintById(String id); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java index b803d7eb..58ef6cdc 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/LawEnfOfficerMapper.java @@ -1,6 +1,7 @@ package com.zdxt.enforcementcode.mapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zdxt.enforcementcode.common.annotation.EfcodeDataFilter; import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; import org.apache.ibatis.annotations.Param; @@ -9,6 +10,7 @@ import java.util.List; public interface LawEnfOfficerMapper { + @EfcodeDataFilter(column = "bureau_dept_id") Page selectLawEnfOfficerPageList(@Param("page") Page page, @Param("bo") EnforcementRegistrationBo bo); diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ZdxtFileMapper.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ZdxtFileMapper.java index 9aaa850d..5179177c 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ZdxtFileMapper.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ZdxtFileMapper.java @@ -5,6 +5,8 @@ import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.springframework.web.bind.annotation.PostMapping; +import java.util.List; + /** * 附件Mapper接口 * @@ -23,6 +25,12 @@ public interface ZdxtFileMapper extends BaseMapperPlus { public int deleteZdxtFileByBusinessIds(String[] guids); - + /** + * 查询附件列表 + * + * @param zdxtFileCommon 附件 + * @return 附件集合 + */ + public List selectZdxtFileList(ZdxtFile zdxtFileCommon); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/IStatisticsInspectionPlanReport.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/IStatisticsInspectionPlanReport.java index 9b484291..fea3cea1 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/IStatisticsInspectionPlanReport.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/IStatisticsInspectionPlanReport.java @@ -6,6 +6,7 @@ import com.zdxt.enforcementcode.domain.vo.report.InspectionPlanExportVo; import com.zdxt.enforcementcode.domain.vo.report.InspectionPlanGroupVo; import com.zdxt.enforcementcode.domain.vo.report.InspectionPlanOverviewVo; import com.zdxt.enforcementcode.domain.vo.report.InspectionPlanRankVo; +import jakarta.servlet.http.HttpServletResponse; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -36,4 +37,6 @@ public interface IStatisticsInspectionPlanReport { /** Tab1导出 */ List exportGroupList(EnforcementInspectionProgramBo bo); + + void previewFile (String id, HttpServletResponse response); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/EnforcementRegistrationReportImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/EnforcementRegistrationReportImpl.java index 84378f7c..1cfbb837 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/EnforcementRegistrationReportImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/EnforcementRegistrationReportImpl.java @@ -87,8 +87,8 @@ public class EnforcementRegistrationReportImpl implements IEnforcementRegistrati // V2:SQL层JOIN字典表排序 + 服务端分页(依赖district/street已回填) // 手动构建双列权限过滤(bureau_dept_id OR entrust_dept_id),表别名 er Page page = pageQuery.build(); - //String dataFilter = buildDualColumnFilter("er"); - IPage result = registrationMapper.selectReportPageV2(page, bo, null); + String dataFilter = buildDualColumnFilter("er"); + IPage result = registrationMapper.selectReportPageV2(page, bo, dataFilter); return TableDataInfo.build(result); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java index 69f129c1..e5597ab4 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/LawEnfOfficerSericeImpl.java @@ -2,6 +2,7 @@ package com.zdxt.enforcementcode.report.impl; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.zdxt.enforcementcode.common.util.DataFilterUtil; import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationBo; import com.zdxt.enforcementcode.domain.vo.EnforcementRegistrationVo; import com.zdxt.enforcementcode.mapper.LawEnfOfficerMapper; @@ -32,6 +33,8 @@ public class LawEnfOfficerSericeImpl implements ILawEnfOfficerService { } @Override public TableDataInfo selectLawEnfOfficerPageList(PageQuery pageQuery, EnforcementRegistrationBo bo) { + + Page list=lawEnfOfficerMapper.selectLawEnfOfficerPageList(buildPage(pageQuery),bo); return TableDataInfo.build(list); } @@ -46,4 +49,24 @@ public class LawEnfOfficerSericeImpl implements ILawEnfOfficerService { Page list=lawEnfOfficerMapper.selectLawEnfOfficerDetailsPageList(buildPage(pageQuery),bo); return TableDataInfo.build(list); } + + + + /** + * 构建双列数据权限过滤条件:bureau_dept_id(执法单位)或 entrust_dept_id(委托执法部门)。 + *

任一列在权限范围内即可保留记录。带 "AND " 前缀,可直接拼在现有 WHERE 条件后。 + *

超管或 ViewAllDataRole 返回 null(不过滤)。 + * + * @param tableAlias 表别名(不带点),无别名传 "" + * @return 拼接后的 "AND (...)" SQL片段;超管/全数据角色返回 null + */ + private String buildDualColumnFilter(String tableAlias) { + String bureauFilter = DataFilterUtil.buildFilterSql(tableAlias, "bureau_dept_id", true, true); + if (bureauFilter == null) { + // 超管或 ViewAllDataRole,全部放行 + return null; + } + String entrustFilter = DataFilterUtil.buildFilterSql(tableAlias, "entrust_dept_id", true, true); + return "AND (" + bureauFilter + " OR " + entrustFilter + ")"; + } } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/StatisticsInspectionPlanReportImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/StatisticsInspectionPlanReportImpl.java index 8f6ce40a..2c8fbb00 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/StatisticsInspectionPlanReportImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/StatisticsInspectionPlanReportImpl.java @@ -1,18 +1,30 @@ package com.zdxt.enforcementcode.report.impl; import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.zdxt.enforcementcode.common.util.DataFilterUtil; +import com.zdxt.enforcementcode.domain.ZdxtFile; import com.zdxt.enforcementcode.domain.bo.EnforcementInspectionProgramBo; +import com.zdxt.enforcementcode.domain.bo.ZdxtFileBo; +import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; import com.zdxt.enforcementcode.domain.vo.report.*; import com.zdxt.enforcementcode.mapper.EnforcementInspectionProgramMapper; +import com.zdxt.enforcementcode.mapper.ZdxtFileMapper; import com.zdxt.enforcementcode.report.IStatisticsInspectionPlanReport; +import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.apache.pdfbox.Loader; +import org.apache.pdfbox.pdmodel.PDDocument; +import org.apache.pdfbox.pdmodel.PDDocumentInformation; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import java.io.FileInputStream; +import java.io.OutputStream; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -32,6 +44,10 @@ import java.util.stream.Collectors; public class StatisticsInspectionPlanReportImpl implements IStatisticsInspectionPlanReport { private final EnforcementInspectionProgramMapper programMapper; + private final ZdxtFileMapper zdxtFileMapper; + + @Value("${ruoyi.profile}") + private String urlProfile; @Override public InspectionPlanOverviewVo overview(EnforcementInspectionProgramBo bo) { @@ -126,6 +142,44 @@ public class StatisticsInspectionPlanReportImpl implements IStatisticsInspection }).collect(Collectors.toList()); } + + + @Override + public void previewFile(String id, HttpServletResponse response) { + LambdaQueryWrapper bo = new LambdaQueryWrapper<>(); + bo.eq(ZdxtFile::getGuid, id); + List files = zdxtFileMapper.selectVoList(bo); + if (files.size() == 0) return; + String path = files.get(0).getUploadPath().replace("/profile", urlProfile); + OutputStream os=null; + try{ + FileInputStream is=new FileInputStream(path); + response.reset(); + response.setContentType("application/pdf;charset=UTF-8"); + response.setHeader("Content-Disposition", "inline;filename=file." + path); + byte[] bs = new byte[is.available()]; + is.read(bs); + os = response.getOutputStream(); + PDDocument doc= Loader.loadPDF(bs); + PDDocumentInformation info =doc.getDocumentInformation(); + info.setTitle("附件"); + doc.setDocumentInformation(info); + doc.save(os); + doc.close(); + } catch (Exception e) { + e.printStackTrace(); + }finally { + if(os!=null){ + try{ + os.flush(); + os.close(); + }catch (Exception e){ + e.printStackTrace(); + } + } + } + } + // ===== 私有方法 ===== /** diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/ComplaintsReportService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/ComplaintsReportService.java new file mode 100644 index 00000000..fac6df4a --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/ComplaintsReportService.java @@ -0,0 +1,22 @@ +package com.zdxt.enforcementcode.service; + + +import com.zdxt.enforcementcode.domain.ComplaintStatistics; + +import java.util.List; + +public interface ComplaintsReportService { + /** + * 获取投诉举报列表,合并两个投诉表的投诉部门 + * @param complaintStatistics + * @return + */ + List complaintGetComplaintDepartment(ComplaintStatistics complaintStatistics); + + /** + * 根据投诉统计id获取投诉举报详情 + * @param id + * @return + */ + ComplaintStatistics complaintById(String id); +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseComplaintService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseComplaintService.java index c63a8784..299cebe3 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseComplaintService.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseComplaintService.java @@ -1,5 +1,6 @@ package com.zdxt.enforcementcode.service; +import com.zdxt.enforcementcode.domain.MssqOrderFlow; import com.zdxt.enforcementcode.domain.vo.EnterpriseComplaintVo; import com.zdxt.enforcementcode.domain.bo.EnterpriseComplaintBo; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -65,4 +66,12 @@ public interface IEnterpriseComplaintService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + /** + * 查询执法投诉处置进度 + * + * @param id 企业执法-在线投诉ID + * @return 企业执法-在线投诉 + */ + List selectEnterpriseComplaintProcess(String id); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ComplaintsReportServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ComplaintsReportServiceImpl.java new file mode 100644 index 00000000..bc19ab21 --- /dev/null +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ComplaintsReportServiceImpl.java @@ -0,0 +1,78 @@ +package com.zdxt.enforcementcode.service.impl; + + +import com.zdxt.enforcementcode.domain.ComplaintStatistics; +import com.zdxt.enforcementcode.domain.EnterpriseComplaint; +import com.zdxt.enforcementcode.domain.ZdxtFile; +import com.zdxt.enforcementcode.mapper.ComplaintStatisticsMapper; +import com.zdxt.enforcementcode.mapper.EnterpriseComplaintMapper; +import com.zdxt.enforcementcode.mapper.ZdxtFileMapper; +import com.zdxt.enforcementcode.service.ComplaintsReportService; +import com.zdxt.enforcementcode.service.IEnterpriseComplaintService; +import org.dromara.system.mapper.SysDictDataMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.text.SimpleDateFormat; +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class ComplaintsReportServiceImpl implements ComplaintsReportService { + @Autowired + private ComplaintStatisticsMapper complaintStatisticsMapper; + @Autowired + private EnterpriseComplaintMapper enterpriseComplaintMapper; + @Autowired + private ZdxtFileMapper zdxtFileCommonMapper; + @Autowired + private SysDictDataMapper dictDataMapper; + @Autowired + private IEnterpriseComplaintService iEnterpriseComplaintService; + + + /** + * 获取投诉部门 + * @param complaintStatistics + * @return + */ + @Override + public List complaintGetComplaintDepartment(ComplaintStatistics complaintStatistics) { + List list=complaintStatisticsMapper.complaintGetComplaintDepartment(complaintStatistics); + return list; + } + + + /** + * 获取投诉信息 + * @param id + * @return + */ + @Override + public ComplaintStatistics complaintById(String id) { + + SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + ComplaintStatistics complaintStatistics = complaintStatisticsMapper.complaintGetComplaintDepartmentById(id); + EnterpriseComplaint enterpriseComplaint = enterpriseComplaintMapper.selectEnterpriseComplaintById(complaintStatistics.getCid()); + ZdxtFile zdxtFileCommon = new ZdxtFile(); + zdxtFileCommon.setBusinessId(complaintStatistics.getCid()); + List zdxtFileCommonList = zdxtFileCommonMapper.selectZdxtFileList(zdxtFileCommon); + if (zdxtFileCommonList.size() > 0) { + complaintStatistics.setFileList(zdxtFileCommonList.stream().map(ZdxtFile::getUploadPath).collect(Collectors.toList())); + } + if(enterpriseComplaint.getEnforceType()!=null) { + String enforceTypeText = dictDataMapper.selectDictLabel("caseType", enterpriseComplaint.getEnforceType() + ""); + if (enforceTypeText == null || enforceTypeText.isEmpty()) { + + enterpriseComplaint.setEnforceTypeStr(enterpriseComplaint.getEnforceType() + ""); + } else { + enterpriseComplaint.setEnforceTypeStr(enforceTypeText); + } + }else{ + enterpriseComplaint.setEnforceTypeStr(" "); + } + enterpriseComplaint.setCreateTimeStr(simpleDateFormat.format(enterpriseComplaint.getCreateTime())); + complaintStatistics.setEnterpriseComplaint(enterpriseComplaint); + return complaintStatistics; + } +} diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java index ada4ef96..32f25e49 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java @@ -18,6 +18,7 @@ import com.zdxt.enforcementcode.domain.bo.EnforcementRegistrationQueryBo; import com.zdxt.enforcementcode.domain.vo.*; import com.zdxt.enforcementcode.domain.vo.enterprise.*; import com.zdxt.enforcementcode.mapper.*; +import com.zdxt.enforcementcode.service.ISjIndivCreditRatingInfoService; import org.dromara.common.core.utils.DateUtils; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; @@ -67,6 +68,7 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat private final ZdxtFileMapper zdxtFileMapper; private final SysDeptMapper sysDeptMapper; private final EnterpriseInformationMapper enterpriseInformationMapper; + private final ISjIndivCreditRatingInfoService sjIndivCreditRatingInfoService; /** @@ -716,7 +718,10 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat }); } - + // 查风险信用等级(异步执行,不阻塞执法登记保存) + if (bo.getLawEnforceCategory().equals("1")){ + sjIndivCreditRatingInfoService.insertRiskCreditWarningInfoAsync(bo); + } return resNum; } @@ -1034,6 +1039,12 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat zdxtFileMapper.insertZdxtFile(zdxtFile); }); } + + // 查风险信用等级 + if (bo.getLawEnforceCategory().equals("1")){ + sjIndivCreditRatingInfoService.insertRiskCreditWarningInfoAsync(bo); + } + return i; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseComplaintServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseComplaintServiceImpl.java index c5fd277a..c524f8f5 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseComplaintServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseComplaintServiceImpl.java @@ -1,5 +1,12 @@ package com.zdxt.enforcementcode.service.impl; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.zdxt.enforcementcode.domain.MssqAddOrder; +import com.zdxt.enforcementcode.domain.MssqOrderFlow; +import com.zdxt.enforcementcode.domain.bo.MssqAddOrderBo; +import com.zdxt.enforcementcode.service.IMssqApiService; +import org.apache.commons.compress.utils.Lists; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.core.utils.StringUtils; import org.dromara.common.mybatis.core.page.TableDataInfo; @@ -16,6 +23,7 @@ import com.zdxt.enforcementcode.domain.EnterpriseComplaint; import com.zdxt.enforcementcode.mapper.EnterpriseComplaintMapper; import com.zdxt.enforcementcode.service.IEnterpriseComplaintService; +import java.util.Collections; import java.util.List; import java.util.Map; import java.util.Collection; @@ -32,6 +40,7 @@ import java.util.Collection; public class EnterpriseComplaintServiceImpl implements IEnterpriseComplaintService { private final EnterpriseComplaintMapper baseMapper; + private final IMssqApiService mssqApiService; /** * 查询企业执法-在线投诉 @@ -152,4 +161,37 @@ public class EnterpriseComplaintServiceImpl implements IEnterpriseComplaintServi } return baseMapper.deleteByIds(ids) > 0; } + + @Override + public List selectEnterpriseComplaintProcess(String id) { + EnterpriseComplaint enterpriseComplaint = baseMapper.selectEnterpriseComplaintById(id); + if(StringUtils.isNotEmpty(enterpriseComplaint.getProWoCode())){ + log.info("查询投诉信息:{}", JSONObject.toJSONString(enterpriseComplaint)); + //查询民生诉求接口 获取处置进度,判断是否存在诉求工单编码 + + log.info("查询工单编码:{}",enterpriseComplaint.getProWoCode()); + //查询工单处置流程信息 + MssqAddOrderBo mssqAddOrder = new MssqAddOrderBo(); + mssqAddOrder.setProWoCode(enterpriseComplaint.getProWoCode()); + String s = null; + try { + //查询进度详细信息 TODO 异常捕捉之后,前端超时 + s = mssqApiService.queryMssq(mssqAddOrder, "/api/API_YX/proProcess/queryAppInfo"); + log.info("查询工单信息结果返回:{}",s); + JSONObject jsonObject = JSONObject.parseObject(s); + //获取进度数据 + List approveDatas1 = + JSONArray.parseArray(jsonObject.getString("approveDatas"), MssqOrderFlow.class); + //列表排序反转 + Collections.reverse(approveDatas1); + enterpriseComplaint.setMssqOrderFlows(approveDatas1); + return approveDatas1; + } catch (Exception e) { + e.printStackTrace(); + log.info("查询工单信息结果异常,{}",s); + } + + } + return Lists.newArrayList(); + } } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnterpriseComplaintMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnterpriseComplaintMapper.xml index 0c71e9cd..8cb8060a 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnterpriseComplaintMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnterpriseComplaintMapper.xml @@ -3,4 +3,45 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + select id, rel_id, enforce_type, problem_description, enterprise_address, linkman, + linkman_tel, com_or_opi, authorization, create_time, pro_wo_code,enterprise_number, + enterprise_name,status,evaluate_time,complaint_departments,complaint_department_ids, + enforcement_time,handle_time,complaint_type,complaint_item_codes,complaint_item_names,complaint_record_item, + record_type + from enterprise_complaint + + + diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/ZdxtFileMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/ZdxtFileMapper.xml index e33f8054..6a821c80 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/ZdxtFileMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/ZdxtFileMapper.xml @@ -3,6 +3,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -65,4 +91,41 @@ #{businessId} + + + select guid, business_id, sort_code, file_name, upload_person_id, upload_person_name, upload_path, upload_time, org_code, org_name, file_type, file_suffix, file_save_name, file_size, file_remark, update_time, update_person_name, is_delete2, expand1, expand2, expand3, sass_id from zdxt_file + + + diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/ComplaintStatisticsReportMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/ComplaintStatisticsReportMapper.xml index 69fc7bb7..2444c89d 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/ComplaintStatisticsReportMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/ComplaintStatisticsReportMapper.xml @@ -145,5 +145,36 @@ ${dataFilter} + + + diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml index 23d4c45e..279837a2 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml @@ -44,8 +44,11 @@ GROUP BY er.enterprise_number, er.enterprise_name, er.district, er.street ) t - - AND t.num >= #{bo.num} + + AND t.num >= #{bo.numMin} + + + AND t.num >= #{bo.numMax} ORDER BY t.num DESC, t.enforcement_time DESC diff --git a/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java b/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java index 8b5084ee..3afd7b7e 100644 --- a/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java +++ b/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java @@ -1,6 +1,7 @@ package org.dromara.system.mapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import org.apache.ibatis.annotations.Param; import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; import org.dromara.system.domain.SysDictData; import org.dromara.system.domain.bo.SysDictDataBo; @@ -36,4 +37,14 @@ public interface SysDictDataMapper extends BaseMapperPlus + +