From c9aa84299c67f0b17585ef58c9c586f76a8a4796 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期六, 23 十一月 2024 17:33:53 +0800
Subject: [PATCH] 开发更新

---
 server/system_service/src/main/java/com/doumee/core/utils/Constants.java                                 |    3 +
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java                |   12 ++++++
 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java               |    3 +
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java  |   45 +++++++++++++++++++++-
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java |   11 +++--
 5 files changed, 68 insertions(+), 6 deletions(-)

diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
index 555a93a..1b803ee 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -144,6 +144,7 @@
     public static final String MYSQL_BACKUP_DIR ="MYSQL_BACKUP_DIR" ;
     public static final String EVENT_FILES_PRIVATE_DOMAIN ="EVENT_FILES_PRIVATE_DOMAIN" ;
     public static final String EVENT_FILES_PUBLIC_DOMAIN ="EVENT_FILES_PUBLIC_DOMAIN" ;
+    public static final String YW_CONTRACT_FILE = "YW_CONTRACT_FILE";
     public static  boolean DEALING_HK_SYNCPRIVILEGE= false;
     public static  boolean DEALING_HK_SYNCDEVICE = false;
     public static  boolean DEALING_HK_SYNCPLATFORM = false;
@@ -1235,6 +1236,8 @@
         FN_DEVICE_FILE(5, "闃滃畞鏈嶅姟骞冲彴璁惧绫诲瀷鍥剧墖 ", "闃滃畞鏈嶅姟骞冲彴璁惧绫诲瀷鍥剧墖 "),
         FN_DEVICE_RECORD_FILE(6, "闃滃畞鏈嶅姟骞冲彴杩愮淮璁板綍鍥剧墖 ", "闃滃畞鏈嶅姟骞冲彴杩愮淮璁板綍鍥剧墖 "),
         FN_PATROL_POINT_FILE(7, "宸℃鐐归檮浠� ", "宸℃鐐归檮浠� "),
+        YW_CONTRACT_FILE(9, "鍚堝悓闄勪欢 ", "鍚堝悓闄勪欢 ")
+
         ;
         // 鎴愬憳鍙橀噺
         private String name;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
index bc6981a..44f26d6 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwContract.java
@@ -158,6 +158,18 @@
     @ApiModelProperty(value = "鍏徃鍚嶇О")
     @TableField(exist = false)
     private String companyName;
+    @ApiModelProperty(value = "缁忓姙浜哄鍚�")
+    @TableField(exist = false)
+    private String userName;
+    @ApiModelProperty(value = "椤圭洰鍚�")
+    @TableField(exist = false)
+    private String projectName;
+    @ApiModelProperty(value = "绉熷鍚嶇О")
+    @TableField(exist = false)
+    private String renterName;
+    @ApiModelProperty(value = "鍒涘缓浜哄鍚�")
+    @TableField(exist = false)
+    private String creatorName;
     @ApiModelProperty(value = "绉熻祦鎬婚潰绉�", example = "1")
     @TableField(exist = false)
     private BigDecimal totalArea;
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
index a2a2196..ae8df3c 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/YwWorkorder.java
@@ -87,6 +87,9 @@
     @ApiModelProperty(value = "鎵�灞炴埧闂寸紪鐮侊紙鍏宠仈yw_room)", example = "1")
     @ExcelColumn(name="鎵�灞炴埧闂寸紪鐮侊紙鍏宠仈yw_room)")
     private Integer roomId;
+    @ApiModelProperty(value = "鎵�灞炴ゼ灞傜紪鐮侊紙鍏宠仈yw_floor)", example = "1")
+    @ExcelColumn(name="鎵�灞炴ゼ灞傜紪鐮侊紙鍏宠仈yw_floor)")
+    private Integer floorId;
 
     @ApiModelProperty(value = "鎻愭姤浜虹紪鐮�", example = "1")
     @ExcelColumn(name="鎻愭姤浜虹紪鐮�")
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
index 15da9a9..52dfa4f 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractServiceImpl.java
@@ -1,5 +1,6 @@
 package com.doumee.service.business.impl;
 
+import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.LoginUserInfo;
@@ -62,6 +63,8 @@
     @Autowired
     private MemberMapper memberMapper;
 
