bug
jiangqs
2023-08-18 0b413f3fd67110cfd7752f27eb171bde06edc4b4
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -6,6 +6,8 @@
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.github.binarywang.wxpay.bean.ecommerce.ApplymentsResult;
import com.github.binarywang.wxpay.bean.ecommerce.ApplymentsStatusResult;
import com.github.binarywang.wxpay.exception.WxPayException;
import com.ruoyi.common.core.constant.CacheConstants;
import com.ruoyi.common.core.exception.ServiceException;
@@ -19,6 +21,7 @@
import com.ruoyi.shop.domain.pojo.shop.*;
import com.ruoyi.shop.domain.pojo.task.ShopFile;
import com.ruoyi.shop.domain.vo.*;
import com.ruoyi.shop.enums.WxApplyMentStateEnum;
import com.ruoyi.shop.mapper.shop.ShopMapper;
import com.ruoyi.shop.service.shop.*;
import com.ruoyi.shop.service.task.MemberTaskService;
@@ -168,6 +171,9 @@
        //验证关联账号唯一
        String relUserIds = mgtEditShopDto.getRelUserIds();
        if(StringUtils.isNotBlank(relUserIds)) {
            if(relUserIds.startsWith(",")){
                relUserIds = relUserIds.substring(1);
            }
            String[] relUserIdArray = relUserIds.split(",");
            ShopRelUser shopRelUser;
            Long userId;
@@ -347,6 +353,8 @@
        shopAuthentication.setAuthId(authId);
        shopAuthentication.setDelFlag(0);
        shopAuthentication.setShopId(shop.getShopId());
        shopAuthentication.setAuditStatus(0);
        shopAuthentication.setSignState(1);
        shopAuthenticationService.save(shopAuthentication);
        //商户分成信息初始化
        ShopProportion shopProportion = new ShopProportion();
@@ -588,13 +596,19 @@
            }
            mgtShopInfoVo.setShopTagIds(shopTagJs.toString());
        }
        //归属员工
        if(mgtShopInfoVo.getBelongUserId()!=null){
            SysUser sysUser = sysUserService.getSysUser(mgtShopInfoVo.getBelongUserId()).getData();
            mgtShopInfoVo.setBelongUserName(sysUser.getNickName());
            if(sysUser!=null){
                mgtShopInfoVo.setBelongUserName(sysUser.getNickName());
            }
        }
        //归属商户
        if(mgtShopInfoVo.getBelongShopId()!=null){
            Shop belongShop = this.getByShopId(mgtShopInfoVo.getBelongShopId());
            mgtShopInfoVo.setBelongShopName(belongShop.getShopName());
            if(belongShop!=null){
                mgtShopInfoVo.setBelongShopName(belongShop.getShopName());
            }
        }
        //商户关联用户
        List<ShopRelUser> shopRelUserList = shopRelUserService.listByShopId(shopId);
@@ -725,6 +739,20 @@
            appMemberBindingDto.setBindingFlag(0);
            remoteMemberService.updateMemberBinding(appMemberBindingDto);
        }
        //商品图片
        List<ShopFile> shopFileList = shopFileService.listShopFileByShopId(shop.getShopId());
        String shopPicture = null;
        StringJoiner shopBanners = new StringJoiner(",");
        if(shopFileList!=null&&!shopFileList.isEmpty()){
            for(ShopFile shopFile : shopFileList){
                if(shopFile.getFileType()==1){
                    shopPicture = shopFile.getFileUrl();
                }else{
                    shopBanners.add(shopFile.getFileUrl());
                }
            }
        }
        appNearbyShopVo.setShopPicture(shopPicture);
        appNearbyShopVo.setShopId(shop.getShopId());
        appNearbyShopVo.setShopName(shop.getShopName());
        appNearbyShopVo.setShopAddress(shop.getShopAreaName()+shop.getShopAddress());
