From f1bcbc43e988d0d1a91bea66a9ebbf6d601e48c0 Mon Sep 17 00:00:00 2001
From: yanghui <2536613402@qq.com>
Date: 星期四, 13 十月 2022 10:33:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/huacheng_test' into huacheng_test

---
 flower_city/src/main/java/com/dg/core/service/impl/TransactionEventImpl.java |   81 ++++++++++++++++++++++++++++++++--------
 1 files changed, 65 insertions(+), 16 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 6c991ea..1da4883 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
@@ -4,10 +4,8 @@
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.dg.core.db.gen.entity.KeywordEntity;
-import com.dg.core.db.gen.entity.OrganizationChartEntity;
-import com.dg.core.db.gen.entity.SysUser;
-import com.dg.core.db.gen.entity.TransactionEvent;
+import com.dg.core.db.gen.entity.*;
+import com.dg.core.db.gen.mapper.AutomessageTransactionEventInterviewMapper;
 import com.dg.core.db.gen.mapper.KeywordMapper;
 import com.dg.core.db.gen.mapper.OrganizationChartMapper;
 import com.dg.core.db.gen.mapper.TransactionEventMapper;
@@ -19,6 +17,9 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -31,15 +32,41 @@
     @Resource
     private KeywordMapper keywordMapper;
 
+    @Resource
+    private AutomessageTransactionEventInterviewMapper automessageTransactionEventInterviewMapper;
+
     @Override
-    public TransactionEvent selectConfigData(String Id) {
-        return baseMapper.selectConfigData(Id);
+    public TransactionEvent selectConfigData(String Id,SysUser sysUser) {
+        TransactionEvent transactionEvent = baseMapper.selectConfigData(Id);
+        //如果当前没有登录用户则不增加浏览次数
+        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 =
+                    new AutomessageTransactionEventInterview();
+               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 matterAndUser, String classifyGrade,List<String> ids) {
+        return baseMapper.selectConfigList(page,  state, matterAndUser, classifyGrade,ids);
     }
 
     @Override
@@ -58,8 +85,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
@@ -74,6 +101,17 @@
         return queryResults;
     }
 
+    @Override
+    public QueryResults queryMatterNameList(String keyWord) {
+        QueryResults queryResults = new QueryResults();
+        List<Search> searches = baseMapper.selectSearchList(keyWord);
+        queryResults.setSearchList(searches);
+        List<Search> searchesAssociate = baseMapper.selectSearchAssociate(keyWord);
+        queryResults.setTransactionEventList(searchesAssociate);
+        queryResults.setKeywordEntityList( keywordMapper.selectByName(keyWord));
+        return queryResults;
+    }
+
 
     @Override
     public RecommendResult smartConsulting(String keyWord){
@@ -82,18 +120,24 @@
         List<TransactionEvent> transactionEventEntities = baseMapper.queryMatterNameList(keyWord);
         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 int countStatisticsNum(List<String> classifyIds) {
+        return baseMapper.countStatisticsNum(classifyIds);
     }
 
     @Override
@@ -107,6 +151,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