From a2299a6d4a6f99e9c11132138f5d3e9ec68f03ea Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 06 六月 2025 19:19:34 +0800
Subject: [PATCH] 开发更新

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java |   39 ++++++++++++++++++++++++++++++++-------
 1 files changed, 32 insertions(+), 7 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java
index 67906be..1571556 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwProblemServiceImpl.java
@@ -53,7 +53,6 @@
     @Transactional(rollbackFor = {Exception.class,BusinessException.class})
     public Integer create(YwProblem ywProblem) {
         if(Objects.isNull(ywProblem)
-            || Objects.isNull(ywProblem.getSubmitDate())
             || StringUtils.isBlank(ywProblem.getContent())
             || StringUtils.isBlank(ywProblem.getPhone())
             || StringUtils.isBlank(ywProblem.getName())
@@ -64,6 +63,7 @@
         ywProblem.setIsdeleted(Constants.ZERO);
         ywProblem.setStatus(Constants.ZERO);
         ywProblem.setDealStatus(Constants.ZERO);
+        ywProblem.setSubmitDate(new Date());
         ywProblemMapper.insert(ywProblem);
 
         List<Multifile> fileList = new ArrayList<>();
@@ -130,14 +130,16 @@
 
 
     @Override
-    public YwProblem getDetail(Integer id) {
+    public YwProblem getDetail(Integer id,Integer workorderId) {
         MPJLambdaWrapper<YwProblem> queryWrapper = new MPJLambdaWrapper<YwProblem>();
         queryWrapper.selectAll(YwProblem.class)
                 .selectAs(SystemUser::getRealname,YwProblem::getDealUserName)
                 .selectAs(Company::getName,YwProblem::getDealUserCompanyName)
                 .leftJoin(SystemUser.class,SystemUser::getId,YwProblem::getDealUserId)
                 .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
-                .eq(YwProblem::getId,id)
+                .eq(Objects.nonNull(id),YwProblem::getId,id)
+                .eq(Objects.nonNull(workorderId),YwProblem::getWorkorderId,workorderId)
+                .last(" limit 1 ")
         ;
         YwProblem ywProblem = ywProblemMapper.selectJoinOne(YwProblem.class,queryWrapper);
         if(Objects.isNull(ywProblem)){
@@ -149,7 +151,7 @@
                 .eq(Multifile::getIsdeleted,Constants.ZERO));
         if(multifiles!=null){
             String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
-                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_PROBLEM).getCode();
+                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_WORKORDER_FILE).getCode();
             for(Multifile f : multifiles){
                 if(StringUtils.isBlank(f.getFileurl())){
                     continue;
@@ -160,6 +162,8 @@
         }
         return ywProblem;
     }
+
+
 
 
 
@@ -190,14 +194,16 @@
         }else{
             if(Objects.isNull(ywProblem.getWorkOrderAreaType())
                     ||Objects.isNull(ywProblem.getWorkOrderCateId())
-                    ||StringUtils.isBlank(ywProblem.getWorkOrderContent())
+                    ||StringUtils.isBlank(ywProblem.getDealInfo())
             ){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST);
             }
             YwWorkorder ywWorkorder = new YwWorkorder();
+            ywWorkorder.setProjectId(ywProblem.getWorkOrderProjectId());
+            ywWorkorder.setBuildingId(ywProblem.getWorkOrderBuildId());
             ywWorkorder.setAreaType(ywProblem.getWorkOrderAreaType());
             ywWorkorder.setCateId(ywProblem.getWorkOrderCateId());
-            ywWorkorder.setContent(ywProblem.getWorkOrderContent());
+            ywWorkorder.setContent(ywProblem.getDealInfo());
             ywWorkorder.setRoomId(ywProblem.getWorkOrderRoomId());
             ywWorkorder.setFloorId(ywProblem.getWorkOrderFloorId());
             ywWorkorder.setGetDate(ywProblem.getWorkOrderGetDate());
@@ -257,7 +263,26 @@
                 .le(Objects.nonNull(model.getDealDateEnd()),YwProblem::getDealDate, Utils.Date.getEnd(model.getDealDateEnd()))
                 .eq(Objects.nonNull(model.getDealStatus()),YwProblem::getDealStatus,model.getDealStatus())
         ;
-        IPage iPage = ywProblemMapper.selectJoinPage(page,YwProblem.class,queryWrapper);
+        IPage<YwProblem> iPage = ywProblemMapper.selectJoinPage(page,YwProblem.class,queryWrapper);
+        for (YwProblem ywProblem:iPage.getRecords()) {
+            List<Multifile> multifiles = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda()
+                    .eq(Multifile::getObjId, ywProblem.getId() )
+                    .in(Multifile::getObjType, Arrays.asList(new Integer[]{Constants.MultiFile.PROBLEM_FILE.getKey() }))
+                    .eq(Multifile::getIsdeleted,Constants.ZERO));
+            if(multifiles!=null){
+                String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
+                        +systemDictDataBiz.queryByCode(Constants.FTP,Constants.YW_WORKORDER_FILE).getCode();
+                for(Multifile f : multifiles){
+                    if(StringUtils.isBlank(f.getFileurl())){
+                        continue;
+                    }
+                    f.setFileurlFull(path+f.getFileurl());
+                }
+                ywProblem.setFileList(multifiles);
+            }
+        }
+
+
         return PageData.from(iPage);
     }
 

--
Gitblit v1.9.3