Переглянути джерело

添加app端登录接口,添加菜单平台区分

gaoxiong 2 роки тому
батько
коміт
9b333aa92e

+ 14 - 0
soc-api/soc-api-system/src/main/java/com/xunmei/system/api/model/LoginUser.java

@@ -46,6 +46,11 @@ public class LoginUser implements Serializable
     private String ipaddr;
 
     /**
+     * 登录平台
+     */
+    private String platformType;
+
+    /**
      * 权限列表
      */
     private Set<String> permissions;
@@ -60,6 +65,15 @@ public class LoginUser implements Serializable
      */
     private SysUser sysUser;
 
+
+    public String getPlatformType() {
+        return platformType;
+    }
+
+    public void setPlatformType(String platformType) {
+        this.platformType = platformType;
+    }
+
     public String getToken()
     {
         return token;

+ 20 - 1
soc-auth/src/main/java/com/xunmei/auth/controller/TokenController.java

@@ -3,6 +3,7 @@ package com.xunmei.auth.controller;
 import com.xunmei.auth.form.LoginBody;
 import com.xunmei.auth.form.RegisterBody;
 import com.xunmei.auth.service.SysLoginService;
+import com.xunmei.common.core.constant.Constants;
 import com.xunmei.common.core.domain.R;
 import com.xunmei.common.core.utils.JwtUtils;
 import com.xunmei.common.core.utils.StringUtils;
@@ -40,7 +41,25 @@ public class TokenController {
                 //登录重放问题处理,待前端完成放开
                 //sysLoginService.checkLogin(form.getAuthCode());
             }
-            LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword());
+            LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword(), Constants.LOGIN_TYPE_1);
+            // 获取登录token
+            return R.ok(tokenService.createToken(userInfo));
+        } catch (Exception e) {
+            return R.fail(e.getMessage());
+        }
+        // 用户登录
+    }
+
+
+    @PostMapping("loginApp")
+    public R<?> loginApp(@RequestBody LoginBody form) {
+
+        try {
+            if (!SecurityUtils.isApp()){
+                //登录重放问题处理,待前端完成放开
+                //sysLoginService.checkLogin(form.getAuthCode());
+            }
+            LoginUser userInfo = sysLoginService.login(form.getUsername(), form.getPassword(), Constants.LOGIN_TYPE_0);
             // 获取登录token
             return R.ok(tokenService.createToken(userInfo));
         } catch (Exception e) {

+ 4 - 3
soc-auth/src/main/java/com/xunmei/auth/service/SysLoginService.java

@@ -28,7 +28,7 @@ import java.util.Date;
 
 /**
  * 登录校验方法
- * 
+ *
  * @author xunmei
  */
 @Component
@@ -49,7 +49,7 @@ public class SysLoginService
     /**
      * 登录
      */
-    public LoginUser login(String username, String password)
+    public LoginUser  login(String username, String password,String platformType)
     {
         // 用户名或密码为空 错误
         if (StringUtils.isAnyBlank(username, password))
@@ -91,8 +91,9 @@ public class SysLoginService
         {
             throw new ServiceException(userResult.getMsg());
         }
-        
+
         LoginUser userInfo = userResult.getData();
+        userInfo.setPlatformType(platformType);
         SysUser user = userResult.getData().getSysUser();
         if (UserStatus.DELETED.getCode().equals(user.getDeleted()))
         {

+ 11 - 0
soc-common/soc-common-core/src/main/java/com/xunmei/common/core/constant/Constants.java

@@ -129,4 +129,15 @@ public class Constants {
 
 
     public static final Long TOP_ORG_PARENT_ID = -1L;
+
+
+    /**
+     * 移动端端登录
+     */
+    public static final String LOGIN_TYPE_0 = "0";
+
+    /**
+     * web端登录
+     */
+    public static final String LOGIN_TYPE_1 = "1";
 }

+ 5 - 4
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/controller/SysMenuController.java

@@ -8,6 +8,7 @@ import com.xunmei.common.log.annotation.Log;
 import com.xunmei.common.log.enums.BusinessType;
 import com.xunmei.common.security.annotation.RequiresPermissions;
 import com.xunmei.common.security.utils.SecurityUtils;
+import com.xunmei.system.api.model.LoginUser;
 import com.xunmei.system.domain.SysMenu;
 import com.xunmei.system.service.ISysMenuService;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -18,7 +19,7 @@ import java.util.List;
 
 /**
  * 菜单信息
- * 
+ *
  * @author xunmei
  */
 @RestController
@@ -140,14 +141,14 @@ public class SysMenuController extends BaseController
 
     /**
      * 获取路由信息
-     * 
+     *
      * @return 路由信息
      */
     @GetMapping("getRouters")
     public AjaxResult getRouters()
     {
-        Long userId = SecurityUtils.getUserId();
-        List<SysMenu> menus = menuService.selectMenuTreeByUserId(userId);
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        List<SysMenu> menus = menuService.selectMenuTreeByUserId(loginUser.getUserid(),loginUser.getPlatformType());
         return success(menuService.buildMenus(menus));
     }
 }

+ 4 - 3
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/domain/SysMenu.java

@@ -1,6 +1,7 @@
 package com.xunmei.system.domain;
 
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.xunmei.common.core.constant.Constants;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
@@ -86,8 +87,8 @@ public class SysMenu extends BaseEntity {
     /**
      * 平台类型:0。移动端,1web端
      */
-  /*  @ApiModelProperty(value = "平台类型:0。移动端,1web端")
-    private Long platformType;*/
+    @ApiModelProperty(value = "平台类型:0。移动端,1web端")
+    private String platformType = Constants.LOGIN_TYPE_1;
 
     /**
      * 菜单类型(M目录 C菜单 F按钮)
@@ -158,8 +159,8 @@ public class SysMenu extends BaseEntity {
 
                 .append("isCache" , getIsCache())
 
+                .append("platformType" , getPlatformType())
 
-              //  .append("platformType" , getPlatformType())
                 .append("remark",getRemark())
 
                 .append("menuType" , getMenuType())

+ 17 - 17
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/mapper/SysMenuMapper.java

@@ -9,14 +9,14 @@ import java.util.List;
 
 /**
  * 菜单表 数据层
- * 
+ *
  * @author xunmei
  */
 public interface SysMenuMapper extends BaseMapper<SysMenu>
 {
     /**
      * 查询系统菜单列表
-     * 
+     *
      * @param menu 菜单信息
      * @return 菜单列表
      */
@@ -24,14 +24,14 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 根据用户所有权限
-     * 
+     *
      * @return 权限列表
      */
     public List<String> selectMenuPerms();
 
     /**
      * 根据用户查询系统菜单列表
-     * 
+     *
      * @param menu 菜单信息
      * @return 菜单列表
      */
@@ -39,7 +39,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 根据角色ID查询权限
-     * 
+     *
      * @param roleId 角色ID
      * @return 权限列表
      */
@@ -47,7 +47,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 根据用户ID查询权限
-     * 
+     *
      * @param userId 用户ID
      * @return 权限列表
      */
@@ -55,22 +55,22 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 根据用户ID查询菜单
-     * 
+     *
      * @return 菜单列表
      */
-    public List<SysMenu> selectMenuTreeAll();
+    public List<SysMenu> selectMenuTreeAll(@Param("platformType") String platformType);
 
     /**
      * 根据用户ID查询菜单
-     * 
+     *
      * @param userId 用户ID
      * @return 菜单列表
      */
-    public List<SysMenu> selectMenuTreeByUserId(Long userId);
+    public List<SysMenu> selectMenuTreeByUserId(@Param("userId") Long userId,@Param("platformType") String platformType);
 
     /**
      * 根据角色ID查询菜单树信息
-     * 
+     *
      * @param roleId 角色ID
      * @param menuCheckStrictly 菜单树选择项是否关联显示
      * @return 选中菜单列表
@@ -79,7 +79,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 根据菜单ID查询信息
-     * 
+     *
      * @param menuId 菜单ID
      * @return 菜单信息
      */
@@ -87,7 +87,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 是否存在菜单子节点
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果
      */
@@ -95,7 +95,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 新增菜单信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -103,7 +103,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 修改菜单信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -111,7 +111,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 删除菜单管理信息
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果
      */
@@ -119,7 +119,7 @@ public interface SysMenuMapper extends BaseMapper<SysMenu>
 
     /**
      * 校验菜单名称是否唯一
-     * 
+     *
      * @param menuName 菜单名称
      * @param parentId 父菜单ID
      * @return 结果

+ 18 - 18
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/ISysMenuService.java

@@ -11,14 +11,14 @@ import java.util.Set;
 
 /**
  * 菜单 业务层
- * 
+ *
  * @author xunmei
  */
 public interface ISysMenuService extends IService<SysMenu>
 {
     /**
      * 根据用户查询系统菜单列表
-     * 
+     *
      * @param userId 用户ID
      * @return 菜单列表
      */
@@ -26,7 +26,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 根据用户查询系统菜单列表
-     * 
+     *
      * @param menu 菜单信息
      * @param userId 用户ID
      * @return 菜单列表
@@ -35,7 +35,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 根据用户ID查询权限
-     * 
+     *
      * @param userId 用户ID
      * @return 权限列表
      */
@@ -43,7 +43,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 根据角色ID查询权限
-     * 
+     *
      * @param roleId 角色ID
      * @return 权限列表
      */
@@ -51,15 +51,15 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 根据用户ID查询菜单树信息
-     * 
+     *
      * @param userId 用户ID
      * @return 菜单列表
      */
-    public List<SysMenu> selectMenuTreeByUserId(Long userId);
+    public List<SysMenu> selectMenuTreeByUserId(Long userId,String platformType);
 
     /**
      * 根据角色ID查询菜单树信息
-     * 
+     *
      * @param roleId 角色ID
      * @return 选中菜单列表
      */
@@ -67,7 +67,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 构建前端路由所需要的菜单
-     * 
+     *
      * @param menus 菜单列表
      * @return 路由列表
      */
@@ -75,7 +75,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 构建前端所需要树结构
-     * 
+     *
      * @param menus 菜单列表
      * @return 树结构列表
      */
@@ -83,7 +83,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 构建前端所需要下拉树结构
-     * 
+     *
      * @param menus 菜单列表
      * @return 下拉树结构列表
      */
@@ -91,7 +91,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 根据菜单ID查询信息
-     * 
+     *
      * @param menuId 菜单ID
      * @return 菜单信息
      */
@@ -99,7 +99,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 是否存在菜单子节点
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果 true 存在 false 不存在
      */
@@ -107,7 +107,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 查询菜单是否存在角色
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果 true 存在 false 不存在
      */
@@ -115,7 +115,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 新增保存菜单信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -123,7 +123,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 修改保存菜单信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -131,7 +131,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 删除菜单管理信息
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果
      */
@@ -139,7 +139,7 @@ public interface ISysMenuService extends IService<SysMenu>
 
     /**
      * 校验菜单名称是否唯一
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */

+ 29 - 29
soc-modules/soc-modules-system/src/main/java/com/xunmei/system/service/impl/SysMenuServiceImpl.java

@@ -26,7 +26,7 @@ import java.util.stream.Collectors;
 
 /**
  * 菜单 业务层处理
- * 
+ *
  * @author xunmei
  */
 @Service
@@ -45,7 +45,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 根据用户查询系统菜单列表
-     * 
+     *
      * @param userId 用户ID
      * @return 菜单列表
      */
@@ -57,7 +57,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 查询系统菜单列表
-     * 
+     *
      * @param menu 菜单信息
      * @return 菜单列表
      */
@@ -80,7 +80,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 根据用户ID查询权限
-     * 
+     *
      * @param userId 用户ID
      * @return 权限列表
      */
@@ -101,7 +101,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 根据角色ID查询权限
-     * 
+     *
      * @param roleId 角色ID
      * @return 权限列表
      */
@@ -122,28 +122,28 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 根据用户ID查询菜单
-     * 
+     *
      * @param userId 用户名称
      * @return 菜单列表
      */
     @Override
-    public List<SysMenu> selectMenuTreeByUserId(Long userId)
+    public List<SysMenu> selectMenuTreeByUserId(Long userId,String platformType)
     {
         List<SysMenu> menus = null;
         if (SecurityUtils.isAdmin(userId))
         {
-            menus = menuMapper.selectMenuTreeAll();
+            menus = menuMapper.selectMenuTreeAll(platformType);
         }
         else
         {
-            menus = menuMapper.selectMenuTreeByUserId(userId);
+            menus = menuMapper.selectMenuTreeByUserId(userId,platformType);
         }
         return getChildPerms(menus, 0);
     }
 
     /**
      * 根据角色ID查询菜单树信息
-     * 
+     *
      * @param roleId 角色ID
      * @return 选中菜单列表
      */
@@ -156,7 +156,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 构建前端路由所需要的菜单
-     * 
+     *
      * @param menus 菜单列表
      * @return 路由列表
      */
@@ -214,7 +214,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 构建前端所需要树结构
-     * 
+     *
      * @param menus 菜单列表
      * @return 树结构列表
      */
@@ -242,7 +242,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 构建前端所需要下拉树结构
-     * 
+     *
      * @param menus 菜单列表
      * @return 下拉树结构列表
      */
@@ -255,7 +255,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 根据菜单ID查询信息
-     * 
+     *
      * @param menuId 菜单ID
      * @return 菜单信息
      */
@@ -267,7 +267,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 是否存在菜单子节点
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果
      */
@@ -280,7 +280,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 查询菜单使用数量
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果
      */
@@ -293,7 +293,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 新增保存菜单信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -305,7 +305,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 修改保存菜单信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -317,7 +317,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 删除菜单管理信息
-     * 
+     *
      * @param menuId 菜单ID
      * @return 结果
      */
@@ -329,7 +329,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 校验菜单名称是否唯一
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -347,7 +347,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 获取路由名称
-     * 
+     *
      * @param menu 菜单信息
      * @return 路由名称
      */
@@ -364,7 +364,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 获取路由地址
-     * 
+     *
      * @param menu 菜单信息
      * @return 路由地址
      */
@@ -392,7 +392,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 获取组件信息
-     * 
+     *
      * @param menu 菜单信息
      * @return 组件信息
      */
@@ -416,7 +416,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 是否为菜单内部跳转
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -428,7 +428,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 是否为内链组件
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -439,7 +439,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 是否为parent_view组件
-     * 
+     *
      * @param menu 菜单信息
      * @return 结果
      */
@@ -450,7 +450,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 根据父节点的ID获取所有子节点
-     * 
+     *
      * @param list 分类表
      * @param parentId 传入的父节点ID
      * @return String
@@ -473,7 +473,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 递归列表
-     * 
+     *
      * @param list
      * @param t
      */
@@ -519,7 +519,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
 
     /**
      * 内链域名特殊字符替换
-     * 
+     *
      * @return
      */
     public String innerLinkReplaceEach(String path)

+ 23 - 15
soc-modules/soc-modules-system/src/main/resources/mapper/system/SysMenuMapper.xml

@@ -18,6 +18,7 @@
 		<result property="visible"        column="visible"        />
 		<result property="status"         column="status"         />
 		<result property="perms"          column="perms"          />
+		<result property="platformType"   column="platform_type"  />
 		<result property="icon"           column="icon"           />
 		<result property="createBy"       column="create_by"      />
 		<result property="createTime"     column="create_time"    />
@@ -27,10 +28,10 @@
 	</resultMap>
 
 	<sql id="selectMenuVo">
-        select id, menu_name, parent_id, order_num, path, component, `query`, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time
+        select id, menu_name, parent_id, order_num, path, component, `query`,platform_type, is_frame, is_cache, menu_type, visible, status, ifnull(perms,'') as perms, icon, create_time
 		from sys_menu
     </sql>
-    
+
     <select id="selectMenuList" parameterType="com.xunmei.system.domain.SysMenu" resultMap="SysMenuResult">
 		<include refid="selectMenuVo"/>
 		<where>
@@ -46,13 +47,14 @@
 		</where>
 		order by parent_id, order_num
 	</select>
-	
+
 	<select id="selectMenuTreeAll" resultMap="SysMenuResult">
 		select distinct m.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 m.platform_type = #{platformType}
 		order by m.parent_id, m.order_num
 	</select>
-	
+
 	<select id="selectMenuListByUserId" parameterType="com.xunmei.system.domain.SysMenu" resultMap="SysMenuResult">
 		SELECT DISTINCT
 		m.id,
@@ -85,9 +87,12 @@
 		<if test="status != null and status != ''">
             AND m.status = #{status}
 		</if>
+		<if test="platformType != null and platformType != ''">
+			AND m.platform_type = #{platformType}
+		</if>
 		order by m.parent_id, m.order_num
 	</select>
-    
+
     <select id="selectMenuTreeByUserId" parameterType="Long" resultMap="SysMenuResult">
 		SELECT DISTINCT
 			m.id,
@@ -120,7 +125,7 @@
 			m.parent_id,
 			m.order_num
 	</select>
-	
+
 	<select id="selectMenuListByRoleId" resultType="Long">
 		select m.id
 		from sys_menu m
@@ -131,7 +136,7 @@
             </if>
 		order by m.parent_id, m.order_num
 	</select>
-	
+
 	<select id="selectMenuPerms" resultType="String">
 		select distinct m.perms
 		from sys_menu m
@@ -149,28 +154,28 @@
 				LEFT JOIN sys_role r ON r.id = ur.role_id
 		where m.status = '0' and r.status = '0' and ur.user_id = #{userId}
 	</select>
-	
+
 	<select id="selectMenuPermsByRoleId" parameterType="Long" resultType="String">
 		select distinct m.perms
 		from sys_menu m
 			 left join sys_role_menu rm on m.id = rm.menu_id
 		where m.status = '0' and rm.role_id = #{roleId}
 	</select>
-	
+
 	<select id="selectMenuById" parameterType="Long" resultMap="SysMenuResult">
 		<include refid="selectMenuVo"/>
 		where id = #{id}
 	</select>
-	
+
 	<select id="hasChildByMenuId" resultType="Integer">
-	    select count(1) from sys_menu where parent_id = #{menuId}  
+	    select count(1) from sys_menu where parent_id = #{menuId}
 	</select>
-	
+
 	<select id="checkMenuNameUnique" parameterType="com.xunmei.system.domain.SysMenu" resultMap="SysMenuResult">
 		<include refid="selectMenuVo"/>
 		where menu_name=#{menuName} and parent_id = #{parentId} limit 1
 	</select>
-	
+
 	<update id="updateMenu" parameterType="com.xunmei.system.domain.SysMenu">
 		update sys_menu
 		<set>
@@ -183,6 +188,7 @@
 			<if test="isFrame != null and isFrame != ''">is_frame = #{isFrame},</if>
 			<if test="isCache != null and isCache != ''">is_cache = #{isCache},</if>
 			<if test="menuType != null and menuType != ''">menu_type = #{menuType},</if>
+			<if test="platformType != null and platformType != ''">platform_type = #{platformType},</if>
 			<if test="visible != null">visible = #{visible},</if>
 			<if test="status != null">status = #{status},</if>
 			<if test="perms !=null">perms = #{perms},</if>
@@ -206,6 +212,7 @@
 		<if test="isFrame != null and isFrame != ''">is_frame,</if>
 		<if test="isCache != null and isCache != ''">is_cache,</if>
 		<if test="menuType != null and menuType != ''">menu_type,</if>
+		<if test="platformType != null and platformType != ''">platform_type,</if>
 		<if test="visible != null">visible,</if>
 		<if test="status != null">status,</if>
 		<if test="perms !=null and perms != ''">perms,</if>
@@ -224,6 +231,7 @@
 		<if test="isFrame != null and isFrame != ''">#{isFrame},</if>
 		<if test="isCache != null and isCache != ''">#{isCache},</if>
 		<if test="menuType != null and menuType != ''">#{menuType},</if>
+		<if test="platformType != null and platformType != ''">#{platformType},</if>
 		<if test="visible != null">#{visible},</if>
 		<if test="status != null">#{status},</if>
 		<if test="perms !=null and perms != ''">#{perms},</if>
@@ -233,9 +241,9 @@
 		sysdate()
 		)
 	</insert>
-	
+
 	<delete id="deleteMenuById" parameterType="Long">
 	    delete from sys_menu where id = #{menuId}
 	</delete>
 
-</mapper> 
+</mapper>