44323
2024-01-26 aa6ffcaae173e0ba6372c90261b8a7d4b1fd6052
Merge branch '1.1' of http://120.76.84.145:10101/gitblit/r/java/HongRuiTang into 1.1
1个文件已添加
41个文件已修改
702 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/BoardMemberTotalDto.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteOrderFallbackFactory.java 11 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteUserFallbackFactory.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteOrderService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteUserService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtTotalController.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/RecommendCooperationMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/RecommendCooperationService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/RecommendCooperationServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/RecommendCooperationMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/dto/BoardMemberTotalDto.java
New file
@@ -0,0 +1,13 @@
package com.ruoyi.system.api.domain.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class BoardMemberTotalDto {
    @ApiModelProperty(value = "用户id列表")
    List<Long> userIds;
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteMemberFallbackFactory.java
@@ -89,10 +89,6 @@
                return R.fail("获取用户列表失败:" + throwable.getMessage());
            }
            @Override
            public R<MgtBulletinBoardVo> boardMemberTotal() {
                return null;
            }
            @Override
            public R<List<Long>> listUserIdByAge(MgtActivityAgeDto mgtActivityAgeDto) {
@@ -159,7 +155,10 @@
                return R.fail("获取用户id列表失败:" + throwable.getMessage());
            }
            @Override
            public R<MgtBulletinBoardVo> boardMemberTotal(BoardMemberTotalDto boardMemberTotalDto) {
                return R.fail(throwable.getMessage());
            }
        };
    }
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteOrderFallbackFactory.java
@@ -2,6 +2,7 @@
import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
import com.ruoyi.system.api.domain.dto.BoardMemberTotalDto;
import com.ruoyi.system.api.domain.dto.MerBaseDto;
import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
import com.ruoyi.system.api.domain.vo.*;
@@ -39,11 +40,6 @@
            @Override
            public R<MerHomeShopTotalVo> getMerHomeTotal(MerHomeShopTotalVo merHomeShopTotalVo) {
                return R.fail("获取商户端统计失败:" + throwable.getMessage());
            }
            @Override
            public R<MgtBulletinBoardVo> boardOrderTotal() {
                return null;
            }
            @Override
@@ -90,6 +86,11 @@
            public R<List<String>> getActivityOrderGoods(String activityId) {
                return R.fail("获取活动订单商品id失败:" + throwable.getMessage());
            }
            @Override
            public R<MgtBulletinBoardVo> boardOrderTotal(BoardMemberTotalDto boardMemberTotalDto) {
                return R.fail(throwable.getMessage());
            }
        };
    }
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteShopFallbackFactory.java
@@ -83,11 +83,6 @@
            }
            @Override
            public R<MgtBulletinBoardVo> boardShopTotal() {
                return null;
            }
            @Override
            public R<List<Long>> listShopIdByPlTotal(MgtBasePlatformDto mgtBasePlatformDto) {
                return R.fail("获取商户列表失败:" + throwable.getMessage());
            }
@@ -151,6 +146,16 @@
            public R<List<Shop>> listShopByIds(List<String> ids) {
                return R.fail("获取商户列表失败:" + throwable.getMessage());
            }
            @Override
            public R<MgtBulletinBoardVo> boardShopTotal(BoardMemberTotalDto boardMemberTotalDto) {
                return R.fail(throwable.getMessage());
            }
            @Override
            public List<Shop> getShopBySysUserIds(BoardMemberTotalDto boardMemberTotalDto) {
                return null;
            }
        };
    }
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteUserFallbackFactory.java
@@ -83,9 +83,18 @@
            @Override
            public R<List<Long>> getUserIdsByDept(Long userId) {
                return null;
                return R.fail("根据部门获取所有员工id信息获取失败:" + throwable.getMessage());
            }
            @Override
            public R<List<SysUser>> getUsersByDeptId(Long deptId) {
                return R.fail("根据部门id获取用户信息获取失败:" + throwable.getMessage());
            }
            @Override
            public List<Long> getScopeOfAuthorityUserId() {
                return null;
            }
        };
    }
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteMemberService.java
@@ -125,7 +125,7 @@
     * @date 2023/6/18 16:45
     */
    @PostMapping("/member/boardMemberTotal")
    public R<MgtBulletinBoardVo> boardMemberTotal();
    public R<MgtBulletinBoardVo> boardMemberTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto);
    /**
     * @param mgtActivityAgeDto
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteOrderService.java
@@ -3,6 +3,7 @@
import com.ruoyi.common.core.constant.ServiceNameConstants;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
import com.ruoyi.system.api.domain.dto.BoardMemberTotalDto;
import com.ruoyi.system.api.domain.dto.MerBaseDto;
import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
import com.ruoyi.system.api.domain.vo.*;
@@ -31,7 +32,7 @@
     * @date 2023/6/18 17:29
     */
    @PostMapping("/order/boardOrderTotal")
    public R<MgtBulletinBoardVo> boardOrderTotal();
    public R<MgtBulletinBoardVo> boardOrderTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto);
    /**
     * @description
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteShopService.java
@@ -85,7 +85,7 @@
     * @date 2023/6/18 16:45
     */
    @PostMapping("/shop/boardShopTotal")
    public R<MgtBulletinBoardVo> boardShopTotal();
    public R<MgtBulletinBoardVo> boardShopTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto);
    /**
     * @description 获取平台统计shopId
@@ -199,4 +199,13 @@
     */
    @PostMapping("/shop/listShopByIds")
    R<List<Shop>> listShopByIds(@RequestBody List<String> ids);
    /**
     * 根据员工id获取关联到门店
     * @param userIds
     * @return
     */
    @PostMapping("/shop/getShopBySysUserIds")
    List<Shop> getShopBySysUserIds(@RequestBody BoardMemberTotalDto boardMemberTotalDto);
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteUserService.java
@@ -126,4 +126,12 @@
     */
    @PostMapping("/user/getUsersByDeptId")
    R<List<SysUser>> getUsersByDeptId(@RequestBody Long deptId);
    /**
     * 获取当前用户权限范围内的员工id
     * @return
     */
    @PostMapping("/user/getScopeOfAuthorityUserId")
    List<Long> getScopeOfAuthorityUserId();
}
ruoyi-modules/ruoyi-goods/src/main/resources/bootstrap.yml
@@ -17,9 +17,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
      config:
@@ -27,9 +27,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
        # 配置文件格式
