jiangqs
2023-06-28 efe79e640c4598f52c2d1032fcead000edf8049e
统计bug和验证优化
19个文件已修改
512 ■■■■ 已修改文件
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtActivityController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityEditDto.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtTotalMemberTotalVo.java 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtTotalController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtPlTotalActivityTotalVo.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtTotalActivityTotalVo.java 17 ●●●●● 补丁 | 查看 | 原始文档 | 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 328 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtEditShopDto.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffEditDto.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtActivityController.java
@@ -16,6 +16,7 @@
import com.ruoyi.system.api.domain.dto.MgtBaseGetDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -43,7 +44,7 @@
    @RequestMapping(value = "/editMgtActivity", method = RequestMethod.POST)
    @Log(title = "活动管理", businessType = BusinessType.UPDATE,operContent = "编辑活动")
    @ApiOperation(value = "平台编辑活动")
    public R editMgtActivity(@RequestBody MgtActivityEditDto mgtActivityEditDto) {
    public R editMgtActivity(@Validated  @RequestBody MgtActivityEditDto mgtActivityEditDto) {
        Long userId = SecurityUtils.getUserId();
        mgtActivityEditDto.setUserId(userId);
        activityService.editMgtActivity(mgtActivityEditDto);
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java
@@ -15,6 +15,7 @@
import com.ruoyi.system.api.domain.vo.MgtSelectGoodsPageVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -73,7 +74,7 @@
    @RequestMapping(value = "/editMgtGoods", method = RequestMethod.POST)
    @Log(title = "商品管理", businessType = BusinessType.UPDATE,operContent = "编辑商品")
    @ApiOperation(value = "平台编辑商品")
    public R editMgtGoods(@RequestBody MgtGoodsEditDto mgtGoodsEditDto) {
    public R editMgtGoods(@Validated @RequestBody MgtGoodsEditDto mgtGoodsEditDto) {
        Long userId = SecurityUtils.getUserId();
        mgtGoodsEditDto.setUserId(userId);
        goodsService.editMgtGoods(mgtGoodsEditDto);
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtActivityEditDto.java
@@ -4,6 +4,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
@@ -22,6 +23,7 @@
    private String activityId;
    @ApiModelProperty(value = "活动名称")
    @NotNull(message = "活动名称不能为空")
    private String activityName;
    @ApiModelProperty(value = "活动开始时间")
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java
@@ -4,6 +4,7 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
/**
@@ -20,18 +21,23 @@
    private String goodsId;
    @ApiModelProperty(value = "商品状态1上架2下架")
    @NotNull(message = "商品状态不能为空")
    private Integer goodsStatus;
    @ApiModelProperty(value = "商品类型1周期2服务3体验4单品")
    @NotNull(message = "商品类型不能为空")
    private Integer goodsType;
    @ApiModelProperty(value = "商品分类id")
    @NotNull(message = "商品分类id不能为空")
    private Long goodsClassId;
    @ApiModelProperty(value = "商品名称")
    @NotNull(message = "商品名称不能为空")
    private String goodsName;
    @ApiModelProperty(value = "商品图片")
    @NotNull(message = "商品图片不能为空")
    private String goodsPicture;
    @ApiModelProperty(value = "商品视频")
@@ -50,9 +56,11 @@
    private String goodsIntroduction;
    @ApiModelProperty(value = "建议售价")
    @NotNull(message = "建议售价不能为空")
    private BigDecimal salesPrice;
    @ApiModelProperty(value = "最低售价")
    @NotNull(message = "最低售价不能为空")
    private BigDecimal mininumPrice;
    @ApiModelProperty(value = "订金")
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtTotalMemberTotalVo.java
@@ -1,7 +1,10 @@
package com.ruoyi.member.domain.vo;
import com.ruoyi.system.api.domain.vo.MgtMapTotalVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
 * @ClassName MgtTotalMemberTotalVo
@@ -46,33 +49,18 @@
    @ApiModelProperty(value = "会员年龄value")
    private Integer[] ageValue;
    @ApiModelProperty(value = "会员调理key")
    private String[] nurseKey;
    @ApiModelProperty(value = "会员调理")
    private List<MgtMapTotalVo> nurseTotalVos;
    @ApiModelProperty(value = "会员调理value")
    private Integer[] nurseValue;
    @ApiModelProperty(value = "商品类型")
    private List<MgtMapTotalVo> goodsTypeTotalVos;
    @ApiModelProperty(value = "商品类型key")
    private String[] goodsTypeKey;
    @ApiModelProperty(value = "活跃度")
    private List<MgtMapTotalVo> activenessList;
    @ApiModelProperty(value = "商品类型value")
    private Integer[] goodsTypeValue;
    @ApiModelProperty(value = "来源渠道")
    private List<MgtMapTotalVo> customerSourceList;
    @ApiModelProperty(value = "活跃度key")
    private String[] activenessKey;
    @ApiModelProperty(value = "活跃度value")
    private Integer[] activenessValue;
    @ApiModelProperty(value = "消费排行key")
    private String[] orderRankKey;
    @ApiModelProperty(value = "消费排行value")
    private Integer[] orderRankValue;
    @ApiModelProperty(value = "来源排行key")
    private String[] customerSourceKey;
    @ApiModelProperty(value = "来源排行value")
    private Integer[] customerSourceValue;
    @ApiModelProperty(value = "消费排行")
    private List<MgtMapTotalVo> memberPayList;
}
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java
@@ -981,75 +981,48 @@
        // 获取不同护理类型的会员数
        List<MgtMapTotalVo> nurseTotalVos = memberMapper.getTotalMemberTotalNurse(mgtBaseShopDto);
        if (nurseTotalVos != null && nurseTotalVos.size() > 0) {
            String[] nurseKey = new String[nurseTotalVos.size()];
            Integer[] nurseValue = new Integer[nurseTotalVos.size()];
            // 遍历不同护理类型的会员数列表,设置护理类型数组和对应的会员数数组
            for (int i = 0; i < nurseTotalVos.size(); i++) {
                nurseKey[i] = nurseTotalVos.get(i).getMapKey();
                nurseValue[i] = nurseTotalVos.get(i).getMapValue();
            }
            mgtTotalMemberTotalVo.setNurseKey(nurseKey);
            mgtTotalMemberTotalVo.setNurseValue(nurseValue);
            nurseTotalVos = listRemoveNull(nurseTotalVos);
            mgtTotalMemberTotalVo.setNurseTotalVos(nurseTotalVos);
        }
        // 获取不同商品类型的会员数
        List<MgtMapTotalVo> goodsTypeTotalVos = memberMapper.getTotalMemberTotalGoodsType(mgtBaseShopDto);
        if (goodsTypeTotalVos != null && goodsTypeTotalVos.size() > 0) {
            String[] goodsTypeKey = new String[goodsTypeTotalVos.size()];
            Integer[] goodsTypeValue = new Integer[goodsTypeTotalVos.size()];
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            for (int i = 0; i < goodsTypeTotalVos.size(); i++) {
                goodsTypeKey[i] = goodsTypeTotalVos.get(i).getMapKey();
                goodsTypeValue[i] = goodsTypeTotalVos.get(i).getMapValue();
            }
            mgtTotalMemberTotalVo.setGoodsTypeKey(goodsTypeKey);
            mgtTotalMemberTotalVo.setGoodsTypeValue(goodsTypeValue);
            goodsTypeTotalVos = listRemoveNull(goodsTypeTotalVos);
            mgtTotalMemberTotalVo.setGoodsTypeTotalVos(goodsTypeTotalVos);
        }
        // 获取不同活跃度的会员数
        List<Activeness> activenessList = remoteConfigService.listActiveness().getData();
        if (activenessList != null && !activenessList.isEmpty()) {
            String[] activenessKey = new String[activenessList.size()];
            Integer[] activenessValue = new Integer[activenessList.size()];
            Activeness activeness;
            String actStartDate;
            String actEndDate;
            Integer count;
            List<MgtMapTotalVo> mgtMapTotalVoList = new ArrayList<>();
            MgtMapTotalVo mgtMapTotalVo;
            // 遍历不同活跃度列表,设置活跃度数组和对应的会员数数组
            for (int i = 0; i < activenessList.size(); i++) {
                activeness = activenessList.get(i);
                actStartDate = DateUtils.parseDateToStr("yyyy-MM-dd", DateUtils.addDays(nowDay, activeness.getEndDay()));
                actEndDate = DateUtils.parseDateToStr("yyyy-MM-dd", DateUtils.addDays(nowDay, activeness.getStartDay()));
                count = memberMapper.getTotalMemberTotalActiveness(shopId, actStartDate, actEndDate);
                activenessKey[i] = activeness.getActivenessName();
                activenessValue[i] = count;
                mgtMapTotalVo = new MgtMapTotalVo();
                mgtMapTotalVo.setMapKey(activeness.getActivenessName());
                mgtMapTotalVo.setMapValue(count);
                mgtMapTotalVoList.add(mgtMapTotalVo);
            }
            mgtTotalMemberTotalVo.setActivenessKey(activenessKey);
            mgtTotalMemberTotalVo.setActivenessValue(activenessValue);
            mgtTotalMemberTotalVo.setActivenessList(mgtMapTotalVoList);
        }
        //获取会员消费排名
        List<MgtMapTotalVo> memberPayList = memberMapper.getTotalMemberRankPay(mgtBaseShopDto);
        if (memberPayList != null && memberPayList.size() > 0) {
            String[] memberPayKey = new String[memberPayList.size()];
            Integer[] memberPayValue = new Integer[memberPayList.size()];
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            for (int i = 0; i < memberPayList.size(); i++) {
                memberPayKey[i] = memberPayList.get(i).getMapKey();
                memberPayValue[i] = memberPayList.get(i).getMapValue();
            }
            mgtTotalMemberTotalVo.setOrderRankKey(memberPayKey);
            mgtTotalMemberTotalVo.setOrderRankValue(memberPayValue);
            memberPayList = listRemoveNull(memberPayList);
            mgtTotalMemberTotalVo.setMemberPayList(memberPayList);
        }
        //获取来源渠道排名
        List<MgtMapTotalVo> customerSourceList = memberMapper.getTotalMemberRankCustomerSource(mgtBaseShopDto);
        if (customerSourceList != null && customerSourceList.size() > 0) {
            String[] customerSourceKey = new String[customerSourceList.size()];
            Integer[] customerSourceValue = new Integer[customerSourceList.size()];
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            for (int i = 0; i < customerSourceList.size(); i++) {
                customerSourceKey[i] = customerSourceList.get(i).getMapKey();
                customerSourceValue[i] = customerSourceList.get(i).getMapValue();
            }
            mgtTotalMemberTotalVo.setCustomerSourceKey(customerSourceKey);
            mgtTotalMemberTotalVo.setCustomerSourceValue(customerSourceValue);
            customerSourceList = listRemoveNull(customerSourceList);
            mgtTotalMemberTotalVo.setCustomerSourceList(customerSourceList);
        }
        // 返回总会员数和不同类型会员数的统计结果
        return mgtTotalMemberTotalVo;
@@ -1143,6 +1116,7 @@
                    mgtMapTotalVo = new MgtMapTotalVo();
                    mgtMapTotalVo.setMapKey(activeness.getActivenessName());
                    mgtMapTotalVo.setMapValue(count);
                    mgtMapTotalVoList.add(mgtMapTotalVo);
                }
            }
            plTotalMemberTotalVo.setActivenessList(mgtMapTotalVoList);
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/controller/management/MgtTotalController.java
@@ -98,10 +98,10 @@
    @RequestMapping(value = "/getPlTotalActivityAgeRank", method = RequestMethod.POST)
    @ApiOperation(value = "获取平台商户活动年龄分布")
    public R<List<MgtMapTotalPlusVo>> getPlTotalActivityAgeRank(@RequestBody MgtPlActivityAgeDto mgtPlActivityAgeDto) {
    public R<MgtPlTotalActivityTotalVo> getPlTotalActivityAgeRank(@RequestBody MgtPlActivityAgeDto mgtPlActivityAgeDto) {
        Long userId = SecurityUtils.getUserId();
        mgtPlActivityAgeDto.setUserId(userId);
        List<MgtMapTotalPlusVo> ageRankList = orderService.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        return R.ok(ageRankList);
        MgtPlTotalActivityTotalVo plTotalActivityTotalVo = orderService.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        return R.ok(plTotalActivityTotalVo);
    }
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtPlTotalActivityTotalVo.java
@@ -78,4 +78,10 @@
    @ApiModelProperty(value = "活动次数排行")
    private List<MgtMapBigTotalVo> activitySalesRankList;
    @ApiModelProperty(value = "活动年龄分布key")
    private String[] activityAgeKey;
    @ApiModelProperty(value = "活动年龄分布value")
    private Integer[] activityAgeValue;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/domain/vo/MgtTotalActivityTotalVo.java
@@ -1,9 +1,12 @@
package com.ruoyi.order.domain.vo;
import com.ruoyi.system.api.domain.vo.MgtMapBigTotalVo;
import com.ruoyi.system.api.domain.vo.MgtMapTotalVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
 * @ClassName MgtTotalActivityTotalVo
@@ -60,13 +63,15 @@
    @ApiModelProperty(value = "订单金额value")
    private BigDecimal[] orderMoneyValue;
    @ApiModelProperty(value = "商品类型数量key")
    private String[] goodsTypeKey;
    @ApiModelProperty(value = "商品类型数量")
    private List<MgtMapTotalVo> goodsTypeTotalList;
    @ApiModelProperty(value = "商品类型数量value")
    private Integer[] goodsTypeTotalValue;
    @ApiModelProperty(value = "商品类型金额")
    private List<MgtMapBigTotalVo> goodsTypeMoneyList;
    @ApiModelProperty(value = "商品类型金额value")
    private BigDecimal[] goodsTypeMoneyValue;
    @ApiModelProperty(value = "活动年龄分布key")
    private String[] activityAgeKey;
    @ApiModelProperty(value = "活动年龄分布value")
    private Integer[] activityAgeValue;
}
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/mapper/order/OrderMapper.java
@@ -246,7 +246,7 @@
     * @param mgtActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     */
    MgtTotalActivityTotalVo getTotalActivityAgeRank(@Param("param")MgtActivityAgeDto mgtActivityAgeDto);
    List<MgtMapTotalVo> getTotalActivityAgeRank(@Param("param")MgtActivityAgeDto mgtActivityAgeDto);
    /**
     * @description
@@ -385,7 +385,7 @@
     * @param mgtActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     */
    List<MgtMapTotalPlusVo> getPlTotalActivityAgeRank(@Param("param")MgtPlActivityAgeDto mgtActivityAgeDto);
    List<MgtMapTotalVo> getPlTotalActivityAgeRank(@Param("param")MgtPlActivityAgeDto mgtActivityAgeDto);
    /**
     * @description listPlTotalShopActivityRank
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java
@@ -1011,22 +1011,22 @@
    @Override
    public List<MgtActivityOrderPageVo> pageMgtActivityOrder(Page page, MgtShopOrderPageDto mgtShopOrderPageDto) {
        //如果区域代码不为null获取对应的商户id
        if(StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopProvinceCode())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopCityCode())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopAreaCode())){
        if (StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopCityCode()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopAreaCode())) {
            MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto();
            mgtShopIdByCodeDto.setShopProvinceCode(mgtShopOrderPageDto.getShopProvinceCode());
            mgtShopIdByCodeDto.setShopCityCode(mgtShopOrderPageDto.getShopCityCode());
            mgtShopIdByCodeDto.setShopAreaCode(mgtShopOrderPageDto.getShopAreaCode());
            MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData();
            if(StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())){
            if (StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())) {
                mgtShopOrderPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds());
            }
        }
        //如果关键词不为null获取对应的用户id
        if(StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())){
        if (StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())) {
            MgtUserIdByKeywordDto mgtUserIdByKeywordDto = new MgtUserIdByKeywordDto();
            mgtUserIdByKeywordDto.setKeyword(mgtShopOrderPageDto.getKeyword());
            MgtUserIdByKeywordVo mgtUserIdByKeywordVo= remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData();
            if(StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())){
            MgtUserIdByKeywordVo mgtUserIdByKeywordVo = remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData();
            if (StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())) {
                mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
            }
        }
@@ -1060,7 +1060,7 @@
            // 遍历列表,设置店铺名称、用户名称和未支付金额
            for (MgtActivityOrderPageVo mgtActivityOrderPageVo : activityOrderPageVoList) {
                mgtActivityOrderPageVo.setShopName(shopMap.get(mgtActivityOrderPageVo.getShopId()).getShopName());
                if(userMap.get(mgtActivityOrderPageVo.getUserId())!=null){
                if (userMap.get(mgtActivityOrderPageVo.getUserId()) != null) {
                    mgtActivityOrderPageVo.setUserName(userMap.get(mgtActivityOrderPageVo.getUserId()).getNickName());
                }
                BigDecimal unPaidMoney = mgtActivityOrderPageVo.getReceivableMoney().subtract(mgtActivityOrderPageVo.getPayMoney());
@@ -1072,31 +1072,31 @@
    }
    /**
     * @description  获取订单统计
     * @author  jqs
     * @date    2023/6/16 12:51
     * @param mgtShopOrderPageDto
     * @return  MgtMemberOrderTotalVo
     * @return MgtMemberOrderTotalVo
     * @description 获取订单统计
     * @author jqs
     * @date 2023/6/16 12:51
     */
    @Override
    public MgtOrderTotal getMgtOrderTotal(MgtShopOrderPageDto mgtShopOrderPageDto){
    public MgtOrderTotal getMgtOrderTotal(MgtShopOrderPageDto mgtShopOrderPageDto) {
        //如果区域代码不为null获取对应的商户id
        if(StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopProvinceCode())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopCityCode())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopAreaCode())){
        if (StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopCityCode()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopAreaCode())) {
            MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto();
            mgtShopIdByCodeDto.setShopProvinceCode(mgtShopOrderPageDto.getShopProvinceCode());
            mgtShopIdByCodeDto.setShopCityCode(mgtShopOrderPageDto.getShopCityCode());
            mgtShopIdByCodeDto.setShopAreaCode(mgtShopOrderPageDto.getShopAreaCode());
            MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData();
            if(StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())){
            if (StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())) {
                mgtShopOrderPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds());
            }
        }
        //如果关键词不为null获取对应的用户id
        if(StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())){
        if (StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())) {
            MgtUserIdByKeywordDto mgtUserIdByKeywordDto = new MgtUserIdByKeywordDto();
            mgtUserIdByKeywordDto.setKeyword(mgtShopOrderPageDto.getKeyword());
            MgtUserIdByKeywordVo mgtUserIdByKeywordVo= remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData();
            if(StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())){
            MgtUserIdByKeywordVo mgtUserIdByKeywordVo = remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData();
            if (StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())) {
                mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
            }
        }
