From b882510e16aad7e84d1f50c58831b54ebb5bae22 Mon Sep 17 00:00:00 2001
From: k94314517 <8417338+k94314517@user.noreply.gitee.com>
Date: 星期二, 11 三月 2025 17:19:16 +0800
Subject: [PATCH] 代码初始化

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java |  147 +++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 130 insertions(+), 17 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 5d6d27b..e5303b1 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
@@ -8,6 +8,9 @@
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
+import com.doumee.dao.business.dao.*;
+import com.doumee.dao.business.vo.GeneralDataVO;
+import com.doumee.dao.business.vo.HiddenDangerDataVO;
 import com.doumee.service.business.third.model.LoginUserInfo;
 import com.doumee.service.business.third.model.PageData;
 import com.doumee.service.business.third.model.PageWrap;
@@ -18,9 +21,6 @@
 import com.doumee.core.wx.wxPlat.WxPlatConstants;
 import com.doumee.core.wx.wxPlat.WxPlatNotice;
 import com.doumee.dao.business.*;
-import com.doumee.dao.business.dao.MemberMapper;
-import com.doumee.dao.business.dao.SmsConfigMapper;
-import com.doumee.dao.business.dao.SmsEmailMapper;
 import com.doumee.dao.business.model.*;
 import com.doumee.dao.business.model.Member;
 import com.doumee.dao.system.MultifileMapper;
@@ -34,14 +34,15 @@
 import com.doumee.service.business.third.EmayService;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.commons.lang3.StringUtils;
-import org.checkerframework.checker.units.qual.C;
 import org.springframework.beans.BeanUtils;
 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.math.BigDecimal;
 import java.util.*;
+import java.util.stream.Collectors;
 
 /**
  * 闅愭偅淇℃伅琛⊿ervice瀹炵幇
@@ -71,6 +72,11 @@
 
     @Autowired
     private HiddenDangerLogMapper hiddenDangerLogMapper;
+    @Autowired
+    private UserActionMapper userActionMapper;
+
+    @Autowired
+    private CompanyMapper companyMapper;
 
 
     @Autowired
@@ -255,20 +261,21 @@
         if(Objects.isNull(model)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
         }
-        if (!Constants.equalsInteger(model.getStatus(),Constants.ZERO)) {
+       /* if (!Constants.equalsInteger(model.getStatus(),Constants.ZERO)) {
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�佸凡娴佽浆,璇峰埛鏂版煡鐪�!");
-        }
+        }*/
         HiddenDanger hiddenDanger  = new HiddenDanger();
         hiddenDanger.setIsdeleted(Constants.ONE);
         hiddenDanger.setId(id);
         hiddenDanger.setEditor(user.getId());
+        Date date =new Date();
 
-        hiddenDanger.setEditDate(new Date());
+        hiddenDanger.setEditDate(date);
         hiddenDangerMapper.updateById(hiddenDanger);
         //瀛樺偍 鎿嶄綔鏃ュ織
         HiddenDangerLog hiddenDangerLog = new HiddenDangerLog();
         hiddenDangerLog.setIsdeleted(Constants.ZERO);
-        hiddenDangerLog.setCreateDate(new Date());
+        hiddenDangerLog.setCreateDate(date);
         hiddenDangerLog.setCreator(hiddenDanger.getEditor());
         hiddenDangerLog.setEditDate(hiddenDangerLog.getCreateDate());
         hiddenDangerLog.setEditor(hiddenDanger.getCreator());
@@ -276,6 +283,13 @@
         hiddenDangerLog.setHiddenDangerId(hiddenDanger.getId());
         hiddenDangerLog.setObjType(Constants.FIVE);
         hiddenDangerLogMapper.insert(hiddenDangerLog);
+
+        String[] params = new String[3];
+        params[0] = user.getRealname();
+        params[1]=DateUtil.getPlusTime2(date);
+        params[2]=model.getAreaName()+"-銆�"+model.getContent()+"銆�";
+        //璁板綍鍒犻櫎鏃ュ織
+        UserActionServiceImpl.saveUserActionBiz(user,id,Constants.UserActionType.HIDEN_DANGER_DEL,userActionMapper,date,params,JSONObject.toJSONString(model));
     }
 
     @Override