@@ -37,3 +37,8 @@
        # 共享配置
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
feign:
  compression:
    request:
      min-request-size: 20480
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/controller/console/MemberController.java
@@ -10,9 +10,11 @@
import com.ruoyi.system.api.domain.poji.member.BirthdayCard;
import com.ruoyi.system.api.domain.poji.member.Member;
import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord;
import com.ruoyi.system.api.domain.poji.shop.Shop;
import com.ruoyi.system.api.domain.vo.*;
import com.ruoyi.system.api.model.AppMiniLoginDto;
import com.ruoyi.system.api.model.AppMiniLoginVo;
import com.ruoyi.system.api.service.RemoteShopService;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@@ -21,6 +23,7 @@
import javax.annotation.Resource;
import java.util.List;
import java.util.stream.Collectors;
@RestController
@RequestMapping("/member")
@@ -37,6 +40,13 @@
    @Resource
    private BirthdayCardService birthdayCardService;
    @Resource
    private RemoteShopService remoteShopService;
    /**
    * @description: getMember
@@ -194,9 +204,11 @@
    * @date 2023/6/18 16:45
    */
    @PostMapping("/boardMemberTotal")
    public R<MgtBulletinBoardVo> boardMemberTotal()
    public R<MgtBulletinBoardVo> boardMemberTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto)
    {
        MgtBulletinBoardVo bulletinBoardVo = memberService.boardMemberTotal();
        List<Shop> shopList = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        List<Long> shopIds = shopList.stream().map(Shop::getShopId).collect(Collectors.toList());
        MgtBulletinBoardVo bulletinBoardVo = memberService.boardMemberTotal(shopIds);
        return R.ok(bulletinBoardVo);
    }
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/mapper/member/MemberMapper.java
@@ -121,7 +121,7 @@
    * @author jqs34
    * @date 2023/6/18 16:46
    */
    Integer memberTotal();
    Integer memberTotal(@Param("shopIds") List<Long> shopIds);
    /**
    * @description 今日新增用户数
@@ -130,7 +130,7 @@
    * @author jqs34
    * @date 2023/6/18 16:47
    */
    Integer memberToday();
    Integer memberToday(@Param("shopIds") List<Long> shopIds);
    /**
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -115,6 +115,12 @@
    @Resource
    private RemoteOrderService remoteOrderService;
    @Resource
    private RemoteUserService remoteUserService;
    /**
     * @description: TODO
     * @author jqs34
@@ -1275,10 +1281,10 @@
     * @date 2023/6/18 16:45
     */
    @Override
    public MgtBulletinBoardVo boardMemberTotal() {
    public MgtBulletinBoardVo boardMemberTotal(List<Long> shopIds) {
        MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo();
        mgtBulletinBoardVo.setMemberTotal(memberMapper.memberTotal());
        mgtBulletinBoardVo.setMemberToday(memberMapper.memberToday());
        mgtBulletinBoardVo.setMemberTotal(memberMapper.memberTotal(shopIds));
        mgtBulletinBoardVo.setMemberToday(memberMapper.memberToday(shopIds));
        return mgtBulletinBoardVo;
    }
@@ -1470,13 +1476,14 @@
        plTotalMemberTotalVo.setShopMemberRankList(Lists.newArrayList());
        Date nowDay = DateUtils.getNowDate();
        //如果区域代码不为null获取对应的商户id
        List<Long> list = new ArrayList<>();
        if (StringUtils.isNotBlank(mgtBasePlatformDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopCityCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopAreaCode())) {
            MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto();
            mgtShopIdByCodeDto.setShopProvinceCode(mgtBasePlatformDto.getShopProvinceCode());
            mgtShopIdByCodeDto.setShopCityCode(mgtBasePlatformDto.getShopCityCode());
            mgtShopIdByCodeDto.setShopAreaCode(mgtBasePlatformDto.getShopAreaCode());
            MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData();
            List<Long> list = new ArrayList<>();
            if (StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())) {
                list = Arrays.stream(mgtShopIdByCodeVo.getShopIds().split(","))
                        .map(Long::valueOf)
@@ -1484,8 +1491,17 @@
            }else{
                return plTotalMemberTotalVo;
            }
            mgtBasePlatformDto.setShopIdList(list);
        }
        //数据权限
        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userId);
        List<Shop> shops = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
        list.addAll(collect);
        mgtBasePlatformDto.setShopIdList(list);
        //获取基础统计
        MgtPlTotalMemberTotalVo plTotalMemberTotalByDayVo = memberMapper.getPlTotalMemberTotal(mgtBasePlatformDto);
        plTotalMemberTotalVo.setMemberTotal(plTotalMemberTotalByDayVo.getMemberTotal());
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/member/MemberService.java
@@ -220,7 +220,7 @@
    * @author jqs34
    * @date 2023/6/18 16:47
    */
    MgtBulletinBoardVo boardMemberTotal();
    MgtBulletinBoardVo boardMemberTotal(List<Long> shopIds);
    /**
     * @description  会员人数统计
ruoyi-modules/ruoyi-member/src/main/resources/bootstrap.yml
@@ -17,9 +17,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
      config:
@@ -27,9 +27,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
        # 配置文件格式
@@ -37,4 +37,7 @@
        # 共享配置
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
feign:
  compression:
    request:
      min-request-size: 20480
ruoyi-modules/ruoyi-member/src/main/resources/mapper/member/MemberMapper.xml
@@ -366,10 +366,22 @@
    <select id="memberTotal" resultType="java.lang.Integer">
        SELECT COUNT(user_id) FROM t_member WHERE del_flag = 0
        <if test="null != shopIds and shopIds.size() > 0">
            and binding_flag = 1 and relation_shop_id in
            <foreach collection="shopIds" separator="," index="index" item="item" open="(" close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="memberToday" resultType="java.lang.Integer">
        SELECT COUNT(user_id) FROM t_member WHERE del_flag = 0 AND Date(create_time) = CURDATE()
        <if test="null != shopIds and shopIds.size() > 0">
            and binding_flag = 1 and relation_shop_id in
            <foreach collection="shopIds" separator="," index="index" item="item" open="(" close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="getTotalMemberTotal" resultType="com.ruoyi.member.domain.vo.MgtTotalMemberTotalVo">
@@ -569,11 +581,11 @@
    <select id="getPlTotalMemberTotal" resultType="com.ruoyi.system.api.domain.vo.MgtPlTotalMemberTotalVo">
        SELECT
        COUNT(*) AS memberTotal,
        COUNT(CASE WHEN DATE(binding_time) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) THEN 1 END) AS memberYesterday,
        COUNT(CASE WHEN binding_time BETWEEN DATE_SUB(CURDATE(), INTERVAL 6 DAY) AND DATE_SUB(CURDATE(), INTERVAL -1 DAY) THEN 1 END) AS memberSeven
        FROM t_member WHERE del_flag = 0 AND binding_flag = 1
        COUNT(CASE WHEN DATE(create_time) = DATE_SUB(CURDATE(), INTERVAL 1 DAY) THEN 1 END) AS memberYesterday,
        COUNT(CASE WHEN create_time BETWEEN DATE_SUB(CURDATE(), INTERVAL 6 DAY) AND DATE_SUB(CURDATE(), INTERVAL -1 DAY) THEN 1 END) AS memberSeven
        FROM t_member WHERE del_flag = 0
        <if test="param.shopIdList != null and param.shopIdList.size() > 0">
            AND relation_shop_id IN
            AND binding_flag = 1 AND relation_shop_id IN
            <foreach collection="param.shopIdList" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/concole/OrderController.java
@@ -6,6 +6,7 @@
import com.ruoyi.order.service.order.ConsumerGoodsService;
import com.ruoyi.order.service.order.OrderService;
import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
import com.ruoyi.system.api.domain.dto.BoardMemberTotalDto;
import com.ruoyi.system.api.domain.dto.MerBaseDto;
import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto;
import com.ruoyi.system.api.domain.vo.*;
@@ -55,9 +56,9 @@
    * @date 2023/6/18 17:30
    */
    @PostMapping("/boardOrderTotal")
    public R<MgtBulletinBoardVo> boardOrderTotal(){
    public R<MgtBulletinBoardVo> boardOrderTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto){
        MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo();
        MgtBulletinBoardVo mgtBulletinBoardVoOrder = orderService.boardOrderTotal();
        MgtBulletinBoardVo mgtBulletinBoardVoOrder = orderService.boardOrderTotal(boardMemberTotalDto.getUserIds());
        mgtBulletinBoardVo.setSalesTotal(mgtBulletinBoardVoOrder.getSalesTotal());
        mgtBulletinBoardVo.setUnUseOrderTotal(mgtBulletinBoardVoOrder.getUnUseOrderTotal());
        mgtBulletinBoardVo.setActivityOrderTotal(mgtBulletinBoardVoOrder.getActivityOrderTotal());
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtOrderController.java
@@ -118,13 +118,6 @@
        Long userId = SecurityUtils.getUserId();
        mgtShopOrderPageDto.setUserId(userId);
        Page<MgtActivityOrderPageVo> page = new Page<>();
//        if(mgtShopOrderPageDto.getPageSize() > 5000){
//            page.setSize(5000);
//            page.setCurrent(1);
//        }else{
//            page.setSize(mgtShopOrderPageDto.getPageSize());
//            page.setCurrent(mgtShopOrderPageDto.getPageNum());
//        }
        page.setSize(Integer.MAX_VALUE);
        page.setCurrent(1);
        List<MgtActivityOrderPageVo> mgtActivityOrderPageVos = orderService.pageMgtActivityOrder(page,mgtShopOrderPageDto);
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtTotalController.java
@@ -129,12 +129,5 @@
        return R.ok(totalActivityTotal);
    }
    /*@RequestMapping(value = "/getPlTotalActivityAgeRank", method = RequestMethod.POST)
    @ApiOperation(value = "获取平台商户活动年龄分布")
    public R<MgtPlTotalActivityTotalVo> getPlTotalActivityAgeRank(@RequestBody MgtPlActivityAgeDto mgtPlActivityAgeDto) {
        Long userId = SecurityUtils.getUserId();
        mgtPlActivityAgeDto.setUserId(userId);
        MgtPlTotalActivityTotalVo plTotalActivityTotalVo = orderService.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        return R.ok(plTotalActivityTotalVo);
    }*/
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
@@ -141,7 +141,7 @@
     * @author jqs34
     * @date 2023/6/18 17:20
     */
    MgtBulletinBoardVo boardOrderTotal();
    MgtBulletinBoardVo boardOrderTotal(@Param("shopIds") List<Long> shopIds);
    /**
     * @description  活动人数统计
@@ -150,7 +150,7 @@
     * @param
     * @return  Integer
     */
    Integer activityUserTotal();
    Integer activityUserTotal(@Param("shopIds") List<Long> shopIds);
    /**
    * @description getTotalOrderTotalOrderFrom
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -3029,6 +3029,24 @@
                mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
            }
        }
        //数据权限
        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userId);
        List<Shop> shops = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        if (!shops.isEmpty()) {
            List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
            String join = collect.stream().map(Object::toString).collect(Collectors.joining(","));
            String shopIds = mgtShopOrderPageDto.getShopIds();
            if(StringUtils.isNotEmpty(shopIds)){
                shopIds = shopIds + "," + join;
            }else{
                shopIds = join;
            }
            mgtShopOrderPageDto.setShopIds(shopIds);
        }
        // 从数据库中获取活动订单列表
        List<MgtActivityOrderPageVo> activityOrderPageVoList = orderMapper.pageMgtActivityOrder(page, mgtShopOrderPageDto);
        // 如果列表不为空
@@ -3108,6 +3126,22 @@
                mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
            }
        }
        //数据权限
        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userId);
        List<Shop> shops = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        if (!shops.isEmpty()) {
            List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
            String join = collect.stream().map(Object::toString).collect(Collectors.joining(","));
            String shopIds = mgtShopOrderPageDto.getShopIds();
            if(StringUtils.isNotEmpty(shopIds)){
                shopIds = shopIds + "," + join;
            }else{
                shopIds = join;
            }
            mgtShopOrderPageDto.setShopIds(shopIds);
        }
        MgtOrderTotal mgtOrderTotal = new MgtOrderTotal();
        MgtOrderTotal mgtOrderTotalFirst = orderMapper.totalOrderFirst(mgtShopOrderPageDto);
        MgtOrderTotal mgtOrderTotalSecond = orderMapper.totalOrderSecond(mgtShopOrderPageDto);
@@ -3154,6 +3188,22 @@
            if (StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())) {
                mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
            }
        }
        //数据权限
        List<Long> userId = remoteUserService.getScopeOfAuthorityUserId();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userId);
        List<Shop> shops = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        if (!shops.isEmpty()) {
            List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList());
            String join = collect.stream().map(Object::toString).collect(Collectors.joining(","));
            String shopIds = mgtShopOrderPageDto.getShopIds();
            if(StringUtils.isNotEmpty(shopIds)){
                shopIds = shopIds + "," + join;
            }else{
                shopIds = join;
            }
            mgtShopOrderPageDto.setShopIds(shopIds);
        }
        List<MgtShopOrderPageVo> shopOrderPageVoList = orderMapper.pageMgtShopOrder(page, mgtShopOrderPageDto);
        // 如果列表不为空
@@ -3315,9 +3365,13 @@
     * @date 2023/6/18 17:20
     */
    @Override
    public MgtBulletinBoardVo boardOrderTotal() {
        MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal();
        Integer activityUserTotal = orderMapper.activityUserTotal();
    public MgtBulletinBoardVo boardOrderTotal(List<Long> userIds) {
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userIds);
        List<Shop> shopList = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        List<Long> collect = shopList.stream().map(Shop::getShopId).collect(Collectors.toList());
        MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal(collect);
        Integer activityUserTotal = orderMapper.activityUserTotal(collect);
        mgtBulletinBoardVo.setActivityUserTotal(activityUserTotal);
        return mgtBulletinBoardVo;
    }
