From fc4a2352ca74646aff63648cd5b42251d29a5655 Mon Sep 17 00:00:00 2001 From: niujiyi <18272501226@163.com> Date: Thu, 30 Apr 2026 14:20:14 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=81=E4=B8=9A=E7=AB=AF-=E5=9C=A8=E7=BA=BF?= =?UTF-8?q?=E6=8A=95=E8=AF=89=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppEnterpriseComplaintController.java | 35 ++++++-- .../enterprise/AppEnterpriseComplaintVo.java | 14 +++- .../mapper/ZdxtFileMapper.java | 3 +- .../IAppEnterpriseComplaintService.java | 7 ++ .../AppEnterpriseComplaintServiceImpl.java | 83 ++++++++++++++++++- 5 files changed, 128 insertions(+), 14 deletions(-) diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java index a82ae040..6e2f1266 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enterprise/AppEnterpriseComplaintController.java @@ -26,7 +26,7 @@ import org.springframework.web.bind.annotation.*; public class AppEnterpriseComplaintController extends BaseController { @Autowired - private IAppEnterpriseComplaintService enterpriseComplaintService; + private IAppEnterpriseComplaintService appEnterpriseComplaintService; /** * 企业端-投诉建议-新增 @@ -37,19 +37,44 @@ public class AppEnterpriseComplaintController extends BaseController { @PostMapping("/add") @ResponseBody public R addSave(@RequestBody AppEnterpriseComplatintInsertDTO dto) { - return toAjax(enterpriseComplaintService.insertEnterpriseComplaint(dto)); + return toAjax(appEnterpriseComplaintService.insertEnterpriseComplaint(dto)); } /** - * 企业端-投诉建议-列表 + * 企业端-投诉建议-查询列表 * @param * @return */ @ApiResponse(description = "投诉建议列表") @GetMapping("/list") - public TableDataInfo list(AppEnterpriseComplatintQueryDTO dto, PageQuery pageQuery) { - TableDataInfo list = enterpriseComplaintService.queryPageList(dto, pageQuery); + public TableDataInfo list(@ModelAttribute AppEnterpriseComplatintQueryDTO dto, PageQuery pageQuery) { + TableDataInfo list = appEnterpriseComplaintService.queryPageList(dto, pageQuery); return list; } + + /** + * 企业端-投诉建议-详情 + * @param + * @return + */ + @ApiResponse(description = "投诉建议详情") + @GetMapping("/detail") + public R detail(@RequestParam String id) { + AppEnterpriseComplaintVo detail = appEnterpriseComplaintService.queryById(id); + return R.ok(detail); + } + + /** + * 企业端-投诉建议-查询行政和非行政未被投诉列表 + * @param + * @return + */ + @ApiResponse(description = "投诉建议-行政和非行政未被投诉列表") + @GetMapping("/listNotComplaint") + public TableDataInfo listNotComplaint(@ModelAttribute AppEnterpriseComplatintQueryDTO dto, PageQuery pageQuery) { + TableDataInfo list = appEnterpriseComplaintService.getAllCheckList(dto, pageQuery); + return list; + } + } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnterpriseComplaintVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnterpriseComplaintVo.java index 9add0e7d..75ce6831 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnterpriseComplaintVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/enterprise/AppEnterpriseComplaintVo.java @@ -1,6 +1,8 @@ package com.zdxt.enforcementcode.domain.vo.enterprise; import cn.idev.excel.annotation.ExcelProperty; +import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; +import io.github.linpeilie.annotations.AutoMapper; import lombok.Data; import org.dromara.common.excel.annotation.ExcelDictFormat; import org.dromara.common.excel.convert.ExcelDictConvert; @@ -8,10 +10,10 @@ import org.dromara.common.excel.convert.ExcelDictConvert; import java.io.Serial; import java.io.Serializable; import java.util.Date; -/** - * 企业端-在线投诉 - */ +import java.util.List; + @Data +@AutoMapper(target = com.zdxt.enforcementcode.domain.entity.enterprise.AppEnterpriseComplaint.class) public class AppEnterpriseComplaintVo implements Serializable { @Serial @@ -167,4 +169,10 @@ public class AppEnterpriseComplaintVo implements Serializable { */ @ExcelProperty(value = "数据类型 0行政 1 非行政") private Long recordType; + + /** + * 文件列表 + */ + @ExcelProperty(value = "文件列表") + private List fileList; } 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 e8c24f6f..781895f2 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 @@ -7,8 +7,7 @@ import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; /** * 附件Mapper接口 * - * @author Lion Li - * @date 2026-04-15 + * */ public interface ZdxtFileMapper extends BaseMapperPlus { diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java index 92d9beef..21303059 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/IAppEnterpriseComplaintService.java @@ -55,4 +55,11 @@ public interface IAppEnterpriseComplaintService { * @return 是否删除成功 */ Boolean deleteWithValidByIds(Collection ids, Boolean isValid); + + /** + * 企业端-投诉建议查询行政和非行政未被投诉列表 + * @param pageQuery + * @return + */ + TableDataInfo getAllCheckList(AppEnterpriseComplatintQueryDTO dto,PageQuery pageQuery); } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java index 47ef4ef9..49a8dca2 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/enterprise/impl/AppEnterpriseComplaintServiceImpl.java @@ -13,6 +13,7 @@ import com.zdxt.enforcementcode.domain.dto.enterprise.AppEnterpriseComplatintQue import com.zdxt.enforcementcode.domain.entity.enterprise.AppEnforcementRegistration; import com.zdxt.enforcementcode.domain.entity.enterprise.AppEnterpriseComplaint; import com.zdxt.enforcementcode.domain.entity.enterprise.AppNonEnforcementRegistration; +import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; import com.zdxt.enforcementcode.domain.vo.enterprise.AppEnterpriseComplaintVo; import com.zdxt.enforcementcode.mapper.ZdxtFileMapper; import com.zdxt.enforcementcode.mapper.enterprise.AppEnforcementRegistrationMapper; @@ -30,7 +31,9 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.Collection; +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; /** * 企业执法-在线投诉Service业务层处理 @@ -52,14 +55,22 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain private ZdxtFileMapper zdxtFileMapper; /** - * 查询企业执法-在线投诉 + * 企业端-投诉建议详情 * * @param id 主键 * @return 企业执法-在线投诉 */ @Override public AppEnterpriseComplaintVo queryById(String id){ - return baseMapper.selectVoById(id); + AppEnterpriseComplaintVo detail = baseMapper.selectVoById(id); + + //查询附件文件 + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + lqw.eq(ZdxtFile::getBusinessId, id); + List fileList = zdxtFileMapper.selectVoList(lqw); + detail.setFileList(fileList); + + return detail; } /** @@ -72,7 +83,6 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain @Override public TableDataInfo queryPageList(AppEnterpriseComplatintQueryDTO dto, PageQuery pageQuery) { LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); - lqw.orderByAsc(AppEnterpriseComplaint::getId); lqw.eq(StringUtils.isNotBlank(dto.getRelId()), AppEnterpriseComplaint::getRelId, dto.getRelId()); Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); return TableDataInfo.build(result); @@ -164,4 +174,69 @@ public class AppEnterpriseComplaintServiceImpl implements IAppEnterpriseComplain } return baseMapper.deleteByIds(ids) > 0; } + + + /** + * 企业端-投诉建议查询行政和非行政未被投诉列表 + * @param dto 查询条件 + * @param pageQuery 分页参数 + * @return 投诉建议列表 + */ + @Override + public TableDataInfo getAllCheckList(AppEnterpriseComplatintQueryDTO dto, PageQuery pageQuery) { + // 构建查询条件 + LambdaQueryWrapper lqw = Wrappers.lambdaQuery(); + + // 根据 relId 过滤 + lqw.eq(StringUtils.isNotBlank(dto.getRelId()), AppEnterpriseComplaint::getRelId, dto.getRelId()); + + // 根据搜索值模糊查询(问题描述、联系人、企业名称等) + if (StringUtils.isNotBlank(dto.getSearchValue())) { + lqw.and(wrapper -> wrapper + .like(AppEnterpriseComplaint::getProblemDescription, dto.getSearchValue()) + .or() + .like(AppEnterpriseComplaint::getLinkman, dto.getSearchValue()) + .or() + .like(AppEnterpriseComplaint::getEnterpriseName, dto.getSearchValue()) + ); + } + + // 根据执法类型过滤 + lqw.eq(dto.getEnforceType() != null, AppEnterpriseComplaint::getEnforceType, dto.getEnforceType()); + + // 根据投诉类型过滤 + lqw.eq(dto.getComplaintType() != null, AppEnterpriseComplaint::getComplaintType, dto.getComplaintType()); + + // 根据数据类型过滤(0行政 1非行政) + lqw.eq(dto.getRecordType() != null, AppEnterpriseComplaint::getRecordType, dto.getRecordType()); + + // 根据状态过滤 + lqw.eq(dto.getStatus() != null, AppEnterpriseComplaint::getStatus, dto.getStatus()); + + // 按创建时间降序排列 + lqw.orderByDesc(AppEnterpriseComplaint::getCreateTime); + + // 执行分页查询 + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + + // 处理字典转换和执法人员信息(如果需要) + List records = result.getRecords(); + if (records != null && !records.isEmpty()) { + records.forEach(vo -> { + // 这里可以添加字典转换逻辑 + // 例如:执法类型、投诉类型等的字典值转换 + + // 如果有附件,查询附件列表 + if (vo.getId() != null) { + LambdaQueryWrapper fileLqw = Wrappers.lambdaQuery(); + fileLqw.eq(ZdxtFile::getBusinessId, vo.getId()); + List fileList = zdxtFileMapper.selectVoList(fileLqw); + vo.setFileList(fileList); + } + }); + } + + return TableDataInfo.build(result); + } + }