@@ -324,7 +338,9 @@
                 .leftJoin("company t4 on t1.company_id=t4.id")
                 .leftJoin("company t5 on t2.company_id=t5.id");
         queryWrapper
-                .eq(HiddenDanger::getId, id).last("limit 1");
+                .eq(HiddenDanger::getId, id)
+                .eq(HiddenDanger::getIsdeleted, Constants.ZERO)
+                .last("limit 1");
 
         HiddenDanger model =  hiddenDangerMapper.selectJoinOne(HiddenDanger.class,queryWrapper);
         if(model ==null || Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
@@ -394,6 +410,7 @@
 
     @Override
     public List<HiddenDanger> findList(HiddenDanger hiddenDanger) {
+        hiddenDanger.setIsdeleted(Constants.ZERO);
         QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger);
         return hiddenDangerMapper.selectList(wrapper);
     }
@@ -403,6 +420,7 @@
         IPage<HiddenDanger> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
         MPJLambdaWrapper<HiddenDanger> queryWrapper = new MPJLambdaWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
+        pageWrap.getModel().setIsdeleted(Constants.ZERO);
         queryWrapper.selectAll(HiddenDanger.class)
                 .selectAs(HiddenDangerParam::getName,HiddenDanger::getCategoryName)
                 .select("t1.name", HiddenDanger::getMemberName)
@@ -423,7 +441,10 @@
         if(userInfo!=null && userInfo.getCompanyIdList()!=null){
             if(  userInfo.getCompanyIdList().size() ==0){
                 //鍙兘鐪嬭嚜宸�
-                queryWrapper.eq(HiddenDanger::getCreator,userInfo.getId());
+                queryWrapper.and(w->{
+                    w.eq(HiddenDanger::getCreator,userInfo.getId()).or().
+                    eq(HiddenDanger::getCheckUserId,userInfo.getMemberId());
+                });
             }else{
                 queryWrapper.in("t1.company_id" ,userInfo.getCompanyIdList());
             }
@@ -455,8 +476,8 @@
 
                 .and(StringUtils.isNotBlank(pageWrap.getModel().getMemberName()), ms->ms.like(Member::getName,pageWrap.getModel().getMemberName())
                         .or().like(Member::getPhone,pageWrap.getModel().getMemberName()))
-                .ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), Empower::getCreateDate,pageWrap.getModel().getQueryStartTime())
-                .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()),Empower::getCreateDate,pageWrap.getModel().getQueryEndTime())
+                .ge(Objects.nonNull(pageWrap.getModel().getQueryStartTime()), HiddenDanger::getCreateDate,pageWrap.getModel().getQueryStartTime())
+                .le(Objects.nonNull(pageWrap.getModel().getQueryEndTime()),HiddenDanger::getCreateDate,pageWrap.getModel().getQueryEndTime())
                 .orderByDesc(Visits::getCreateDate)
         ;
         for(PageWrap.SortData sortData: pageWrap.getSorts()) {
@@ -471,6 +492,7 @@
 
     @Override
     public long count(HiddenDanger hiddenDanger) {
+        hiddenDanger.setIsdeleted(Constants.ZERO);
         QueryWrapper<HiddenDanger> wrapper = new QueryWrapper<>(hiddenDanger);
         return hiddenDangerMapper.selectCount(wrapper);
     }
@@ -485,6 +507,9 @@
         hiddenDanger.setCheckDate(hiddenDanger.getEditDate());
         hiddenDangerMapper.updateById(hiddenDanger);
         HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId());