@@ -1118,32 +1118,32 @@
    }
    /**
     * @description  分页获取门店订单列表
     * @author  jqs
     * @date    2023/6/16 14:57
     * @param page
     * @param mgtShopOrderPageDto
     * @return  List<MgtShopOrderPageVo>
     * @return List<MgtShopOrderPageVo>
     * @description 分页获取门店订单列表
     * @author jqs
     * @date 2023/6/16 14:57
     */
    @Override
    public List<MgtShopOrderPageVo> pageMgtShopOrder(Page page, MgtShopOrderPageDto mgtShopOrderPageDto){
    public List<MgtShopOrderPageVo> pageMgtShopOrder(Page page, MgtShopOrderPageDto mgtShopOrderPageDto) {
        //如果区域代码不为null获取对应的商户id
        if(StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopProvinceCode())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopCityCode())||StringUtils.isNotBlank(mgtShopOrderPageDto.getShopAreaCode())){
        if (StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopCityCode()) || StringUtils.isNotBlank(mgtShopOrderPageDto.getShopAreaCode())) {
            MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto();
            mgtShopIdByCodeDto.setShopProvinceCode(mgtShopOrderPageDto.getShopProvinceCode());
            mgtShopIdByCodeDto.setShopCityCode(mgtShopOrderPageDto.getShopCityCode());
            mgtShopIdByCodeDto.setShopAreaCode(mgtShopOrderPageDto.getShopAreaCode());
            MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData();
            if(StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())){
            if (StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())) {
                mgtShopOrderPageDto.setShopIds(mgtShopIdByCodeVo.getShopIds());
            }
        }
        //如果关键词不为null获取对应的用户id
        if(StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())){
        if (StringUtils.isNotBlank(mgtShopOrderPageDto.getKeyword())) {
            MgtUserIdByKeywordDto mgtUserIdByKeywordDto = new MgtUserIdByKeywordDto();
            mgtUserIdByKeywordDto.setKeyword(mgtShopOrderPageDto.getKeyword());
            MgtUserIdByKeywordVo mgtUserIdByKeywordVo= remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData();
            if(StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())){
            MgtUserIdByKeywordVo mgtUserIdByKeywordVo = remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData();
            if (StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())) {
                mgtShopOrderPageDto.setUserIds(mgtUserIdByKeywordVo.getUserIds());
            }
        }
