Browse Source

获取工作端APP菜单接口

dev
尹作梅 6 years ago
parent
commit
eb3b827e69
  1. 35
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcAppChildNavResultDTO.java
  2. 30
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcAppIndexPanelResultDTO.java
  3. 45
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcAppTemplateInfoResultDTO.java
  4. 13
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java
  5. 10
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java
  6. 11
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java
  7. 20
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java
  8. 55
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppMenuDao.xml
  9. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkUserController.java
  10. 15
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java
  11. 8
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java
  12. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkUserService.java
  13. 21
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkUserServiceImpl.java

35
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcAppChildNavResultDTO.java

@ -0,0 +1,35 @@
package com.elink.esua.epdc.dto.epdc.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description 首页面板返参 子菜单数组DTO
* @Author yinzuomei
* @Date 2019/11/20 10:32
*/
@Data
public class EpdcAppChildNavResultDTO implements Serializable {
private static final long serialVersionUID = 1883432894888014315L;
/**
* 菜单名
*/
private String lable;
/**
* 菜单编码
*/
private String navCode;
/**
* 备注
*/
private String remark;
/**
* 菜单图标
*/
private String icon;
}

30
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcAppIndexPanelResultDTO.java

@ -0,0 +1,30 @@
package com.elink.esua.epdc.dto.epdc.result;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* @Description 首页面板 获取工作端APP菜单接口返参DTO
* @Author yinzuomei
* @Date 2019/11/20 10:29
*/
@Data
public class EpdcAppIndexPanelResultDTO implements Serializable {
private static final long serialVersionUID = -3975999247263660413L;
/**
* 主菜单名
*/
private String mainLable;
/**
* 子菜单模板信息
*/
private EpdcAppTemplateInfoResultDTO templateInfo;
/**
* 子菜单数组
*/
private List<EpdcAppChildNavResultDTO> childNav;
}

45
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/epdc/result/EpdcAppTemplateInfoResultDTO.java

@ -0,0 +1,45 @@
package com.elink.esua.epdc.dto.epdc.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description 首页面板返参 子菜单模板信息DTO
* @Author yinzuomei
* @Date 2019/11/20 10:31
*/
@Data
public class EpdcAppTemplateInfoResultDTO implements Serializable {
private static final long serialVersionUID = -5608333958115132353L;
/**
* 是否渐变色0否1是
*/
private String gradationFlag;
/**
* 背景色渐变色为0时使用
*/
private String backgroundColor;
/**
* 开始色渐变色为1时使用
*/
private String startColor;
/**
* 终止色渐变色为1时使用
*/
private String endColor;
/**
* 标签颜色
*/
private String lableColor;
/**
* 模板编码(tmp-1,tmp-2,tmp-3)
*/
private String templateCode;
}

13
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java

@ -27,6 +27,7 @@ import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.dto.AppMenuDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.excel.AppMenuExcel;
import com.elink.esua.epdc.service.AppMenuService;
import org.springframework.beans.factory.annotation.Autowired;
@ -113,4 +114,16 @@ public class AppMenuController {
return new Result<List<AppMenuDTO>>().ok(list);
}
/**
* @param mobile
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:43
**/
@GetMapping("/indexPanel/{mobile}")
public Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(@PathVariable("mobile") String mobile) {
return appMenuService.indexPanel(mobile);
}
}

10
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java

@ -19,6 +19,7 @@ package com.elink.esua.epdc.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.AppMenuDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.entity.AppMenuEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -68,4 +69,13 @@ public interface AppMenuDao extends BaseDao<AppMenuEntity> {
* @param language 语言
*/
List<AppMenuEntity> getUserMenuList(@Param("userId") Long userId, @Param("type") Integer type, @Param("language") String language);
/**
* @param mobile 手机号
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>
* @Author yinzuomei
* @Description
* @Date 2019/11/20 11:10
**/
List<EpdcAppIndexPanelResultDTO> indexPanelByMobile(String mobile);
}

11
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java