+        if(Objects.isNull(model) ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
+            throw new BusinessException(ResponseStatus.DATA_EMPTY );
+        }
         HiddenDangerParam hiddenDangerCate = hiddenDangerParamMapper.selectById(model.getCateId());
         if(Objects.isNull(hiddenDangerCate)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅绫诲瀷");
@@ -505,12 +530,20 @@
                 .lambda()
                 .set(Notices::getReaded,Constants.ONE)
                 .set(Notices::getStatus,Constants.ONE)
+                .set(Notices::getInfo,hiddenDanger.getStatus().equals(Constants.ONE)?"宸叉暣鏀�":"宸查��鍥�")
                 .set(Notices::getParam2,hiddenDanger.getStatus())
                 .set(Notices::getParam4,hiddenDanger.getLoginUserInfo().getMemberId())
                 .eq(Notices::getObjId,hiddenDanger.getId())
                 .eq(Notices::getObjType,Constants.THREE)
-                .eq(Notices::getUserId,hiddenDanger.getLoginUserInfo().getMemberId())
-        );
+                .eq(Notices::getUserId,hiddenDanger.getLoginUserInfo().getMemberId()));
+        //鍙戣捣浜轰唬鍔炴爣棰樹慨鏀逛负澶勭悊缁撴灉
+        noticesJoinMapper.update(null,new UpdateWrapper<Notices>()
+                .lambda()
+                .set(Notices::getInfo,hiddenDanger.getStatus().equals(Constants.ONE)?"宸叉暣鏀�":"宸查��鍥�")
+                .set(Notices::getParam2,hiddenDanger.getStatus())
+                .eq(Notices::getObjId,hiddenDanger.getId())
+                .eq(Notices::getObjType,Constants.THREE)
+                .eq(Notices::getParam3,hiddenDanger.getMemberId().toString()) );
 
         SystemUser memberUser = systemUserMapper.selectOne(new QueryWrapper<SystemUser>().lambda()
                 .eq(SystemUser::getDeleted, Constants.ZERO)
@@ -549,7 +582,7 @@
             throw new BusinessException(ResponseStatus.BAD_REQUEST);
         }
         HiddenDanger model = hiddenDangerMapper.selectById(hiddenDanger.getId());