@@ -796,6 +824,11 @@
        }
        merHomeShopTotalVo.setShopId(shopId);
        Shop shop = this.getById(shopId);
        if(shop.getFrozenFlag()==1){
            String userKey = SecurityUtils.getUserKey();
            redisService.deleteObject(CacheConstants.LOGIN_TOKEN_KEY+userKey);
            throw new ServiceException("商户已被冻结",401);
        }
        merHomeShopTotalVo.setShopType(shop.getShopType());
        MerHomeShopTotalVo orderVo = remoteOrderService.getMerHomeTotal(merHomeShopTotalVo).getData();
        ShopTotal shopTotal = shopTotalService.getById(shopId);
@@ -970,13 +1003,22 @@
        Shop shop = this.getByShopId(shopAuthentication.getShopId());
        String applyNumber = IdUtils.simpleUUID();
        if(mgtShopAuthDto.getBlBusinessFoeverFlag()!=null&&mgtShopAuthDto.getBlBusinessFoeverFlag()==1){
            mgtShopAuthDto.setBlBusinessDeanline("长期");
            mgtShopAuthDto.setBlBusinessDeanline(mgtShopAuthDto.getBlBusinessStartTime()+",长期");
        }
        if(mgtShopAuthDto.getLpIcForeverFlag()!=null&&mgtShopAuthDto.getLpIcForeverFlag()==1){
            mgtShopAuthDto.setLpIcEndDate("长期");
        }
        BeanUtils.copyProperties(mgtShopAuthDto , shopAuthentication);
        shopAuthentication.setApplyNumber(applyNumber);
        ApplymentsResult applymentsResult;
        try {
            applymentsResult = wechatPayUtils.ecommerceApply(shopAuthentication,applyNumber,shop);
        } catch (Exception e) {
            log.debug("-----"+shop.getShopId()+":进件异常-----");
            throw new RuntimeException(e);
        }
        shopAuthentication.setAuditStatus(3);
        shopAuthenticationService.saveOrUpdate(shopAuthentication);
        //wechatPayUtils.ecommerceApply(shopAuthentication,applyNumber,shop);
    }
    /**
@@ -1100,6 +1142,11 @@
            shopAuthGetVo.setBlBusinessFoeverFlag(1);
        }else{
            shopAuthGetVo.setBlBusinessFoeverFlag(0);
        }
        if(shopAuthGetVo.getLpIcEndDate().equals("长期")){
            shopAuthGetVo.setLpIcForeverFlag(1);
        }else{
            shopAuthGetVo.setLpIcForeverFlag(0);
        }
        return shopAuthGetVo;
    }
@@ -1361,7 +1408,7 @@
     * @param applymentId
     */
    private void queryApplyStatusByApplymentId(String applymentId, Long shopId) {
        /*try {
        try {
            if (StringUtils.isNotBlank(applymentId)) {
                ApplymentsStatusResult result = wechatPayUtils.queryApplyStatusByApplymentId(applymentId);
                shopAuthenticationService.updateAuditStatusByApplymentId(applymentId, result);
@@ -1372,7 +1419,7 @@
            }
        } catch (WxPayException e) {
            e.printStackTrace();
        }*/
        }
    }
    /**
@@ -1389,4 +1436,28 @@
                .set(Shop::getAuthFlag, 1);
        this.update(updateWrapper);
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/8/10 22:53
     * @param cityCodes
     * @return  List<Long>
     */
    @Override
    public List<Long> listShopIdByCityCode(List<String> cityCodes){
        return shopMapper.listShopIdByCityCode(cityCodes);
    }
    @Override
    public void authShop(){
        ShopAuthentication shopAuthentication = shopAuthenticationService.getById("8c23fa423beb4673a0edc641a1ca0c23");
        Shop shop = this.getByShopId(shopAuthentication.getShopId());
        try {
            wechatPayUtils.ecommerceApply(shopAuthentication,shopAuthentication.getApplyNumber(),shop);
        } catch (Exception e) {
            throw new RuntimeException(e);
        }
    }
}