@ -20,7 +20,9 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.AppMenuDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.entity.AppMenuEntity;
import java.util.List;
@ -132,4 +134,13 @@ public interface AppMenuService extends BaseService<AppMenuEntity> {
* @param type 菜单类型
*/
List<AppMenuDTO> getUserMenuList(UserDetail userDetail, Integer type);
/**
* @param mobile
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:42
**/
Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(String mobile);
}

20
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java

@ -29,9 +29,11 @@ import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.utils.HttpContextUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.utils.TreeUtils;
import com.elink.esua.epdc.dao.AppMenuDao;
import com.elink.esua.epdc.dto.AppMenuDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.entity.AppMenuEntity;
import com.elink.esua.epdc.enums.MenuTableEnum;
import com.elink.esua.epdc.service.AppMenuService;
@ -153,4 +155,22 @@ public class AppMenuServiceImpl extends BaseServiceImpl<AppMenuDao, AppMenuEntit
return TreeUtils.build(dtoList);
}
/**
* @param mobile
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:42
**/
@Override
public Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(String mobile) {
if (StringUtils.isBlank(mobile)) {
return new Result().error("手机号不能为空");
}
List<EpdcAppIndexPanelResultDTO> indexPanelResultDTOList = this.baseDao.indexPanelByMobile(mobile);
return new Result().ok(indexPanelResultDTOList);
}
}

55
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppMenuDao.xml

@ -67,4 +67,59 @@
</if>
order by t3.sort asc
</select>
<resultMap id="EpdcIndexPanelResultDTOMap" type="com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO">
<id column="mainLable" property="mainLable"/>
<association property="templateInfo" javaType="com.elink.esua.epdc.dto.epdc.result.EpdcAppTemplateInfoResultDTO" >
<result column="gradationFlag" property="gradationFlag"/>
<result column="backgroundColor" property="backgroundColor"/>
<result column="startColor" property="startColor"/>
<result column="endColor" property="endColor"/>
<result column="lableColor" property="lableColor"/>
<result column="templateCode" property="templateCode"/>
</association>
<collection property="childNav" ofType="com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO">
<result column="lable" property="lable"/>
<result column="navCode" property="navCode"/>
<result column="remark" property="remark"/>
<result column="icon" property="icon"/>
</collection>
</resultMap>
<select id="indexPanelByMobile" resultMap="EpdcIndexPanelResultDTOMap">
SELECT
lp.field_value AS mainLable,
t.GRADATION_FLAG AS gradationFlag,
t.BACKGROUND_COLOR AS backgroundColor,
t.START_COLOR AS startColor,
t.END_COLOR AS endColor,
t.LABLE_COLOR AS lableColor,
t.TEMPLATE_CODE AS templateCode,
lc.field_value AS lable,
mc.menu_code AS navCode,
mc.remark,
mc.icon
FROM
sys_app_menu mp
LEFT JOIN sys_language lp ON lp.table_id = mp.id
LEFT JOIN sys_app_menu mc ON mp.id = mc.pid
LEFT JOIN sys_language lc ON lc.table_id = mc.id
LEFT JOIN sys_app_menu_template t ON mp.template_id = t.id
WHERE
mp.id IN (
SELECT
m.id meauId
FROM
sys_user u
LEFT JOIN sys_role_user ru ON ru.user_id = u.id
LEFT JOIN sys_role r ON ru.role_id = r.id
LEFT JOIN sys_app_role_menu am ON am.role_id = r.id
LEFT JOIN sys_app_menu m ON am.menu_id = m.id
WHERE
u.mobile = #{value}
AND r.type_key = 'gridLeader'
AND am.menu_id IS NOT NULL
AND m.pid = 0
)
</select>
</mapper>

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkUserController.java

@ -3,6 +3,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcUnauthorizedAmountFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcPartyMemberDetailDto;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppAuthenticateResidentFormDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailResultDTO;
@ -90,4 +91,15 @@ public class ApiWorkUserController {
return workUserService.getUnauthorizedAmount(userDetail,fromDto);
}
/**
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:42
**/
@GetMapping("indexPanel")
public Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(@LoginUser TokenDto userDetail) {
return workUserService.indexPanel(userDetail);
}
}