+    @Autowired
+    private SystemDictDataBiz systemDictDataBiz;
     @Override
     @Transactional(rollbackFor = {BusinessException.class,Exception.class})
     public Integer create(YwContract model) {
@@ -400,7 +403,28 @@
         return  data;
     }
 
+    private void initFiles(YwContract model) {
+        List<Multifile> multifiles = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda()
+                .eq(Multifile::getObjId, model.getId() )
+                .in(Multifile::getObjType, Arrays.asList(new Integer[]{Constants.MultiFile.YW_CONTRACT_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_CONTRACT_FILE).getCode();
+            for(Multifile f : multifiles){
+                if(StringUtils.isBlank(f.getFileurl())){
+                    continue;
+                }
+                f.setFileurlFull(path+f.getFileurl());
+                //鐜板満鎯呭喌
+                if(model.getFileList() == null){
+                    model.setFileList(new ArrayList<>());
+                }
+                model.getFileList().add(f);
 
+            }
+        }
+    }
 
 
     private void dealMultifileBiz(YwContract model) {
@@ -416,7 +440,7 @@
                 multifile.setIsdeleted(Constants.ZERO);
                 multifile.setObjId(model.getId());
                 multifile.setCreator(model.getCreator());
-                multifile.setObjType(Constants.MultiFile.YW_WORKORDER_PROBLEM.getKey());
+                multifile.setObjType(Constants.MultiFile.YW_CONTRACT_FILE.getKey());
                 multifile.setSortnum(i+1);
                 fileList.add(multifile);
             }
@@ -597,7 +621,24 @@
 
     @Override
     public YwContract findById(Integer id) {
-        return ywContractMapper.selectById(id);
+        MPJLambdaWrapper<YwContract> queryWrapper = new MPJLambdaWrapper<>();
+        queryWrapper.selectAll(YwContract.class )
+                .selectAs(Company::getName,YwContract::getCompanyName )
+                .selectAs(SystemUser::getRealname,YwContract::getUserName )
+                .selectAs(YwCustomer::getName,YwContract::getRenterName )
+                .selectAs(YwProject::getName,YwContract::getProjectName )
+                .select("t4.realname",YwContract::getCreatorName )
+                .leftJoin(Company.class,Company::getId,YwContract::getCompanyId)
+                .leftJoin(SystemUser.class,SystemUser::getId,YwContract::getUserId)
+                .leftJoin(SystemUser.class,SystemUser::getId,YwContract::getCreator)
+                .leftJoin(YwProject.class,YwProject::getId,YwContract::getProjectId)
+                .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId);
+        YwContract model = ywContractMapper.selectJoinOne(YwContract.class,queryWrapper);
+        if(model != null){
+            initFiles(model);
+        }
+
+        return model;
     }
 
     @Override
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
index 66f431f..eb8da05 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwWorkorderServiceImpl.java
@@ -57,6 +57,8 @@
     private YwRoomMapper ywRoomMapper;
     @Autowired
     private YwBuildingMapper ywBuildingMapper;
+    @Autowired
+    private YwFloorMapper ywFloorMapper;
 
     @Override
     @Transactional(rollbackFor = {BusinessException.class,Exception.class})
@@ -130,13 +132,14 @@
             model.setProjectId(room.getProjectId());
         }else{
             //濡傛灉鏄叕鍏卞尯鍩熻淇紝蹇呴』閫夋嫨妤煎畤淇℃伅
-            if(model.getBuildingId()==null){
-                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勬ゼ瀹囦俊鎭紒");
+            if(model.getFloorId()==null){
+                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勬ゼ灞備俊鎭紒");
             }
-            YwBuilding room = ywBuildingMapper.selectById(model.getRoomId());
+            YwFloor room = ywFloorMapper.selectById(model.getFloorId());
             if(room ==null || Constants.equalsInteger(room.getIsdeleted(),Constants.ONE)){
-                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勬ゼ瀹囦俊鎭紒");
+                throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝璇烽�夋嫨姝g‘鐨勬ゼ灞備俊鎭紒");
             }
+            model.setBuildingId(room.getBuildingId());
             model.setProjectId(room.getProjectId());
         }
     }

--
Gitblit v1.9.3