From b95715d5cdc806cbb15cc7f49c538e61f5ab5dc6 Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期四, 03 八月 2023 13:31:46 +0800
Subject: [PATCH] bug和二维码

---
 ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java |  132 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 130 insertions(+), 2 deletions(-)

diff --git a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
index eeeacc4..15d93e7 100644
--- a/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
+++ b/ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -5,11 +5,14 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.common.core.constant.CacheConstants;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.core.utils.StringUtils;
 import com.ruoyi.common.core.utils.bean.BeanUtils;
 import com.ruoyi.common.core.utils.uuid.IdUtils;
+import com.ruoyi.common.redis.service.RedisService;
+import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.shop.domain.dto.*;
 import com.ruoyi.shop.domain.pojo.shop.*;
 import com.ruoyi.shop.domain.pojo.task.ShopFile;
@@ -19,6 +22,7 @@
 import com.ruoyi.shop.service.task.MemberTaskService;
 import com.ruoyi.shop.service.task.ShopFileService;
 import com.ruoyi.shop.service.task.ShopTaskService;
+import com.ruoyi.shop.util.dto.*;
 import com.ruoyi.system.api.constant.AppErrorConstant;
 import com.ruoyi.system.api.domain.dto.*;
 import com.ruoyi.system.api.domain.poji.config.SysTag;
@@ -103,7 +107,13 @@
     private RemoteSysStaffService remoteSysStaffService;
 
     @Resource
+    private RemoteFileService remoteFileService;
+
+    @Resource
     private ShopTaskService shopTaskService;
+
+    @Resource
+    private RedisService redisService;
 
     /**
      * 获取商户详情
@@ -191,6 +201,12 @@
             //清空归属
             shopRelUserService.deleteByShopId(shop.getShopId());
             shopStaffService.clearShopStaffRelation(shop.getShopId());
+            if(!shop.getShopName().equals(mgtEditShopDto.getShopName())){
+                MgtMemberShopNameDto mgtMemberShopNameDto = new MgtMemberShopNameDto();
+                mgtMemberShopNameDto.setShopId(mgtEditShopDto.getShopId());
+                mgtMemberShopNameDto.setShopName(mgtEditShopDto.getShopName());
+                remoteMemberService.updateMemberShopName(mgtMemberShopNameDto);
+            }
         }else{
             if(shopSame!=null){
                 throw new ServiceException(AppErrorConstant.SHOP_DOUBLE);
@@ -287,6 +303,13 @@
         if(newShop){
             //生成商户关联记录
             initNewShop(shop,mgtEditShopDto.getUserId());
+            CodeGetDto codeGetDto = new CodeGetDto();
+            String url = "https://wxapp.hhhrt.cn/mini/activity?activityId="+shop.getShopId();
+            codeGetDto.setUrl(url);
+            codeGetDto.setFileName("shop-"+shop.getShopId());
+            String codeUrl = remoteFileService.getAppOrderTotal(codeGetDto).getData();
+            shop.setShopCode(codeUrl);
+            this.saveOrUpdate(shop);
         }
     }
 
@@ -407,6 +430,7 @@
             shop.setFrozenFlag(0);
         }
         shop.setShopStatus(handelShopStatus(shop.getFrozenFlag(),shop.getCooperativeFlag(),shop.getAuthFlag()));
+        this.saveOrUpdate(shop);
     }
 
     /**
@@ -555,6 +579,14 @@
                 shopTagJs.add(shopRelTag.getTagId().toString());
             }
             mgtShopInfoVo.setShopTagIds(shopTagJs.toString());
+        }
+        if(mgtShopInfoVo.getBelongUserId()!=null){
+            SysUser sysUser = sysUserService.getSysUser(mgtShopInfoVo.getBelongUserId()).getData();
+            mgtShopInfoVo.setBelongUserName(sysUser.getNickName());
+        }
+        if(mgtShopInfoVo.getBelongShopId()!=null){
+            Shop belongShop = this.getByShopId(mgtShopInfoVo.getBelongShopId());
+            mgtShopInfoVo.setBelongShopName(belongShop.getShopName());
         }
         //商户关联用户
         List<ShopRelUser> shopRelUserList = shopRelUserService.listByShopId(shopId);
@@ -739,17 +771,26 @@
     }
     /**
      * 获取商户端
-     * @param userId
+     * @param merBaseDto
      * @return
      */
     @Override
