Browse Source

监督端-涉企情况,投诉情况,计划情况,缺失接口迁移

dev-V1.10.0
niujiyi 11 hours ago
parent
commit
11ed5dc93c
  1. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfCpTaskController.java
  2. 6
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnforcementRegistrationController.java
  3. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewController.java
  4. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewDataSumController.java
  5. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewJobController.java
  6. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardAreaInfoController.java
  7. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardSituationTrendAreaController.java
  8. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardSituationTrendDomainController.java
  9. 2
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/StatisticalPanelController.java
  10. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/move/MoveSupervisionController.java
  11. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/CheckRegistrationController.java
  12. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/DomainController.java
  13. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/HighFrequencyEnterpriseController.java
  14. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/KeyEnterprisesController.java
  15. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java
  16. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/RegistrationStatisticsController.java
  17. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/ScanDataSituationController.java
  18. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/SituationController.java
  19. 25
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsComplaintController.java
  20. 40
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsInspectionPlanController.java
  21. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/TrendBehaviorController.java
  22. 10
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/ComplaintStatistics.java
  23. 12
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnterpriseComplaint.java
  24. 34
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/FileData.java
  25. 497
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqAddOrder.java
  26. 78
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqBaseDomain.java
  27. 133
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqOrderFlow.java
  28. 13
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ComplaintStatisticsMapper.java
  29. 8
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnterpriseComplaintMapper.java
  30. 10
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ZdxtFileMapper.java
  31. 1
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/IStatisticsInspectionPlanReport.java
  32. 52
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/StatisticsInspectionPlanReportImpl.java
  33. 21
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/ComplaintsReportService.java
  34. 3
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnforcementInspectionProgramService.java
  35. 9
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnterpriseComplaintService.java
  36. 3
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IZdxtFileService.java
  37. 82
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ComplaintsReportServiceImpl.java
  38. 46
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementInspectionProgramServiceImpl.java
  39. 36
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseComplaintServiceImpl.java
  40. 14
      zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ZdxtFileServiceImpl.java
  41. 42
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnterpriseComplaintMapper.xml
  42. 63
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/ZdxtFileMapper.xml
  43. 70
      zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/ComplaintStatisticsReportMapper.xml
  44. 9
      zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java
  45. 5
      zdxt-modules/zdxt-system/src/main/resources/mapper/system/SysDictDataMapper.xml
  46. 9
      zdxt-web-server/zdxt-admin-web-server/src/main/resources/application-dev.yml

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfCpTaskController.java

