Commit 687f8778acff5e284c62b40f89bf83ad6effc438

Authored by wangqian
1 parent 35aad53e

工单管理附件查询修改

Showing 12 changed files with 52 additions and 23 deletions
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/assigntasks/AssignTasksController.java
@@ -92,12 +92,10 @@ public class AssignTasksController { @@ -92,12 +92,10 @@ public class AssignTasksController {
92 List<AssignTasksInfoDO> assignTaskInfoList = asignTasksInfoService.getAssignTasksInfos(assignTasks.getId()); 92 List<AssignTasksInfoDO> assignTaskInfoList = asignTasksInfoService.getAssignTasksInfos(assignTasks.getId());
93 assignTasksRespVO.setAssignTaskInfoList(assignTaskInfoList); 93 assignTasksRespVO.setAssignTaskInfoList(assignTaskInfoList);
94 //获取单位集合 94 //获取单位集合
95 - List<String> companyIds = CollectionUtil.isEmpty(assignTaskInfoList) 95 + List<Long> companyIds = CollectionUtil.isEmpty(assignTaskInfoList)
96 ? Collections.emptyList() 96 ? Collections.emptyList()
97 : assignTaskInfoList.stream() 97 : assignTaskInfoList.stream()
98 .map(AssignTasksInfoDO::getCompanyId) 98 .map(AssignTasksInfoDO::getCompanyId)
99 - .map(StrUtil::toString) // Hutool 工具类:自动处理 null(转为 null 字符串,需配合过滤)  
100 - .filter(StrUtil::isNotEmpty) // 过滤 null/空字符串  
101 .distinct() 99 .distinct()
102 .collect(Collectors.toList()); 100 .collect(Collectors.toList());
103 assignTasksRespVO.setCompanyIds(companyIds); 101 assignTasksRespVO.setCompanyIds(companyIds);
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/assigntasks/vo/AssignTasksRespVO.java
@@ -63,7 +63,7 @@ public class AssignTasksRespVO { @@ -63,7 +63,7 @@ public class AssignTasksRespVO {
63 @Schema(description = "修改人(关联用户ID,最后修改人)") 63 @Schema(description = "修改人(关联用户ID,最后修改人)")
64 private String updater; 64 private String updater;
65 65
66 - private List<String> companyIds; 66 + private List<Long> companyIds;
67 private List<AssignTasksInfoDO> assignTaskInfoList; 67 private List<AssignTasksInfoDO> assignTaskInfoList;
68 68
69 public void setParentFinish(Integer parentFinish) { 69 public void setParentFinish(Integer parentFinish) {
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/controller/admin/assigntasks/vo/AssignTasksSaveReqVO.java
@@ -58,6 +58,6 @@ public class AssignTasksSaveReqVO { @@ -58,6 +58,6 @@ public class AssignTasksSaveReqVO {
58 58
59 /*单位集合*/ 59 /*单位集合*/
60 @NotEmpty(message = "派发单位不能为空") 60 @NotEmpty(message = "派发单位不能为空")
61 - private List<String> companyIds; 61 + private List<Long> companyIds;
62 62
63 } 63 }
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/dal/dataobject/assigntasksinfo/AssignTasksInfoDO.java
@@ -38,7 +38,7 @@ public class AssignTasksInfoDO extends BaseDO { @@ -38,7 +38,7 @@ public class AssignTasksInfoDO extends BaseDO {
38 /** 38 /**
39 * 单位ID(关联单位表主键) 39 * 单位ID(关联单位表主键)
40 */ 40 */
41 - private String companyId; 41 + private Long companyId;
42 /** 42 /**
43 * 单位ID(关联单位表主键) 43 * 单位ID(关联单位表主键)
44 */ 44 */
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/assigntasks/AssignTasksServiceImpl.java
@@ -92,7 +92,7 @@ public class AssignTasksServiceImpl implements AssignTasksService { @@ -92,7 +92,7 @@ public class AssignTasksServiceImpl implements AssignTasksService {
92 assignTasksMapper.updateById(updateObj); 92 assignTasksMapper.updateById(updateObj);
93 93
94 // 1. 处理关联的单位任务信息(仅当存在单位ID列表时) 94 // 1. 处理关联的单位任务信息(仅当存在单位ID列表时)
95 - List<String> companyIds = updateReqVO.getCompanyIds(); 95 + List<Long> companyIds = updateReqVO.getCompanyIds();
96 // add by wq 20251116 96 // add by wq 20251116
97 List<AssignTasksInfoDO> assignTaskInfoList = assignTasksInfoMapper.selectList(AssignTasksInfoDO::getTaskId, updateObj.getId()); 97 List<AssignTasksInfoDO> assignTaskInfoList = assignTasksInfoMapper.selectList(AssignTasksInfoDO::getTaskId, updateObj.getId());
98 if (CollectionUtils.isEmpty(assignTaskInfoList)) { 98 if (CollectionUtils.isEmpty(assignTaskInfoList)) {
@@ -113,11 +113,11 @@ public class AssignTasksServiceImpl implements AssignTasksService { @@ -113,11 +113,11 @@ public class AssignTasksServiceImpl implements AssignTasksService {
113 113
114 114
115 //获取已添加单位集合 115 //获取已添加单位集合
116 - List<String> existingCompanyIds = assignTaskInfoList.stream()  
117 - .map(info -> String.valueOf(info.getCompanyId())) 116 + List<Long> existingCompanyIds = assignTaskInfoList.stream()
  117 + .map(info -> info.getCompanyId())
118 .collect(Collectors.toList()); 118 .collect(Collectors.toList());
119 //排除 existingCompanyIds 中的元素 作为新增的单位 119 //排除 existingCompanyIds 中的元素 作为新增的单位
120 - List<String> filteredCompanyIds = companyIds.stream() 120 + List<Long> filteredCompanyIds = companyIds.stream()
121 .filter(Objects::nonNull) 121 .filter(Objects::nonNull)
122 .filter(id -> !existingCompanyIds.contains(id)) // 直接用列表 contains() 122 .filter(id -> !existingCompanyIds.contains(id)) // 直接用列表 contains()
123 .collect(Collectors.toList()); 123 .collect(Collectors.toList());
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/assigntasksinfo/AssignTasksInfoService.java
@@ -70,7 +70,7 @@ public interface AssignTasksInfoService { @@ -70,7 +70,7 @@ public interface AssignTasksInfoService {
70 * @param assignTasks 70 * @param assignTasks
71 * @Return java.lang.Long 71 * @Return java.lang.Long
72 */ 72 */
73 - public void saveAssignTasksInfos(List<String> companyIds, AssignTasksDO assignTasks); 73 + public void saveAssignTasksInfos(List<Long> companyIds, AssignTasksDO assignTasks);
74 74
75 /** 75 /**
76 * @Author wangqian 76 * @Author wangqian
urbanops-module-garden/src/main/java/com/zteits/urbanops/module/garden/service/assigntasksinfo/AssignTasksInfoServiceImpl.java
@@ -126,7 +126,7 @@ public class AssignTasksInfoServiceImpl implements AssignTasksInfoService { @@ -126,7 +126,7 @@ public class AssignTasksInfoServiceImpl implements AssignTasksInfoService {
126 } 126 }
127 127
128 @Override 128 @Override
129 - public void saveAssignTasksInfos(List<String> companyIds, AssignTasksDO assignTasks) { 129 + public void saveAssignTasksInfos(List<Long> companyIds, AssignTasksDO assignTasks) {
130 // 获得用户基本信息 130 // 获得用户基本信息
131 if (companyIds != null && companyIds.size() > 0) { 131 if (companyIds != null && companyIds.size() > 0) {
132 //1、获取单位集合 132 //1、获取单位集合
@@ -140,7 +140,7 @@ public class AssignTasksInfoServiceImpl implements AssignTasksInfoService { @@ -140,7 +140,7 @@ public class AssignTasksInfoServiceImpl implements AssignTasksInfoService {
140 dept -> dept.getName().trim(), // value 映射:取 companyName(去空格) 140 dept -> dept.getName().trim(), // value 映射:取 companyName(去空格)
141 (oldValue, newValue) -> newValue 141 (oldValue, newValue) -> newValue
142 )); 142 ));
143 - for (String companyId : companyIds) { 143 + for (Long companyId : companyIds) {
144 AssignTasksInfoDO assignTaskInfo = new AssignTasksInfoDO(); 144 AssignTasksInfoDO assignTaskInfo = new AssignTasksInfoDO();
145 assignTaskInfo.setCompanyId(companyId); 145 assignTaskInfo.setCompanyId(companyId);
146 assignTaskInfo.setCompanyName(companyIdToNameMap.get(Long.valueOf(companyId))); 146 assignTaskInfo.setCompanyName(companyIdToNameMap.get(Long.valueOf(companyId)));
urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/attachment/AttachmentController.java
@@ -101,4 +101,11 @@ public class AttachmentController { @@ -101,4 +101,11 @@ public class AttachmentController {
101 BeanUtils.toBean(list, AttachmentRespVO.class)); 101 BeanUtils.toBean(list, AttachmentRespVO.class));
102 } 102 }
103 103
104 -}  
105 \ No newline at end of file 104 \ No newline at end of file
  105 + @PostMapping("/getByCondition")
  106 + @Operation(summary = "获得工单附件信息")
  107 + @PreAuthorize("@ss.hasPermission('workorder:attachment:query')")
  108 + public CommonResult<List<AttachmentRespVO>> getAttachmentByCondition(@Valid @RequestBody AttachmentPageReqVO reqVO) {
  109 + List<AttachmentDO> attachment = attachmentService.getAttachmentByCondition(reqVO);
  110 + return success(BeanUtils.toBean(attachment, AttachmentRespVO.class));
  111 + }
  112 +}
urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/attachment/vo/AttachmentPageReqVO.java
@@ -19,7 +19,7 @@ public class AttachmentPageReqVO extends PageParam { @@ -19,7 +19,7 @@ public class AttachmentPageReqVO extends PageParam {
19 @Schema(description = "业务线:yl 园林,wy 物业,sz 市政 ") 19 @Schema(description = "业务线:yl 园林,wy 物业,sz 市政 ")
20 private String busiLine; 20 private String busiLine;
21 21
22 - @Schema(description = "业务类型:01 问题图片,02 街道图片,03 选景图片", example = "1") 22 + @Schema(description = "业务类型:01 问题图片,02 进行中图片,03 已完成图片", example = "01")
23 private String busiType; 23 private String busiType;
24 24
25 @Schema(description = "文件名称") 25 @Schema(description = "文件名称")
@@ -41,4 +41,4 @@ public class AttachmentPageReqVO extends PageParam { @@ -41,4 +41,4 @@ public class AttachmentPageReqVO extends PageParam {
41 @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) 41 @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
42 private LocalDateTime[] createTime; 42 private LocalDateTime[] createTime;
43 43
44 -}  
45 \ No newline at end of file 44 \ No newline at end of file
  45 +}
urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/dal/dataobject/attachment/AttachmentDO.java
@@ -32,11 +32,11 @@ public class AttachmentDO extends BaseDO { @@ -32,11 +32,11 @@ public class AttachmentDO extends BaseDO {
32 */ 32 */
33 private String orderNo; 33 private String orderNo;
34 /** 34 /**
35 - * 业务线:yl 园林,wy 物业,sz 市政 35 + * 业务线:yl 园林,wy 物业,sz 市政
36 */ 36 */
37 private String busiLine; 37 private String busiLine;
38 /** 38 /**
39 - * 业务类型:01 问题图片,02 街道图片,03 选景图片 39 + * 业务类型:01 问题图片,02 进行中图片,03 已完成图片
40 */ 40 */
41 private String busiType; 41 private String busiType;
42 /** 42 /**
@@ -61,4 +61,4 @@ public class AttachmentDO extends BaseDO { @@ -61,4 +61,4 @@ public class AttachmentDO extends BaseDO {
61 private String remark; 61 private String remark;
62 62
63 63
64 -}  
65 \ No newline at end of file 64 \ No newline at end of file
  65 +}
urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/attachment/AttachmentService.java
@@ -59,4 +59,12 @@ public interface AttachmentService { @@ -59,4 +59,12 @@ public interface AttachmentService {
59 */ 59 */
60 PageResult<AttachmentDO> getAttachmentPage(AttachmentPageReqVO pageReqVO); 60 PageResult<AttachmentDO> getAttachmentPage(AttachmentPageReqVO pageReqVO);
61 61
62 -}  
63 \ No newline at end of file 62 \ No newline at end of file
  63 + /**
  64 + * 获得工单附件信息
  65 + *
  66 + * @param reqVO 编号
  67 + * @return 工单附件信息
  68 + */
  69 + List<AttachmentDO> getAttachmentByCondition(AttachmentPageReqVO reqVO);
  70 +
  71 +}
urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/attachment/AttachmentServiceImpl.java
1 package com.zteits.urbanops.module.workorder.service.attachment; 1 package com.zteits.urbanops.module.workorder.service.attachment;
2 2
3 import cn.hutool.core.collection.CollUtil; 3 import cn.hutool.core.collection.CollUtil;
  4 +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  5 +import com.baomidou.mybatisplus.core.toolkit.StringUtils;
4 import org.springframework.stereotype.Service; 6 import org.springframework.stereotype.Service;
5 import jakarta.annotation.Resource; 7 import jakarta.annotation.Resource;
6 import org.springframework.validation.annotation.Validated; 8 import org.springframework.validation.annotation.Validated;
@@ -15,7 +17,9 @@ import com.zteits.urbanops.framework.common.util.object.BeanUtils; @@ -15,7 +17,9 @@ import com.zteits.urbanops.framework.common.util.object.BeanUtils;
15 17
16 import com.zteits.urbanops.module.workorder.dal.mysql.attachment.AttachmentMapper; 18 import com.zteits.urbanops.module.workorder.dal.mysql.attachment.AttachmentMapper;
17 19
  20 +import static com.zteits.urbanops.framework.common.exception.enums.GlobalErrorCodeConstants.BAD_REQUEST;
18 import static com.zteits.urbanops.framework.common.exception.util.ServiceExceptionUtil.exception; 21 import static com.zteits.urbanops.framework.common.exception.util.ServiceExceptionUtil.exception;
  22 +import static com.zteits.urbanops.framework.common.exception.util.ServiceExceptionUtil.exception0;
19 import static com.zteits.urbanops.framework.common.util.collection.CollectionUtils.convertList; 23 import static com.zteits.urbanops.framework.common.util.collection.CollectionUtils.convertList;
20 import static com.zteits.urbanops.framework.common.util.collection.CollectionUtils.diffList; 24 import static com.zteits.urbanops.framework.common.util.collection.CollectionUtils.diffList;
21 import static com.zteits.urbanops.module.workorder.enums.ErrorCodeConstants.*; 25 import static com.zteits.urbanops.module.workorder.enums.ErrorCodeConstants.*;
@@ -60,10 +64,10 @@ public class AttachmentServiceImpl implements AttachmentService { @@ -60,10 +64,10 @@ public class AttachmentServiceImpl implements AttachmentService {
60 } 64 }
61 65
62 @Override 66 @Override
63 - public void deleteAttachmentListByIds(List<Long> ids) { 67 + public void deleteAttachmentListByIds(List<Long> ids) {
64 // 删除 68 // 删除
65 attachmentMapper.deleteByIds(ids); 69 attachmentMapper.deleteByIds(ids);
66 - } 70 + }
67 71
68 72
69 private void validateAttachmentExists(Long id) { 73 private void validateAttachmentExists(Long id) {
@@ -82,4 +86,16 @@ public class AttachmentServiceImpl implements AttachmentService { @@ -82,4 +86,16 @@ public class AttachmentServiceImpl implements AttachmentService {
82 return attachmentMapper.selectPage(pageReqVO); 86 return attachmentMapper.selectPage(pageReqVO);
83 } 87 }
84 88
85 -}  
86 \ No newline at end of file 89 \ No newline at end of file
  90 + @Override
  91 + public List<AttachmentDO> getAttachmentByCondition(AttachmentPageReqVO reqVO) {
  92 + if (StringUtils.isEmpty(reqVO.getOrderNo())) {
  93 + throw exception0(BAD_REQUEST.getCode(),"工单号不能为空");
  94 + }
  95 + LambdaQueryWrapper<AttachmentDO> queryWrapper = new LambdaQueryWrapper<>();
  96 + queryWrapper.eq(AttachmentDO::getOrderNo, reqVO.getOrderNo());
  97 + if (StringUtils.isNotEmpty(reqVO.getBusiType())) {
  98 + queryWrapper.eq(AttachmentDO::getBusiType, reqVO.getBusiType());
  99 + }
  100 + return attachmentMapper.selectList(queryWrapper);
  101 + }
  102 +}