-    public MerHomeShopTotalVo getMerHomeTotal(Long userId){
+    public MerHomeShopTotalVo getMerHomeTotal(MerBaseDto merBaseDto){
+        Long userId = merBaseDto.getUserId();
         MerHomeShopTotalVo merHomeShopTotalVo = new MerHomeShopTotalVo();
         ShopRelUser shopRelUser = shopRelUserService.getByUserId(userId);
         Long shopId = shopRelUser.getShopId();
+        //如果商户变动刷新token
+        if(!shopId.equals(merBaseDto.getShopId())){
+            String userKey = SecurityUtils.getUserKey();
+            redisService.deleteObject(CacheConstants.LOGIN_TOKEN_KEY+userKey);
+            throw new ServiceException("登录状态已过期",401);
+        }
         merHomeShopTotalVo.setShopId(shopId);
         Shop shop = this.getById(shopId);
         merHomeShopTotalVo.setShopType(shop.getShopType());
+        merHomeShopTotalVo.setPlatformCouponFlag(shop.getPlatformCouponFlag());
+        merHomeShopTotalVo.setPlatformBirthdayFlag(shop.getPlatformBirthdayFlag());
         MerHomeShopTotalVo orderVo = remoteOrderService.getMerHomeTotal(merHomeShopTotalVo).getData();
         ShopTotal shopTotal = shopTotalService.getById(shopId);
         merHomeShopTotalVo.setShopId(shopId);
@@ -918,9 +959,96 @@
     @Override
     public void mgtShopAuth(MgtShopAuthDto mgtShopAuthDto){
         ShopAuthentication shopAuthentication = shopAuthenticationService.getById(mgtShopAuthDto.getAuthId());
+        Shop shop = this.getByShopId(shopAuthentication.getShopId());
+        String applyNumber = IdUtils.simpleUUID();
         BeanUtils.copyProperties(mgtShopAuthDto , shopAuthentication);
+        shopAuthentication.setApplyNumber(applyNumber);
         shopAuthentication.setAuditStatus(3);
         shopAuthenticationService.saveOrUpdate(shopAuthentication);
+        //生成提交类
+        SubmitInfo submitInfo = new SubmitInfo();
+        submitInfo.setOut_request_no(applyNumber);
+        if(shopAuthentication.getMainType()==2){
+            submitInfo.setOrganization_type("2");
+        }else{
+            submitInfo.setOrganization_type("4");
+        }
+        //营业执照
+        BusinessLicenseInfo business_license_info = new BusinessLicenseInfo();
+        business_license_info.setBusiness_license_copy(shopAuthentication.getBlImage());
+        business_license_info.setBusiness_license_number(shopAuthentication.getBlNumber());
+        business_license_info.setMerchant_name(shopAuthentication.getBlShopName());
+        business_license_info.setLegal_person(shopAuthentication.getBlCorporateName());
+        business_license_info.setCompany_address(shopAuthentication.getBlRegisteredAddress());
+        business_license_info.setBusiness_time(shopAuthentication.getBlBusinessDeanline());
+        submitInfo.setBusiness_license_info(business_license_info);
+        //法人证件
+        submitInfo.setId_doc_type("IDENTIFICATION_TYPE_MAINLAND_IDCARD");
+        IdCardInfo id_card_info = new IdCardInfo();
+        id_card_info.setId_card_copy(shopAuthentication.getLpIcFront());
+        id_card_info.setId_card_national(shopAuthentication.getLpIcBack());
+        id_card_info.setId_card_name(shopAuthentication.getLpCorporateName());
+        id_card_info.setId_card_number(shopAuthentication.getLpIdCard());
+        id_card_info.setId_card_valid_time_begin(shopAuthentication.getLpIcStartDate());
+        id_card_info.setId_card_valid_time(shopAuthentication.getLpIcEndDate());
+        submitInfo.setId_card_info(id_card_info);
+        //企业填写
+        if(shopAuthentication.getMainType()==2){
+            //受益人
+            if(shopAuthentication.getOwner()==1){
+                submitInfo.setOwner(true);
+            }else{
+                submitInfo.setOwner(false);
+                List<UboInfo> ubo_info_list = new ArrayList<>();
+                UboInfo uboInfo = new UboInfo();
+                uboInfo.setUbo_id_doc_type("IDENTIFICATION_TYPE_MAINLAND_IDCARD");
+                uboInfo.setUbo_id_doc_copy(shopAuthentication.getUboIcFront());
+                uboInfo.setUbo_id_doc_copy_back(shopAuthentication.getUboIcBack());
+                uboInfo.setUbo_id_doc_name(shopAuthentication.getUboName());
+                uboInfo.setUbo_id_doc_number(shopAuthentication.getUboIdCard());
+                uboInfo.setUbo_id_doc_address(shopAuthentication.getUboIcAddress());
+                uboInfo.setUbo_id_doc_period_begin(shopAuthentication.getUboIcStartDate());
+                uboInfo.setUbo_id_doc_period_end(shopAuthentication.getUboIcEndDate());
+                ubo_info_list.add(uboInfo);
+                submitInfo.setUbo_info_list(ubo_info_list);
+            }
+        }
+        //结算账户信息
+        AccountInfo accountInfo = new AccountInfo();
+        if(shopAuthentication.getSettlementAccountType().equals("1")){
+            accountInfo.setBank_account_type("74");
+        }else{
+            accountInfo.setBank_account_type("75");
+        }
+        accountInfo.setAccount_bank(shopAuthentication.getSaBank());
+        accountInfo.setAccount_name(shopAuthentication.getSaAccountName());
+        accountInfo.setBank_address_code(shopAuthentication.getSaBankCityCode());
+        accountInfo.setBank_name(shopAuthentication.getSaBankName());
+        accountInfo.setAccount_number(shopAuthentication.getSaNumber());
+        submitInfo.setAccount_info(accountInfo);
+        ContactInfo contactInfo = new ContactInfo();
+        contactInfo.setContact_type("65");
+        contactInfo.setContact_name(shopAuthentication.getLpCorporateName());
+        contactInfo.setContact_id_card_number(shopAuthentication.getLpIdCard());
+        contactInfo.setMobile_phone(shopAuthentication.getLpMobilePhone());
+        contactInfo.setContact_email(shopAuthentication.getLpContactEmail());
+        submitInfo.setContact_info(contactInfo);
+        //店铺信息
+        SalesSceneInfo salesSceneInfo = new SalesSceneInfo();
+        salesSceneInfo.setStore_name(shop.getShopName());
+        salesSceneInfo.setStore_url("");
+        salesSceneInfo.setStore_qr_code("");
+        submitInfo.setSales_scene_info(salesSceneInfo);
+        submitInfo.setMerchant_shortname(shop.getShopName());
+        submitInfo.setBusiness_addition_pics(shopAuthentication.getBaPics());
+        submitInfo.setBusiness_addition_desc(shopAuthentication.getBaDesc());
+        //提交审核
+        /*try {
+            WxShopUtils.ApplymentSubMch(submitInfo);
+        } catch (Exception e) {
+            throw new RuntimeException(e);
+        }*/
+
     }
 
     /**

--
Gitblit v1.7.1