@ -46,7 +46,6 @@ public class AppEnfCpTaskController extends EfcodeCpTaskController {
* @param planDate 计划执行日期(可选,格式 yyyy-MM-dd)
* @return 任务列表
*/
@SaIgnore
@GetMapping("/myList")
public R<List<EfcodeCpTaskVo>> myList(
@RequestParam(required = false) @DateTimeFormat(pattern = "yyyy-MM-dd") Date planDate,String searchValue,Integer dateType,String dateSearch) {

6
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnforcementRegistrationController.java

@ -210,12 +210,6 @@ public class AppEnforcementRegistrationController extends BaseController {
bo.setId(null);
}
}
/*if (StringUtils.isNotEmpty(bo.getLawId())) {
EnterpriseLawEnforcementBo eleBo = new EnterpriseLawEnforcementBo();
eleBo.setId(bo.getLawId());
eleBo.setIsReg(1L);
resNum = enterpriseLawEnforcementService.updateEnterpriseLawEnforcement(eleBo);
}*/
//更新联合预告状态
if(bo.getNoticeId()!=null){
UpdateWrapper<EfcodeCpNotice> wrapper = new UpdateWrapper();

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewController.java

@ -24,7 +24,6 @@ import java.util.Map;
* @author niujiyi
* @date 2023-08-07
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewDataSumController.java

@ -24,7 +24,6 @@ import java.util.Map;
* @author niujiyi
* @date 2023-08-07
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/cim/CimDashboardOverviewJobController.java

@ -16,7 +16,6 @@ import org.springframework.web.bind.annotation.RestController;
* @author niujiyi
* @date 2023-08-07
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardAreaInfoController.java

@ -20,7 +20,6 @@ import java.util.List;
* @author Lion Li
* @date 2026-06-05
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardSituationTrendAreaController.java

@ -20,7 +20,6 @@ import com.zdxt.enforcementcode.service.IDashboardSituationTrendAreaService;
* @author Lion Li
* @date 2026-05-28
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/DashboardSituationTrendDomainController.java

@ -20,7 +20,6 @@ import com.zdxt.enforcementcode.service.IDashboardSituationTrendDomainService;
* @author Lion Li
* @date 2026-05-28
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

2
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/StatisticalPanelController.java

@ -42,7 +42,6 @@ public class StatisticalPanelController {
*
* @param params
* */
@SaIgnore
@PostMapping("/analysisEnterprisesCoordination")
@ResponseBody
public R<Map<String,Object>> analysisEnterprisesCoordination(@RequestBody(required = false) SixAnalysisParamsBo params){
@ -211,7 +210,6 @@ public class StatisticalPanelController {
}
/** 监督端-行政时间维度 */
@SaIgnore
@PostMapping("/analysisTime")
@ResponseBody
public R <Map<String,Object>> analysisEnterprisesInsTime(@RequestBody SixAnalysisParamsBo params){

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/move/MoveSupervisionController.java

@ -22,7 +22,6 @@ import java.util.Map;
/**
* 移动监督端
*/
@SaIgnore
@Validated
@RequiredArgsConstructor
@RestController

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/CheckRegistrationController.java

@ -29,7 +29,6 @@ import java.util.List;
*
* @author zdxt
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/DomainController.java

@ -28,7 +28,6 @@ import java.util.List;
*
* @author zdxt
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/HighFrequencyEnterpriseController.java

@ -29,7 +29,6 @@ import java.util.List;
/**
* 高频检查监测分析
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/KeyEnterprisesController.java

@ -26,7 +26,6 @@ import java.util.List;
*
* @author zdxt
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/LawEnfOfficerController.java

@ -22,7 +22,6 @@ import java.util.List;
/**
* 执法人员情况
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/RegistrationStatisticsController.java

@ -52,7 +52,6 @@ public class RegistrationStatisticsController {
/**
* 执法分析导出(匹配旧系统 Excel 格式)
*/
// @SaIgnore
@PostMapping("/exportList")
public void exportList(EnforcementRegistrationBo bo, HttpServletResponse response) {
try {

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/ScanDataSituationController.java

@ -27,7 +27,6 @@ import java.util.List;
/**
* 各区,各领域扫码情况
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/SituationController.java

@ -28,7 +28,6 @@ import java.util.List;
/**
* 态势趋势监测分析
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

25
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsComplaintController.java

@ -1,8 +1,13 @@
package com.zdxt.enforcementcode.controller.web.supervision.report;
import cn.dev33.satoken.annotation.SaIgnore;
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;
@ -31,6 +36,8 @@ import java.util.Map;
public class StatisticsComplaintController {
private final IStatisticsComplaintReport reportService;
private final ComplaintsReportService complaintsReportService;
private final IEnterpriseComplaintService iEnterpriseComplaintService;
/** Tab1概览 */
@ -133,5 +140,23 @@ public class StatisticsComplaintController {
} catch (Exception ignored) {
}
}
/**
* 投诉详情
* @param id
* @param
* @return
*/
@GetMapping("/details")
public R<Map<String, Object>> complaintsReportDetails(String id) {
Map<String, Object> map = new HashMap<>();
ComplaintStatistics complaintStatistics = complaintsReportService.complaintById(id);
List<MssqOrderFlow> mssqOrderFlowList = iEnterpriseComplaintService.selectEnterpriseComplaintProcess(complaintStatistics.getCid());
map.put("complaintStatistics", complaintStatistics);
map.put("mssqOrderFlowList", mssqOrderFlowList);
return R.ok(map);
}
}

40
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/StatisticsInspectionPlanController.java

@ -6,6 +6,7 @@ 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.IEnforcementInspectionProgramService;
import com.zdxt.enforcementcode.service.IZdxtFileService;
import jakarta.servlet.http.HttpServletResponse;
import lombok.RequiredArgsConstructor;
@ -34,6 +35,9 @@ import java.util.List;
public class StatisticsInspectionPlanController {
private final IStatisticsInspectionPlanReport reportService;
private final IZdxtFileService zdxtFileService;
private IEnforcementInspectionProgramService enforcementInspectionProgramService;
/** Tab1概览 */
@GetMapping("/overview")
@ -87,4 +91,40 @@ public class StatisticsInspectionPlanController {
}
}
}
/**
* check 文件是否存在
* @param id
* @return
*/
@PostMapping("/checkFile")
@ResponseBody
public boolean checkFile(String id){
List<ZdxtFile> files = zdxtFileService.selectZdxtFileById(id);
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);
enforcementInspectionProgramService.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);
enforcementInspectionProgramService.previewFile(guid,response);
}
}

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/web/supervision/report/TrendBehaviorController.java

@ -28,7 +28,6 @@ import java.util.List;
/**
* 趋势行为监测分析
*/
@SaIgnore
@Slf4j
@Validated
@RequiredArgsConstructor

10
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/ComplaintStatistics.java

@ -95,4 +95,14 @@ public class ComplaintStatistics extends BaseEntity {
*/
private String enterpriseAddress;
/**
* 附件
*/
private List<String> fileList;
/**
* 投诉表
*/
private EnterpriseComplaint enterpriseComplaint;
}

12
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EnterpriseComplaint.java

@ -154,4 +154,16 @@ public class EnterpriseComplaint extends BaseEntity {
* 详细地址
*/
private String detailedAddress;
/**
* 投诉事项编码 多个逗号隔开
*/
private String enforceTypeStr;
private String complaintTypeStr;
private String createTimeStr;
/**
* 民生诉求数据处置流程
*/
private List<MssqOrderFlow> mssqOrderFlows;
}

34
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;
}
}

