bug
jiangqs
2023-09-25 2e7f787f8e0859d0a9a6ff1eab6aeadac7934c50
bug
1 文件已重命名
22个文件已修改
278 ■■■■ 已修改文件
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/activity/Activity.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteActivityFallbackFactory.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/activity/ActivityMapper.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/activity/ActivityService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/staff/StaffSysController.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysMenuController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysPermissionServiceImpl.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysPermissionService.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-system/src/test/java/com/ruoyi/system/systemTest.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/poji/activity/Activity.java
File was renamed from ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/pojo/activity/Activity.java
@@ -1,4 +1,4 @@
package com.ruoyi.goods.domain.pojo.activity;
package com.ruoyi.system.api.domain.poji.activity;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotation.TableField;
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteActivityFallbackFactory.java
@@ -5,6 +5,7 @@
import com.ruoyi.system.api.domain.dto.ActivityGoodsGetDto;
import com.ruoyi.system.api.domain.dto.ActivityTotalChangeDto;
import com.ruoyi.system.api.domain.dto.MerActivityShopDto;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo;
import com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo;
@@ -88,6 +89,11 @@
            public R<Boolean> judgeActivityShop(MerActivityShopDto merActivityShopDto) {
                return R.fail("判断是否商户活动失败:" + throwable.getMessage());
            }
            @Override
            public R<Activity> getActivity(String activityId) {
                return null;
            }
        };
    }
}
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/service/RemoteActivityService.java
@@ -6,6 +6,7 @@
import com.ruoyi.system.api.domain.dto.ActivityGoodsGetDto;
import com.ruoyi.system.api.domain.dto.ActivityTotalChangeDto;
import com.ruoyi.system.api.domain.dto.MerActivityShopDto;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.system.api.domain.poji.activity.ActivityGoods;
import com.ruoyi.system.api.domain.poji.activity.ActivityRecord;
import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo;
@@ -131,4 +132,14 @@
     */
    @PostMapping("/activity/judgeActivityShop")
    public R<Boolean> judgeActivityShop(@RequestBody MerActivityShopDto merActivityShopDto);
    /**
     * @description  通过id获取活动
     * @author  jqs
     * @date    2023/9/20 20:05
     * @param activityId
     * @return  R<Activity>
     */
    @PostMapping("/activity/getActivity")
    public R<Activity> getActivity(@RequestBody String activityId);
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/concole/ActivityController.java
@@ -1,6 +1,7 @@
package com.ruoyi.goods.controller.concole;
import com.ruoyi.common.core.domain.R;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.goods.service.activity.ActivityGoodsService;
import com.ruoyi.goods.service.activity.ActivityRecordService;
import com.ruoyi.goods.service.activity.ActivityService;
@@ -187,4 +188,16 @@
        return R.ok(judge);
    }
    /**
     * @description  通过id获取活动
     * @author  jqs
     * @date    2023/9/20 20:05
     * @param activityId
     * @return  R<Activity>
     */
    @PostMapping("/getActivity")
    public R<Activity> getActivity(@RequestBody String activityId){
        Activity activity = activityService.getById(activityId);
        return R.ok(activity);
    }
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/mapper/activity/ActivityMapper.java
@@ -4,7 +4,7 @@
import com.ruoyi.goods.domain.dto.MgtActivityPageDto;
import com.ruoyi.goods.domain.dto.MgtActivityRecordPageDto;
import com.ruoyi.goods.domain.dto.StaffActivityListDto;
import com.ruoyi.goods.domain.pojo.activity.Activity;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.goods.domain.vo.*;
import com.ruoyi.system.api.domain.dto.AGStockChangeDto;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/activity/ActivityService.java
@@ -3,7 +3,7 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.goods.domain.dto.*;
import com.ruoyi.goods.domain.pojo.activity.Activity;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.goods.domain.vo.*;
import com.ruoyi.system.api.domain.dto.*;
import com.ruoyi.system.api.domain.vo.ActivityGoodsGetVo;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/activity/ActivityServiceImpl.java
@@ -10,7 +10,7 @@
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.common.redis.service.RedisService;
import com.ruoyi.goods.domain.dto.*;
import com.ruoyi.goods.domain.pojo.activity.Activity;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.goods.domain.pojo.activity.ActivityTotal;
import com.ruoyi.goods.domain.vo.*;
import com.ruoyi.goods.mapper.activity.ActivityMapper;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java
@@ -9,7 +9,7 @@
import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.common.security.utils.CodeFactoryUtil;
import com.ruoyi.goods.domain.dto.*;
import com.ruoyi.goods.domain.pojo.activity.Activity;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.goods.domain.pojo.goods.GoodsTotal;
import com.ruoyi.goods.domain.vo.*;
import com.ruoyi.goods.mapper.goods.GoodsMapper;
ruoyi-modules/ruoyi-goods/src/main/resources/mapper/activity/ActivityMapper.xml
@@ -108,7 +108,7 @@
        ORDER BY ta.create_time DESC
    </select>
    <select id="getRecommendActivity" resultType="com.ruoyi.goods.domain.pojo.activity.Activity">
    <select id="getRecommendActivity" resultType="com.ruoyi.system.api.domain.poji.activity.Activity">
        SELECT * FROM t_activity
        WHERE del_flag = 0 AND recommend_flag = 1 AND NOW() BETWEEN activity_start_time AND activity_end_time
        AND activity_status = 1
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/domain/vo/MgtCouponGetVo.java
@@ -76,6 +76,9 @@
    @ApiModelProperty(value = "关联活动id")
    private String relationActivityId;
    @ApiModelProperty(value = "关联活动")
    private String relationActivityName;
    @ApiModelProperty(value = "关联用户集合")
    private List<MgtCouponMemberListVo> relUserList;
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java
@@ -424,14 +424,14 @@
            birthdayCard.setCreateTime(new Date());
            birthdayCard.setCreateUserId(merBirthdayEditDto.getUserId());
        }
        birthdayCard.setCardStatus(merBirthdayEditDto.getCardStatus());
        this.saveOrUpdate(birthdayCard);
        List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(birthdayCard.getCardId());
        if(merBirthdayEditDto.getCardStatus()==1){
            if(birthdayGiftList==null||birthdayGiftList.isEmpty()){
                throw new ServiceException(AppErrorConstant.BIRTHDAYCARD_NO_GIFT);
            }
        }
        birthdayCard.setCardStatus(merBirthdayEditDto.getCardStatus());
        this.saveOrUpdate(birthdayCard);
    }
    /**
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/coupon/CouponServiceImpl.java
@@ -19,6 +19,7 @@
import com.ruoyi.system.api.constant.AppErrorConstant;
import com.ruoyi.system.api.constant.DelayTaskEnum;
import com.ruoyi.system.api.domain.dto.*;
import com.ruoyi.system.api.domain.poji.activity.Activity;
import com.ruoyi.system.api.domain.poji.config.DelayTask;
import com.ruoyi.system.api.domain.poji.goods.Goods;
import com.ruoyi.system.api.domain.poji.member.Member;
@@ -202,6 +203,11 @@
            List<MgtCouponMemberListVo> relUserList = couponRelUserService.listCouponMemberVo(coupon.getCouponId());
            mgtCouponGetVo.setRelUserList(relUserList);
        }
        //获取活动名称
        if(coupon.getSendTarget()==5&&coupon.getRelationType()==2){
            Activity activity = remoteActivityService.getActivity(coupon.getRelationActivityId()).getData();
            mgtCouponGetVo.setRelationActivityName(activity.getActivityName());
        }
        if(mgtCouponGetVo.getSendLimitFlag()==0){
            mgtCouponGetVo.setSendLimitNumber(null);
        }
ruoyi-modules/ruoyi-shop/src/main/java/com/ruoyi/shop/service/impl/shop/ShopServiceImpl.java
@@ -375,7 +375,8 @@
        shopProportion.setDelFlag(0);
        shopProportion.setShopId(shop.getShopId());
        shopProportion.setShopType(shop.getShopType());
        BigDecimal proportionPercent = redisService.getCacheObject(SecurityConstant.SHOP_COMMON_PROPORTION);
        String proportionPercentStr = redisService.getCacheObject(SecurityConstant.SHOP_COMMON_PROPORTION);
        BigDecimal proportionPercent = new BigDecimal(proportionPercentStr);
        if(proportionPercent==null){
            proportionPercent = new BigDecimal("30");
        }
ruoyi-modules/ruoyi-shop/src/main/resources/mapper/shop/ShopMapper.xml
@@ -434,9 +434,9 @@
    <select id="getNearbyShop"  resultType="com.ruoyi.shop.domain.vo.AppNearShopVo">
        SELECT ts.shop_id shopId,
               6378.138 * 2 * ASIN(SQRT(POW(SIN((28.837917676710354 * PI() / 180 - ts.shop_latitude * PI() / 180) / 2), 2)
                + COS(28.837917676710354 * PI() / 180) * COS(ts.shop_latitude * PI() / 180) * POW(
               SIN((105.43587830688473 * PI() / 180 - ts.shop_longitude * PI() / 180) / 2), 2
               6378.138 * 2 * ASIN(SQRT(POW(SIN((#{param.latitude} * PI() / 180 - ts.shop_latitude * PI() / 180) / 2), 2)
                + COS(#{param.latitude} * PI() / 180) * COS(ts.shop_latitude * PI() / 180) * POW(
               SIN((#{param.longitude} * PI() / 180 - ts.shop_longitude * PI() / 180) / 2), 2
               ))) AS distance
        FROM t_shop ts
        WHERE del_flag = 0 AND shop_status = 1
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/staff/StaffSysController.java
@@ -14,6 +14,7 @@
import com.ruoyi.system.domain.vo.StaffUserGetVo;
import com.ruoyi.system.service.config.StaffSuggestService;
import com.ruoyi.system.service.staff.SysStaffService;
import com.ruoyi.system.service.sys.ISysPermissionService;
import com.ruoyi.system.service.sys.ISysUserService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -22,6 +23,7 @@
import javax.annotation.Resource;
import java.util.List;
import java.util.Set;
import static com.ruoyi.common.core.web.domain.AjaxResult.success;
@@ -46,6 +48,9 @@
    @Resource
    private StaffSuggestService staffSuggestService;
    @Resource
    private ISysPermissionService permissionService;
    @RequestMapping(value = "/getStaffShopInfo", method = RequestMethod.POST)
    @ApiOperation(value = "获取员工端商户信息")
    public R<StaffUserGetVo> getStaffShopInfo() {
@@ -62,6 +67,15 @@
        return R.ok(staffUserGetVo);
    }
    @RequestMapping(value = "/getStaffPermissions", method = RequestMethod.POST)
    @ApiOperation(value = "获取员工端权限")
    public R<Set<String>> getStaffPermissions() {
        Long userId = SecurityUtils.getUserId();
        SysUser sysUser = sysUserService.selectUserById(userId);
        Set<String> permissions = permissionService.getStaffClientMenuPermission(sysUser);
        return R.ok(permissions);
    }
    @RequestMapping(value = "/staffSuggest", method = RequestMethod.POST)
    @ApiOperation(value = "员工发起建议")
    public R userSuggest(@RequestBody StaffUseSuggestDto staffUseSuggestDto) {
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/sys/SysMenuController.java
@@ -178,4 +178,17 @@
        List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
        return success(menuService.buildMenus(menus));
    }
    /**
     * 获取路由信息
     *
     * @return 路由信息
     */
    @GetMapping("getStaffRouters")
    public AjaxResult getStaffRouters()
    {
        Long userId = SecurityUtils.getUserId();
        List<SysMenu> menus = menuService.selectStaffMenuTreeByUserId(userId);
        return success(menuService.buildMenus(menus));
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/mapper/sys/SysMenuMapper.java
@@ -102,11 +102,27 @@
    public List<String> selectMenuPermsByStaffUserId(Long userId);
    /**
     * 根据用户ID查询权限
     *
     * @param userId 用户ID
     * @return 权限列表
     */
    public List<String> selectStaffClientMenuPermsByStaffUserId(Long userId);
    /**
     * 根据用户ID查询菜单
     * 
     * @return 菜单列表
     */
    public List<SysMenu> selectMenuTreeAll();
    /**
     * 根据用户ID查询菜单
     *
     * @return 菜单列表
     */
    public List<SysMenu> selectStaffClientMenuTreeAll();
    /**
     * 根据用户ID查询菜单
@@ -122,9 +138,25 @@
     * @param userId 用户ID
     * @return 菜单列表
     */
    public List<SysMenu> selectStaffClientMenuTreeByUserId(Long userId);
    /**
     * 根据用户ID查询菜单
     *
     * @param userId 用户ID
     * @return 菜单列表
     */
    public List<SysMenu> selectStaffMenuTreeByUserId(Long userId);
    /**
     * 根据用户ID查询菜单
     *
     * @param userId 用户ID
     * @return 菜单列表
     */
    public List<SysMenu> selectStaffClientStaffMenuTreeByUserId(Long userId);
    /**
     * 根据角色ID查询菜单树信息
     * 
     * @param roleId 角色ID
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysMenuServiceImpl.java
@@ -174,6 +174,28 @@
    }
    /**
     * 根据用户ID查询权限
     *
     * @param userId 用户ID
     * @return 权限列表
     */
    @Override
    public Set<String> selectStaffClientMenuPermsByUserId(Long userId){
        SysUser sysUser = sysUserService.selectUserById(userId);
        List<String> perms = null;
        perms = menuMapper.selectStaffClientMenuPermsByStaffUserId(userId);
        Set<String> permsSet = new HashSet<>();
        for (String perm : perms)
        {
            if (StringUtils.isNotEmpty(perm))
            {
                permsSet.addAll(Arrays.asList(perm.trim().split(",")));
            }
        }
        return permsSet;
    }
    /**
     * 根据角色ID查询权限
     * 
     * @param roleId 角色ID
@@ -217,6 +239,23 @@
        return getChildPerms(menus, 0);
    }
    @Override
    public List<SysMenu> selectStaffMenuTreeByUserId(Long userId)
    {
        List<SysMenu> menus = null;
        if (SecurityUtils.isAdmin(userId))
        {
            menus = menuMapper.selectStaffClientMenuTreeAll();
        }
        else if(userId.equals(1L)||userId.equals(2L))
        {
            menus = menuMapper.selectStaffClientMenuTreeByUserId(userId);
        }else{
            menus = menuMapper.selectStaffClientStaffMenuTreeByUserId(userId);
        }
        return getChildPerms(menus, 0);
    }
    /**
     * 根据角色ID查询菜单树信息
     * 
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/sys/SysPermissionServiceImpl.java
@@ -1,15 +1,16 @@
package com.ruoyi.system.service.impl.sys;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.api.domain.poji.sys.SysRole;
import com.ruoyi.system.api.domain.poji.sys.SysUser;
import com.ruoyi.system.service.sys.ISysMenuService;
import com.ruoyi.system.service.sys.ISysPermissionService;
import com.ruoyi.system.service.sys.ISysRoleService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
/**
 * 用户权限处理
@@ -82,4 +83,26 @@
        }
        return perms;
    }
    /**
     * 获取菜单数据权限
     *
     * @param userId 用户Id
     * @return 菜单权限信息
     */
    @Override
    public Set<String> getStaffClientMenuPermission(SysUser user){
        Set<String> perms = new HashSet<String>();
        // 管理员拥有所有权限
        if (user.isAdmin())
        {
            perms.add("*:*:*");
        }
        else
        {
            perms.addAll(menuService.selectStaffClientMenuPermsByUserId(user.getUserId()));
        }
        return perms;
    }
}
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysMenuService.java
@@ -74,12 +74,21 @@
    public Set<String> selectMenuPermsByUserId(Long userId);
    /**
     * 根据用户ID查询权限
     *
     * @param userId 用户ID
     * @return 权限列表
     */
    public Set<String> selectStaffClientMenuPermsByUserId(Long userId);
    /**
     * 根据角色ID查询权限
     * 
     * @param roleId 角色ID
     * @return 权限列表
     */
    public Set<String> selectMenuPermsByRoleId(Long roleId);
    /**
     * 根据用户ID查询菜单树信息
@@ -89,6 +98,8 @@
     */
    public List<SysMenu> selectMenuTreeByUserId(Long userId);
    public List<SysMenu> selectStaffMenuTreeByUserId(Long userId);
    /**
     * 根据角色ID查询菜单树信息
     * 
ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/sys/ISysPermissionService.java
@@ -1,8 +1,8 @@
package com.ruoyi.system.service.sys;
import java.util.Set;
import com.ruoyi.system.api.domain.poji.sys.SysUser;
import java.util.Set;
/**
 * 权限信息 服务层
@@ -26,4 +26,13 @@
     * @return 菜单权限信息
     */
    public Set<String> getMenuPermission(SysUser user);
    /**
     * 获取菜单数据权限
     *
     * @param userId 用户Id
     * @return 菜单权限信息
     */
    public Set<String> getStaffClientMenuPermission(SysUser user);
}
ruoyi-modules/ruoyi-system/src/main/resources/mapper/sys/SysMenuMapper.xml
@@ -72,6 +72,12 @@
        order by m.parent_id, m.order_num
    </select>
    
    <select id="selectStaffClientMenuTreeAll" resultMap="SysMenuResult">
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m where m.menu_type in ('M', 'C') and m.status = '0' AND menu_from = 2
        order by m.parent_id, m.order_num
    </select>
    <select id="selectMenuListByUserId" parameterType="SysMenu" resultMap="SysMenuResult">
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m
@@ -152,11 +158,30 @@
        order by m.parent_id, m.order_num
    </select>
    <select id="selectStaffClientMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m
                 left join sys_role_menu rm on m.menu_id = rm.menu_id
                 left join sys_user_role ur on rm.role_id = ur.role_id
                 left join sys_role ro on ur.role_id = ro.role_id
                 left join sys_user u on ur.user_id = u.user_id
        where u.user_id = #{userId} and m.status = '0' AND ro.status = 0 AND menu_from = 2
        order by m.parent_id, m.order_num
    </select>
    <select id="selectStaffMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m
                 left join sys_user_menu rm on m.menu_id = rm.menu_id
        where rm.user_id = #{userId} and m.menu_type in ('M', 'C') and m.status = '0' AND m.menu_from = 1
        order by m.parent_id, m.order_num
    </select>
    <select id="selectStaffClientStaffMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
        select distinct m.menu_id, m.parent_id, m.menu_name, m.path, m.component, m.`query`, m.visible, m.status, ifnull(m.perms,'') as perms, m.is_frame, m.is_cache, m.menu_type, m.icon, m.order_num, m.create_time
        from sys_menu m
                 left join sys_user_menu rm on m.menu_id = rm.menu_id
        where rm.user_id = #{userId} and m.status = '0' AND m.menu_from = 2
        order by m.parent_id, m.order_num
    </select>
    
