ToB企服应用市场:ToB评测及商务社交产业平台

标题: 若依(ruoyi)开源系统保姆级实践-完成第一个页面 [打印本页]

作者: 东湖之滨    时间: 2023-10-22 09:27
标题: 若依(ruoyi)开源系统保姆级实践-完成第一个页面
一、案例描述

若依官网文档地址:http://doc.ruoyi.vip/ruoyi/document/hjbs.html
本教程主要内容,自定义数据库表,使用若依开源系统生成代码并配置权限。
二、若依环境搭建

选用ry-vue版本,项目地址:https://gitee.com/y_project/RuoYi-Vue.git
  1. npm install
  2. npm run dev
复制代码
二、代码生成

  1. CREATE TABLE `t_user` (
  2.   `id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  3.   `name` varchar(30) NOT NULL DEFAULT '' COMMENT '姓名',
  4.   `age` int(11) NULL DEFAULT NULL COMMENT '年龄',
  5.   `gender` tinyint(2) NOT NULL DEFAULT 0 COMMENT '性别,0:女 1:男',
  6.   PRIMARY KEY (`id`)
  7. ) COMMENT = '用户表';
复制代码
三、若依后台配置菜单

我们新定义两级菜单“自定义>>外包用户管理”。这个操作比较简单,如下图所示:


要注意的是路由地址和组件路径,要与项目中的路径一致。
重启项目看效果:

四、权限配置

我们新配置一个账户jingyes,专门用于管理外包用户。
  1. @RestController
  2. @RequestMapping("/jingyes/tuser")
  3. public class TUserController extends BaseController
  4. {
  5.     @Autowired
  6.     private ITUserService tUserService;
  7.     /**
  8.      * 查询用户列表
  9.      */
  10.     @PreAuthorize("@ss.hasPermi('jingyes:tuser:list')")
  11.     @GetMapping("/list")
  12.     public TableDataInfo list(TUser tUser)
  13.     {
  14.         startPage();
  15.         List<TUser> list = tUserService.selectTUserList(tUser);
  16.         return getDataTable(list);
  17.     }
  18.     /**
  19.      * 导出用户列表
  20.      */
  21.     @PreAuthorize("@ss.hasPermi('jingyes:tuser:export')")
  22.     @Log(title = "用户", businessType = BusinessType.EXPORT)
  23.     @PostMapping("/export")
  24.     public void export(HttpServletResponse response, TUser tUser)
  25.     {
  26.         List<TUser> list = tUserService.selectTUserList(tUser);
  27.         ExcelUtil<TUser> util = new ExcelUtil<TUser>(TUser.class);
  28.         util.exportExcel(response, list, "用户数据");
  29.     }
  30.     /**
  31.      * 获取用户详细信息
  32.      */
  33.     @PreAuthorize("@ss.hasPermi('jingyes:tuser:query')")
  34.     @GetMapping(value = "/{id}")
  35.     public AjaxResult getInfo(@PathVariable("id") Long id)
  36.     {
  37.         return success(tUserService.selectTUserById(id));
  38.     }
  39.     /**
  40.      * 新增用户
  41.      */
  42.     @PreAuthorize("@ss.hasPermi('jingyes:tuser:add')")
  43.     @Log(title = "用户", businessType = BusinessType.INSERT)
  44.     @PostMapping
  45.     public AjaxResult add(@RequestBody TUser tUser)
  46.     {
  47.         return toAjax(tUserService.insertTUser(tUser));
  48.     }
  49.     /**
  50.      * 修改用户
  51.      */
  52.     @PreAuthorize("@ss.hasPermi('jingyes:tuser:edit')")
  53.     @Log(title = "用户", businessType = BusinessType.UPDATE)
  54.     @PutMapping
  55.     public AjaxResult edit(@RequestBody TUser tUser)
  56.     {
  57.         return toAjax(tUserService.updateTUser(tUser));
  58.     }
  59.     /**
  60.      * 删除用户
  61.      */
  62.     @PreAuthorize("@ss.hasPermi('jingyes:tuser:remove')")
  63.     @Log(title = "用户", businessType = BusinessType.DELETE)
  64.         @DeleteMapping("/{ids}")
  65.     public AjaxResult remove(@PathVariable Long[] ids)
  66.     {
  67.         return toAjax(tUserService.deleteTUserByIds(ids));
  68.     }
  69. }
复制代码
例如新增按钮,权限配置如下图所示,权限字符要和代码中对应。其他都类似

添加完成后的效果如下,总共配置了这些操作按钮的权限。

本人公众号[ 敬YES ]同步更新,欢迎大家关注~



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4