From dd9759eaa3dabd3d55943fc0c741fd5018d2d76e Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期三, 31 五月 2023 16:43:29 +0800
Subject: [PATCH] optimize dining

---
 service-store/src/main/java/com/java110/store/cmd/complaint/ListComplaintsCmd.java |   41 +++++++++++++++++++++++++++--------------
 1 files changed, 27 insertions(+), 14 deletions(-)

diff --git a/service-store/src/main/java/com/java110/store/cmd/complaint/ListComplaintsCmd.java b/service-store/src/main/java/com/java110/store/cmd/complaint/ListComplaintsCmd.java
index 53c4f4e..357868a 100644
--- a/service-store/src/main/java/com/java110/store/cmd/complaint/ListComplaintsCmd.java
+++ b/service-store/src/main/java/com/java110/store/cmd/complaint/ListComplaintsCmd.java
@@ -8,10 +8,12 @@
 import com.java110.dto.RoomDto;
 import com.java110.dto.complaint.ComplaintDto;
 import com.java110.dto.file.FileRelDto;
+import com.java110.dto.owner.OwnerDto;
 import com.java110.intf.common.IComplaintUserInnerServiceSMO;
 import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.intf.community.IRoomInnerServiceSMO;
 import com.java110.intf.store.IComplaintInnerServiceSMO;
+import com.java110.intf.user.IOwnerV1InnerServiceSMO;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -27,7 +29,7 @@
 import java.util.List;
 
 @Java110Cmd(serviceCode = "complaint.listComplaints")
-public class ListComplaintsCmd extends Cmd{
+public class ListComplaintsCmd extends Cmd {
 
     @Autowired
     private IComplaintInnerServiceSMO complaintInnerServiceSMOImpl;
@@ -37,8 +39,12 @@
 
     @Autowired
     private IComplaintUserInnerServiceSMO complaintUserInnerServiceSMOImpl;
+
     @Autowired
     private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+
+    @Autowired
+    private IOwnerV1InnerServiceSMO ownerV1InnerServiceSMOImpl;
 
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
@@ -48,11 +54,13 @@
 
     @Override
     public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
-        ComplaintDto complaintDto = BeanConvertUtil.covertBean(reqJson, ComplaintDto.class);
+        //濡傛灉鏍规嵁涓氫富ID鏌ヨ杞崲涓虹敤鎵嬫満鍙锋煡璇�
+        hasOwnerId(reqJson);
 
+        ComplaintDto complaintDto = BeanConvertUtil.covertBean(reqJson, ComplaintDto.class);
         String roomId = reqJson.getString("roomId");
         if (!StringUtil.isEmpty(roomId) && roomId.contains("-")) {
-            String[] values = roomId.split("-");
+            String[] values = roomId.split("-", 3);
             if (values.length == 3) {
                 RoomDto roomDto = new RoomDto();
                 roomDto.setFloorNum(values[0]);
@@ -64,11 +72,8 @@
                 complaintDto.setRoomId(roomDtos.get(0).getRoomId());
             }
         }
-
         int count = complaintInnerServiceSMOImpl.queryComplaintsCount(complaintDto);
-
         List<ApiComplaintDataVo> complaints = null;
-
         if (count > 0) {
             List<ComplaintDto> complaintDtos = complaintInnerServiceSMOImpl.queryComplaints(complaintDto);
             complaintDtos = freshCurrentUser(complaintDtos);
@@ -77,17 +82,28 @@
         } else {
             complaints = new ArrayList<>();
         }
-
         ApiComplaintVo apiComplaintVo = new ApiComplaintVo();
-
         apiComplaintVo.setTotal(count);
         apiComplaintVo.setRecords((int) Math.ceil((double) count / (double) reqJson.getInteger("row")));
         apiComplaintVo.setComplaints(complaints);
-
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiComplaintVo), HttpStatus.OK);
-
         context.setResponseEntity(responseEntity);
+    }
 
+    /**
+     * //濡傛灉鏍规嵁涓氫富ID鏌ヨ杞崲涓虹敤鎵嬫満鍙锋煡璇�
+     * @param reqJson
+     */
+    private void hasOwnerId(JSONObject reqJson) {
+        if(reqJson.containsKey("ownerId") && !StringUtil.isEmpty(reqJson.getString("ownerId"))){
+            OwnerDto ownerDto = new OwnerDto();
+            ownerDto.setMemberId(reqJson.getString("ownerId"));
+            ownerDto.setCommunityId(reqJson.getString("communityId"));
+            List<OwnerDto> ownerDtos = ownerV1InnerServiceSMOImpl.queryOwners(ownerDto);
+            if(ownerDtos != null && ownerDtos.size() > 0){
+                reqJson.put("tel",ownerDtos.get(0).getLink());
+            }
+        }
     }
 
     private List<ComplaintDto> freshCurrentUser(List<ComplaintDto> complaintDtos) {
@@ -96,7 +112,6 @@
             complaintDto = complaintUserInnerServiceSMOImpl.getTaskCurrentUser(complaintDto);
             tmpComplaintDtos.add(complaintDto);
         }
-
         return tmpComplaintDtos;
     }
 
@@ -104,7 +119,6 @@
         List<PhotoVo> photoVos = null;
         PhotoVo photoVo = null;
         for (ApiComplaintDataVo complaintDataVo : complaints) {
-
             FileRelDto fileRelDto = new FileRelDto();
             fileRelDto.setObjId(complaintDataVo.getComplaintId());
             fileRelDto.setRelTypeCd("13000");
@@ -112,11 +126,10 @@
             photoVos = new ArrayList<>();
             for (FileRelDto tmpFileRelDto : fileRelDtos) {
                 photoVo = new PhotoVo();
-                photoVo.setUrl("/callComponent/download/getFile/file?fileId=" + tmpFileRelDto.getFileRealName() + "&communityId=" + complaintDataVo.getCommunityId());
+                photoVo.setUrl(tmpFileRelDto.getFileRealName());
                 photoVos.add(photoVo);
             }
             complaintDataVo.setPhotos(photoVos);
         }
     }
-
 }

--
Gitblit v1.8.0