-        if(Objects.isNull(model)){
+        if(Objects.isNull(model) ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
         }
         if (!model.getStatus().equals(Constants.ZERO)) {
@@ -561,6 +594,7 @@
         if(!(hiddenDanger.getStatus().equals(Constants.ONE)||hiddenDanger.getStatus().equals(Constants.TWO))){
             throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏁版嵁鐘舵�侀敊璇�,璇峰埛鏂版煡鐪嬶紒");
         }
+        hiddenDanger.setMemberId(model.getMemberId());//鍙戣捣浜�
     }
 
     private void dealFileBiz(HiddenDanger hiddenDanger) {//鏁存敼鍓嶆枃浠�
@@ -649,8 +683,9 @@
                 .selectAll(HiddenDanger.class)
                 .selectAs(Member::getName,HiddenDanger::getCheckorName)
                         .leftJoin(Member.class,Member::getId,HiddenDanger::getCheckUserId)
-                .eq(HiddenDanger::getId,hiddenDanger.getId()));
-        if(Objects.isNull(model)){
+                .eq(HiddenDanger::getId,hiddenDanger.getId())
+        );
+        if(Objects.isNull(model) ||Constants.equalsInteger(model.getIsdeleted(),Constants.ONE)){
             throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌闅愭偅鏁版嵁");
         }
         if (!Constants.equalsInteger(model.getStatus(),Constants.ZERO)) {
@@ -743,4 +778,82 @@
     }
 
 
+    /**
+     * 闅忔墜鎷嶇粺璁℃暟鎹�
+     */
+    @Override
+    public HiddenDangerDataVO hiddenDangerData(HiddenDanger hiddenDanger){
+        HiddenDangerDataVO hiddenDangerDataVO = new HiddenDangerDataVO();
+        List<HiddenDanger> hiddenDangerAllList = hiddenDangerMapper.selectJoinList(HiddenDanger.class,
+                new MPJLambdaWrapper<HiddenDanger>()
+                        .selectAll(HiddenDanger.class)
+                .selectAs(HiddenDangerParam::getCompanyId, HiddenDanger::getAreaCompanyId)
+                .leftJoin(HiddenDangerParam.class,HiddenDangerParam::getId,HiddenDanger::getAreaId) //闅愭偅鍖哄煙
+                .eq(HiddenDanger::getIsdeleted,Constants.ZERO)
+                .eq(Objects.nonNull(hiddenDanger.getStatus()),HiddenDanger::getStatus,hiddenDanger.getStatus())
+                .ge(Objects.nonNull(hiddenDanger.getQueryStartTime()), HiddenDanger::getCreateDate,hiddenDanger.getQueryStartTime())
+                .le(Objects.nonNull(hiddenDanger.getQueryEndTime()),HiddenDanger::getCreateDate,hiddenDanger.getQueryEndTime())
+        );
+        hiddenDangerDataVO.setTotal(hiddenDangerAllList.size());
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(hiddenDangerAllList)){
+            List<Integer> cateList =  hiddenDangerAllList.stream().map(i->i.getCateId()).collect(Collectors.toList());
+            //鍏ㄩ儴闅愭偅鍒嗙被鏁版嵁
+            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(cateList)){
+                List<GeneralDataVO> cateGeneralDataList = new ArrayList<>();
+                Set<Integer> cateSetList = new HashSet<>(cateList);
+                List<HiddenDangerParam> hiddenDangerParamList = hiddenDangerParamMapper.selectList(new QueryWrapper<HiddenDangerParam>()
+                        .lambda().eq(HiddenDangerParam::getIsdeleted,Constants.ZERO).eq(HiddenDangerParam::getType,Constants.ONE));
+                for (Integer cateId:cateSetList) {
+                    if(Objects.isNull(cateId)){
+                        continue;
+                    }
+                    Optional<HiddenDangerParam> optionalHiddenDanger = hiddenDangerParamList.stream().filter(i->Constants.equalsInteger(i.getId(),cateId)).findAny();
+                    if(optionalHiddenDanger.isPresent()){
+                        GeneralDataVO generalDataVO = new GeneralDataVO();
+                        HiddenDangerParam hiddenDangerParam = optionalHiddenDanger.get();
+                        Integer total = hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getCateId(),hiddenDangerParam.getId())).collect(Collectors.toList()).size();
+                        generalDataVO.setName(hiddenDangerParam.getName());
+                        generalDataVO.setTotal(total);
+                        generalDataVO.setRata(
+                                    Constants.equalsInteger(total,Constants.ZERO)?
+                                        BigDecimal.ZERO:new BigDecimal(total.toString())
+                                            .divide(new BigDecimal(hiddenDangerDataVO.getTotal().toString()),2,BigDecimal.ROUND_HALF_UP).multiply(new BigDecimal("100"))
+                                );
+                        cateGeneralDataList.add(generalDataVO);
+                    }
+                }
+                hiddenDangerDataVO.setCateList(cateGeneralDataList);
+            }
+            //鍏ㄩ儴闅愭偅鍖哄煙閮ㄩ棬鏁版嵁
+            List<Integer> companyIdList =  hiddenDangerAllList.stream().map(i->i.getAreaCompanyId()).collect(Collectors.toList());
+            if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(companyIdList)){
+                List<GeneralDataVO> companyGeneralDataList = new ArrayList<>();
+                Set<Integer> companyIdSetList = new HashSet<>(companyIdList);
+                List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>()
+                        .lambda().eq(Company::getIsdeleted,Constants.ZERO));
+                for (Integer companyId:companyIdSetList) {
+                    if(Objects.isNull(companyId)){
+                        continue;
+                    }
+                    Optional<Company> optionalCompany = companyList.stream().filter(i->Constants.equalsInteger(i.getId(),companyId)).findAny();
+                    if(optionalCompany.isPresent()){
+                        GeneralDataVO generalDataVO = new GeneralDataVO();
+                        Company company = optionalCompany.get();
+                        Integer total = hiddenDangerAllList.stream().filter(i->Constants.equalsInteger(i.getAreaCompanyId(),company.getId())).collect(Collectors.toList()).size();
+                        generalDataVO.setName(company.getName());
+                        generalDataVO.setTotal(total);
+                        companyGeneralDataList.add(generalDataVO);
+                    }
+                }
+                hiddenDangerDataVO.setDepartmentList(companyGeneralDataList);
+            }
+        }
+
+        return hiddenDangerDataVO;
+    }
+
+
+
+
+
 }

--
Gitblit v1.9.3