497
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<FileData> fileDatas;
/** 工单编码 */
private String proWoCode;
/** 工单编码,可以传递多个,最多20个 */
private List<String> 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<String> uploadPaths;
private String uploadPath;
/**
* 获取工单流程信息-工单编码参数
*/
private String orderCode;
public String getUploadPath() {
return uploadPath;
}
public void setUploadPath(String uploadPath) {
this.uploadPath = uploadPath;
}
public List<String> getUploadPaths() {
return uploadPaths;
}
public void setUploadPaths(List<String> 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<String> getProWoCodes() {
return proWoCodes;
}
public void setProWoCodes(List<String> 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<FileData> getFileDatas() {
return fileDatas;
}
public void setFileDatas(List<FileData> fileDatas) {
this.fileDatas = fileDatas;
}
public String getOrderCode() {
return orderCode;
}
public void setOrderCode(String orderCode) {
this.orderCode = orderCode;
}
}

78
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;
}
}

133
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/MssqOrderFlow.java

@ -0,0 +1,133 @@
package com.zdxt.enforcementcode.domain;
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;
}
}
}

13
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ComplaintStatisticsMapper.java

@ -40,5 +40,18 @@ public interface ComplaintStatisticsMapper extends BaseMapperPlus<ComplaintStati
/** Tab2:查全量投诉列表(含enterprise_address)用于Java层区域/街道分组 */
List<ComplaintStatistics> selectComplaintListForAreaStat(@Param("bo") ComplaintStatisticsBo bo,
@Param("dataFilter") String dataFilter);
/**
* 获取投诉举报列表,合并两个投诉表的投诉部门
* @param complaintStatistics
* @return
*/
List<ComplaintStatistics> complaintGetComplaintDepartment(ComplaintStatistics complaintStatistics);
/**
* 根据投诉统计id获取投诉举报详情
* @param id
* @return
*/
ComplaintStatistics complaintGetComplaintDepartmentById(String id);
}

8
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/EnterpriseComplaintMapper.java

@ -11,4 +11,12 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
* @date 2026-04-13
*/
public interface EnterpriseComplaintMapper extends BaseMapperPlus<EnterpriseComplaint, EnterpriseComplaintVo> {
/**
* 查询企业执法-在线投诉
*
* @param id 企业执法-在线投诉ID
* @return 企业执法-在线投诉
*/
EnterpriseComplaint selectEnterpriseComplaintById(String id);
}

10
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/mapper/ZdxtFileMapper.java

@ -23,4 +23,14 @@ public interface ZdxtFileMapper extends BaseMapperPlus<ZdxtFile, ZdxtFileVo> {
* @return 结果
*/
public int deleteZdxtFileByBusinessIds(String[] guids);
/**
* 查询附件列表
*
* @param zdxtFileCommon 附件
* @return 附件集合
*/
public List<ZdxtFile> selectZdxtFileList(ZdxtFile zdxtFileCommon);
}

1
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/IStatisticsInspectionPlanReport.java

@ -38,4 +38,5 @@ public interface IStatisticsInspectionPlanReport {
/** Tab1导出 */
List<InspectionPlanExportVo> exportGroupList(EnforcementInspectionProgramBo bo);
void previewFile(String id, HttpServletResponse response);
}