15
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AdminFeignClient.java

@ -4,11 +4,14 @@ import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.epdc.GridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.feign.fallback.AdminFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import java.util.List;
/**
* 管理端接口
@ -17,7 +20,7 @@ import org.springframework.web.bind.annotation.PathVariable;
* @email yujintao@elink-cn.com
* @date 2019/9/7 9:27
*/
@FeignClient(name = ServiceConstant.EPDC_ADMIN_SERVER, fallback = AdminFeignClientFallback.class)
@FeignClient(name = ServiceConstant.EPDC_ADMIN_SERVER, fallback = AdminFeignClientFallback.class,url = "http://127.0.0.1:9092")
public interface AdminFeignClient {
/**
@ -41,4 +44,14 @@ public interface AdminFeignClient {
*/
@GetMapping("sys/user/listGridForLeader/{mobile}")
Result<GridLeaderRegisterDTO> listGridWhileLeaderRegister(@PathVariable("mobile") String mobile);
/**
* @param mobile
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:43
**/
@GetMapping("sys/appmenu/indexPanel/{mobile}")
Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(@PathVariable("mobile") String mobile);
}

8
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AdminFeignClientFallback.java

@ -5,9 +5,12 @@ import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.epdc.GridLeaderRegisterDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.feign.AdminFeignClient;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @author yujintao
@ -26,4 +29,9 @@ public class AdminFeignClientFallback implements AdminFeignClient {
public Result<GridLeaderRegisterDTO> listGridWhileLeaderRegister(String mobile) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "listGridWhileLeaderRegister", mobile);
}
@Override
public Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(String mobile) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ADMIN_SERVER, "indexPanel", mobile);
}
}

10
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkUserService.java

@ -3,6 +3,7 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppAuthenticateResidentFormDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcUnauthorizedAmountFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcPartyMemberDetailDto;
import com.elink.esua.epdc.common.token.dto.TokenDto;
@ -56,4 +57,13 @@ public interface WorkUserService {
* @date 2019/11/19 10:56
*/
Result<Integer> getUnauthorizedAmount(TokenDto userDetail, EpdcUnauthorizedAmountFromDTO fromDto);
/**
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:43
**/
Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(TokenDto userDetail);
}

21
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkUserServiceImpl.java

@ -3,13 +3,16 @@ package com.elink.esua.epdc.service.impl;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.epdc.form.EpdcAppAuthenticateResidentFormDTO;
import com.elink.esua.epdc.dto.epdc.form.EpdcUnauthorizedAmountFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailResultDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcPartyMemberDetailDto;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.dto.epdc.form.EpdcWorkUserFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO;
import com.elink.esua.epdc.feign.AdminFeignClient;
import com.elink.esua.epdc.feign.UserFeignClient;
import com.elink.esua.epdc.service.WorkUserService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -26,6 +29,8 @@ import java.util.Map;
public class WorkUserServiceImpl implements WorkUserService {
@Autowired
private UserFeignClient userFeignClient;
@Autowired
private AdminFeignClient adminFeignClient;
/**
* 获取居民详情已认证或待认证提交信息待审核的居民用户
@ -81,4 +86,20 @@ public class WorkUserServiceImpl implements WorkUserService {
fromDto.setUserId(userDetail.getUserId());
return userFeignClient.getUnauthorizedAmount(fromDto);
}
/**
* @param userDetail
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcIndexPanelResultDTO>>
* @Author yinzuomei
* @Description 首页面板 获取工作端APP菜单
* @Date 2019/11/20 10:43
**/
@Override
public Result<List<EpdcAppIndexPanelResultDTO>> indexPanel(TokenDto userDetail) {
if (null == userDetail || StringUtils.isBlank(userDetail.getMobile())) {
return new Result().error("获取用户信息失败");
}
return adminFeignClient.indexPanel(userDetail.getMobile());
}
}

Loading…
Cancel
Save