From 43f0578e80af82ecae6c61b51bd0539c6b960603 Mon Sep 17 00:00:00 2001
From: puhanshu <a9236326>
Date: 星期二, 16 八月 2022 19:08:32 +0800
Subject: [PATCH] 服务范围优化

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java |   79 ++++++++++++++++++++++++++++++++++-----
 1 files changed, 68 insertions(+), 11 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java
index 910f394..4d1984f 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/service/impl/ConvenientMerchantServiceImpl.java
@@ -12,6 +12,7 @@
 
 import javax.annotation.Resource;
 
+import com.panzhihua.common.utlis.Snowflake;
 import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -54,6 +55,8 @@
 import com.panzhihua.service_community.model.dos.ConvenientViewStatisticsDO;
 import com.panzhihua.service_community.service.ConvenientMerchantService;
 
+import lombok.extern.slf4j.Slf4j;
+
 /**
  * @title: ConvenientMerchantServiceImpl
  * @projectName: 成都呐喊信息技术有限公司-智慧社区项目
@@ -62,6 +65,7 @@
  * @date: 2021/09/16 16:14
  */
 @Service
+@Slf4j
 public class ConvenientMerchantServiceImpl extends ServiceImpl<ConvenientMerchantDAO, ConvenientMerchantDO> implements ConvenientMerchantService {
 
     @Resource
@@ -77,14 +81,28 @@
     @Resource
     private ConvenientViewStatisticsDAO convenientViewStatisticsDAO;
 
+    private static final String DQ="510402";
+    private static final String RHQ="510411";
+
     @Override
     @Transactional(rollbackFor = Exception.class)
     public R addMerchant(ConvenientMerchantDTO convenientMerchantDTO) {
-        ComActDO comActDO = comActDAO.selectById(convenientMerchantDTO.getCommunityId());
         ConvenientMerchantDO convenientMerchantDO = new ConvenientMerchantDO();
         BeanUtils.copyProperties(convenientMerchantDTO, convenientMerchantDO);
+        if(convenientMerchantDTO.getCommunityId()==0){
+            if(DQ.equals(convenientMerchantDTO.getAreaCode())){
+                convenientMerchantDO.setCommunityName("东区社区");
+            }else if(RHQ.equals(convenientMerchantDTO.getAreaCode())){
+                convenientMerchantDO.setCommunityName("仁和区社区");
+            }else{
+                convenientMerchantDO.setCommunityName("西区社区");
+            }
+        }
+        else {
+            ComActDO comActDO = comActDAO.selectById(convenientMerchantDTO.getCommunityId());
+            convenientMerchantDO.setCommunityName(comActDO.getName());
+        }
         convenientMerchantDO.setUserId(0L);
-        convenientMerchantDO.setCommunityName(comActDO.getName());
         convenientMerchantDO.setCreatedAt(new Date());
         int insertResult = this.baseMapper.insert(convenientMerchantDO);
         if (insertResult > 0) {
@@ -94,7 +112,7 @@
                 List<Long> serviceIds = convenientMerchantDTO.getServiceIds();
                 serviceIds.forEach(serviceId -> {
                     ConvenientServiceCategoryDO convenientServiceCategoryDO = convenientServiceCategoryDAO.selectById(serviceId);
-                    convenientServiceCategoryDAO.createMerchantServiceRelation(merchantId, serviceId,
+                    convenientServiceCategoryDAO.createMerchantServiceRelation(Snowflake.getId(),merchantId, serviceId,
                             convenientServiceCategoryDO.getName(), convenientMerchantDTO.getCreatedBy());
                 });
             }
@@ -102,7 +120,7 @@
         //添加user
         R addUserResult = userService.addConvenientMerchantUser(convenientMerchantDTO);
         if (R.isOk(addUserResult)) {
-            Long merchantUserId = ((Integer) addUserResult.getData()).longValue();
+            Long merchantUserId =Long.parseLong(addUserResult.getData().toString());
             convenientMerchantDO.setUserId(merchantUserId);
             this.baseMapper.updateById(convenientMerchantDO);
         } else {
@@ -122,7 +140,12 @@
         Long communityId = convenientMerchantDTO.getCommunityId();
         if (nonNull(communityId)) {
             ComActDO comActDO = comActDAO.selectById(communityId);
-            convenientMerchantDO.setCommunityName(comActDO.getName());
+            if(comActDO!=null){
+                convenientMerchantDO.setCommunityName(comActDO.getName());
+            }
+            else {
+                convenientMerchantDO.setCommunityName("西区社区");
+            }
         }
         String account = convenientMerchantDTO.getAccount();
         if (isNotBlank(account)) {
@@ -137,7 +160,7 @@
             convenientServiceCategoryDAO.deleteMerchantServiceRelation(merchantId);
             serviceIds.forEach(serviceId -> {
                 ConvenientServiceCategoryDO convenientServiceCategoryDO = convenientServiceCategoryDAO.selectById(serviceId);
-                convenientServiceCategoryDAO.createMerchantServiceRelation(merchantId, serviceId,
+                convenientServiceCategoryDAO.createMerchantServiceRelation(Snowflake.getId(),merchantId, serviceId,
                         convenientServiceCategoryDO.getName(), convenientMerchantDTO.getCreatedBy());
             });
         }
@@ -252,12 +275,10 @@
         SimpleDateFormat dayFormat = new SimpleDateFormat("yyyy-MM-dd");
         String moth = mothFormat.format(nowDate);
         String day = dayFormat.format(nowDate);
-        int consultationCount = convenientConsultationStatisticsDAO.selectCount(new QueryWrapper<ConvenientConsultationStatisticsDO>()
-                .lambda().eq(ConvenientConsultationStatisticsDO::getMerchantId, merchantId));
+        int consultationCount = convenientConsultationStatisticsDAO.selectTotalConsultationVolume(merchantId);
         int monthConsultationVolume = convenientConsultationStatisticsDAO.selectMonthConsultationVolume(merchantId, moth);
         int dayConsultationVolume = convenientConsultationStatisticsDAO.selectDayConsultationVolume(merchantId, day);
-        Integer viewCount = convenientViewStatisticsDAO.selectCount(new QueryWrapper<ConvenientViewStatisticsDO>()
-                .lambda().eq(ConvenientViewStatisticsDO::getMerchantId, merchantId));
+        Integer viewCount = convenientViewStatisticsDAO.selectTotalViewNum(merchantId);
         int monthViewNum = convenientViewStatisticsDAO.selectMonthViewNum(merchantId, moth);
         int dayViewNum = convenientViewStatisticsDAO.selectDayViewNum(merchantId, day);
         convenientMerchantVO.setConsultationVolume(consultationCount);
@@ -277,7 +298,27 @@
         Page page = new Page<>();
         page.setSize(pagePopularMerchantDTO.getPageSize());
         page.setCurrent(pagePopularMerchantDTO.getPageNum());
-        IPage<ConvenientMerchantVO> merchantVOList = this.baseMapper.getPopularMerchants(page, pagePopularMerchantDTO.getCommunityId(), currentMon);
+        IPage<ConvenientMerchantVO> merchantVOList = this.baseMapper.getPopularMerchants(page, pagePopularMerchantDTO.getCommunityId(), currentMon,pagePopularMerchantDTO.getAreaCode());
+        if(pagePopularMerchantDTO.getPageNum().equals(1L)){
+            //金沙江默认第一个
+            List<ConvenientMerchantVO> merchantVOS=new ArrayList<>();
+            ConvenientMerchantVO merchantVO=new ConvenientMerchantVO();
+            merchantVO.setName("金沙江智慧物流商贸城");
+            merchantVO.setLogo("https://www.psciio.com//idcard/0694d975ed4d4c49bcfb728a678518f2.jpg");
+            merchantVO.setIntroduction("农产直销、综合商贸、冷链储运、中央厨房、检验检疫、农博会展、总部商务、综合服务。");
+            merchantVO.setServiceScope("");
+            merchantVO.setConsultationVolume(0);
+            merchantVO.setMonthConsultationVolume(0);
+            merchantVOS.add(merchantVO);
+            //第一页默认把犇师傅维修中心加载到第一个
+            List<ConvenientMerchantVO> merchantList = this.baseMapper.selectMerchantByName(pagePopularMerchantDTO.getCommunityId(), currentMon);
+            if(merchantList != null && merchantList.size() > 0){
+                merchantVOS.addAll(merchantList);
+                merchantVOS.addAll(merchantVOList.getRecords());
+                merchantVOList.setRecords(merchantVOS);
+            }
+
+        }
         return R.ok(merchantVOList);
     }
 
@@ -412,4 +453,20 @@
         this.baseMapper.batchUpdateMerchantViewNum(viewVOList);
         return R.ok();
     }
+
+    /**
+     * check商家/店铺是否有效
+     * @param userId
+     * @return
+     */
+    @Override
+    public Boolean checkStoreIsValid(Long userId) {
+        R<LoginUserInfoVO> loginUserInfo = userService.getUserInfoByUserId(userId.toString());
+        LoginUserInfoVO loginUserInfoVO =
+                JSONObject.parseObject(JSONObject.toJSONString(loginUserInfo.getData()), LoginUserInfoVO.class);
+        if (isNull(loginUserInfoVO) || !loginUserInfoVO.getType().equals(10) || loginUserInfoVO.getStatus() != 1) {
+            return false;
+        }
+        return true;
+    }
 }

--
Gitblit v1.7.1