52
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/report/impl/StatisticsInspectionPlanReportImpl.java

@ -15,6 +15,9 @@ 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;
@ -41,7 +44,18 @@ import java.util.stream.Collectors;
public class StatisticsInspectionPlanReportImpl implements IStatisticsInspectionPlanReport {
private final EnforcementInspectionProgramMapper programMapper;
private final ZdxtFileMapper zdxtFileMapper;
/** 本地文件上传目录,对应 zdxt.file.upload-path(dev: D:/uploadPath,prod: /data/upload 等) */
@Value("${zdxt.file.upload-path}")
private String uploadPath;
/**
* DB 中 upload_path 存储的是带 url-prefix 的相对路径(如 /profile/xxx.pdf),
* 这里用配置的 url-prefix 做占位符替换。默认 /profile 与各环境 yml 一致。
*/
@Value("${zdxt.file.url-prefix:/profile}")
private String urlPrefix;
@Override
public InspectionPlanOverviewVo overview(EnforcementInspectionProgramBo bo) {
@ -138,7 +152,43 @@ public class StatisticsInspectionPlanReportImpl implements IStatisticsInspection
@Override
public void previewFile(String id, HttpServletResponse response) {
LambdaQueryWrapper<ZdxtFile> bo = new LambdaQueryWrapper<>();
bo.eq(ZdxtFile::getGuid, id);
List<ZdxtFileVo> files = zdxtFileMapper.selectVoList(bo);
if (files.size() == 0) return;
// DB 存的是 urlPrefix(如 /profile)开头的相对路径,替换成本地 uploadPath
//String path = files.get(0).getUploadPath().replace("/profile", null);
String path = files.get(0).getUploadPath().replace(urlPrefix, uploadPath);
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();
}
}
}
}
// ===== 私有方法 =====

21
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/ComplaintsReportService.java

@ -0,0 +1,21 @@
package com.zdxt.enforcementcode.service;
import com.zdxt.enforcementcode.domain.ComplaintStatistics;
import java.util.List;
public interface ComplaintsReportService {
/**
* 获取投诉举报列表,合并两个投诉表的投诉部门
* @param complaintStatistics
* @return
*/
List<ComplaintStatistics> complaintGetComplaintDepartment(ComplaintStatistics complaintStatistics);
/**
* 根据投诉统计id获取投诉举报详情
* @param id
* @return
*/
ComplaintStatistics complaintById(String id);
}

3
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IEnforcementInspectionProgramService.java

@ -2,6 +2,7 @@ package com.zdxt.enforcementcode.service;
import com.zdxt.enforcementcode.domain.vo.EnforcementInspectionProgramVo;
import com.zdxt.enforcementcode.domain.bo.EnforcementInspectionProgramBo;
import jakarta.servlet.http.HttpServletResponse;
import org.dromara.common.mybatis.core.page.TableDataInfo;
import org.dromara.common.mybatis.core.page.PageQuery;
@ -99,4 +100,6 @@ public interface IEnforcementInspectionProgramService {
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
void previewFile (String id, HttpServletResponse response);
}

9
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<String> ids, Boolean isValid);
/**
* 查询执法投诉处置进度
*
* @param id 企业执法-在线投诉ID
* @return 企业执法-在线投诉
*/
List<MssqOrderFlow> selectEnterpriseComplaintProcess(String id);
}

3
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/IZdxtFileService.java

@ -1,5 +1,6 @@
package com.zdxt.enforcementcode.service;
import com.zdxt.enforcementcode.domain.ZdxtFile;
import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo;
import com.zdxt.enforcementcode.domain.bo.ZdxtFileBo;
import org.dromara.common.mybatis.core.page.TableDataInfo;
@ -65,4 +66,6 @@ public interface IZdxtFileService {
* @return 是否删除成功
*/
Boolean deleteWithValidByIds(Collection<String> ids, Boolean isValid);
public List<ZdxtFile> selectZdxtFileById(String guid);
}

82
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ComplaintsReportServiceImpl.java

