From f418b9212bf73f686ccd4b3e94091cd98f3b4cde Mon Sep 17 00:00:00 2001
From: 张天森 <1292933220@qq.com>
Date: 星期二, 11 十月 2022 16:08:02 +0800
Subject: [PATCH] update

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java |   69 ++++++++++++++++++++++++++++++----
 1 files changed, 60 insertions(+), 9 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java
index 0107c34..0f83525 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ComEventServiceImpl.java
@@ -2,7 +2,9 @@
 
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.lang.generator.SnowflakeGenerator;
 import cn.hutool.core.util.NumberUtil;
+import cn.hutool.core.util.RandomUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -73,8 +75,32 @@
     @Resource
     private CommediateTypeService commediateTypeService;
 
+
     @Override
-    public R pageByComEvent(ComEvent comEvent, Page pagination) {
+    public R pageByComEvent(ComEvent comEvent, Page pagination,LoginUserInfoVO loginUserInfoVO) {
+        if (nonNull(comEvent.getUserType())){
+            if (comEvent.getUserType().equals(1)){
+                //个人账号权限
+                comEvent.setRequestUserId(loginUserInfoVO.getUserId());
+            }else if (comEvent.getUserType().equals(2) || loginUserInfoVO.getType().equals(13)){
+                //专家账号权限
+                ComSanshuoExpert expert = comSanShuoExpertService.getOne(new QueryWrapper<ComSanshuoExpert>().lambda().eq(ComSanshuoExpert::getPhone, loginUserInfoVO.getPhone()));
+                if (nonNull(expert)){
+                    comEvent.setSpecialistId(expert.getId());
+                }
+            }else if (loginUserInfoVO.getType().equals(11)){
+                //行业分中心权限
+                comEvent.setUserType(3);
+                //获取行业分中心id
+                ComSanshuoIndustryCenter center = comSanShuoIndustryCenterService.getOne(new QueryWrapper<ComSanshuoIndustryCenter>().lambda().eq(ComSanshuoIndustryCenter::getAccount, loginUserInfoVO.getAccount()));
+                if (nonNull(center)){
+                    comEvent.setCenterId(center.getId().toString());
+                }
+            }else if (loginUserInfoVO.getType().equals(3)){
+                //社区后台权限
+                comEvent.setCommunityId(loginUserInfoVO.getCommunityId());
+            }
+        }
         IPage<ComEvent> list = baseMapper.pageByComEvent(comEvent, pagination);
         if (list.getRecords().size() < 1) {
             return R.ok(Collections.emptyList());
@@ -88,14 +114,17 @@
 //            }
             ComMediateType category = commediateTypeService.getById(comEvent1.getEventCategory());
             comEvent1.setEventCategoryName(category.getName());
+            ComSanshuoExpert byId = comSanShuoExpertService.getById(comEvent1.getSpecialistId());
+            if (nonNull(byId)){
+                comEvent1.setExpertAvatar(byId.getAvatar());
+            }
         });
         return R.ok(list);
     }
 
-
     @Override
-    public List<ComEvent> listByComEvent(ComEvent comEvent) {
-        List<ComEvent> list = baseMapper.listByComEvent(comEvent);
+    public List<ComEvent> listByComEvent(ComEvent comEvent,LoginUserInfoVO loginUserInfoVO) {
+        List<ComEvent> list = baseMapper.listByComEvent(comEvent,null);
         if (list.size() < 1) {
             return Collections.emptyList();
         }
@@ -133,6 +162,7 @@
         if (!flag) {
             return R.fail(ReturnMsgConstants.DATA_EXIST);
         }
+        //提交不视为一次流转记录,不保存图片
         saveEventImageList(comEvent.getImages(), comEvent.getId(),null,1);
         return R.ok(ReturnMsgConstants.SAVE_SUCCESS);
     }
@@ -165,6 +195,9 @@
 /*        if (checkExist(comEvent.getOrderSn(), comEvent.getId())) {
             return R.fail(ReturnMsgConstants.DATA_EXIST);
         }*/
+        //清除专家信息
+        comEvent.setSpecialistId(null);
+        comEvent.setSpecialistName(null);
         int flag = baseMapper.updateById(comEvent);
         return flag > 0 ? R.ok(comEvent, ReturnMsgConstants.UPDATE_SUCCESS) : R.fail(ReturnMsgConstants.UPDATE_FALSE);
     }