@@ -239,13 +264,21 @@
        where m.status = '0' and rm.user_id = #{userId} AND m.menu_from = 1 AND rm.menu_from = 1
    </select>
    
    <select id="selectStaffClientMenuPermsByStaffUserId" parameterType="Long" resultType="String">
        select distinct m.perms
        from sys_menu m
                 INNER join sys_user_menu rm on m.menu_id = rm.menu_id
        where m.status = '0' and rm.user_id = #{userId} AND m.menu_from = 2 AND rm.menu_from = 2
    </select>
    <select id="selectMenuPermsByRoleId" parameterType="Long" resultType="String">
        select distinct m.perms
        from sys_menu m
             left join sys_role_menu rm on m.menu_id = rm.menu_id
        where m.status = '0' and rm.role_id = #{roleId} AND m.menu_from = 1
             left join sys_user_menu rm on m.menu_id = rm.menu_id
        where m.status = '0' and rm.user_id = #{userId} AND m.menu_from = 1
    </select>
    
    <select id="selectMenuById" parameterType="Long" resultMap="SysMenuResult">
        <include refid="selectMenuVo"/>
        where menu_id = #{menuId} AND menu_from = 1
ruoyi-modules/ruoyi-system/src/test/java/com/ruoyi/system/systemTest.java
@@ -1,15 +1,18 @@
package com.ruoyi.system;
import com.ruoyi.system.domain.dto.MgtStaffEditDto;
import com.ruoyi.system.domain.pojo.sys.SysMenu;
import com.ruoyi.system.domain.vo.RouterVo;
import com.ruoyi.system.service.staff.SysStaffService;
import com.ruoyi.system.service.staff.SysWxCpService;
import com.ruoyi.system.service.sys.ISysMenuService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import javax.annotation.Resource;
import java.util.List;
/**
 * @ClassName systemTest
@@ -28,18 +31,15 @@
    @Resource
    private SysStaffService sysStaffService;
    @Resource
    private ISysMenuService menuService;
    @Test
    public void main() {
        MgtStaffEditDto mgtStaffEditDto = new MgtStaffEditDto();
        mgtStaffEditDto.setDeptId(2051L);
        mgtStaffEditDto.setSysUserId(146L);
        mgtStaffEditDto.setStaffName("江秋实1号");
        mgtStaffEditDto.setStaffMobile("13882237106");
        mgtStaffEditDto.setStaffPost("开发");
        mgtStaffEditDto.setHeadFlag("1");
        mgtStaffEditDto.setUserId(146L);
        sysStaffService.mgtStaffEdit(mgtStaffEditDto);
        //List<SysMenu> menus = menuService.selectMenuTreeByUserId(1L);
        List<SysMenu> menus = menuService.selectStaffMenuTreeByUserId(164L);
        List<RouterVo> list = menuService.buildMenus(menus);
        System.out.println(list);
    }
}