@@ -1162,7 +1162,7 @@
            // 从远程服务获取店铺和用户信息
            Map<Long, MgtSimpleShopVo> shopMap = null;
            Map<Long, MgtSimpleMemberVo> userMap = null;
            if(shopIdSet!=null&&!shopIdSet.isEmpty()){
            if (shopIdSet != null && !shopIdSet.isEmpty()) {
                String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList()));
                MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto();
                mgtBaseBathDto.setIds(shopJoinedString);
@@ -1170,7 +1170,7 @@
                shopMap = simpleShopVoList.stream()
                        .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity()));
            }
            if(userIdSet!=null&&!userIdSet.isEmpty()){
            if (userIdSet != null && !userIdSet.isEmpty()) {
                String userJoinedString = String.join(",", userIdSet.stream().map(Object::toString).collect(Collectors.toList()));
                MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto();
                mgtBaseBathDto.setIds(userJoinedString);
@@ -1180,11 +1180,11 @@
            }
            // 遍历列表,设置店铺名称、用户名称和未支付金额
            for (MgtShopOrderPageVo mgtShopOrderPageVo : shopOrderPageVoList) {
                if(shopMap!=null&&!shopMap.isEmpty()){
                if (shopMap != null && !shopMap.isEmpty()) {
                    mgtShopOrderPageVo.setShopName(shopMap.get(mgtShopOrderPageVo.getShopId()).getShopName());
                }
                if(userMap!=null&&!userMap.isEmpty()){
                    if(userMap.get(mgtShopOrderPageVo.getUserId())!=null){
                if (userMap != null && !userMap.isEmpty()) {
                    if (userMap.get(mgtShopOrderPageVo.getUserId()) != null) {
                        mgtShopOrderPageVo.setUserName(userMap.get(mgtShopOrderPageVo.getUserId()).getNickName());
                    }
                }
@@ -1197,14 +1197,14 @@
    /**
     * @description  获取订单详情
     * @author  jqs
     * @date    2023/6/16 16:49
     * @param orderId
     * @return  MgtOrderDetailVo
     * @return MgtOrderDetailVo
     * @description 获取订单详情
     * @author jqs
     * @date 2023/6/16 16:49
     */
    @Override
    public MgtOrderDetailVo getMgtOrderDetail(String orderId){
    public MgtOrderDetailVo getMgtOrderDetail(String orderId) {
        // 创建MgtOrderDetailVo对象
        MgtOrderDetailVo mgtOrderDetailVo = new MgtOrderDetailVo();
        // 获取订单信息
@@ -1278,27 +1278,27 @@
    }
    /**
     * @description boardOrderTotal
     * @param
     * @return MgtBulletinBoardVo
     * @description boardOrderTotal
     * @author jqs34
     * @date 2023/6/18 17:20
     */
    @Override
    public MgtBulletinBoardVo boardOrderTotal(){
    public MgtBulletinBoardVo boardOrderTotal() {
        MgtBulletinBoardVo mgtBulletinBoardVo = orderMapper.boardOrderTotal();
        return mgtBulletinBoardVo;
    }
    /**
     * @description getTotalOrderTotal
     * @param mgtBaseShopDto
     * @return MgtTotalOrderTotalVo
     * @description getTotalOrderTotal
     * @author jqs34
     * @date 2023/6/19 22:23
     */
    @Override
    public MgtTotalOrderTotalVo getTotalOrderTotal(MgtBaseShopDto mgtBaseShopDto){
    public MgtTotalOrderTotalVo getTotalOrderTotal(MgtBaseShopDto mgtBaseShopDto) {
        MgtTotalOrderTotalVo mgtTotalOrderTotalVo = orderMapper.getTotalOrderTotalOrderFrom(mgtBaseShopDto);
        //MgtTotalOrderTotalVo mgtTotalOrderTotalVoGoodsType = orderMapper.getTotalOrderTotalGoodsType(mgtBaseShopDto);
        List<MgtMapTotalPlusVo> mgtMapTotalVos = orderMapper.listTotalOrderTotal(mgtBaseShopDto);
@@ -1328,25 +1328,27 @@
                mgtMapBigTotalVo = new MgtMapBigTotalVo();
                mgtMapTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                mgtMapBigTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")){
                if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")) {
                    mgtMapTotalVo.setMapKey("周期");
                    mgtMapBigTotalVo.setMapKey("周期");
                    mgtTotalOrderTotalVo.setCycleTotal(mgtTotalOrderTotalVo.getCycleTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setCycleTotal(mgtTotalOrderTotalVo.getCycleTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setCycleMoney(mgtTotalOrderTotalVo.getCycleMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")) {
                    mgtMapTotalVo.setMapKey("服务");
                    mgtMapBigTotalVo.setMapKey("服务");
                    mgtTotalOrderTotalVo.setServiceTotal(mgtTotalOrderTotalVo.getServiceTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setServiceTotal(mgtTotalOrderTotalVo.getServiceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setServiceMoney(mgtTotalOrderTotalVo.getServiceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")) {
                    mgtMapTotalVo.setMapKey("体验");
                    mgtMapBigTotalVo.setMapKey("体验");
                    mgtTotalOrderTotalVo.setExperienceTotal(mgtTotalOrderTotalVo.getExperienceTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setExperienceTotal(mgtTotalOrderTotalVo.getExperienceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setExperienceMoney(mgtTotalOrderTotalVo.getExperienceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")) {
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
                goodsTypeTotalList.add(mgtMapTotalVo);
                goodsTypeMoneyList.add(mgtMapBigTotalVo);
            }
            mgtTotalOrderTotalVo.setGoodsTypeTotalList(goodsTypeTotalList);
            mgtTotalOrderTotalVo.setGoodsTypeMoneyList(goodsTypeMoneyList);
@@ -1367,15 +1369,15 @@
    }
    /**
     * @description  去除空字符串
     * @author  jqs
     * @date    2023/6/27 17:35
     * @param mgtMapTotalVos
     * @return  List<MgtMapTotalVo>
     * @return List<MgtMapTotalVo>
     * @description 去除空字符串
     * @author jqs
     * @date 2023/6/27 17:35
     */
    private List<MgtMapTotalVo> listRemoveNull(List<MgtMapTotalVo> mgtMapTotalVos){
    private List<MgtMapTotalVo> listRemoveNull(List<MgtMapTotalVo> mgtMapTotalVos) {
        for (int i = 0; i < mgtMapTotalVos.size(); i++) {
            if(StringUtils.isBlank(mgtMapTotalVos.get(i).getMapKey())){
            if (StringUtils.isBlank(mgtMapTotalVos.get(i).getMapKey())) {
                mgtMapTotalVos.remove(i);
            }
        }
@@ -1383,15 +1385,15 @@
    }
    /**
     * @description  去除空字符串
     * @author  jqs
     * @date    2023/6/27 17:35
     * @param mgtMapTotalVos
     * @return  List<MgtMapTotalVo>
     * @return List<MgtMapTotalVo>
     * @description 去除空字符串
     * @author jqs
     * @date 2023/6/27 17:35
     */
    private List<MgtMapBigTotalVo> bigListRemoveNull(List<MgtMapBigTotalVo> mgtMapTotalVos){
    private List<MgtMapBigTotalVo> bigListRemoveNull(List<MgtMapBigTotalVo> mgtMapTotalVos) {
        for (int i = 0; i < mgtMapTotalVos.size(); i++) {
            if(StringUtils.isBlank(mgtMapTotalVos.get(i).getMapKey())){
            if (StringUtils.isBlank(mgtMapTotalVos.get(i).getMapKey())) {
                mgtMapTotalVos.remove(i);
            }
        }
@@ -1399,48 +1401,60 @@
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/6/20 9:27
     * @param mgtBaseShopDto
     * @return  MgtTotalActivityTotalVo
     * @return MgtTotalActivityTotalVo
     * @description
     * @author jqs
     * @date 2023/6/20 9:27
     */
    @Override
    public MgtTotalActivityTotalVo getTotalActivityTotal(MgtBaseShopDto mgtBaseShopDto){
    public MgtTotalActivityTotalVo getTotalActivityTotal(MgtBaseShopDto mgtBaseShopDto) {
        //获取基础统计
        MgtTotalActivityTotalVo totalActivityTotalVo = orderMapper.getTotalActivityTotal(mgtBaseShopDto);
        //获取商品分类销售数据
        List<MgtMapTotalPlusVo> mgtMapTotalVoGoodsType = orderMapper.listTotalActivityTotalGoodsType(mgtBaseShopDto);
        if (mgtMapTotalVoGoodsType != null && mgtMapTotalVoGoodsType.size() > 0) {
            String[] goodsTypeKey = new String[mgtMapTotalVoGoodsType.size()];
            Integer[] goodsTypeTotalValue = new Integer[mgtMapTotalVoGoodsType.size()];
            BigDecimal[] goodsTypeMoneyValue = new BigDecimal[mgtMapTotalVoGoodsType.size()];
            List<MgtMapTotalVo> goodsTypeTotalList = new ArrayList<>();
            List<MgtMapBigTotalVo> goodsTypeMoneyList = new ArrayList<>();
            totalActivityTotalVo.setCycleTotal(0);
            totalActivityTotalVo.setCycleMoney(BigDecimal.ZERO);
            totalActivityTotalVo.setServiceTotal(0);
            totalActivityTotalVo.setServiceMoney(BigDecimal.ZERO);
            totalActivityTotalVo.setExperienceTotal(0);
            totalActivityTotalVo.setExperienceMoney(BigDecimal.ZERO);
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            MgtMapTotalVo mgtMapTotalVo;
            MgtMapBigTotalVo mgtMapBigTotalVo;
            // 遍历不同商品类型的会员数列表,设置商品类型数组和对应的会员数数组
            for (int i = 0; i < mgtMapTotalVoGoodsType.size(); i++) {
                goodsTypeTotalValue[i] = mgtMapTotalVoGoodsType.get(i).getMapValueFirst();
                goodsTypeMoneyValue[i] = mgtMapTotalVoGoodsType.get(i).getMapValueSecond();
                if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")){
                    goodsTypeKey[i] = "周期";
                    totalActivityTotalVo.setCycleTotal(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setCycleMoney(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                    totalActivityTotalVo.setCyclePerson(mgtMapTotalVoGoodsType.get(i).getMapValueThird());
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")){
                    goodsTypeKey[i] = "服务";
                    totalActivityTotalVo.setServiceTotal(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setServiceMoney(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                    totalActivityTotalVo.setServicePerson(mgtMapTotalVoGoodsType.get(i).getMapValueThird());
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")){
                    goodsTypeKey[i] = "体验";
                    totalActivityTotalVo.setExperienceTotal(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setExperienceMoney(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                    totalActivityTotalVo.setExperiencePerson(mgtMapTotalVoGoodsType.get(i).getMapValueThird());
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")){
                    goodsTypeKey[i] = "单品";
                mgtMapTotalVo = new MgtMapTotalVo();
                mgtMapBigTotalVo = new MgtMapBigTotalVo();
                mgtMapTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                mgtMapBigTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")) {
                    mgtMapTotalVo.setMapKey("周期");
                    mgtMapBigTotalVo.setMapKey("周期");
                    totalActivityTotalVo.setCycleTotal(totalActivityTotalVo.getCycleTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setCycleMoney(totalActivityTotalVo.getCycleMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")) {
                    mgtMapTotalVo.setMapKey("服务");
                    mgtMapBigTotalVo.setMapKey("服务");
                    totalActivityTotalVo.setServiceTotal(totalActivityTotalVo.getServiceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setServiceMoney(totalActivityTotalVo.getServiceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")) {
                    mgtMapTotalVo.setMapKey("体验");
                    mgtMapBigTotalVo.setMapKey("体验");
                    totalActivityTotalVo.setExperienceTotal(totalActivityTotalVo.getExperienceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setExperienceMoney(totalActivityTotalVo.getExperienceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")) {
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
                goodsTypeTotalList.add(mgtMapTotalVo);
                goodsTypeMoneyList.add(mgtMapBigTotalVo);
            }
            totalActivityTotalVo.setGoodsTypeKey(goodsTypeKey);
            totalActivityTotalVo.setGoodsTypeTotalValue(goodsTypeTotalValue);
            totalActivityTotalVo.setGoodsTypeMoneyValue(goodsTypeMoneyValue);
            totalActivityTotalVo.setGoodsTypeTotalList(goodsTypeTotalList);
            totalActivityTotalVo.setGoodsTypeMoneyList(goodsTypeMoneyList);
        }
        //获取订单分布
        List<MgtMapTotalPlusVo> mgtMapTotalVos = orderMapper.listTotalActivityTotal(mgtBaseShopDto);
@@ -1461,31 +1475,45 @@
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/6/20 9:56
     * @param mgtActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     * @return MgtTotalActivityTotalVo
     * @description
     * @author jqs
     * @date 2023/6/20 9:56
     */
    @Override
    public MgtTotalActivityTotalVo getTotalActivityAgeRank(MgtActivityAgeDto mgtActivityAgeDto){
    public MgtTotalActivityTotalVo getTotalActivityAgeRank(MgtActivityAgeDto mgtActivityAgeDto) {
        List<Long> userIds = orderMapper.getUserIdAgeRank(mgtActivityAgeDto);
        mgtActivityAgeDto.setUserIds(userIds);
        userIds = remoteMemberService.listUserIdByAge(mgtActivityAgeDto).getData();
        mgtActivityAgeDto.setUserIds(userIds);
        MgtTotalActivityTotalVo totalActivityTotalVo = orderMapper.getTotalActivityAgeRank(mgtActivityAgeDto);
        List<MgtMapTotalVo> ageRankList = orderMapper.getTotalActivityAgeRank(mgtActivityAgeDto);
        ageRankList = listRemoveNull(ageRankList);
        MgtTotalActivityTotalVo totalActivityTotalVo = new MgtTotalActivityTotalVo();
        String[] activityAgeKey = new String[ageRankList.size()];
        Integer[] activityAgeValue = new Integer[ageRankList.size()];
        if (!ageRankList.isEmpty()) {
            MgtMapTotalVo mgtMapTotalVo;
            for (int i = 0; i < ageRankList.size(); i++) {
                mgtMapTotalVo = ageRankList.get(i);
                activityAgeKey[i] = mgtMapTotalVo.getMapKey();
                activityAgeValue[i] = mgtMapTotalVo.getMapValue();
            }
        }
        totalActivityTotalVo.setActivityAgeKey(activityAgeKey);
        totalActivityTotalVo.setActivityAgeValue(activityAgeValue);
        return totalActivityTotalVo;
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/6/20 15:31
     * @param mgtBaseShopDto
     * @return  MgtTotalDataTotalVo
     * @return MgtTotalDataTotalVo
     * @description
     * @author jqs
     * @date 2023/6/20 15:31
     */
    @Override
    public MgtTotalDataTotalVo getTotalDataTotal(MgtBaseShopDto mgtBaseShopDto){
    public MgtTotalDataTotalVo getTotalDataTotal(MgtBaseShopDto mgtBaseShopDto) {
        //获取人数统计
        MgtTotalDataTotalVo mgtTotalDataTotalVo = orderMapper.getTotalDataTotal(mgtBaseShopDto);
        BigDecimal salesTotal = orderMapper.shopSalesTotal(mgtBaseShopDto);
@@ -1498,26 +1526,26 @@
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/6/21 15:26
     * @param mgtBasePlatformDto
     * @return  List<MgtMapTotalVo>
     * @return List<MgtMapTotalVo>
     * @description
     * @author jqs
     * @date 2023/6/21 15:26
     */
    @Override
    public List<MgtMapTotalVo> listMemberGoodsRank(MgtBasePlatformDto mgtBasePlatformDto){
    public List<MgtMapTotalVo> listMemberGoodsRank(MgtBasePlatformDto mgtBasePlatformDto) {
        return orderMapper.listMemberGoodsRank(mgtBasePlatformDto);
    }
    /**
     * @description 获取平台商户数据统计
     * @param mgtBasePlatformDto
     * @return List<MgtTotalDataTotalVo>
     * @description 获取平台商户数据统计
     * @author jqs34
     * @date 2023/6/23 14:01
     */
    @Override
    public List<MgtTotalDataTotalVo> getPlTotalDataTotal(MgtBasePlatformDto mgtBasePlatformDto){
    public List<MgtTotalDataTotalVo> getPlTotalDataTotal(MgtBasePlatformDto mgtBasePlatformDto) {
        //获取需要关联的用户id集合
        if (mgtBasePlatformDto.getDeptId() != null) {
            List<Long> userIdList = new ArrayList<>();
@@ -1537,8 +1565,8 @@
        List<MgtTotalDataTotalVo> mgtTotalDataTotalVoList = new ArrayList<>();
        MgtBaseShopDto mgtBaseShopDto;
        MgtTotalDataTotalVo mgtTotalDataTotalVo;
        if(shopIdList!=null&&!shopIdList.isEmpty()){
            for(Long shopId : shopIdList){
        if (shopIdList != null && !shopIdList.isEmpty()) {
            for (Long shopId : shopIdList) {
                mgtBaseShopDto = new MgtBaseShopDto();
                mgtBaseShopDto.setStartDate(mgtBasePlatformDto.getStartDate());
                mgtBaseShopDto.setEndDate(mgtBasePlatformDto.getEndDate());
@@ -1553,14 +1581,14 @@
    }
    /**
     * @description 获取平台商户订单统计
     * @param mgtBasePlatformDto
     * @return MgtTotalOrderTotalVo
     * @description 获取平台商户订单统计
     * @author jqs34
     * @date 2023/6/19 22:23
     */
    @Override
    public MgtTotalOrderTotalVo getPlTotalOrderTotal(MgtBasePlatformDto mgtBasePlatformDto){
    public MgtTotalOrderTotalVo getPlTotalOrderTotal(MgtBasePlatformDto mgtBasePlatformDto) {
        //获取需要关联的用户id集合
        if (mgtBasePlatformDto.getDeptId() != null) {
            List<Long> userIdList = new ArrayList<>();
@@ -1613,25 +1641,27 @@
                mgtMapBigTotalVo = new MgtMapBigTotalVo();
                mgtMapTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                mgtMapBigTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")){
                if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")) {
                    mgtMapTotalVo.setMapKey("周期");
                    mgtMapBigTotalVo.setMapKey("周期");
                    mgtTotalOrderTotalVo.setCycleTotal(mgtTotalOrderTotalVo.getCycleTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setCycleTotal(mgtTotalOrderTotalVo.getCycleTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setCycleMoney(mgtTotalOrderTotalVo.getCycleMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")) {
                    mgtMapTotalVo.setMapKey("服务");
                    mgtMapBigTotalVo.setMapKey("服务");
                    mgtTotalOrderTotalVo.setServiceTotal(mgtTotalOrderTotalVo.getServiceTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setServiceTotal(mgtTotalOrderTotalVo.getServiceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setServiceMoney(mgtTotalOrderTotalVo.getServiceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")) {
                    mgtMapTotalVo.setMapKey("体验");
                    mgtMapBigTotalVo.setMapKey("体验");
                    mgtTotalOrderTotalVo.setExperienceTotal(mgtTotalOrderTotalVo.getExperienceTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setExperienceTotal(mgtTotalOrderTotalVo.getExperienceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    mgtTotalOrderTotalVo.setExperienceMoney(mgtTotalOrderTotalVo.getExperienceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")) {
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
                goodsTypeTotalList.add(mgtMapTotalVo);
                goodsTypeMoneyList.add(mgtMapBigTotalVo);
            }
            mgtTotalOrderTotalVo.setGoodsTypeTotalList(goodsTypeTotalList);
            mgtTotalOrderTotalVo.setGoodsTypeMoneyList(goodsTypeMoneyList);
@@ -1652,14 +1682,14 @@
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/6/20 9:27
     * @param mgtBasePlatformDto
     * @return  MgtTotalActivityTotalVo
     * @return MgtTotalActivityTotalVo
     * @description
     * @author jqs
     * @date 2023/6/20 9:27
     */
    @Override
    public MgtPlTotalActivityTotalVo getPlTotalActivityTotal(MgtBasePlatformDto mgtBasePlatformDto){
    public MgtPlTotalActivityTotalVo getPlTotalActivityTotal(MgtBasePlatformDto mgtBasePlatformDto) {
        //获取需要关联的用户id集合
        if (mgtBasePlatformDto.getDeptId() != null) {
            List<Long> userIdList = new ArrayList<>();
@@ -1698,22 +1728,22 @@
                mgtMapBigTotalVo = new MgtMapBigTotalVo();
                mgtMapTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                mgtMapBigTotalVo.setMapValue(mgtMapTotalVoGoodsType.get(i).getMapValueSecond());
                if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")){
                if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("1")) {
                    mgtMapTotalVo.setMapKey("周期");
                    mgtMapBigTotalVo.setMapKey("周期");
                    totalActivityTotalVo.setCycleTotal(totalActivityTotalVo.getCycleTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setCycleTotal(totalActivityTotalVo.getCycleTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setCycleMoney(totalActivityTotalVo.getCycleMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("2")) {
                    mgtMapTotalVo.setMapKey("服务");
                    mgtMapBigTotalVo.setMapKey("服务");
                    totalActivityTotalVo.setServiceTotal(totalActivityTotalVo.getServiceTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setServiceTotal(totalActivityTotalVo.getServiceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setServiceMoney(totalActivityTotalVo.getServiceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("3")) {
                    mgtMapTotalVo.setMapKey("体验");
                    mgtMapBigTotalVo.setMapKey("体验");
                    totalActivityTotalVo.setExperienceTotal(totalActivityTotalVo.getExperienceTotal()+mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setExperienceTotal(totalActivityTotalVo.getExperienceTotal() + mgtMapTotalVoGoodsType.get(i).getMapValueFirst());
                    totalActivityTotalVo.setExperienceMoney(totalActivityTotalVo.getExperienceMoney().add(mgtMapTotalVoGoodsType.get(i).getMapValueSecond()));
                }else if(mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")){
                } else if (mgtMapTotalVoGoodsType.get(i).getMapKey().equals("4")) {
                    mgtMapTotalVo.setMapKey("单品");
                    mgtMapBigTotalVo.setMapKey("单品");
                }
@@ -1772,33 +1802,47 @@
    }
    /**
     * @description
     * @author  jqs
     * @date    2023/6/20 9:56
     * @param mgtPlActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     * @return MgtTotalActivityTotalVo
     * @description
     * @author jqs
     * @date 2023/6/20 9:56
     */
    @Override
    public List<MgtMapTotalPlusVo> getPlTotalActivityAgeRank(MgtPlActivityAgeDto mgtPlActivityAgeDto){
    public MgtPlTotalActivityTotalVo getPlTotalActivityAgeRank(MgtPlActivityAgeDto mgtPlActivityAgeDto) {
        List<Long> userIds = orderMapper.getPlUserIdAgeRank(mgtPlActivityAgeDto);
        MgtActivityAgeDto mgtActivityAgeDto = new MgtActivityAgeDto();
        mgtActivityAgeDto.setUserIds(userIds);
        mgtActivityAgeDto.setAgeType(mgtPlActivityAgeDto.getAgeType());
        userIds = remoteMemberService.listUserIdByAge(mgtActivityAgeDto).getData();
        mgtPlActivityAgeDto.setUserIds(userIds);
        List<MgtMapTotalPlusVo> ageRankList = orderMapper.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        return ageRankList;
        List<MgtMapTotalVo> ageRankList = orderMapper.getPlTotalActivityAgeRank(mgtPlActivityAgeDto);
        ageRankList = listRemoveNull(ageRankList);
        MgtPlTotalActivityTotalVo plTotalActivityTotalVo = new MgtPlTotalActivityTotalVo();
        String[] activityAgeKey = new String[ageRankList.size()];
        Integer[] activityAgeValue = new Integer[ageRankList.size()];
        if (!ageRankList.isEmpty()) {
            MgtMapTotalVo mgtMapTotalVo;
            for (int i = 0; i < ageRankList.size(); i++) {
                mgtMapTotalVo = ageRankList.get(i);
                activityAgeKey[i] = mgtMapTotalVo.getMapKey();
                activityAgeValue[i] = mgtMapTotalVo.getMapValue();
            }
        }
        plTotalActivityTotalVo.setActivityAgeKey(activityAgeKey);
        plTotalActivityTotalVo.setActivityAgeValue(activityAgeValue);
        return plTotalActivityTotalVo;
    }
    /**
     * @description  获取优惠券核销信息
     * @author  jqs
     * @date    2023/6/27 11:10
     * @param verifyCode
     * @return  MerVerifyCouponVo
     * @return MerVerifyCouponVo
     * @description 获取优惠券核销信息
     * @author jqs
     * @date 2023/6/27 11:10
     */
    @Override
    public MerVerifyCouponVo verifyCoupon(String verifyCode){
    public MerVerifyCouponVo verifyCoupon(String verifyCode) {
        MerVerifyCouponVo merVerifyCouponVo = new MerVerifyCouponVo();
        MerVerifyCouponGetVo verifyCouponGetVo = remoteCouponService.getVerifyCoupon(verifyCode).getData();
ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/order/OrderService.java
@@ -267,7 +267,7 @@
     * @param mgtPLActivityAgeDto
     * @return  MgtTotalActivityTotalVo
     */
    List<MgtMapTotalPlusVo> getPlTotalActivityAgeRank(MgtPlActivityAgeDto mgtPLActivityAgeDto);
    MgtPlTotalActivityTotalVo getPlTotalActivityAgeRank(MgtPlActivityAgeDto mgtPLActivityAgeDto);
    /**
     * @description  获取优惠券核销信息
ruoyi-modules/ruoyi-order/src/main/resources/mapper/order/OrderMapper.xml
@@ -803,10 +803,10 @@
        </if>
    </select>
    <select id="getTotalActivityAgeRank" resultType="com.ruoyi.order.domain.vo.MgtMapTotalPlusVo">
    <select id="getTotalActivityAgeRank" resultType="com.ruoyi.system.api.domain.vo.MgtMapTotalVo">
        SELECT
        DATE_FORMAT(create_time, '%Y-%m-%d') AS mapKey,
        COUNT(DISTINCT user_id) AS mapValueFirst
        COUNT(DISTINCT user_id) AS mapValue
        FROM
        t_order
        WHERE
@@ -1143,10 +1143,10 @@
        </if>
    </select>
    <select id="getPlTotalActivityAgeRank" resultType="com.ruoyi.order.domain.vo.MgtMapTotalPlusVo">
    <select id="getPlTotalActivityAgeRank" resultType="com.ruoyi.system.api.domain.vo.MgtMapTotalVo">
        SELECT
        DATE_FORMAT(create_time, '%Y-%m-%d') AS mapKey,
        COUNT(DISTINCT user_id) AS mapValueFirst
        COUNT(DISTINCT user_id) AS mapValue
        FROM t_order
        WHERE del_flag = 0 AND order_from = 2
        AND create_time >= DATE_SUB(CURDATE(), INTERVAL 6 DAY)
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/controller/management/MgtShopController.java
@@ -13,6 +13,7 @@
import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -80,7 +81,7 @@
    @RequestMapping(value = "/createMgtShop", method = RequestMethod.POST)
    @Log(title = "商户管理", businessType = BusinessType.UPDATE,operContent = "编辑商户")
    @ApiOperation(value = "平台编辑商户")
    public R createMgtShop(@RequestBody MgtEditShopDto mgtEditShopDto) {
    public R createMgtShop(@Validated @RequestBody MgtEditShopDto mgtEditShopDto) {
        Long userId = SecurityUtils.getUserId();
        mgtEditShopDto.setUserId(userId);
        shopService.createShop(mgtEditShopDto);
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/domain/dto/MgtEditShopDto.java
@@ -5,6 +5,8 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
 * @author jqs34
 * @ClassName ManageCreateShopDto
@@ -20,9 +22,11 @@
    private Long shopId;
    @ApiModelProperty("商户名称")
    @NotNull(message = "商户名称不能为空")
    private String shopName;
    @ApiModelProperty("商户类型1.经销商2.代理商")
    @NotNull(message = "商户类型不能为空")
    private Integer shopType;
    @ApiModelProperty("营业开始时间")
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtConfigController.java
@@ -15,6 +15,7 @@
import com.ruoyi.system.service.config.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
@@ -249,7 +250,7 @@
    @RequestMapping(value = "/editOtherConfig", method = RequestMethod.POST)
    @Log(title = "其它设置管理", businessType = BusinessType.UPDATE,operContent = "修改其它设置")
    @ApiOperation(value = "修改其它设置")
    public R editOtherConfig(@RequestBody MgtOtherConfigEditDto mgtOtherConfigEditDto) {
    public R editOtherConfig(@Validated @RequestBody MgtOtherConfigEditDto mgtOtherConfigEditDto) {
        customConfigService.editOtherConfig(mgtOtherConfigEditDto);
        return R.ok();
    }
@@ -257,7 +258,7 @@
    @RequestMapping(value = "/editShopConfig", method = RequestMethod.POST)
    @Log(title = "其它设置管理", businessType = BusinessType.UPDATE,operContent = "修改合作商配置")
    @ApiOperation(value = "修改合作商配置")
    public R editShopConfig(@RequestBody MgtShopConfigEditDto mgtShopConfigEditDto) {
    public R editShopConfig(@Validated @RequestBody MgtShopConfigEditDto mgtShopConfigEditDto) {
        customConfigService.editShopConfig(mgtShopConfigEditDto);
        return R.ok();
    }
@@ -265,7 +266,7 @@
    @RequestMapping(value = "/editMemberConfig", method = RequestMethod.POST)
    @Log(title = "其它设置管理", businessType = BusinessType.UPDATE,operContent = "修改会员配置")
    @ApiOperation(value = "修改会员配置")
    public R editMemberConfig(@RequestBody MgtMemberConfigEditDto mgtMemberConfigEditDto) {
    public R editMemberConfig(@Validated @RequestBody MgtMemberConfigEditDto mgtMemberConfigEditDto) {
        customConfigService.editMemberConfig(mgtMemberConfigEditDto);
        return R.ok();
    }
@@ -273,7 +274,7 @@
    @RequestMapping(value = "/editAdvert", method = RequestMethod.POST)
    @Log(title = "其它设置管理", businessType = BusinessType.UPDATE,operContent = "修改广告配置")
    @ApiOperation(value = "修改广告配置")
    public R editAdvert(@RequestBody MgtAdvertEditDto mgtAdvertEditDto) {
    public R editAdvert(@Validated @RequestBody MgtAdvertEditDto mgtAdvertEditDto) {
        mgtAdvertEditDto.setUserId(SecurityUtils.getUserId());
        advertService.editMgtAdvert(mgtAdvertEditDto);
        return R.ok();
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/management/MgtStaffController.java
@@ -16,6 +16,7 @@
import com.ruoyi.system.service.staff.SysStaffService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
@@ -128,7 +129,7 @@
    @RequestMapping(value = "/mgtEditStaff", method = RequestMethod.POST)
    @Log(title = "员工管理", businessType = BusinessType.UPDATE,operContent = "编辑员工")
    @ApiOperation(value = "平台编辑员工")
    public R mgtEditStaff(@RequestBody MgtStaffEditDto mgtStaffEditDto) {
    public R mgtEditStaff(@Validated  @RequestBody MgtStaffEditDto mgtStaffEditDto) {
        Long userId = SecurityUtils.getUserId();
        mgtStaffEditDto.setUserId(userId);
        sysStaffService.mgtStaffEdit(mgtStaffEditDto);
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/MgtStaffEditDto.java
@@ -4,6 +4,8 @@
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
 * @author jqs34
 * @version 1.0
@@ -16,6 +18,7 @@
        @ApiModelProperty(value = "部门id")
        @NotNull(message = "部门id不能为空")
        private Long deptId;
        /**
         * 用户id
@@ -26,11 +29,13 @@
         * 员工姓名
         */
        @ApiModelProperty(value = "员工姓名")
        @NotNull(message = "员工姓名不能为空")
        private String staffName;
        /**
         * 员工电话
         */
        @ApiModelProperty(value = "员工电话")
        @NotNull(message = "员工电话不能为空")
        private String staffMobile;
        /**
         * 员工邮箱
@@ -51,6 +56,7 @@
         * 负责人标记
         */
        @ApiModelProperty(value = "负责人标记")
        @NotNull(message = "负责人标记不能为空")
        private String headFlag;
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/staff/SysStaffServiceImpl.java
@@ -4,6 +4,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.exception.ServiceException;
import com.ruoyi.common.core.utils.StringUtils;
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.common.security.utils.SecurityUtils;
import com.ruoyi.system.api.constant.AppErrorConstant;
@@ -104,6 +105,9 @@
        queryWrapper.eq(SysStaff::getDelFlag,0);
        queryWrapper.eq(SysStaff::getStaffMobile,mgtStaffEditDto.getStaffMobile());
        SysStaff sysStaffSame = this.getOne(queryWrapper, false);
        if(StringUtils.isBlank(mgtStaffEditDto.getStaffAvatar())){
            mgtStaffEditDto.setStaffAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png");
        }
        if(mgtStaffEditDto.getSysUserId()!=null){
            if(sysStaffSame!=null&&!sysStaffSame.getUserId().equals(mgtStaffEditDto.getSysUserId())){
                throw new ServiceException(AppErrorConstant.STAFF_MOBILE_DOUBLE);