@@ -184,12 +217,11 @@
     @Override
     @Transactional(rollbackFor = Exception.class)
     public R conciliationEvent(ComEventConciliationVO comEventConciliationVO, LoginUserInfoVO loginUserInfo) {
-        saveEventImageList(comEventConciliationVO.getImages(), comEventConciliationVO.getId(),null,4);
         ComEvent comEvent = baseMapper.selectById(comEventConciliationVO.getId());
         comEvent.setEventSucceed(comEventConciliationVO.getEventSucceed());
         comEvent.setEventResult(comEventConciliationVO.getEventResult());
         comEvent.setReportSuperior(comEventConciliationVO.getReportSuperior());
-        if(comEventConciliationVO.getEventSucceed() ==2){
+        if(comEventConciliationVO.getEventSucceed().equals(2)){
             comEvent.setEventProcessStatus(6);
         }
         comEvent.setCurrentEventProcessResult(comEventConciliationVO.getCurrentEventProcessResult());
@@ -228,7 +260,10 @@
         comEventTransferRecord.setSpecialistName(comEvent.getSpecialistName());
         comEventTransferRecord.setEventResult(comEvent.getEventSucceed());
         comEventTransferRecord.setEventStatus(comEvent.getEventProcessStatus());
-        saveEventImageList(comEvent.getImages(),comEvent.getId(),comEventTransferRecord.getId(),4);
+        //雪花id失效,使用eventId随机生成
+        comEventTransferRecord.setId(Snowflake.getId());
+        //saveEventImageList(comEvent.getImages(),comEvent.getId(),comEventTransferRecord.getId(),4);
+        saveEventImageList(comEventConciliationVO.getImages(), comEventConciliationVO.getId(),comEventTransferRecord.getId(),4);
         comEventTransferRecordService.insertComEventTransferRecord(comEventTransferRecord);
         return flag > 0 ? R.ok() : R.fail(ReturnMsgConstants.UPDATE_FALSE);
     }
@@ -243,6 +278,7 @@
             comEvent.setUserEventStatus(4);
             comEvent.setEventProcessStatus(8);
             comEvent.setRevokeDes("用户手动取消");
+            comEvent.setRevokeDate(new Date());
             int flag = baseMapper.updateById(comEvent);
             return flag > 0 ? R.ok() : R.fail(ReturnMsgConstants.UPDATE_FALSE);
         } else {
@@ -257,18 +293,30 @@
         ComEvent comEvent = baseMapper.selectById(id);
         ComSanshuoExpert specter = comSanShuoExpertService.getById(comEvent.getSpecialistId());
         CopyUtil.copyProperties(comEvent, comEventDetailVO);
+        comEventDetailVO.setCategoryName(commediateTypeService.getById(comEventDetailVO.getEventCategory()).getName());
         List<ComEventResource> resourceList = comEventResourceService.list(new QueryWrapper<ComEventResource>().lambda().eq(ComEventResource::getRefId, id)
                 .eq(ComEventResource::getStatus,1));
         List<ComEventRequestImageVO> comEventRequestImageVO = CopyUtil.deepCopyListObject(resourceList, ComEventRequestImageVO.class);
         comEventDetailVO.setImages(comEventRequestImageVO);
         map.put("specter", specter);
         map.put("eventDetail", comEventDetailVO);
-        List<ComEventTransferRecord> transferRecord = comEventTransferRecordService.list(new QueryWrapper<ComEventTransferRecord>().lambda().eq(ComEventTransferRecord::getEventId, id));
+        List<ComEventTransferRecord> transferRecord = comEventTransferRecordService.list(new QueryWrapper<ComEventTransferRecord>().lambda().eq(ComEventTransferRecord::getEventId, id).orderByAsc(ComEventTransferRecord::getCreateAt));
         transferRecord.forEach(comEventTransferRecord -> {
-            List<ComEventResource> list = comEventResourceService.list(new QueryWrapper<ComEventResource>().lambda().eq(ComEventResource::getTransferId, comEventTransferRecord.getId()));
+            List<ComEventResource> list = comEventResourceService.list(new QueryWrapper<ComEventResource>().lambda().eq(ComEventResource::getRefId, comEvent.getId()).notIn(ComEventResource::getStatus,(1)).eq(ComEventResource::getTransferId, comEventTransferRecord.getId()));
             List<ComEventRequestImageVO> ImageVO = CopyUtil.deepCopyListObject(list, ComEventRequestImageVO.class);
             comEventTransferRecord.setImages(ImageVO);
+            if (comEventTransferRecord.getEventStatus().equals(7)){
+                map.put("archiveLog", comEventTransferRecord);
+            }
         });
+        //迭代器迭代删除归档记录
+        Iterator<ComEventTransferRecord> iterator = transferRecord.iterator();
+        while (iterator.hasNext()){
+            ComEventTransferRecord comEventTransferRecord = iterator.next();
+            if (comEventTransferRecord.getEventStatus().equals(7)){
+                iterator.remove();
+            }
+        }
         map.put("transferLog", transferRecord);
         List<ComEventResource> resource = comEventResourceService.list(new QueryWrapper<ComEventResource>().lambda().eq(ComEventResource::getRefId, id)
                 .eq(ComEventResource::getStatus, 5));
@@ -342,9 +390,12 @@
         comEventTransferRecord.setSpecialistName(comEvent.getSpecialistName());
         comEventTransferRecord.setEventResult(comEvent.getEventSucceed());
         comEventTransferRecord.setEventStatus(comEvent.getEventProcessStatus());
+        comEventTransferRecord.setId(Snowflake.getId());
+        saveEventImageList(comEventArchiveVO.getImages(), comEvent.getId(), comEventTransferRecord.getId(), 5);
         return comEventTransferRecordService.insertComEventTransferRecord(comEventTransferRecord);
     }
 
+
     /**
      * 大屏事件统计
      * @param indexDataDTO  查询入参

--
Gitblit v1.7.1