@ -0,0 +1,82 @@
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;
@Override
public List<ComplaintStatistics> complaintGetComplaintDepartment(ComplaintStatistics complaintStatistics) {
List<ComplaintStatistics> list=complaintStatisticsMapper.complaintGetComplaintDepartment(complaintStatistics);
/* for(int i = 0; i<(Math.min(list.size(), searchType.getPageNumber() * searchType.getPageSize())); i++){
List<MssqOrderFlow> mssqOrderFlowList =iEnterpriseComplaintService.selectEnterpriseComplaintProcess(list.get(i).getCid());
if(mssqOrderFlowList.size()>0){
list.get(i).setProgress(mssqOrderFlowList.get(0).getOperName());
if(mssqOrderFlowList.get(0).getState()==20){
list.get(i).setResults("已处理");
}else{
list.get(i).setResults("处理中");
}
}
list.get(i).setProgress("市统一受理分拨中心");
list.get(i).setResults("拟交办/转送处理");
List<MssqOrderFlow> mssqOrderFlowList =iEnterpriseComplaintService.selectEnterpriseComplaintProcess(list.get(i).getCid());
if(mssqOrderFlowList.size()>0) {
list.get(i).setProgress(mssqOrderFlowList.get(0).getAppOrgShortname());
list.get(i).setResults(mssqOrderFlowList.get(0).getOperName());
}
}*/
return list;
}
@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<ZdxtFile> 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;
}
}

46
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementInspectionProgramServiceImpl.java

@ -4,6 +4,10 @@ import cn.hutool.core.util.IdUtil;
import com.zdxt.enforcementcode.domain.ZdxtFile;
import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo;
import com.zdxt.enforcementcode.mapper.ZdxtFileMapper;
import jakarta.servlet.http.HttpServletResponse;
import org.apache.pdfbox.Loader;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDDocumentInformation;
import org.dromara.common.core.utils.DateUtils;
import org.dromara.common.core.utils.MapstructUtils;
import org.dromara.common.core.utils.StringUtils;
@ -16,6 +20,7 @@ import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.dromara.common.satoken.utils.LoginHelper;
import org.dromara.common.translation.annotation.Translation;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.zdxt.enforcementcode.domain.bo.EnforcementInspectionProgramBo;
@ -24,6 +29,8 @@ import com.zdxt.enforcementcode.domain.EnforcementInspectionProgram;
import com.zdxt.enforcementcode.mapper.EnforcementInspectionProgramMapper;
import com.zdxt.enforcementcode.service.IEnforcementInspectionProgramService;
import java.io.FileInputStream;
import java.io.OutputStream;
import java.util.List;
import java.util.Map;
import java.util.Collection;
@ -45,6 +52,9 @@ public class EnforcementInspectionProgramServiceImpl implements IEnforcementInsp
private final ZdxtFileMapper zdxtFileMapper;
@Value("${zdxt.file.upload-path}")
private String urlProfile;
/**
* 查询执法检查计划
*
@ -399,4 +409,40 @@ public class EnforcementInspectionProgramServiceImpl implements IEnforcementInsp
}
return baseMapper.deleteByIds(ids) > 0;
}
@Override
public void previewFile(String id, HttpServletResponse response) {
ZdxtFile zdxtFile = new ZdxtFile();
zdxtFile.setBusinessId(id);
List<ZdxtFile> files = zdxtFileMapper.selectZdxtFileList(zdxtFile);
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();
}
}
}
}
}

36
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnterpriseComplaintServiceImpl.java

@ -2,6 +2,8 @@ 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;
@ -159,4 +161,38 @@ public class EnterpriseComplaintServiceImpl implements IEnterpriseComplaintServi
}
return baseMapper.deleteByIds(ids) > 0;
}
@Override
public List<MssqOrderFlow> 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<MssqOrderFlow> 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();
}
}

14
zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/ZdxtFileServiceImpl.java

@ -148,4 +148,18 @@ public class ZdxtFileServiceImpl implements IZdxtFileService {
}
return baseMapper.deleteByIds(ids) > 0;
}
/**
* 查询附件
*
* @param guid 附件ID
* @return 附件
*/
@Override
public List<ZdxtFile> selectZdxtFileById(String guid) {
ZdxtFile comm=new ZdxtFile();
comm.setBusinessId(guid);
List<ZdxtFile> list = baseMapper.selectZdxtFileList(comm);
return list;
}
}

42
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnterpriseComplaintMapper.xml