@@ -3824,6 +3878,19 @@
                mgtBasePlatformDto.setUserIdList(userIdList);
            }
        }
        //数据权限
        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
        if(null != userIds){
            List<Long> userIdList = mgtBasePlatformDto.getUserIdList();
            if(null != userIdList){
                userIdList.addAll(userIds);
            }else{
                userIdList = userIds;
            }
            mgtBasePlatformDto.setUserIdList(userIdList);
        }
        List<Long> shopIdList = new ArrayList<>();
        if(mgtBasePlatformDto.getShopId()!=null){
            shopIdList.add(mgtBasePlatformDto.getShopId());
@@ -3925,6 +3992,17 @@
                }
            }
        }
        //数据权限
        List<Long> userIdList = mgtBasePlatformDto.getUserIdList();
        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
        if(null != userIdList){
            userIdList.addAll(userIds);
        }else{
            userIdList = userIds;
        }
        mgtBasePlatformDto.setUserIdList(userIdList);
        MgtTotalOrderTotalVo mgtTotalOrderTotalVo = new MgtTotalOrderTotalVo();
        mgtTotalOrderTotalVo.setOrderTotal(0);
        mgtTotalOrderTotalVo.setOnlineTotal(0);
@@ -4153,6 +4231,7 @@
        if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom()==2){
            return totalActivityTotalVo;
        }
        List<Long> shopIdList = remoteShopService.listShopIdByPlTotal(mgtBasePlatformDto).getData();
        if (StringUtils.isNotBlank(mgtBasePlatformDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopCityCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopAreaCode())) {
            if(shopIdList==null||shopIdList.isEmpty()){
@@ -4163,7 +4242,20 @@
            shopIdList = new ArrayList<>();
            shopIdList.add(mgtBasePlatformDto.getShopId());
        }
        //数据权限
        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
        if(null != userIds){
            BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
            boardMemberTotalDto.setUserIds(userIds);
            List<Shop> shopList = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
            List<Long> collect = shopList.stream().map(Shop::getShopId).collect(Collectors.toList());
            if(null != shopIdList){
                shopIdList.addAll(collect);
            }else{
                shopIdList = collect;
            }
        mgtBasePlatformDto.setShopIdList(shopIdList);
        }
        //获取基础统计
        MgtPlTotalActivityTotalVo mgtTotalActivityTotalVo = orderMapper.getPlTotalActivityTotal(mgtBasePlatformDto);
        totalActivityTotalVo.setOrderTotal(mgtTotalActivityTotalVo.getOrderTotal());
@@ -4340,52 +4432,6 @@
            totalActivityTotalVo.setOrderTotalValue(orderTotalValue);
            totalActivityTotalVo.setOrderMoneyValue(orderMoneyValue);
        }
        //参与人数  2023-09-06 另开接口
        /*List<MgtMapIntTotalVo> joinList = orderMapper.getMgtActivityMemberTotal(mgtBasePlatformDto);
        // 将查询结果转为Map
        Map<String, Integer> mgtMapIntTotalVoMap = new HashMap<>();
        if (joinList != null && !joinList.isEmpty()) {
            mgtMapIntTotalVoMap = joinList.stream()
                    .collect(Collectors.toMap(MgtMapIntTotalVo::getMapKey, MgtMapIntTotalVo::getMapValue));
        }
        // 获取日期范围
        List<String> dateList = getDateRange(mgtBasePlatformDto.getStartDate(), mgtBasePlatformDto.getEndDate());
        int size = dateList.size();
        // 创建日期和成员总数的数组
        String[] joinMemberTotalKey = new String[size];
        Integer[] joinMemberTotalValue = new Integer[size];
        // 遍历日期列表,设置日期和成员总数的数组
        String str;
        Integer value;
        for (int i = 0; i < size; i++) {
            str = dateList.get(i);
            joinMemberTotalKey[i] = str;
            value = mgtMapIntTotalVoMap.get(str);
            joinMemberTotalValue[i] = (value != null) ? value : 0;
        }
        totalActivityTotalVo.setJoinMemberTotalKey(joinMemberTotalKey);
        totalActivityTotalVo.setJoinMemberTotalValue(joinMemberTotalValue);
        //获客人数
        List<MgtMapIntTotalVo> getList = orderMapper.getMgtActivityGetMemberTotal(mgtBasePlatformDto);
        // 将查询结果转为Map
        Map<String, Integer> getMemberMap = new HashMap<>();
        if (getList != null && !getList.isEmpty()) {
            getMemberMap = getList.stream()
                    .collect(Collectors.toMap(MgtMapIntTotalVo::getMapKey, MgtMapIntTotalVo::getMapValue));
        }
        // 创建日期和成员总数的数组
        String[] getMemberTotalKey = new String[size];
        Integer[] getMemberTotalValue = new Integer[size];
        // 遍历日期列表,设置日期和成员总数的数组
        for (int i = 0; i < size; i++) {
            str = dateList.get(i);
            getMemberTotalKey[i] = str;
            value = getMemberMap.get(str);
            getMemberTotalValue[i] = (value != null) ? value : 0;
        }
        totalActivityTotalVo.setGetMemberTotalKey(getMemberTotalKey);
        totalActivityTotalVo.setGetMemberTotalValue(getMemberTotalValue);*/
        return totalActivityTotalVo;
    }
