From 9b601b29f82fe6c307b1032b23d445e7f04c42a8 Mon Sep 17 00:00:00 2001
From: lidongdong <1459917685@qq.com>
Date: 星期四, 20 十月 2022 10:14:24 +0800
Subject: [PATCH] 修改因状态改变统计数据  bug

---
 flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java |   90 +++++++++++++++++++++++++++++++++------------
 1 files changed, 66 insertions(+), 24 deletions(-)

diff --git a/flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java b/flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java
index 7374151..7b4a4c5 100644
--- a/flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java
+++ b/flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java
@@ -38,32 +38,40 @@
     @Override
     public TransactionEvent selectConfigData(String Id,SysUser sysUser) {
         TransactionEvent transactionEvent = baseMapper.selectConfigData(Id);
-        LocalDateTime startTime = LocalDate.now().atTime(0, 0, 0);
-        LocalDateTime endTime = LocalDate.now().atTime(23, 59, 59);
-        AutomessageTransactionEventInterview automessageTransactionEventInterview = automessageTransactionEventInterviewMapper.selectOne(new QueryWrapper<AutomessageTransactionEventInterview>()
+        //如果当前没有登录用户则不增加浏览次数
+        if (sysUser!=null){
+            LocalDateTime startTime = LocalDate.now().atTime(0, 0, 0);
+            LocalDateTime endTime = LocalDate.now().atTime(23, 59, 59);
+            AutomessageTransactionEventInterview automessageTransactionEventInterview = automessageTransactionEventInterviewMapper.selectOne(new QueryWrapper<AutomessageTransactionEventInterview>()
                 .lambda().eq(AutomessageTransactionEventInterview::getTransactionEventId, Id)
                 .eq(AutomessageTransactionEventInterview::getUserId, sysUser.getUserId())
                 .orderByDesc(AutomessageTransactionEventInterview::getInterviewTime)
                 .last("limit 1"));
-        transactionEvent.setQueryTime(LocalDateTime.now());
-        //判断上次访问时间是不是今天 如果
-        if (automessageTransactionEventInterview==null||(!(transactionEvent.getQueryTime().isAfter(startTime)&&transactionEvent.getQueryTime().isBefore(endTime)))) {
-            transactionEvent.setBrowseNum(transactionEvent.getBrowseNum()+1);
-            baseMapper.updateById(transactionEvent);
-            AutomessageTransactionEventInterview automessageTransactionEventInterviewNew =
+            transactionEvent.setQueryTime(LocalDateTime.now());
+            //判断上次访问时间是不是今天 如果是今天不增加浏览次数
+            if (automessageTransactionEventInterview==null||(!(transactionEvent.getQueryTime().isAfter(startTime)&&transactionEvent.getQueryTime().isBefore(endTime)))) {
+               transactionEvent.setBrowseNum(transactionEvent.getBrowseNum()+1);
+               baseMapper.updateById(transactionEvent);
+               AutomessageTransactionEventInterview automessageTransactionEventInterviewNew =
                     new AutomessageTransactionEventInterview();
-            automessageTransactionEventInterviewNew.setTransactionEventId(Integer.valueOf(Id));
-            automessageTransactionEventInterviewNew.setUserId(new Long(sysUser.getUserId()));
-            automessageTransactionEventInterviewNew.setInterviewTime(LocalDateTime.now());
-            automessageTransactionEventInterviewMapper.insert(automessageTransactionEventInterviewNew);
+               automessageTransactionEventInterviewNew.setTransactionEventId(Integer.valueOf(Id));
+               automessageTransactionEventInterviewNew.setUserId(new Long(sysUser.getUserId()));
+               automessageTransactionEventInterviewNew.setInterviewTime(LocalDateTime.now());
+               automessageTransactionEventInterviewMapper.insert(automessageTransactionEventInterviewNew);
+          }
         }
         return transactionEvent;
     }
 
     @Override
     public List<TransactionEvent> selectConfigList(IPage<TransactionEvent> page, Integer state,
-                                                   String matterAndUser, String classifyGrade) {
-        return baseMapper.selectConfigList(page,  state, matterAndUser, classifyGrade);
+                                                   String keyword, String classifyGrade,List<String> ids) {
+        return baseMapper.selectConfigList(page,  state, keyword, classifyGrade,ids);
+    }
+
+    @Override
+    public List<TransactionEvent> selectConfigList(String keyword, String classifyGrade, List<String> ids) {
+        return baseMapper.selectConfigList(keyword,classifyGrade,ids);
     }
 
     @Override
@@ -82,8 +90,8 @@
     }
 
     @Override
-    public int countNum(String matterAndUser,String classifyGrade) {
-        return baseMapper.countNum( matterAndUser, classifyGrade);
+    public int countNum(String matterAndUser,String classifyGrade,List<String> ids) {
+        return baseMapper.countNum( matterAndUser, classifyGrade, ids);
     }
 
     @Override
@@ -98,27 +106,56 @@
         return queryResults;
     }
 
+    @Override
+    public QueryResults queryMatterNameList(String keyWord) {
+        QueryResults queryResults = new QueryResults();
+        List<Search> searches = baseMapper.selectSearchList(keyWord);
+        for (Search search:searches) {
+            search.setTransactionEventList(baseMapper.queryMatterNameList(keyWord,search.getClassifyId().toString()));
+        }
+        queryResults.setSearchList(searches);
+        List<Search> searchesAssociate = baseMapper.selectSearchAssociateDistinct(keyWord);
+        for (Search search:searchesAssociate) {
+            search.setTransactionEventList(baseMapper.queryAssociateNamesList(keyWord,search.getClassifyId().toString()));
+        }
+        queryResults.setTransactionEventList(searchesAssociate);
+        queryResults.setKeywordEntityList( keywordMapper.selectByName(keyWord));
+        return queryResults;
+    }
+
 
     @Override
     public RecommendResult smartConsulting(String keyWord){
         RecommendResult recommendResult=new RecommendResult();
         List<KeywordEntity> keywordEntityList=new ArrayList<>();
-        List<TransactionEvent> transactionEventEntities = baseMapper.queryMatterNameList(keyWord);
+        List<TransactionEvent> transactionEventEntities = baseMapper.queryMatterNameList(keyWord,null);
         recommendResult.setTransactionEventList(transactionEventEntities);
         for (TransactionEvent transactionEvent: transactionEventEntities) {
-            String[] associateNames = transactionEvent.getAssociateNames().split(",");
-            for (String  associateName: associateNames) {
-                KeywordEntity keywordEntity = new KeywordEntity();
-                keywordEntity.setName(associateName);
-                keywordEntityList.add(keywordEntity);
+            if (transactionEvent.getAssociateNames()!=null) {
+                String[] associateNames = transactionEvent.getAssociateNames().split(",");
+                for (String associateName : associateNames) {
+                    KeywordEntity keywordEntity = new KeywordEntity();
+                    keywordEntity.setName(associateName);
+                    keywordEntityList.add(keywordEntity);
+                }
             }
-
         }
         recommendResult.setKeywordEntityList(keywordEntityList);
         List<OrganizationChartEntity> organizationChartEntities = organizationChartMapper.selectByKeyWord(keyWord);
         recommendResult.setOrganizationChartEntityList(organizationChartEntities);
         return recommendResult;
     }
+
+    @Override
+    public String selectDataIfExist(String departmentId, String matterName) {
+        return baseMapper.selectDataIfExist(departmentId,matterName);
+    }
+
+    @Override
+    public List<String> selectclassifyId(String classifyId) {
+        return baseMapper.selectclassifyId(classifyId);
+    }
+
 
     @Override
     public int countNumByMatterName(String matterName) {
@@ -131,6 +168,11 @@
     }
 
     @Override
+    public List<TransactionEvent> queryByClassifyIdList(IPage<TransactionEvent> page, Integer state,String classifyId,Integer departmentId) {
+        return baseMapper.queryByClassifyIdList(page,state,classifyId,departmentId);
+    }
+
+    @Override
     public List<TransactionEvent> queryByQueryTime() {
         List<TransactionEvent> transactionEvents = baseMapper.selectList(new QueryWrapper<TransactionEvent>().lambda().orderByDesc(TransactionEvent::getQueryTime));
         return transactionEvents;

--
Gitblit v1.7.1