@ -3,4 +3,46 @@
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zdxt.enforcementcode.mapper.EnterpriseComplaintMapper">
<resultMap type="com.zdxt.enforcementcode.domain.EnterpriseComplaint" id="EnterpriseComplaintResult">
<result property="id" column="id" />
<result property="relId" column="rel_id" />
<result property="enforceType" column="enforce_type" />
<result property="problemDescription" column="problem_description" />
<result property="enterpriseAddress" column="enterprise_address" />
<result property="linkman" column="linkman" />
<result property="linkmanTel" column="linkman_tel" />
<result property="comOrOpi" column="com_or_opi" />
<result property="authorization" column="authorization" />
<result property="createTime" column="create_time" />
<result property="proWoCode" column="pro_wo_code" />
<result property="enterpriseNumber" column="enterprise_number" />
<result property="enterpriseName" column="enterprise_name" />
<result property="status" column="status" />
<result property="evaluateTime" column="evaluate_time" />
<result property="complaintDepartments" column="complaint_departments" />
<result property="complaintDepartmentIds" column="complaint_department_ids" />
<result property="enforcementTime" column="enforcement_time" />
<result property="handleTime" column="handle_time" />
<result property="complaintType" column="complaint_type" />
<result property="complaintItemCodes" column="complaint_item_codes" />
<result property="complaintItemNames" column="complaint_item_names" />
<result property="complaintRecordItem" column="complaint_record_item" />
<result property="recordType" column="record_type" />
</resultMap>
<sql id="selectEnterpriseComplaintVo">
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
</sql>
<select id="selectEnterpriseComplaintById" parameterType="String" resultMap="EnterpriseComplaintResult">
<include refid="selectEnterpriseComplaintVo"/>
where id = #{id}
</select>
</mapper>

63
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/ZdxtFileMapper.xml

