From a99c53cea03d87e71109824edb56cfcd33c38cbb Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期五, 31 五月 2024 15:54:48 +0800
Subject: [PATCH] 代码初始化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java |  187 +++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 175 insertions(+), 12 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
index e7c940c..7b8bb07 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -22,8 +22,10 @@
 import com.doumee.service.business.HiddenDangerService;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.commons.lang3.StringUtils;
+import org.checkerframework.checker.units.qual.C;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
 import java.util.*;
@@ -55,10 +57,11 @@
     @Override
     public Integer create(HiddenDanger hiddenDanger) {
         if(Objects.isNull(hiddenDanger)
-            || Objects.isNull(hiddenDanger.getCreator())
+            || Objects.isNull(hiddenDanger.getLoginUserInfo())
             || Objects.isNull(hiddenDanger.getAreaId())
             || Objects.isNull(hiddenDanger.getCateId())
             || Objects.isNull(hiddenDanger.getApplyCheckUserId())
+            || Objects.isNull(hiddenDanger.getCheckUserId())
             || Objects.isNull(hiddenDanger.getSubmitTime())
             || StringUtils.isBlank(hiddenDanger.getContent())
         ){
@@ -66,15 +69,21 @@
         }
         hiddenDanger.setIsdeleted(Constants.ZERO);
         hiddenDanger.setCreateDate(new Date());
+        hiddenDanger.setEditDate(new Date());
         HiddenDangerParam hiddenDangerParam = hiddenDangerParamMapper.selectById(hiddenDanger.getAreaId());
         if(Objects.isNull(hiddenDangerParam)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鍖哄煙");
         }
+        hiddenDanger.setCreator(hiddenDanger.getLoginUserInfo().getId());
         hiddenDanger.setAreaName(hiddenDangerParam.getName());
         hiddenDanger.setStatus(Constants.ZERO);
         if(StringUtils.isBlank(hiddenDangerParam.getMemberIds())
         || hiddenDangerParam.getMemberIds().indexOf(hiddenDanger.getApplyCheckUserId().toString())<0){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"闅愭偅鍖哄煙涓庡鐞嗕汉涓嶅尮閰�");
+        }
+        Member member = memberMapper.selectById(hiddenDanger.getCheckUserId());
+        if(Objects.isNull(member)|| !Constants.equalsInteger(member.getStatus(),Constants.ZERO) || Constants.equalsInteger(member.getIsdeleted(),Constants.ONE)){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏈煡璇㈠埌闅愭偅澶勭悊浜哄憳淇℃伅鎴栧凡琚鐢�");
         }
         hiddenDangerMapper.insert(hiddenDanger);
         //瀛樺偍 鎿嶄綔鏃ュ織
@@ -82,6 +91,7 @@
         hiddenDangerLog.setIsdeleted(Constants.ZERO);
         hiddenDangerLog.setCreateDate(new Date());
         hiddenDangerLog.setCreator(hiddenDanger.getCreator());
+        hiddenDangerLog.setTitle("闅愭偅鎻愪氦");
         hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
         hiddenDangerLog.setObjType(Constants.ZERO);
         hiddenDangerLogMapper.insert(hiddenDangerLog);
@@ -94,7 +104,7 @@
                 multifile.setCreator(hiddenDanger.getCreator());
                 multifile.setIsdeleted(Constants.ZERO);
                 multifile.setObjId(hiddenDanger.getId());
-                multifile.setObjType(Constants.multifileObjType.zero);
+                multifile.setObjType(Constants.MultiFile.HIDDEN_DANGER_SUBMIT.getKey());
                 multifile.setSortnum(i+1);
                 multifileMapper.insert(multifile);
             }
@@ -146,20 +156,23 @@
                 .select("t1.name", HiddenDanger::getMemberName)
                 .select("t1.phone",HiddenDanger::getMemberPhone)
                 .select("t2.name",HiddenDanger::getCheckorName)
-                .select("t3.phone",HiddenDanger::getCheckorPhone)
+                .select("t2.phone",HiddenDanger::getCheckorPhone)
                 .select("t4.company_name_path",HiddenDanger::getCompanyName);
         queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId)
-                .leftJoin("company t4 on t1.company_id=t4.id")
                 .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
-                .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId);
+                .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId)
+                .leftJoin("company t4 on t1.company_id=t4.id");
         queryWrapper
                 .eq(HiddenDanger::getId, id).last("limit 1");
 
         HiddenDanger model =  hiddenDangerMapper.selectJoinOne(HiddenDanger.class,queryWrapper);
-        if(model ==null || Constants.equalsObject(model.getIsdeleted(),Constants.ONE)){
+        if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
             throw  new BusinessException(ResponseStatus.DATA_EMPTY);
         }
         initFiles(model);