@@ -4401,24 +4447,6 @@
        if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom()==2){
            return totalActivityTotalVo;
        }
        /*if(mgtBasePlatformDto.getActivityType()!=null&&mgtBasePlatformDto.getActivityType()!=1){
            return new MgtPlTotalActivityTotalVo();
        }*/
        //获取需要关联的用户id集合
        /*if (mgtBasePlatformDto.getDeptId() != null) {
            List<Long> userIdList = new ArrayList<>();
            if (mgtBasePlatformDto.getUserId() != null) {
                userIdList.add(mgtBasePlatformDto.getUserId());
            } else {
                MgtUserIdByDept mgtUserIdByDept = new MgtUserIdByDept();
                mgtUserIdByDept.setDeptId(mgtBasePlatformDto.getUserId());
                mgtUserIdByDept = remoteConfigService.getUserIdByDept(mgtUserIdByDept).getData();
                userIdList = mgtUserIdByDept.getUserIdList();
            }
            if (!userIdList.isEmpty()) {
                mgtBasePlatformDto.setUserIdList(userIdList);
            }
        }*/
        List<Long> shopIdList = remoteShopService.listShopIdByPlTotal(mgtBasePlatformDto).getData();
        log.info("shopIdList1-----"+shopIdList.toString());
@@ -4433,6 +4461,17 @@
        if(mgtBasePlatformDto.getShopId()!=null){
            shopIdList = new ArrayList<>();
            shopIdList.add(mgtBasePlatformDto.getShopId());
        }
        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userIds);
        List<Shop> shopList = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        List<Long> collect = shopList.stream().map(Shop::getShopId).collect(Collectors.toList());
        if(null != shopIdList){
            shopIdList.addAll(collect);
        }else{
            shopIdList = collect;
        }
        mgtBasePlatformDto.setShopIdList(shopIdList);
        if(mgtBasePlatformDto.getAgeType()!=null){
@@ -4486,24 +4525,6 @@
        if(mgtBasePlatformDto.getActivityFrom()!=null&&mgtBasePlatformDto.getActivityFrom()==2){
            return totalActivityTotalVo;
        }
        /*if(mgtBasePlatformDto.getActivityType()!=null&&mgtBasePlatformDto.getActivityType()!=1){
            return new MgtPlTotalActivityTotalVo();
        }*/
        //获取需要关联的用户id集合
        /*if (mgtBasePlatformDto.getDeptId() != null) {
            List<Long> userIdList = new ArrayList<>();
            if (mgtBasePlatformDto.getUserId() != null) {
                userIdList.add(mgtBasePlatformDto.getUserId());
            } else {
                MgtUserIdByDept mgtUserIdByDept = new MgtUserIdByDept();
                mgtUserIdByDept.setDeptId(mgtBasePlatformDto.getUserId());
                mgtUserIdByDept = remoteConfigService.getUserIdByDept(mgtUserIdByDept).getData();
                userIdList = mgtUserIdByDept.getUserIdList();
            }
            if (!userIdList.isEmpty()) {
                mgtBasePlatformDto.setUserIdList(userIdList);
            }
        }*/
        List<Long> shopIdList = remoteShopService.listShopIdByPlTotal(mgtBasePlatformDto).getData();
        if (StringUtils.isNotBlank(mgtBasePlatformDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopCityCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopAreaCode())) {
            if(shopIdList==null||shopIdList.isEmpty()){
@@ -4514,6 +4535,17 @@
            shopIdList = new ArrayList<>();
            shopIdList.add(mgtBasePlatformDto.getShopId());
        }
        //数据权限
        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userIds);
        List<Shop> shopList = remoteShopService.getShopBySysUserIds(boardMemberTotalDto);
        List<Long> collect = shopList.stream().map(Shop::getShopId).collect(Collectors.toList());
        if(null != shopIdList){
            shopIdList.addAll(collect);
        }else{
            shopIdList = collect;
        }
        mgtBasePlatformDto.setShopIdList(shopIdList);
        if(mgtBasePlatformDto.getAgeType()!=null){
            List<Long> userIdList = remoteMemberService.listUserIdByAgeType(mgtBasePlatformDto.getAgeType()).getData();
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java
@@ -235,7 +235,7 @@
    * @author jqs34
    * @date 2023/6/18 17:20
    */
    MgtBulletinBoardVo boardOrderTotal();
    MgtBulletinBoardVo boardOrderTotal(List<Long> userIds);
    /**
    * @description 获取商户订单统计
ruoyi-modules/ruoyi-order/src/main/resources/bootstrap.yml
@@ -17,9 +17,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
      config:
@@ -27,9 +27,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
        # 配置文件格式
@@ -53,3 +53,7 @@
    callbackPath: https://wxapp.hhhrt.cn
feign:
  compression:
    request:
      min-request-size: 20480
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
@@ -527,7 +527,7 @@
            toc.create_time createTime,
            tog.goods_price activityPrice,
            toc.pay_money payMoney,
            CASE WHEN toc.unbinding_flag = 0 THEN toc.shop_id WHEN toc.unbinding_flag = 1 AND toc.order_from = 1 THEN toc.shop_id WHEN toc.order_status = 3 THEN toc.shop_id ELSE NULL END shopId,
            CASE WHEN toc.order_status = 3 THEN toc.shop_id ELSE NULL END shopId,
            toc.use_time verifyTime
        FROM t_order toc
        INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id
@@ -542,7 +542,7 @@
            AND toc.shop_id = #{param.shopId} AND (toc.unbinding_flag = 0 OR (toc.unbinding_flag = 1 AND toc.order_from = 1) OR (toc.unbinding_flag = 1 AND toc.order_from = 2 AND toc.order_status = 3))
        </if>
        <if test="param.shopIds != null and param.shopIds != ''">
            AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
            and toc.order_status = 3 AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
        </if>
        <if test="param.keyword != null and param.keyword != ''">
            AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR toc.activity_name LIKE CONCAT('%',#{param.keyword},'%') OR FIND_IN_SET(toc.user_id, #{param.userIds}) &gt; 0)
@@ -559,9 +559,9 @@
    <select id="totalOrderFirst" resultType="com.ruoyi.order.domain.vo.MgtOrderTotal">
        SELECT
        COUNT(temp.order_id) orderTotal,
        IFNULL(SUM(temp.change_receivable_money),0) orderMoneyTotal
        IFNULL(SUM(CASE WHEN temp.change_receivable_money = 0 THEN temp.receivable_money ELSE temp.change_receivable_money END),0) orderMoneyTotal
        FROM
        (SELECT toc.order_id,toc.change_receivable_money,toc.pay_money
        (SELECT toc.order_id,toc.change_receivable_money,toc.receivable_money,toc.pay_money
        FROM t_order toc
        INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id
        WHERE toc.del_flag = 0 AND (toc.order_from = 1 OR toc.order_from = 3)
@@ -578,7 +578,7 @@
            AND toc.shop_id = #{param.shopId} AND (toc.unbinding_flag = 0 OR (toc.unbinding_flag = 1 AND toc.order_from = 1) OR (toc.unbinding_flag = 1 AND toc.order_from = 2 AND toc.order_status = 3))
        </if>
        <if test="param.shopIds != null and param.shopIds != ''">
            AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
            and toc.order_status = 3 AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
        </if>
        <if test="param.keyword != null and param.keyword != ''">
            AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR toc.activity_name LIKE CONCAT('%',#{param.keyword},'%') OR FIND_IN_SET(toc.user_id, #{param.userIds}) &gt; 0)
@@ -595,11 +595,11 @@
    <select id="totalOrderSecond" resultType="com.ruoyi.order.domain.vo.MgtOrderTotal">
        SELECT
        COUNT(temp.order_id) shopOrderTotal,
        IFNULL(SUM(temp.change_receivable_money),0) shopOrderMoneyTotal,
        IFNULL(SUM(CASE WHEN temp.change_receivable_money = 0 THEN temp.receivable_money ELSE temp.change_receivable_money END),0) shopOrderMoneyTotal,
        IFNULL(SUM(temp.pay_money),0) shopPayMoneyTotal,
        IFNULL(SUM(CASE WHEN temp.change_receivable_money &gt; temp.pay_money THEN temp.change_receivable_money - temp.pay_money ELSE 0 END),0) shopUnPayMoneyTotal
        IFNULL(SUM(CASE WHEN (CASE WHEN temp.change_receivable_money = 0 THEN temp.receivable_money ELSE temp.change_receivable_money END) &gt; temp.pay_money THEN temp.change_receivable_money - temp.pay_money ELSE 0 END),0) shopUnPayMoneyTotal
        FROM
        (SELECT toc.order_id,toc.change_receivable_money,toc.pay_money
        (SELECT toc.order_id,toc.change_receivable_money,toc.receivable_money,toc.pay_money
        FROM t_order toc
        INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id
        WHERE toc.del_flag = 0 AND (toc.order_from = 1 OR toc.order_from = 3)
@@ -616,7 +616,7 @@
            AND toc.shop_id = #{param.shopId} AND (toc.unbinding_flag = 0 OR (toc.unbinding_flag = 1 AND toc.order_from = 1) OR (toc.unbinding_flag = 1 AND toc.order_from = 2 AND toc.order_status = 3))
        </if>
        <if test="param.shopIds != null and param.shopIds != ''">
            AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
            and toc.order_status = 3 AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
        </if>
        <if test="param.keyword != null and param.keyword != ''">
            AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR toc.activity_name LIKE CONCAT('%',#{param.keyword},'%') OR FIND_IN_SET(toc.user_id, #{param.userIds}) &gt; 0)
@@ -654,7 +654,7 @@
            AND toc.shop_id = #{param.shopId} AND (toc.unbinding_flag = 0 OR (toc.unbinding_flag = 1 AND toc.order_from = 1) OR (toc.unbinding_flag = 1 AND toc.order_from = 2 AND toc.order_status = 3))
        </if>
        <if test="param.shopIds != null and param.shopIds != ''">
            AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
            and toc.order_status = 3 AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
        </if>
        <if test="param.keyword != null and param.keyword != ''">
            AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR toc.activity_name LIKE CONCAT('%',#{param.keyword},'%') OR FIND_IN_SET(toc.user_id, #{param.userIds}) &gt; 0)
@@ -734,7 +734,7 @@
            AND toc.shop_id = #{param.shopId} AND (toc.unbinding_flag = 0 OR (toc.unbinding_flag = 1 AND toc.order_from = 1) OR (toc.unbinding_flag = 1 AND toc.order_from = 2 AND toc.order_status = 3))
        </if>
        <if test="param.shopIds != null and param.shopIds != ''">
            AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
            and toc.order_status = 3 AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) &gt; 0
        </if>
        <if test="param.keyword != null and param.keyword != ''">
            AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR toc.activity_name LIKE CONCAT('%',#{param.keyword},'%') OR FIND_IN_SET(toc.user_id, #{param.userIds}) &gt; 0)
@@ -756,6 +756,12 @@
            IFNULL(SUM(CASE WHEN order_from = 2 THEN 1 ELSE 0 END),0) activityOrderTotal
        FROM t_order
        WHERE del_flag = 0 AND order_status IN (2,3)
        <if test="null != shopIds and shopIds.size() > 0">
            and order_status = 3 and shop_id in
            <foreach collection="shopIds" index="index" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="activityUserTotal" resultType="java.lang.Integer">
@@ -763,6 +769,12 @@
            COUNT(DISTINCT user_id)
        FROM t_order
        WHERE del_flag = 0 AND order_from = 2 AND order_status IN (2,3)
        <if test="null != shopIds and shopIds.size() > 0">
            AND order_status = 3 and shop_id in
            <foreach collection="shopIds" index="index" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="getTotalOrderTotalOrderFrom" resultType="com.ruoyi.order.domain.vo.MgtTotalOrderTotalVo">
@@ -1304,12 +1316,12 @@
        COUNT(CASE WHEN order_status = 3 THEN order_id ELSE NULL END) orderTotal,
        IFNULL(SUM(CASE WHEN order_status = 3 AND pay_type = 1 THEN change_receivable_money WHEN order_status = 3 AND pay_type = 2 THEN change_receivable_money + online_pay_money ELSE 0 END),0) orderMoney,
        COUNT(DISTINCT user_id) orderJoinPerson
        FROM t_order WHERE del_flag = 0 AND order_from = 2 AND order_status = 3
        FROM t_order WHERE del_flag = 0 AND order_from = 2
        <if test="param.shopId != null and param.shopId != ''">
            AND shop_id = #{param.shopId}
            AND order_status = 3 AND shop_id = #{param.shopId}
        </if>
        <if test="param.shopIdList != null and param.shopIdList.size() > 0">
            AND shop_id IN
            AND order_status = 3 AND shop_id IN
            <foreach collection="param.shopIdList" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
@@ -1333,15 +1345,15 @@
        COUNT(DISTINCT CASE WHEN tog.goods_type = 2 THEN toc.user_id ELSE NULL END) servicePerson
        FROM t_order toc
        INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id
        WHERE toc.del_flag = 0 AND toc.order_from = 2 AND toc.order_status = 3 AND toc.new_member_flag = 1
        WHERE toc.del_flag = 0 AND toc.order_from = 2 AND toc.new_member_flag = 1
        <if test="param.activityId!=null and param.activityId!=''">
            AND toc.activity_id = #{param.activityId}
        </if>
        <if test="param.shopId != null and param.shopId != ''">
            AND toc.shop_id = #{param.shopId}
            AND toc.order_status = 3 AND toc.shop_id = #{param.shopId}
        </if>
        <if test="param.shopIdList != null and param.shopIdList.size() > 0">
            AND toc.shop_id IN
            AND toc.order_status = 3 AND toc.shop_id IN
            <foreach collection="param.shopIdList" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
@@ -1379,15 +1391,15 @@
        COUNT(DISTINCT toc.user_id) AS mapValueThird
        FROM t_order toc
        INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id
        WHERE toc.del_flag = 0 AND toc.order_from = 2 AND order_status = 3
        WHERE toc.del_flag = 0 AND toc.order_from = 2
        <if test="param.activityId!=null and param.activityId!=''">
            AND toc.activity_id = #{param.activityId}
        </if>
        <if test="param.shopId != null and param.shopId != ''">
            AND toc.shop_id = #{param.shopId}
            AND order_status = 3 AND toc.shop_id = #{param.shopId}
        </if>
        <if test="param.shopIdList != null and param.shopIdList.size() > 0">
            AND toc.shop_id IN
            AND order_status = 3 AND toc.shop_id IN
            <foreach collection="param.shopIdList" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
@@ -1552,7 +1564,7 @@
    <select id="getMerHomeShopTotalVo" resultType="com.ruoyi.system.api.domain.vo.MerHomeShopTotalVo">
        SELECT
            IFNULL(SUM(CASE WHEN order_status = 2 THEN 1 ELSE 0 END),0) unHandleOrder,
            IFNULL(SUM(CASE WHEN order_status = 2 AND order_from = 1 THEN 1 ELSE 0 END),0) unHandleOrder,
            IFNULL(SUM(CASE WHEN order_status = 3 AND pay_type = 1 THEN change_receivable_money WHEN order_status = 3 AND pay_type = 2 THEN change_receivable_money+online_pay_money ELSE 0 END),0) shopTurnover
        FROM t_order
        WHERE del_flag = 0 AND shop_id = #{shopId} AND order_status IN (2,3)
@@ -1733,8 +1745,8 @@
        COUNT(toc.order_id) orderTotal,
        IFNULL(SUM(CASE toc.pay_type WHEN 1 THEN toc.receivable_money WHEN 2 THEN order_money-coupon_money-online_pay_money END),0) receivableMoney,
        IFNULL(SUM(toc.change_receivable_money),0) relReceiveMoney,
        IFNULL(SUM(CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END),0) relPayMoney,
        IFNULL(SUM(toc.change_receivable_money-IFNULL(CASE toc.pay_type WHEN 1 THEN toc.online_pay_money WHEN 2 THEN IFNULL(toc.offline_pay_money,0) END,0)),0) unpaidMoney,
        IFNULL(SUM(IF(toc.order_from = 3, toc.offline_pay_money, IF(toc.order_from != 3 AND toc.pay_type = 1, toc.online_pay_money, IFNULL(toc.offline_pay_money,0)))),0) relPayMoney,
        IFNULL(SUM(toc.change_receivable_money-IFNULL(IF(toc.order_from = 3, toc.offline_pay_money, IF(toc.order_from != 3 AND toc.pay_type = 1, toc.online_pay_money, IFNULL(toc.offline_pay_money,0))),0)),0) unpaidMoney,
        IFNULL(SUM(CASE toc.pay_type WHEN 2 THEN toc.online_pay_money ELSE 0 END),0) receivableDeposit
        FROM t_order toc
        WHERE toc.del_flag = 0 AND toc.shop_id = #{param.shopId} and if(toc.order_from = 1, 1 = 1, toc.order_status = 3)<!--临时增加过滤-->
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/console/ShopController.java
@@ -249,11 +249,11 @@
     * @date 2023/6/18 16:45
     */
    @PostMapping("/boardShopTotal")
    public R<MgtBulletinBoardVo> boardShopTotal()
    public R<MgtBulletinBoardVo> boardShopTotal(@RequestBody BoardMemberTotalDto boardMemberTotalDto)
    {
        MgtBulletinBoardVo bulletinBoardVo = new MgtBulletinBoardVo();
        MgtBulletinBoardVo bulletinBoardVoShop = shopService.boardShopTotal();
        MgtBulletinBoardVo bulletinBoardVoTask = shopTaskService.boardTaskTotal();
        MgtBulletinBoardVo bulletinBoardVoShop = shopService.boardShopTotal(boardMemberTotalDto.getUserIds());
        MgtBulletinBoardVo bulletinBoardVoTask = shopTaskService.boardTaskTotal(boardMemberTotalDto.getUserIds());
        bulletinBoardVo.setShopTotal(bulletinBoardVoShop.getShopTotal());
        bulletinBoardVo.setDealerTotal(bulletinBoardVoShop.getDealerTotal());
        bulletinBoardVo.setAgencyTotal(bulletinBoardVoShop.getAgencyTotal());
@@ -428,4 +428,14 @@
        List<Shop> shopIdList = shopService.listByIds(ids);
        return R.ok(shopIdList);
    }
    /**
     * 根据管理员id获取门店
     * @return
     */
    @PostMapping("/getShopBySysUserIds")
    public List<Shop> getShopBySysUserIds(@RequestBody BoardMemberTotalDto boardMemberTotalDto){
        return shopService.getShopBySysUserIds(boardMemberTotalDto.getUserIds());
    }
}
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/mapper/shop/ShopMapper.java
@@ -153,7 +153,7 @@
    * @author jqs34
    * @date 2023/6/18 17:01
    */
    MgtBulletinBoardVo shopTotal();
    MgtBulletinBoardVo shopTotal(@Param("userIds") List<Long> userIds);
    /**
     * @description  获取平台商户统计
@@ -161,7 +161,7 @@
     * @date    2023/6/21 16:25
     * @return  MgtPlTotalShopTotalVo
     */
    MgtPlTotalShopTotalVo getPlTotalShopTotal();
    MgtPlTotalShopTotalVo getPlTotalShopTotal(@Param("userIds") List<Long> userIds);
    /**
     * @description  获取统计关联shopId
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -1106,8 +1106,8 @@
     * @date 2023/6/18 16:59
     */
    @Override
    public MgtBulletinBoardVo boardShopTotal(){
        MgtBulletinBoardVo mgtBulletinBoardVoShop = shopMapper.shopTotal();
    public MgtBulletinBoardVo boardShopTotal(List<Long> userIds){
        MgtBulletinBoardVo mgtBulletinBoardVoShop = shopMapper.shopTotal(userIds);
        return mgtBulletinBoardVoShop;
    }
@@ -1257,8 +1257,20 @@
                mgtBasePlatformDto.setUserIdList(userIdList);
            }
        }
        //数据权限
        List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId();
        if(null != userIds){
            List<Long> userIdList = mgtBasePlatformDto.getUserIdList();
            if(null != userIdList){
                userIdList.addAll(userIds);
            }else{
                userIdList = userIds;
            }
            mgtBasePlatformDto.setUserIdList(userIdList);
        }
        //获取基础统计
        MgtPlTotalShopTotalVo plTotalShopTotalVo = shopMapper.getPlTotalShopTotal();
        MgtPlTotalShopTotalVo plTotalShopTotalVo = shopMapper.getPlTotalShopTotal(userIds);
        plTotalShopTotalVo.setSignTotal(0);
        List<Long> shopIdList = shopMapper.listShopIdByTotal(mgtBasePlatformDto);
        if (!shopIdList.isEmpty()) {
@@ -1917,4 +1929,23 @@
    public List<Shop> listShopByCityCode(List<String> cityCodes){
        return shopMapper.listShopByCityCode(cityCodes);
    }
    /**
     * 根据员工id获取对应的门店
     * @param userIds
     * @return
     */
    @Override
    public List<Shop> getShopBySysUserIds(List<Long> userIds) {
        if(null == userIds && userIds.size() == 0){
            return new ArrayList<>();
        }
        QueryWrapper<Shop> queryWrapper = new QueryWrapper<Shop>().eq("del_flag", 0).ne("shop_status", -1);
        if(null != userIds && userIds.size() > 0){
            queryWrapper.in("belong_user_id", userIds);
        }
        List<Shop> list = this.list(queryWrapper);
        return list;
    }
}
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/task/ShopTaskServiceImpl.java
@@ -1,6 +1,7 @@
package com.ruoyi.shop.service.impl.task;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.utils.DateUtils;
@@ -12,13 +13,16 @@
import com.ruoyi.shop.domain.pojo.task.TaskFile;
import com.ruoyi.shop.domain.vo.StaffShopTaskPageVo;
import com.ruoyi.shop.mapper.task.ShopTaskMapper;
import com.ruoyi.shop.service.shop.ShopService;
import com.ruoyi.shop.service.task.ShopTaskRecordService;
import com.ruoyi.shop.service.task.ShopTaskService;
import com.ruoyi.shop.service.task.TaskFileService;
import com.ruoyi.system.api.domain.poji.shop.Shop;
import com.ruoyi.system.api.domain.poji.sys.SysStaff;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
import com.ruoyi.system.api.service.RemoteConfigService;
import com.ruoyi.system.api.service.RemoteUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -51,6 +55,12 @@
    @Resource
    private RemoteConfigService remoteConfigService;
    @Autowired
    private ShopService shopService;
    /**
     * 平台跟进商户
@@ -127,12 +137,18 @@
     * @date 2023/6/18 17:08
     */
    @Override
    public MgtBulletinBoardVo boardTaskTotal(){
    public MgtBulletinBoardVo boardTaskTotal(List<Long> userIds){
        MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo();
        LambdaQueryWrapper<ShopTask> queryWrapper = new LambdaQueryWrapper<>();
        queryWrapper.eq(ShopTask::getDelFlag,0);
        queryWrapper.eq(ShopTask::getTaskStatus,1);
        queryWrapper.eq(ShopTask::getTaskDate,DateUtils.getDate());
        if(null != userIds && userIds.size() > 0){
            List<Shop> list = shopService.list(new QueryWrapper<Shop>().eq("del_flag", 0)
                    .in("belong_user_id", userIds));
            List<Long> collect = list.stream().map(Shop::getShopId).collect(Collectors.toList());
            queryWrapper.in(ShopTask::getShopId, collect);
        }
        Integer followShopToday = this.count(queryWrapper);
        mgtBulletinBoardVo.setFollowShopToday(followShopToday);
        return mgtBulletinBoardVo;
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/shop/ShopService.java
@@ -14,6 +14,7 @@
import com.ruoyi.system.api.domain.poji.member.Member;
import com.ruoyi.system.api.domain.poji.shop.Shop;
import com.ruoyi.system.api.domain.vo.*;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@@ -210,7 +211,7 @@
    * @author jqs34
    * @date 2023/6/18 17:01
    */
    MgtBulletinBoardVo boardShopTotal();
    MgtBulletinBoardVo boardShopTotal(List<Long> userIds);
    /**
     * @description  商户进件
@@ -452,4 +453,12 @@
     * @return  List<Long>
     */
    List<Shop> listShopByCityCode(List<String> cityCodes);
    /**
     * 根据员工id获取对应的门店
     * @param userIds
     * @return
     */
    List<Shop> getShopBySysUserIds(List<Long> userIds);
}
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/task/ShopTaskService.java
@@ -35,7 +35,7 @@
    * @author jqs34
    * @date 2023/6/18 17:09
    */
    MgtBulletinBoardVo boardTaskTotal();
    MgtBulletinBoardVo boardTaskTotal(List<Long> userIds);
    /**
     * @description  员工端获取进行中商户任务数
ruoyi-modules/ruoyi-shop/src/main/resources/bootstrap.yml
@@ -17,9 +17,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
      config:
@@ -27,9 +27,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
        # 配置文件格式
@@ -37,7 +37,11 @@
        # 共享配置
        shared-configs:
          - application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
---
spring:
  main:
    allow-circular-references: true
wx:
  pay:
@@ -53,3 +57,9 @@
callback_path: https://wxapp.hhhrt.cn
#callback_path: http://8.137.105.173
feign:
  compression:
    request:
      min-request-size: 20480
ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
@@ -667,6 +667,12 @@
            SUM(CASE WHEN shop_type = 2 THEN 1 ELSE 0 END) AS agencyTotal
        FROM t_shop
        WHERE del_flag = 0
        <if test="null != userIds and userIds.size() > 0">
            and belong_user_id in
            <foreach collection="userIds" index="index" item="item" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="getPlTotalShopTotal" resultType="com.ruoyi.shop.domain.vo.MgtPlTotalShopTotalVo">
@@ -677,6 +683,12 @@
            SUM(CASE WHEN cooperative_flag = 0 THEN 1 ELSE 0 END) AS terminateTotal
        FROM t_shop
        WHERE del_flag = 0
        <if test="null != userIds and userIds.size() > 0">
            and belong_user_id in
            <foreach collection="userIds" item="item" index="index" open="(" separator="," close=")">
                #{item}
            </foreach>
        </if>
    </select>
    <select id="listShopIdByTotal" resultType="java.lang.Long">
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysUserController.java
@@ -474,4 +474,14 @@
        qwH5LoginVo.setSysUser(sysUser);
        return R.ok(qwH5LoginVo);
    }
    /**
     * 获取当前用户权限范围内的员工id
     * @return
     */
    @PostMapping("/getScopeOfAuthorityUserId")
    public List<Long> getScopeOfAuthorityUserId(){
        return userService.getScopeOfAuthorityUserId();
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/config/RecommendCooperationMapper.java
@@ -59,6 +59,6 @@
    * @author jqs34
    * @date 2023/6/18 16:54
    */
    MgtBulletinBoardVo customTotal();
    MgtBulletinBoardVo customTotal(@Param("userIds") List<Long> userIds);
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/config/RecommendCooperationService.java
@@ -63,7 +63,7 @@
     * @author jqs34
     * @date 2023/6/18 16:47
     */
    MgtBulletinBoardVo boardMemberTotal();
    MgtBulletinBoardVo boardMemberTotal(List<Long> userIds);
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/CustomConfigServiceImpl.java
@@ -1,13 +1,17 @@
package com.ruoyi.system.service.impl.config;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.system.api.constant.ConfigEnum;
import com.ruoyi.system.api.constant.SecurityConstant;
import com.ruoyi.system.api.domain.dto.BoardMemberTotalDto;
import com.ruoyi.system.api.domain.poji.config.Activeness;
import com.ruoyi.system.api.domain.poji.sys.SysUser;
import com.ruoyi.system.api.domain.vo.AppOtherConfigGetVo;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
import com.ruoyi.system.api.service.RemoteActivityService;
@@ -22,6 +26,8 @@
import com.ruoyi.system.domain.vo.MgtOperLogPageVo;
import com.ruoyi.system.mapper.config.CustomConfigMapper;
import com.ruoyi.system.service.config.*;
import com.ruoyi.system.service.sys.ISysUserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@@ -69,6 +75,12 @@
    @Resource
    private RedisService redisService;
    @Autowired
    private ISysUserService sysUserService;
    /**
     * @param key
@@ -663,25 +675,29 @@
     */
    @Override
    public MgtBulletinBoardVo getBulletinBoard(){
        List<Long> userIds = sysUserService.getScopeOfAuthorityUserId();
        // 创建 MgtBulletinBoardVo 对象
        MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo();
        // 获取会员信息
        MgtBulletinBoardVo mgtBulletinBoardVoMember = remoteMemberService.boardMemberTotal().getData();
        BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto();
        boardMemberTotalDto.setUserIds(userIds);
        MgtBulletinBoardVo mgtBulletinBoardVoMember = remoteMemberService.boardMemberTotal(boardMemberTotalDto).getData();
        mgtBulletinBoardVo.setMemberTotal(mgtBulletinBoardVoMember.getMemberTotal());
        mgtBulletinBoardVo.setMemberToday(mgtBulletinBoardVoMember.getMemberToday());
        // 获取推荐合作信息
        MgtBulletinBoardVo mgtBulletinBoardVoCustom = recommendCooperationService.boardMemberTotal();
        MgtBulletinBoardVo mgtBulletinBoardVoCustom = recommendCooperationService.boardMemberTotal(userIds);
        mgtBulletinBoardVo.setCustomTotal(mgtBulletinBoardVoCustom.getCustomTotal());
        mgtBulletinBoardVo.setCustomToday(mgtBulletinBoardVoCustom.getCustomToday());
        mgtBulletinBoardVo.setFollowUserToday(mgtBulletinBoardVoCustom.getFollowUserToday());
        // 获取店铺信息
        MgtBulletinBoardVo mgtBulletinBoardVoShop = remoteShopService.boardShopTotal().getData();
        MgtBulletinBoardVo mgtBulletinBoardVoShop = remoteShopService.boardShopTotal(boardMemberTotalDto).getData();
        mgtBulletinBoardVo.setShopTotal(mgtBulletinBoardVoShop.getShopTotal());
        mgtBulletinBoardVo.setAgencyTotal(mgtBulletinBoardVoShop.getAgencyTotal());
        mgtBulletinBoardVo.setDealerTotal(mgtBulletinBoardVoShop.getDealerTotal());
        mgtBulletinBoardVo.setFollowShopToday(mgtBulletinBoardVoShop.getFollowShopToday());
        // 获取订单信息
        MgtBulletinBoardVo mgtBulletinBoardVoOrder = remoteOrderService.boardOrderTotal().getData();
        MgtBulletinBoardVo mgtBulletinBoardVoOrder = remoteOrderService.boardOrderTotal(boardMemberTotalDto).getData();
        mgtBulletinBoardVo.setSalesTotal(mgtBulletinBoardVoOrder.getSalesTotal());
        mgtBulletinBoardVo.setUnUseOrderTotal(mgtBulletinBoardVoOrder.getUnUseOrderTotal());
        mgtBulletinBoardVo.setActivityOrderTotal(mgtBulletinBoardVoOrder.getActivityOrderTotal());
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/config/RecommendCooperationServiceImpl.java
@@ -106,8 +106,8 @@
     * @date 2023/6/18 16:47
     */
    @Override
    public MgtBulletinBoardVo boardMemberTotal(){
        MgtBulletinBoardVo mgtBulletinBoardVo = recommendCooperationMapper.customTotal();
    public MgtBulletinBoardVo boardMemberTotal(List<Long> userIds){
        MgtBulletinBoardVo mgtBulletinBoardVo = recommendCooperationMapper.customTotal(userIds);
        return mgtBulletinBoardVo;
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysUserServiceImpl.java
@@ -1,5 +1,6 @@
package com.ruoyi.system.service.impl.sys;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.constant.UserConstants;
import com.ruoyi.common.core.exception.ServiceException;
@@ -730,4 +731,39 @@
        }
        userMapper.updateUser(sysUser);
    }
    /**
     * 获取当前员工权限范围内的员工id
     * @return
     */
    @Override
    public List<Long> getScopeOfAuthorityUserId() {
        List<Long> userIds = new ArrayList<>();
        Long userId = SecurityUtils.getUserId();
        SysUser user = this.baseMapper.selectUserById(userId);
        String dataScope = user.getDataScope();
        //没有配置默认查询自己
        if(!SecurityUtils.isAdmin(userId) && StringUtils.isEmpty(dataScope)){
            userIds.add(userId);
        }
        //管理员或者全部权限
        if(SecurityUtils.isAdmin(userId) || (StringUtils.isNotEmpty(dataScope) && "1".equals(dataScope))){
            return null;
        }
        //部分权限
        if(StringUtils.isNotEmpty(dataScope) && "3".equals(dataScope)){
            SysUser user1 = new SysUser();
            user1.setUserType("00");
            user1.setStatus("0");
            user1.setDeptId(user.getDeptId());
            List<SysUser> list = this.baseMapper.selectUserList(user1);
            userIds.addAll(list.stream().map(SysUser::getUserId).collect(Collectors.toList()));
        }
        //个人权限
        if(StringUtils.isNotEmpty(dataScope) && "5".equals(dataScope)){
            userIds.add(userId);
        }
        return userIds;
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysUserService.java
@@ -284,4 +284,11 @@
     * @return  void
     */
    void frozenUser(MgtFrozenMemberDto mgtFrozenMemberDto);
    /**
     * 获取当前用户权限范围内的员工id
     * @return
     */
    List<Long> getScopeOfAuthorityUserId();
}
ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml
@@ -21,9 +21,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
      config:
@@ -31,9 +31,9 @@
        server-addr: 47.109.78.184:5000
#        server-addr: 127.0.0.1:8848
        #pro
        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
#        namespace: 9591ef9f-a49a-4900-be35-d77258bdd639
        #test
#        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        namespace: e1a7e419-e8c7-4d7d-8a0a-c00ab6ccfccd
        #dev
#        namespace: 6857cbd9-6088-4fe8-bb58-2b516d99876f
        # 配置文件格式
@@ -71,3 +71,7 @@
feign:
  compression:
    request:
      min-request-size: 20480
ruoyi-modules/ruoyi-system/src/main/resources/mapper/config/RecommendCooperationMapper.xml
@@ -55,7 +55,13 @@
        FROM
            t_recommend_cooperation
        WHERE
            del_flag = 0;
            del_flag = 0
        <if test="null != userIds and userIds.size() > 0">
            and allot_user_id in
            <foreach collection="userIds" separator="," index="index" item="item" open="(" close=")">
                #{item}
            </foreach>
        </if>
    </select>
</mapper>
ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysUserMapper.xml
@@ -72,6 +72,9 @@
        <if test="status != null and status != ''">
            AND u.status = #{status}
        </if>
        <if test="userType != null and userType != ''">
            AND u.user_type = #{userType}
        </if>
        <if test="phonenumber != null and phonenumber != ''">
            AND u.phonenumber like concat('%', #{phonenumber}, '%')
        </if>