@ -66,4 +66,67 @@
#{businessId}
</foreach>
</delete>
<resultMap type="com.zdxt.enforcementcode.domain.ZdxtFile" id="ZdxtFileResult">
<result property="guid" column="guid"/>
<result property="businessId" column="business_id"/>
<result property="sortCode" column="sort_code"/>
<result property="fileName" column="file_name"/>
<result property="uploadPersonId" column="upload_person_id"/>
<result property="uploadPersonName" column="upload_person_name"/>
<result property="uploadPath" column="upload_path"/>
<result property="uploadTime" column="upload_time"/>
<result property="orgCode" column="org_code"/>
<result property="orgName" column="org_name"/>
<result property="fileType" column="file_type"/>
<result property="fileSuffix" column="file_suffix"/>
<result property="fileSaveName" column="file_save_name"/>
<result property="fileSize" column="file_size"/>
<result property="fileRemark" column="file_remark"/>
<result property="updateTime" column="update_time"/>
<result property="updatePersonName" column="update_person_name"/>
<result property="isDelete2" column="is_delete2"/>
<result property="expand1" column="expand1"/>
<result property="expand2" column="expand2"/>
<result property="expand3" column="expand3"/>
<result property="sassId" column="sass_id"/>
</resultMap>
<sql id="selectZdxtFileVo">
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
</sql>
<select id="selectZdxtFileList" parameterType="com.zdxt.enforcementcode.domain.ZdxtFile" resultMap="ZdxtFileResult">
<include refid="selectZdxtFileVo"/>
<where>
<if test="businessId != null and businessId != ''">and business_id = #{businessId}</if>
<if test="sortCode != null and sortCode != ''">and sort_code = #{sortCode}</if>
<if test="fileName != null and fileName != ''">and file_name like concat(concat('%', #{fileName}), '%')</if>
<if test="uploadPersonId != null and uploadPersonId != ''">and upload_person_id = #{uploadPersonId}</if>
<if test="uploadPersonName != null and uploadPersonName != ''">and upload_person_name like concat(concat('%',
#{uploadPersonName}), '%')
</if>
<if test="uploadPath != null and uploadPath != ''">and upload_path = #{uploadPath}</if>
<if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
<if test="orgCode != null and orgCode != ''">and org_code = #{orgCode}</if>
<if test="orgName != null and orgName != ''">and org_name like concat(concat('%', #{orgName}), '%')</if>
<if test="fileType != null and fileType != ''">and file_type = #{fileType}</if>
<if test="fileSuffix != null and fileSuffix != ''">and file_suffix = #{fileSuffix}</if>
<if test="fileSaveName != null and fileSaveName != ''">and file_save_name like concat(concat('%', #{fileSaveName}),
'%')
</if>
<if test="fileSize != null and fileSize != ''">and file_size = #{fileSize}</if>
<if test="fileRemark != null and fileRemark != ''">and file_remark = #{fileRemark}</if>
<if test="updatePersonName != null and updatePersonName != ''">and update_person_name like concat(concat('%',
#{updatePersonName}), '%')
</if>
<if test="isDelete2 != null ">and is_delete2 = #{isDelete2}</if>
<if test="expand1 != null and expand1 != ''">and expand1 = #{expand1}</if>
<if test="expand2 != null and expand2 != ''">and expand2 = #{expand2}</if>
<if test="expand3 != null and expand3 != ''">and expand3 = #{expand3}</if>
<if test="sassId != null and sassId != ''">and sass_id = #{sassId}</if>
</where>
order BY update_time DESC
</select>
</mapper>

70
zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/ComplaintStatisticsReportMapper.xml

@ -144,5 +144,75 @@
<include refid="reportTimeCondition"/>
${dataFilter}
</select>
<resultMap type="com.zdxt.enforcementcode.domain.ComplaintStatistics" id="ComplaintStatisticsResult">
<result property="id" column="id"/>
<result property="cid" column="cid"/>
<result property="rid" column="rid"/>
<result property="complaintTime" column="complaint_time"/>
<result property="complaintType" column="complaint_type"/>
<result property="complaintDepartment" column="complaint_department"/>
<result property="complaintDepartmentId" column="complaint_department_id"/>
<result property="enterpriseName" column="enterprise_name"/>
<result property="enterpriseNumber" column="enterprise_number"/>
<result property="enforceType" column="enforce_type"/>
<result property="problemDescription" column="problem_description"/>
<result property="linkman" column="linkman"/>
<result property="linkmanTel" column="linkman_tel"/>
<result property="enterpriseAddress" column="enterprise_address"/>
<result property="proWoCode" column="pro_wo_code"/>
</resultMap>
<select id="complaintGetComplaintDepartment" parameterType="com.zdxt.enforcementcode.domain.ComplaintStatistics" resultMap="ComplaintStatisticsResult">
select (CASE WHEN c.rid IS NULL THEN c.complaint_department_id ELSE r.bureau_dept_id END) AS complaint_department_id,
(CASE WHEN c.rid IS NULL THEN c.complaint_department ELSE r.bureau_dept_name END) AS complaint_department,
c.enforce_type, c.complaint_time,c.cid,c.id,ec.pro_wo_code,r.enforcement_time as enforcementTime,c.enterprise_address as enterpriseAddress from complaint_statistics c
left join (select id, bureau_dept_id, bureau_dept_name,enforcement_time from enforcement_registration
where enterprise_number is not null and check_category is not null) r
on c.rid = r.id
left join enterprise_complaint ec
on c.cid=ec.id
<where>
and (c.rid is not null or c.complaint_department_id is not null)
and c.enforce_type is not null
and c.enterprise_number is not null
<if test="enforceType != null and enforceType != '' ">and c.enforce_type=#{enforceType}</if>
<if test="complaintDepartment != null and complaintDepartment != '' ">and( c.complaint_department like concat('%',#{complaintDepartment},'%') or r.bureau_dept_name like concat('%',#{complaintDepartment},'%') )</if>
<if test="beginTime != null and beginTime != '' ">and c.complaint_time>=STR_TO_DATE(#{beginTime},'%Y-%m-%d')</if>
<if test="endTime != null and endTime != '' ">and c.complaint_time>=STR_TO_DATE(#{endTime},'%Y-%m-%d')</if>
<if test="enterpriseAddress != null and enterpriseAddress != '' ">and c.enterprise_address like concat('%',#{enterpriseAddress},'%')</if>
</where>
order by complaint_time desc
</select>
<select id="complaintGetComplaintDepartmentById" parameterType="String" resultMap="ComplaintStatisticsResult">
select
(case when c.rid is null then c.complaint_department_id else r.bureau_dept_id end) as complaint_department_id,
(case when c.rid is null then c.complaint_department else r.bureau_dept_name end) as complaint_department,
c.cid,
c.id
from
(
select
*
from
complaint_statistics
where
id = #{id}) c
left join (
select
id,
bureau_dept_id,
bureau_dept_name
from
enforcement_registration
where
enterprise_number is not null
and check_category is not null) r
on
c.rid = r.id collate utf8mb4_general_ci
</select>
</mapper>

9
zdxt-modules/zdxt-system/src/main/java/org/dromara/system/mapper/SysDictDataMapper.java

@ -37,4 +37,13 @@ public interface SysDictDataMapper extends BaseMapperPlus<SysDictData, SysDictDa
* @return
*/
SysDictDataVo selectDictData(SysDictDataBo dictData);
/**
* 根据字典类型和字典键值查询字典数据信息
*
* @param dictType 字典类型
* @param dictValue 字典键值
* @return 字典标签
*/
public String selectDictLabel(@Param("dictType") String dictType, @Param("dictValue") String dictValue);
}

5
zdxt-modules/zdxt-system/src/main/resources/mapper/system/SysDictDataMapper.xml

@ -28,5 +28,8 @@
order by dict_sort asc
</select>
<select id="selectDictLabel" resultType="String">
select dict_label from sys_dict_data
where dict_type = #{dictType} and dict_value = #{dictValue}
</select>
</mapper>

9
zdxt-web-server/zdxt-admin-web-server/src/main/resources/application-dev.yml

@ -2,11 +2,14 @@ zdxt:
file:
# Windows/Linux 本地开发均可用;生产环境在 application-prod.yml 覆盖
# upload-path: D:\zfjdm\uploadPath
upload-path: /usr/local/uploadPath
#upload-path: /usr/local/uploadPath
# upload-path: /Users/vincent/uploadPath
#url-prefix: /profile
#qr_code_url: /usr/local/uploads/zfjd_logo.png
#demo_enabled: false
upload-path: D:/uploadPath
url-prefix: /profile
qr_code_url: /usr/local/uploads/zfjd_logo.png
demo_enabled: false
qr_code_url: D:/uploads/zfjd_logo.png
# 登录使用的公私钥
public-key: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC00mFpXG09DFOL0HpeeLHuh6YGAa4vQJorH8xVz4ftvNgkbeXsl2xZwNSAW5scc5Z5BFFFoZy2800i3fg4zedruY2goiG4alg7haRHTu4FfYJOy+o+N//UgynHB/iA+wv8nEhKKRsuVPwD9pNKx2/nzXO6KjZEJCsvVJX53w+pQwIDAQAB
private-key: ENC(q/G0Iy/bTMpmx7MUmBo/Vr8J1lOXdh9aspSxPt+hAE7YrFmqGUUims4f3eJPMk/Ppc3Np+FcqISI82w2enkvImCfYo+FEYkuNNq2jpE7qMnti4yGAVhnuhrNrtNja2g3GJZ71SfoTsT9jQTLGh92wSSvqxl6OaOfb0hZB4P4cWHpEyH54UcXOaSX+Qa/IfouY60RwWJM61AQwZuyJ91U98ad7diiCso82AnBvMDQueSDM86C/lmvtiwKCKb4dfB5MRkSykFKANT0Mixu8qIr49CIpkusFfPdzbPyC3jgVyLZ5LnK1/6aDXCxj5Yulwic20EyFiAksKpMt+tF/pSAgy0QznvG4TpMH9XbsTqEmFfQWEHj7DkxCPf8u/1sl8xi3qcCKOeBX5w3t+/Ybhoje8fRPjJKTmooaU2gjxZHo3ozbUT1mX3VVfYUc6b6OjhwPUz88LhY9jEUVVUYzYVh9ENA/Ynp61ELArT+91ccqoHitSJBw/BMgBxcOD3+8v3SC1dpH/gtE5a4VuQetz/gWuLYHBdYaZZ9uzMZHySHYo1q2XmG2sTSG/A/U/KgatdOWwaV5DaSw74YOpelQjb2CUoqurVoQOMW1VZt/L3x1NDeZTUyNWsaNGyteW2beGTGf3BvTZeGG+/QJhGbX4CxigGpL+nFaCGOf8nwG21LaYHKtyQrC1o3YUApkMqZqSbWCB2FiR4sBE5bf3jJxJn9BK0Noa/Zp6anemSfoOgCB0igBBIfJqi52WMW4yChqslcByxFCYnayf02uM/l2jhfN3XEKS3uc1F+AkhoNleNBepFsJTviVYb2n/anWZZPRPGvbkBNV8NznCFSzdMx+bAql3noDcaTG8TV4eGWTaNFGS+ap+iCG/CdlhbrjR0RknxPSjkWAnzz2FE/a/n89aOVBYcU8LlGuRGT2ppf/wWrlFADWk7SfnpWyJyZdQT+iGZSaUCwQ2hVRYL43Fet6IBrDuqzb6oZEhONx4h2qEhhLEcerIuHAeU4COTUN6dqqxsc3a/5IPzAoyIg2Y6Rem7x2Hp9l2/xJtK1IPOayLX/XTPK4OIBzC/IMq3/nA+CtjJTXpuhceRkw6CbqVYV//JOQyGO9Bloyf+7FOdmuU6UMMTxiEgHROMW26nlETmr6+m)

Loading…
Cancel
Save