+
+
+
         return model;
     }
     private void initFiles(HiddenDanger unionChange) {
@@ -170,8 +183,8 @@
                         ,Constants.MultiFile.HIDDEN_DANGER_DEAL_AFTER.getKey()}))
                 .eq(Multifile::getIsdeleted,Constants.ZERO));
         if(multifiles!=null){
-            String path = systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode()
-                    +systemDictDataBiz.queryByCode(Constants.OSS,Constants.HIDDEN_DANGER_FILE).getCode();
+            String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode()
+                    +systemDictDataBiz.queryByCode(Constants.FTP,Constants.HIDDEN_DANGER_FILE).getCode();
             for(Multifile f : multifiles){
                 if(StringUtils.isBlank(f.getFileurl())){
                     continue;
@@ -223,12 +236,12 @@
                 .select("t1.name", HiddenDanger::getMemberName)
                 .select("t1.phone",HiddenDanger::getMemberPhone)
                 .select("t2.name",HiddenDanger::getCheckorName)
-                .select("t3.phone",HiddenDanger::getCheckorPhone)
+                .select("t2.phone",HiddenDanger::getCheckorPhone)
                 .select("t4.company_name_path",HiddenDanger::getCompanyName);
         queryWrapper.leftJoin(Member.class,Member::getId,HiddenDanger::getMemberId)
-                .leftJoin("company t4 on t1.company_id=t4.id")
                 .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
-                .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId);
+                .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getCateId)
+                .leftJoin("company t4 on t1.company_id=t4.id");
         queryWrapper
                 .eq(pageWrap.getModel().getId() != null, HiddenDanger::getId, pageWrap.getModel().getId())
                 .eq(pageWrap.getModel().getCreator() != null, HiddenDanger::getCreator, pageWrap.getModel().getCreator())
@@ -247,7 +260,7 @@
                 .eq(pageWrap.getModel().getMemberId() != null, HiddenDanger::getMemberId, pageWrap.getModel().getMemberId())
                 .ge(pageWrap.getModel().getCheckDate() != null, HiddenDanger::getCheckDate, Utils.Date.getStart(pageWrap.getModel().getCheckDate()))
                 .le(pageWrap.getModel().getCheckDate() != null, HiddenDanger::getCheckDate, Utils.Date.getEnd(pageWrap.getModel().getCheckDate()))
-                .eq(pageWrap.getModel().getChecklInfo() != null, HiddenDanger::getChecklInfo, pageWrap.getModel().getChecklInfo())
+                .eq(pageWrap.getModel().getCheckInfo() != null, HiddenDanger::getCheckInfo, pageWrap.getModel().getCheckInfo())
                 .eq(pageWrap.getModel().getCheckUserId() != null, HiddenDanger::getCheckUserId, pageWrap.getModel().getCheckUserId())
                 .eq(pageWrap.getModel().getAreaName() != null, HiddenDanger::getAreaName, pageWrap.getModel().getAreaName())
 
@@ -272,4 +285,154 @@
         QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger);
         return hiddenDangerMapper.selectCount(wrapper);
     }
+
+
+
+    @Override
+    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+    public void dealHiddenDanger(HiddenDanger hiddenDanger){
+        isParamValid(hiddenDanger);
+        dealFileBiz(hiddenDanger);
+        hiddenDanger.setEditor(hiddenDanger.getLoginUserInfo().getId());
+        hiddenDanger.setEditDate(new Date());
+        hiddenDanger.setCheckDate(hiddenDanger.getEditDate());
+        hiddenDangerMapper.updateById(hiddenDanger);
+        //瀛樺偍 鎿嶄綔鏃ュ織
+        HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
+        hiddenDangerLog.setIsdeleted(Constants.ZERO);
+        hiddenDangerLog.setCreateDate(new Date());
+        hiddenDangerLog.setCreator(hiddenDanger.getEditor());
+        hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
+        hiddenDangerLog.setContent(hiddenDanger.getCheckInfo());
+        hiddenDangerLog.setTitle(hiddenDanger.getStatus().equals(Constants.ONE)?"闅愭偅澶勭悊":"闅愭偅閫�鍥�");
+        hiddenDangerLog.setObjType(hiddenDanger.getStatus().equals(Constants.ONE)?Constants.FOUR:Constants.TWO);
+        hiddenDangerLogMapper.insert(hiddenDangerLog);
+    }
+
+    private void isParamValid(HiddenDanger hiddenDanger) {
+        if(Objects.isNull(hiddenDanger)
+                || Objects.isNull(hiddenDanger.getId())
+                || Objects.isNull(hiddenDanger.getDealTime())
+                || Objects.isNull(hiddenDanger.getLoginUserInfo())
+                || Objects.isNull(hiddenDanger.getStatus())
+        ){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId());
+        if(Objects.isNull(model)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
+        }
+        if (!model.getStatus().equals(Constants.ZERO)) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�佸凡娴佽浆,璇峰埛鏂版煡鐪�!");
+        }
+        if (!model.getCheckUserId().equals(hiddenDanger.getLoginUserInfo().getMemberId())) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"澶勭悊浜洪潪褰撳墠浜哄憳锛�");
+        }
+        if(!(hiddenDanger.getStatus().equals(Constants.ONE)||hiddenDanger.getStatus().equals(Constants.TWO))){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�侀敊璇�,璇峰埛鏂版煡鐪嬶紒");
+        }
+    }
+
+    private void dealFileBiz(HiddenDanger hiddenDanger) {//鏁存敼鍓嶆枃浠�
+        List<Multifile> beforList = hiddenDanger.getDealBeforeFileList();
+        List<Multifile> fileList = new ArrayList<>();
+
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(beforList)){
+            boolean isTrue = false;
+            for (int i = 0; i < beforList.size(); i++) {
+                Multifile multifile = beforList.get(i);
+                if(StringUtils.isBlank(multifile.getFileurl())){
+                    continue;
+                }
+                multifile.setCreateDate(new Date());
+                multifile.setCreator(hiddenDanger.getEditor());
+                multifile.setIsdeleted(Constants.ZERO);
+                multifile.setObjId(hiddenDanger.getId());
+                multifile.setCreator(hiddenDanger.getLoginUserInfo().getId());
+                multifile.setObjType(Constants.MultiFile.HIDDEN_DANGER_DEAL_BEFORE.getKey());
+                multifile.setSortnum(i+1);
+                fileList.add(multifile);
+                isTrue=true;
+            }
+            if(hiddenDanger.getStatus().equals(Constants.ONE) && !isTrue){
+                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇锋寜瑕佹眰濉啓澶勭悊鏁版嵁");
+            }
+        }
+        if(hiddenDanger.getStatus().equals(Constants.ONE)){
+            boolean isTrue = false;
+            List<Multifile> afterList = hiddenDanger.getDealAfterFileList();
+            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(afterList)){
+                for (int i = 0; i < afterList.size(); i++) {
+                    Multifile multifile = afterList.get(i);
+                    if(StringUtils.isBlank(multifile.getFileurl())){
+                        continue;
+                    }
+                    multifile.setCreateDate(new Date());
+                    multifile.setCreator(hiddenDanger.getEditor());
+                    multifile.setIsdeleted(Constants.ZERO);
+                    multifile.setCreator(hiddenDanger.getLoginUserInfo().getId());
+                    multifile.setObjId(hiddenDanger.getId());
+                    multifile.setObjType(Constants.MultiFile.HIDDEN_DANGER_DEAL_AFTER.getKey());
+                    multifile.setSortnum(i+1);
+                    fileList.add(multifile);
+                    isTrue = true;
+                }
+            }
+            if(isTrue){
+                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝璇锋寜瑕佹眰濉啓澶勭悊鏁版嵁");
+            }
+        }
+        if(fileList.size()>0){
+            multifileMapper.insertBatchSomeColumn(fileList);
+        }
+    }
+
+
+    @Override
+    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
+    public void transferHiddenDanger(HiddenDanger hiddenDanger){
+        if(Objects.isNull(hiddenDanger)
+                || Objects.isNull(hiddenDanger.getId())
+                || Objects.isNull(hiddenDanger.getCheckUserId())
+        ){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        HiddenDanger model = hiddenDangerMapper.selectJoinOne(HiddenDanger.class,new MPJLambdaWrapper<HiddenDanger>()
+                .selectAll(HiddenDanger.class)
+                .selectAs(Member::getName,HiddenDanger::getCheckorName)
+                        .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
+                .eq(HiddenDanger::getId,hiddenDanger.getId()));
+        if(Objects.isNull(model)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
+        }
+        if (!Constants.equalsInteger(model.getStatus(),Constants.ZERO)) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�佸凡娴佽浆,璇峰埛鏂版煡鐪�!");
+        }
+        if (!Constants.equalsInteger(model.getCheckUserId(),hiddenDanger.getLoginUserInfo().getMemberId())) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"澶勭悊浜洪潪褰撳墠浜哄憳锛�");
+        }
+        if(Constants.equalsInteger(model.getCheckUserId(),hiddenDanger.getCheckUserId())){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犳硶杞氦缁欒嚜宸�");
+        }
+        Member member = memberMapper.selectById(hiddenDanger.getCheckUserId());
+        if(member == null || !Constants.equalsInteger(member.getType(), Constants.TWO) || Constants.equalsInteger(Constants.ONE,member.getIsdeleted())){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝杞氦浜轰俊鎭笉瀛樺湪锛岃鍒锋柊椤甸潰閲嶈瘯锛�");
+        }
+        hiddenDanger.setEditor(hiddenDanger.getLoginUserInfo().getId());
+        hiddenDanger.setEditDate(new Date());
+        hiddenDangerMapper.updateById(hiddenDanger);
+        //瀛樺偍 鎿嶄綔鏃ュ織
+        HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
+        hiddenDangerLog.setIsdeleted(Constants.ZERO);
+        hiddenDangerLog.setCreateDate(new Date());
+        hiddenDangerLog.setCreator(hiddenDanger.getEditor());
+        hiddenDangerLog.setEditDate(hiddenDangerLog.getCreateDate());
+        hiddenDangerLog.setEditor(hiddenDanger.getCreator());
+        hiddenDangerLog.setTitle("杞氦缁�"+StringUtils.defaultString(member.getName()));
+        hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
+        hiddenDangerLog.setObjType(Constants.ONE);
+        hiddenDangerLogMapper.insert(hiddenDangerLog);
+    }
+
+
 }

--
Gitblit v1.9.3