Browse Source

Merge branch 'dev_1118' of http://121.42.41.42:7070/r/esua-epdc-cloud into dev_1118

dev
王金鹏 6 years ago
parent
commit
e6c2a6284a
  1. 118
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppMenuDTO.java
  2. 106
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppMenuTemplateDTO.java
  3. 62
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppRoleMenuDTO.java
  4. 36
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java
  5. 109
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java
  6. 85
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuTemplateController.java
  7. 94
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppRoleMenuController.java
  8. 48
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java
  9. 33
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuTemplateDao.java
  10. 33
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppRoleMenuDao.java
  11. 97
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppMenuEntity.java
  12. 81
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppMenuTemplateEntity.java
  13. 49
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppRoleMenuEntity.java
  14. 74
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/AppMenuExcel.java
  15. 50
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/AppRoleMenuExcel.java
  16. 47
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppMenuRedis.java
  17. 47
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppMenuTemplateRedis.java
  18. 47
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppRoleMenuRedis.java
  19. 126
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java
  20. 95
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuTemplateService.java
  21. 95
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppRoleMenuService.java
  22. 132
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java
  23. 104
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuTemplateServiceImpl.java
  24. 104
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppRoleMenuServiceImpl.java
  25. 27
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysMenuServiceImpl.java
  26. 18
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppMenuDao.xml
  27. 24
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppMenuTemplateDao.xml
  28. 15
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppRoleMenuDao.xml
  29. 2
      esua-epdc/epdc-gateway/pom.xml
  30. 1
      esua-epdc/epdc-gateway/src/main/resources/application.yml
  31. 2
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java
  32. 23
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java
  33. 18
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkUserController.java
  34. 18
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java
  35. 9
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkItemFeignClient.java
  36. 6
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java
  37. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkItemFeignClientFallback.java
  38. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkItemService.java
  39. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkUserService.java
  40. 7
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkItemServiceImpl.java
  41. 9
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkUserServiceImpl.java
  42. 100
      esua-epdc/epdc-module/epdc-demo/epdc-demo-server/src/main/java/com/elink/esua/epdc/controller/ImportInShiBeiController.java
  43. 5
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemFormDTO.java
  44. 2
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemStatisticsFormDTO.java
  45. 16
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/WorkItemController.java
  46. 8
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java
  47. 18
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
  48. 5
      esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupDetailForMobileEndResultDTO.java
  49. 6
      esua-epdc/epdc-module/epdc-group/epdc-group-server/pom.xml
  50. 4
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/UserGroupDao.java
  51. 4
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/UserGroupService.java
  52. 9
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java
  53. 4
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/UserGroupServiceImpl.java
  54. 6
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java
  55. 5
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml
  56. 10
      esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/UserGroupDao.xml
  57. 34
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java
  58. 37
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java
  59. 10
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java
  60. 5
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java
  61. 184
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

118
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppMenuDTO.java

@ -0,0 +1,118 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.dto;
import java.io.Serializable;
import java.util.Date;
import com.elink.esua.epdc.commons.tools.utils.TreeNode;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Range;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
* APP菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Data
public class AppMenuDTO extends TreeNode<SysMenuDTO> implements Serializable {
private static final long serialVersionUID = -319379699436244053L;
/**
* id
*/
@NotNull(message = "{id.require}", groups = UpdateGroup.class)
private Long id;
/**
* 上级ID一级菜单为0
*/
@NotNull(message = "{sysmenu.pid.require}", groups = DefaultGroup.class)
private Long pid;
/**
* 菜单URL
*/
private String url;
/**
* 类型 0菜单 1按钮
*/
@Range(min = 0, max = 1, message = "{sysmenu.type.range}", groups = DefaultGroup.class)
private Integer type;
/**
* 菜单图标
*/
private String icon;
/**
* 权限标识sys:menu:save
*/
private String permissions;
/**
* 排序
*/
@Min(value = 0, message = "{sort.number}", groups = DefaultGroup.class)
private Integer sort;
/**
* 删除标识 0未删除 1删除
*/
private Integer delFlag;
/**
* 创建者
*/
private Long creator;
/**
* 创建时间
*/
@JsonProperty(access = JsonProperty.Access.READ_ONLY)
private Date createDate;
/**
* 更新者
*/
private Long updater;
/**
* 更新时间
*/
private Date updateDate;
/**
* 菜单编码
*/
private String menuCode;
@NotBlank(message = "{sysmenu.name.require}", groups = DefaultGroup.class)
private String name;
}

106
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppMenuTemplateDTO.java

@ -0,0 +1,106 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.dto;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
@Data
public class AppMenuTemplateDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 主键
*/
private String id;
/**
* 是否渐变色0否1是
*/
private String gradationFlag;
/**
* 背景颜色渐变色为0时使用
*/
private String backgroundColor;
/**
* 开始色渐变色为1时使用
*/
private String startColor;
/**
* 终止色渐变色为1时使用
*/
private String endColor;
/**
* 标签颜色
*/
private String lableColor;
/**
* 菜单图标
*/
private String icon;
/**
* 模板编码(tem-1,tem-2,tem-3)
*/
private String templateCode;
/**
* 模板名称
*/
private String templateName;
/**
* 乐观锁
*/
private Integer revision;
/**
* 创建人
*/
private String createdBy;
/**
* 创建时间
*/
private Date createdTime;
/**
* 更新人
*/
private String updatedBy;
/**
* 更新时间
*/
private Date updatedTime;
}

62
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppRoleMenuDTO.java

@ -0,0 +1,62 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.dto;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
* APP角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Data
public class AppRoleMenuDTO implements Serializable {
private static final long serialVersionUID = 9222960342198691097L;
/**
* id
*/
private Long id;
/**
* 角色ID
*/
private Long roleId;
/**
* 菜单ID
*/
private Long menuId;
/**
* 创建者
*/
private Long creator;
/**
* 创建时间
*/
private Date createDate;
}

36
esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java

@ -0,0 +1,36 @@
/**
* Copyright (c) 2018 人人开源 All rights reserved.
* <p>
* https://www.renren.io
* <p>
* 版权所有侵权必究
*/
package com.elink.esua.epdc.enums;
/**
* 菜单表枚举
*
* @author work@yujt.net.cn
* @date 2019/11/19 13:56
*/
public enum MenuTableEnum {
/**
* 菜单资源
*/
SYS("sys_menu"),
/**
* 非菜单资源
*/
APP("sys_app_menu");
private String value;
MenuTableEnum(String value) {
this.value = value;
}
public String value() {
return value;
}
}

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

@ -0,0 +1,109 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.exception.ErrorCode;
import com.elink.esua.epdc.commons.tools.utils.ExcelUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.dto.AppMenuDTO;
import com.elink.esua.epdc.excel.AppMenuExcel;
import com.elink.esua.epdc.service.AppMenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* APP菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@RestController
@RequestMapping("appmenu")
public class AppMenuController {
@Autowired
private AppMenuService appMenuService;
/**
* 获取APP菜单列表
*
* @param type 菜单类型 0菜单 1按钮 null全部
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.AppMenuDTO>>
* @author work@yujt.net.cn
* @date 2019/11/19 13:26
*/
@GetMapping("list")
public Result<List<AppMenuDTO>> list(Integer type) {
List<AppMenuDTO> list = appMenuService.getAppMenuList(type);
return new Result<List<AppMenuDTO>>().ok(list);
}
@GetMapping("{id}")
public Result<AppMenuDTO> get(@PathVariable("id") String id) {
AppMenuDTO data = appMenuService.get(id);
return new Result<AppMenuDTO>().ok(data);
}
@PostMapping
public Result save(@RequestBody AppMenuDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
appMenuService.save(dto);
return new Result();
}
@PutMapping
public Result update(@RequestBody AppMenuDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
appMenuService.update(dto);
return new Result();
}
@DeleteMapping("{id}")
public Result delete(@PathVariable("id") Long id){
//效验数据
AssertUtils.isNull(id, "id");
//判断是否有子菜单或按钮
if(appMenuService.hasChileMenu(id)){
return new Result().error(ErrorCode.SUB_MENU_EXIST);
}
appMenuService.delete(id);
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<AppMenuDTO> list = appMenuService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, AppMenuExcel.class);
}
}

85
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuTemplateController.java

@ -0,0 +1,85 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ExcelUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.dto.AppMenuTemplateDTO;
import com.elink.esua.epdc.service.AppMenuTemplateService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
@RestController
@RequestMapping("appmenutemplate")
public class AppMenuTemplateController {
@Autowired
private AppMenuTemplateService appMenuTemplateService;
@GetMapping("page")
public Result<PageData<AppMenuTemplateDTO>> page(@RequestParam Map<String, Object> params){
PageData<AppMenuTemplateDTO> page = appMenuTemplateService.page(params);
return new Result<PageData<AppMenuTemplateDTO>>().ok(page);
}
@GetMapping("{id}")
public Result<AppMenuTemplateDTO> get(@PathVariable("id") String id){
AppMenuTemplateDTO data = appMenuTemplateService.get(id);
return new Result<AppMenuTemplateDTO>().ok(data);
}
@PostMapping
public Result save(@RequestBody AppMenuTemplateDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
appMenuTemplateService.save(dto);
return new Result();
}
@PutMapping
public Result update(@RequestBody AppMenuTemplateDTO dto){
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
appMenuTemplateService.update(dto);
return new Result();
}
@DeleteMapping
public Result delete(@RequestBody String[] ids){
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
appMenuTemplateService.delete(ids);
return new Result();
}
}

94
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppRoleMenuController.java

@ -0,0 +1,94 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ExcelUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.AssertUtils;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.commons.tools.validator.group.AddGroup;
import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup;
import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup;
import com.elink.esua.epdc.dto.AppRoleMenuDTO;
import com.elink.esua.epdc.excel.AppRoleMenuExcel;
import com.elink.esua.epdc.service.AppRoleMenuService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* APP角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@RestController
@RequestMapping("approlemenu")
public class AppRoleMenuController {
@Autowired
private AppRoleMenuService appRoleMenuService;
@GetMapping("page")
public Result<PageData<AppRoleMenuDTO>> page(@RequestParam Map<String, Object> params) {
PageData<AppRoleMenuDTO> page = appRoleMenuService.page(params);
return new Result<PageData<AppRoleMenuDTO>>().ok(page);
}
@GetMapping("{id}")
public Result<AppRoleMenuDTO> get(@PathVariable("id") String id) {
AppRoleMenuDTO data = appRoleMenuService.get(id);
return new Result<AppRoleMenuDTO>().ok(data);
}
@PostMapping
public Result save(@RequestBody AppRoleMenuDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class);
appRoleMenuService.save(dto);
return new Result();
}
@PutMapping
public Result update(@RequestBody AppRoleMenuDTO dto) {
//效验数据
ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class);
appRoleMenuService.update(dto);
return new Result();
}
@DeleteMapping
public Result delete(@RequestBody String[] ids) {
//效验数据
AssertUtils.isArrayEmpty(ids, "id");
appRoleMenuService.delete(ids);
return new Result();
}
@GetMapping("export")
public void export(@RequestParam Map<String, Object> params, HttpServletResponse response) throws Exception {
List<AppRoleMenuDTO> list = appRoleMenuService.list(params);
ExcelUtils.exportExcelToTarget(response, null, list, AppRoleMenuExcel.class);
}
}

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

@ -0,0 +1,48 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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.entity.AppMenuEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Mapper
public interface AppMenuDao extends BaseDao<AppMenuEntity> {
/**
* 获取app菜单列表
*
* @param type 菜单类型
* @param language 语言
* @return java.util.List<com.elink.esua.epdc.dto.AppMenuDTO>
* @author work@yujt.net.cn
* @date 2019/11/19 13:43
*/
List<AppMenuDTO> selectListAppMenu(@Param("type") Integer type, @Param("language") String language);
}

33
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuTemplateDao.java

@ -0,0 +1,33 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.entity.AppMenuTemplateEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
@Mapper
public interface AppMenuTemplateDao extends BaseDao<AppMenuTemplateEntity> {
}

33
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppRoleMenuDao.java

@ -0,0 +1,33 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.entity.AppRoleMenuEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Mapper
public interface AppRoleMenuDao extends BaseDao<AppRoleMenuEntity> {
}

97
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppMenuEntity.java

@ -0,0 +1,97 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* APP菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sys_app_menu")
public class AppMenuEntity extends BaseEntity {
private static final long serialVersionUID = 8343477172739451636L;
/**
* 上级ID一级菜单为0
*/
private Long pid;
/**
* 菜单URL
*/
private String url;
/**
* 类型 0菜单 1按钮
*/
private Integer type;
/**
* 菜单图标
*/
private String icon;
/**
* 权限标识sys:menu:save
*/
private String permissions;
/**
* 排序
*/
private Integer sort;
/**
* 删除标识 0未删除 1删除
*/
@TableField(fill = FieldFill.INSERT)
private Integer delFlag;
/**
* 更新者
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Long updater;
/**
* 更新时间
*/
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date updateDate;
/**
* 菜单编码
*/
private String menuCode;
}

81
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppMenuTemplateEntity.java

@ -0,0 +1,81 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("sys_app_menu_template")
public class AppMenuTemplateEntity extends BaseEpdcEntity {
private static final long serialVersionUID = 1L;
/**
* 是否渐变色0否1是
*/
private String gradationFlag;
/**
* 背景颜色渐变色为0时使用
*/
private String backgroundColor;
/**
* 开始色渐变色为1时使用
*/
private String startColor;
/**
* 终止色渐变色为1时使用
*/
private String endColor;
/**
* 标签颜色
*/
private String lableColor;
/**
* 菜单图标
*/
private String icon;
/**
* 模板编码(tem-1,tem-2,tem-3)
*/
private String templateCode;
/**
* 模板名称
*/
private String templateName;
}

49
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppRoleMenuEntity.java

@ -0,0 +1,49 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* APP角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("sys_app_role_menu")
public class AppRoleMenuEntity extends BaseEntity {
private static final long serialVersionUID = 5439181968297858519L;
/**
* 角色ID
*/
private Long roleId;
/**
* 菜单ID
*/
private Long menuId;
}

74
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/AppMenuExcel.java

@ -0,0 +1,74 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Data
public class AppMenuExcel {
@Excel(name = "id")
private Long id;
@Excel(name = "上级ID,一级菜单为0")
private Long pid;
@Excel(name = "菜单URL")
private String url;
@Excel(name = "类型 0:菜单 1:按钮")
private Integer type;
@Excel(name = "菜单图标")
private String icon;
@Excel(name = "权限标识,如:sys:menu:save")
private String permissions;
@Excel(name = "排序")
private Integer sort;
@Excel(name = "删除标识 0:未删除 1:删除")
private Integer delFlag;
@Excel(name = "创建者")
private Long creator;
@Excel(name = "创建时间")
private Date createDate;
@Excel(name = "更新者")
private Long updater;
@Excel(name = "更新时间")
private Date updateDate;
@Excel(name = "菜单编码")
private String menuCode;
}

50
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/AppRoleMenuExcel.java

@ -0,0 +1,50 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.excel;
import cn.afterturn.easypoi.excel.annotation.Excel;
import lombok.Data;
import java.util.Date;
/**
* 角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Data
public class AppRoleMenuExcel {
@Excel(name = "id")
private Long id;
@Excel(name = "角色ID")
private Long roleId;
@Excel(name = "菜单ID")
private Long menuId;
@Excel(name = "创建者")
private Long creator;
@Excel(name = "创建时间")
private Date createDate;
}

47
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppMenuRedis.java

@ -0,0 +1,47 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.redis;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Component
public class AppMenuRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

47
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppMenuTemplateRedis.java

@ -0,0 +1,47 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.redis;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
@Component
public class AppMenuTemplateRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

47
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppRoleMenuRedis.java

@ -0,0 +1,47 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.redis;
import com.elink.esua.epdc.commons.tools.redis.RedisUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
/**
* 角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Component
public class AppRoleMenuRedis {
@Autowired
private RedisUtils redisUtils;
public void delete(Object[] ids) {
}
public void set(){
}
public String get(String id){
return null;
}
}

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

@ -0,0 +1,126 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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.dto.AppMenuDTO;
import com.elink.esua.epdc.entity.AppMenuEntity;
import java.util.List;
import java.util.Map;
/**
* APP菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
public interface AppMenuService extends BaseService<AppMenuEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<AppMenuDTO>
* @author generator
* @date 2019-11-19
*/
PageData<AppMenuDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<AppMenuDTO>
* @author generator
* @date 2019-11-19
*/
List<AppMenuDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return AppMenuDTO
* @author generator
* @date 2019-11-19
*/
AppMenuDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2019-11-19
*/
void save(AppMenuDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2019-11-19
*/
void update(AppMenuDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2019-11-19
*/
void delete(String[] ids);
/**
* 获取APP菜单列表
*
* @param type 菜单类型 0菜单 1按钮 null全部
* @return java.util.List<com.elink.esua.epdc.dto.AppMenuDTO>
* @author work@yujt.net.cn
* @date 2019/11/19 13:27
*/
List<AppMenuDTO> getAppMenuList(Integer type);
/**
* 根据ID删除
*
* @param id 菜单ID
* @return void
* @author work@yujt.net.cn
* @date 2019/11/19 14:31
*/
void delete(Long id);
/**
* 判断是否有子级菜单
*
* @param id 菜单ID
* @return boolean
* @author work@yujt.net.cn
* @date 2019/11/19 14:30
*/
boolean hasChileMenu(Long id);
}

95
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuTemplateService.java

@ -0,0 +1,95 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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.dto.AppMenuTemplateDTO;
import com.elink.esua.epdc.entity.AppMenuTemplateEntity;
import java.util.List;
import java.util.Map;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
public interface AppMenuTemplateService extends BaseService<AppMenuTemplateEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<AppMenuTemplateDTO>
* @author generator
* @date 2019-11-19
*/
PageData<AppMenuTemplateDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<AppMenuTemplateDTO>
* @author generator
* @date 2019-11-19
*/
List<AppMenuTemplateDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return AppMenuTemplateDTO
* @author generator
* @date 2019-11-19
*/
AppMenuTemplateDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2019-11-19
*/
void save(AppMenuTemplateDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2019-11-19
*/
void update(AppMenuTemplateDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2019-11-19
*/
void delete(String[] ids);
}

95
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppRoleMenuService.java

@ -0,0 +1,95 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
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.dto.AppRoleMenuDTO;
import com.elink.esua.epdc.entity.AppRoleMenuEntity;
import java.util.List;
import java.util.Map;
/**
* APP角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
public interface AppRoleMenuService extends BaseService<AppRoleMenuEntity> {
/**
* 默认分页
*
* @param params
* @return PageData<AppRoleMenuDTO>
* @author generator
* @date 2019-11-19
*/
PageData<AppRoleMenuDTO> page(Map<String, Object> params);
/**
* 默认查询
*
* @param params
* @return java.util.List<AppRoleMenuDTO>
* @author generator
* @date 2019-11-19
*/
List<AppRoleMenuDTO> list(Map<String, Object> params);
/**
* 单条查询
*
* @param id
* @return AppRoleMenuDTO
* @author generator
* @date 2019-11-19
*/
AppRoleMenuDTO get(String id);
/**
* 默认保存
*
* @param dto
* @return void
* @author generator
* @date 2019-11-19
*/
void save(AppRoleMenuDTO dto);
/**
* 默认更新
*
* @param dto
* @return void
* @author generator
* @date 2019-11-19
*/
void update(AppRoleMenuDTO dto);
/**
* 批量删除
*
* @param ids
* @return void
* @author generator
* @date 2019-11-19
*/
void delete(String[] ids);
}

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

@ -0,0 +1,132 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.enums.DelFlagEnum;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.commons.tools.utils.HttpContextUtils;
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.entity.AppMenuEntity;
import com.elink.esua.epdc.enums.MenuTableEnum;
import com.elink.esua.epdc.service.AppMenuService;
import com.elink.esua.epdc.service.SysLanguageService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* APP菜单管理
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Service
public class AppMenuServiceImpl extends BaseServiceImpl<AppMenuDao, AppMenuEntity> implements AppMenuService {
@Autowired
private SysLanguageService sysLanguageService;
@Override
public PageData<AppMenuDTO> page(Map<String, Object> params) {
IPage<AppMenuEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, AppMenuDTO.class);
}
@Override
public List<AppMenuDTO> list(Map<String, Object> params) {
List<AppMenuEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, AppMenuDTO.class);
}
@Override
public List<AppMenuDTO> getAppMenuList(Integer type) {
List<AppMenuDTO> menuList = baseDao.selectListAppMenu(type, HttpContextUtils.getLanguage());
return TreeUtils.build(menuList, Constant.MENU_ROOT);
}
private QueryWrapper<AppMenuEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper<AppMenuEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public AppMenuDTO get(String id) {
AppMenuEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, AppMenuDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(AppMenuDTO dto) {
AppMenuEntity entity = ConvertUtils.sourceToTarget(dto, AppMenuEntity.class);
insert(entity);
sysLanguageService.saveOrUpdate(MenuTableEnum.APP.value(), entity.getId(), "name", dto.getName(), HttpContextUtils.getLanguage());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(AppMenuDTO dto) {
AppMenuEntity entity = ConvertUtils.sourceToTarget(dto, AppMenuEntity.class);
updateById(entity);
sysLanguageService.saveOrUpdate(MenuTableEnum.APP.value(), entity.getId(), "name", dto.getName(), HttpContextUtils.getLanguage());
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 物理删除(没有使用@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
@Override
public void delete(Long id) {
baseDao.deleteById(id);
}
@Override
public boolean hasChileMenu(Long id) {
QueryWrapper<AppMenuEntity> wrapper = new QueryWrapper<>();
wrapper.eq("pid", id)
.eq(FieldConstant.DEL_FLAG, DelFlagEnum.NORMAL.value());
Integer selectCount = baseDao.selectCount(wrapper);
return selectCount > NumConstant.ZERO;
}
}

104
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuTemplateServiceImpl.java

@ -0,0 +1,104 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.dao.AppMenuTemplateDao;
import com.elink.esua.epdc.dto.AppMenuTemplateDTO;
import com.elink.esua.epdc.entity.AppMenuTemplateEntity;
import com.elink.esua.epdc.redis.AppMenuTemplateRedis;
import com.elink.esua.epdc.service.AppMenuTemplateService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* APP菜单模板管理
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-11-19
*/
@Service
public class AppMenuTemplateServiceImpl extends BaseServiceImpl<AppMenuTemplateDao, AppMenuTemplateEntity> implements AppMenuTemplateService {
@Autowired
private AppMenuTemplateRedis appMenuTemplateRedis;
@Override
public PageData<AppMenuTemplateDTO> page(Map<String, Object> params) {
IPage<AppMenuTemplateEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, AppMenuTemplateDTO.class);
}
@Override
public List<AppMenuTemplateDTO> list(Map<String, Object> params) {
List<AppMenuTemplateEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, AppMenuTemplateDTO.class);
}
private QueryWrapper<AppMenuTemplateEntity> getWrapper(Map<String, Object> params){
String id = (String)params.get(FieldConstant.ID_HUMP);
QueryWrapper<AppMenuTemplateEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public AppMenuTemplateDTO get(String id) {
AppMenuTemplateEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, AppMenuTemplateDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(AppMenuTemplateDTO dto) {
AppMenuTemplateEntity entity = ConvertUtils.sourceToTarget(dto, AppMenuTemplateEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(AppMenuTemplateDTO dto) {
AppMenuTemplateEntity entity = ConvertUtils.sourceToTarget(dto, AppMenuTemplateEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

104
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppRoleMenuServiceImpl.java

@ -0,0 +1,104 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.ConvertUtils;
import com.elink.esua.epdc.commons.tools.constant.FieldConstant;
import com.elink.esua.epdc.dao.AppRoleMenuDao;
import com.elink.esua.epdc.dto.AppRoleMenuDTO;
import com.elink.esua.epdc.entity.AppRoleMenuEntity;
import com.elink.esua.epdc.redis.AppRoleMenuRedis;
import com.elink.esua.epdc.service.AppRoleMenuService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
* APP角色菜单关系
*
* @author work@yujt.net.cn
* @since v1.0.0 2019-11-19
*/
@Service
public class AppRoleMenuServiceImpl extends BaseServiceImpl<AppRoleMenuDao, AppRoleMenuEntity> implements AppRoleMenuService {
@Autowired
private AppRoleMenuRedis appRoleMenuRedis;
@Override
public PageData<AppRoleMenuDTO> page(Map<String, Object> params) {
IPage<AppRoleMenuEntity> page = baseDao.selectPage(
getPage(params, FieldConstant.CREATED_TIME, false),
getWrapper(params)
);
return getPageData(page, AppRoleMenuDTO.class);
}
@Override
public List<AppRoleMenuDTO> list(Map<String, Object> params) {
List<AppRoleMenuEntity> entityList = baseDao.selectList(getWrapper(params));
return ConvertUtils.sourceToTarget(entityList, AppRoleMenuDTO.class);
}
private QueryWrapper<AppRoleMenuEntity> getWrapper(Map<String, Object> params) {
String id = (String) params.get(FieldConstant.ID_HUMP);
QueryWrapper<AppRoleMenuEntity> wrapper = new QueryWrapper<>();
wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id);
return wrapper;
}
@Override
public AppRoleMenuDTO get(String id) {
AppRoleMenuEntity entity = baseDao.selectById(id);
return ConvertUtils.sourceToTarget(entity, AppRoleMenuDTO.class);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void save(AppRoleMenuDTO dto) {
AppRoleMenuEntity entity = ConvertUtils.sourceToTarget(dto, AppRoleMenuEntity.class);
insert(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void update(AppRoleMenuDTO dto) {
AppRoleMenuEntity entity = ConvertUtils.sourceToTarget(dto, AppRoleMenuEntity.class);
updateById(entity);
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
}

27
esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysMenuServiceImpl.java

@ -1,8 +1,8 @@
/**
* Copyright (c) 2018 人人开源 All rights reserved.
*
* <p>
* https://www.renren.io
*
* <p>
* 版权所有侵权必究
*/
@ -21,6 +21,7 @@ import com.elink.esua.epdc.commons.tools.utils.TreeUtils;
import com.elink.esua.epdc.dao.SysMenuDao;
import com.elink.esua.epdc.dto.SysMenuDTO;
import com.elink.esua.epdc.entity.SysMenuEntity;
import com.elink.esua.epdc.enums.MenuTableEnum;
import com.elink.esua.epdc.enums.MenuTypeEnum;
import com.elink.esua.epdc.redis.SysMenuRedis;
import com.elink.esua.epdc.service.SysLanguageService;
@ -84,7 +85,7 @@ public class SysMenuServiceImpl extends BaseServiceImpl<SysMenuDao, SysMenuEntit
SysMenuEntity entity = ConvertUtils.sourceToTarget(dto, SysMenuEntity.class);
//上级菜单不能为自身
if(entity.getId().equals(entity.getPid())){
if (entity.getId().equals(entity.getPid())) {
throw new RenException(ErrorCode.SUPERIOR_MENU_ERROR);
}
@ -126,9 +127,9 @@ public class SysMenuServiceImpl extends BaseServiceImpl<SysMenuDao, SysMenuEntit
List<SysMenuEntity> menuList;
//系统管理员,拥有最高权限
if(userDetail.getSuperAdmin() == SuperAdminEnum.YES.value()){
if (userDetail.getSuperAdmin() == SuperAdminEnum.YES.value()) {
menuList = baseDao.getMenuList(type, HttpContextUtils.getLanguage());
}else {
} else {
menuList = baseDao.getUserMenuList(userDetail.getId(), type, HttpContextUtils.getLanguage());
}
@ -140,7 +141,7 @@ public class SysMenuServiceImpl extends BaseServiceImpl<SysMenuDao, SysMenuEntit
@Override
public List<SysMenuDTO> getUserMenuNavList(UserDetail userDetail) {
List<SysMenuDTO> menuList = sysMenuRedis.getUserMenuNavList(userDetail.getId());
if(menuList == null){
if (menuList == null) {
menuList = getUserMenuList(userDetail, MenuTypeEnum.MENU.value());
sysMenuRedis.setUserMenuNavList(userDetail.getId(), menuList);
@ -153,21 +154,21 @@ public class SysMenuServiceImpl extends BaseServiceImpl<SysMenuDao, SysMenuEntit
public Set<String> getUserPermissions(UserDetail userDetail) {
//用户权限列表
Set<String> permsSet = sysMenuRedis.getUserPermissions(userDetail.getId());
if(permsSet != null){
if (permsSet != null) {
return permsSet;
}
//超级管理员,拥有最高权限
List<SysMenuEntity> menuList;
if(userDetail.getSuperAdmin() == SuperAdminEnum.YES.value()){
if (userDetail.getSuperAdmin() == SuperAdminEnum.YES.value()) {
menuList = baseDao.getMenuList(MenuTypeEnum.BUTTON.value(), HttpContextUtils.getLanguage());
}else{
} else {
menuList = baseDao.getUserMenuList(userDetail.getId(), MenuTypeEnum.BUTTON.value(), HttpContextUtils.getLanguage());
}
permsSet = new HashSet<>();
for(SysMenuEntity menu : menuList){
if(StringUtils.isNotBlank(menu.getPermissions())){
for (SysMenuEntity menu : menuList) {
if (StringUtils.isNotBlank(menu.getPermissions())) {
permsSet.add(menu.getPermissions());
}
}
@ -185,8 +186,8 @@ public class SysMenuServiceImpl extends BaseServiceImpl<SysMenuDao, SysMenuEntit
return ConvertUtils.sourceToTarget(menuList, SysMenuDTO.class);
}
private void saveLanguage(Long tableId, String fieldName, String fieldValue){
sysLanguageService.saveOrUpdate("sys_menu", tableId, fieldName, fieldValue, HttpContextUtils.getLanguage());
private void saveLanguage(Long tableId, String fieldName, String fieldValue) {
sysLanguageService.saveOrUpdate(MenuTableEnum.SYS.value(), tableId, fieldName, fieldValue, HttpContextUtils.getLanguage());
}
}

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

@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.dao.AppMenuDao">
<select id="selectListAppMenu" resultType="com.elink.esua.epdc.dto.AppMenuDTO">
SELECT
m.*,
l.field_value AS `NAME`
FROM
sys_app_menu m
LEFT JOIN sys_language l ON m.id = l.table_id AND l.table_name = 'sys_app_menu' AND l.field_name = 'name' AND l.LANGUAGE = #{language}
WHERE m.del_flag = 0
<if test="type != null">AND m.type = #{type}</if>
ORDER BY m.sort ASC
</select>
</mapper>

24
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppMenuTemplateDao.xml

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.dao.AppMenuTemplateDao">
<resultMap type="com.elink.esua.epdc.entity.AppMenuTemplateEntity" id="appMenuTemplateMap">
<result property="id" column="ID"/>
<result property="gradationFlag" column="GRADATION_FLAG"/>
<result property="backgroundColor" column="BACKGROUND_COLOR"/>
<result property="startColor" column="START_COLOR"/>
<result property="endColor" column="END_COLOR"/>
<result property="lableColor" column="LABLE_COLOR"/>
<result property="icon" column="ICON"/>
<result property="templateCode" column="TEMPLATE_CODE"/>
<result property="templateName" column="TEMPLATE_NAME"/>
<result property="revision" column="REVISION"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>

15
esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppRoleMenuDao.xml

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.dao.AppRoleMenuDao">
<resultMap type="com.elink.esua.epdc.entity.AppRoleMenuEntity" id="appRoleMenuMap">
<result property="id" column="id"/>
<result property="roleId" column="role_id"/>
<result property="menuId" column="menu_id"/>
<result property="creator" column="creator"/>
<result property="createDate" column="create_date"/>
</resultMap>
</mapper>

2
esua-epdc/epdc-gateway/pom.xml

@ -117,7 +117,7 @@
<!--<gateway.routes.epdc-user-server.uri>lb://epdc-user-server</gateway.routes.epdc-user-server.uri>-->
<gateway.routes.epdc-user-server.uri>http://127.0.0.1:9068</gateway.routes.epdc-user-server.uri>
<gateway.routes.epdc-demo-server.uri>lb://epdc-demo-server</gateway.routes.epdc-demo-server.uri>
<gateway.routes.epdc-group-server.uri>http://127.0.0.1:9064</gateway.routes.epdc-group-server.uri>
<gateway.routes.epdc-group-server.uri>http://127.0.0.1:9063</gateway.routes.epdc-group-server.uri>
<!--<gateway.routes.epdc-group-server.uri>lb://epdc-group-server</gateway.routes.epdc-group-server.uri>-->
<gateway.routes.epdc-websocket-server.uri>lb://epdc-websocket-server</gateway.routes.epdc-websocket-server.uri>
<!-- nacos -->

1
esua-epdc/epdc-gateway/src/main/resources/application.yml

@ -87,7 +87,6 @@ spring:
uri: @gateway.routes.epdc-group-server.uri@
order: 9
predicates:
- Path=/group/**
- Path=${server.servlet.context-path}/group/**
filters:
- StripPrefix=1

2
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiGroupController.java

@ -137,7 +137,7 @@ public class ApiGroupController {
* @since 2019/10/23 9:13
*/
@GetMapping("listOfMember")
public Result<List<GroupUserListResultDTO>> listOfMember(@RequestBody GroupUsersFormDTO formDto) {
public Result<List<GroupUserListResultDTO>> listOfMember(GroupUsersFormDTO formDto) {
return groupService.listOfMember(formDto);
}

23
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java

@ -3,7 +3,9 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemStatisticsFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemStatisticsResultDTO;
import com.elink.esua.epdc.service.WorkItemService;
import org.springframework.beans.factory.annotation.Autowired;
@ -12,6 +14,8 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* 移动端接口-项目模块
* @Author LPF
@ -26,14 +30,25 @@ public class ApiWorkItemController {
/**
* 项目分类统计
* @Params: [userDetail, categoryId]
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO>
* @Author: liuchuang
* @Date: 2019/9/12 13:26
* @Author: lipengfei
* @Date: 2019/11/18 13:26
*/
@GetMapping("statistics")
public Result<ItemStatisticsResultDTO> itemCategoryStatistics(ItemStatisticsFormDTO formDto) {
public Result<ItemStatisticsResultDTO> itemStatistics(ItemStatisticsFormDTO formDto) {
return workItemService.getItemStatistics(formDto);
}
/**
* 项目列表
* @Params: [ formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("list")
public Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto) {
return workItemService.listItems( formDto);
}
}

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

@ -17,6 +17,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
/**
* 工作端用户登录用户管理相关接口
@ -72,9 +73,20 @@ public class ApiWorkUserController {
* @date 2019/11/18 13:53
*/
@GetMapping("list")
public Result<List<EpdcWorkUserResultDTO>> getUserList(@LoginUser TokenDto userDetail, EpdcWorkUserFromDTO
workUserFromDto) {
public Result<List<EpdcWorkUserResultDTO>> getUserList(@LoginUser TokenDto userDetail, EpdcWorkUserFromDTO workUserFromDto) {
return workUserService.listWorkLlist(userDetail, workUserFromDto);
}
/***
* 查询待认证用户数量
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.Integer>
* @author qushutong
* @date 2019/11/19 10:54
*/
@GetMapping("unauthorizedAmount")
public Result<Integer> unauthorizedAmount(@LoginUser TokenDto userDetail,@RequestParam Map<String,Object> params){
return workUserService.getUnauthorizedAmount(userDetail,params);
}
}

18
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java

@ -11,12 +11,10 @@ import com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO;
import com.elink.esua.epdc.feign.fallback.UserFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* appuser端接口
@ -277,6 +275,7 @@ public interface UserFeignClient {
*/
@GetMapping("app-user/epdc-app/user/partyMemberDetail/{userId}")
Result<EpdcPartyMemberDetailDto> partyMemberDetail(@PathVariable("userId")String userId);
/***
* 用户列表
* @param workUserFromDto
@ -286,4 +285,15 @@ public interface UserFeignClient {
*/
@GetMapping("app-user/epdc-app/user/list")
Result<List<EpdcWorkUserResultDTO>> getWorkUserList(EpdcWorkUserFromDTO workUserFromDto);
/***
* 查询待认证用户数量
* @param parame
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.Integer>
* @author qushutong
* @date 2019/11/19 11:02
*/
@GetMapping("app-user/epdc-app/user/unauthorizedAmount")
Result<Integer> getUnauthorizedAmount(@RequestParam Map<String, Object> parame);
}

9
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkItemFeignClient.java

@ -33,5 +33,14 @@ public interface WorkItemFeignClient {
*/
@GetMapping(value = "events/work/item/statistics", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<ItemStatisticsResultDTO> itemStatistics(ItemStatisticsFormDTO formDto);
/**
* 项目列表
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:42
*/
@GetMapping(value = "events/work/item/list", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto);
}

6
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java

@ -12,6 +12,7 @@ import com.elink.esua.epdc.feign.UserFeignClient;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* @author yujintao
@ -140,4 +141,9 @@ public class UserFeignClientFallback implements UserFeignClient {
public Result<List<EpdcWorkUserResultDTO>> getWorkUserList(EpdcWorkUserFromDTO workUserFromDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getWorkUserList", workUserFromDto);
}
@Override
public Result<Integer> getUnauthorizedAmount(Map<String, Object> parame) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_USER_SERVER, "getUnauthorizedAmount", parame);
}
}

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkItemFeignClientFallback.java

@ -25,5 +25,9 @@ public class WorkItemFeignClientFallback implements WorkItemFeignClient {
public Result<ItemStatisticsResultDTO> itemStatistics(ItemStatisticsFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "itemStatistics", formDto);
}
@Override
public Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "listItems", formDto);
}
}

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkItemService.java

@ -2,10 +2,14 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemStatisticsFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemStatisticsResultDTO;
import java.util.List;
/**
* 项目模块-移动App端
* @Author LPF
@ -21,4 +25,12 @@ public interface WorkItemService {
* @Date: 2019/11/18 13:27
*/
Result<ItemStatisticsResultDTO> getItemStatistics(ItemStatisticsFormDTO formDto);
/**
* 项目列表
* @Params: [userDetail, formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:37
*/
Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto);
}

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

@ -9,6 +9,7 @@ import com.elink.esua.epdc.dto.epdc.form.EpdcWorkUserFromDTO;
import com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO;
import java.util.List;
import java.util.Map;
/**
* 工作端用户登录用户管理 相关业务接口
@ -45,4 +46,13 @@ public interface WorkUserService {
* @date 2019/11/18 13:39
*/
Result<List<EpdcWorkUserResultDTO>> listWorkLlist(TokenDto userDetail, EpdcWorkUserFromDTO workUserFromDto);
/***
* 查询待认证用户数量
* @param
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.Integer>
* @author qushutong
* @date 2019/11/19 10:56
*/
Result<Integer> getUnauthorizedAmount(TokenDto userDetail, Map<String,Object> parame);
}

7
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkItemServiceImpl.java

@ -25,7 +25,7 @@ public class WorkItemServiceImpl implements WorkItemService {
/**
* 项目统计
* @Params: [userDetail, selectedId]
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemStatisticsResultDTO>
* @Author: lipengfei
* @Date: 2019/11/18 13:27
@ -35,4 +35,9 @@ public class WorkItemServiceImpl implements WorkItemService {
return workItemFeignClient.itemStatistics(formDto);
}
@Override
public Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto) {
return workItemFeignClient.listItems(formDto);
}
}

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

@ -13,6 +13,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
/**
* 工作端用户登录用户管理 相关业务实现
@ -69,6 +70,14 @@ public class WorkUserServiceImpl implements WorkUserService {
@Override
public Result<List<EpdcWorkUserResultDTO>> listWorkLlist(TokenDto userDetail, EpdcWorkUserFromDTO workUserFromDto) {
workUserFromDto.setUserId(userDetail.getUserId());
workUserFromDto.setDeptId(userDetail.getGridId());
return userFeignClient.getWorkUserList(workUserFromDto);
}
@Override
public Result<Integer> getUnauthorizedAmount(TokenDto userDetail, Map<String, Object> parame) {
parame.put("userId",userDetail.getUserId());
parame.put("deptId",userDetail.getGridId());
return userFeignClient.getUnauthorizedAmount(parame);
}
}

100
esua-epdc/epdc-module/epdc-demo/epdc-demo-server/src/main/java/com/elink/esua/epdc/controller/ImportInShiBeiController.java

@ -1,100 +0,0 @@
package com.elink.esua.epdc.controller;
import cn.afterturn.easypoi.excel.ExcelImportUtil;
import cn.afterturn.easypoi.excel.entity.ImportParams;
import com.alibaba.fastjson.JSONObject;
import com.elink.esua.epdc.commons.tools.utils.Result;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.codec.CharEncoding;
import org.apache.http.HttpEntity;
import org.apache.http.HttpStatus;
import org.apache.http.ParseException;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.io.*;
import java.util.List;
import java.util.Map;
/**
* @author work@yujt.net.cn
* @date 1 1
*/
@Slf4j
@RestController
@RequestMapping("inshibei")
public class ImportInShiBeiController {
@GetMapping("coterie/batchSave")
public Result importExcel(MultipartFile file, String userId, String token) {
ImportParams importParams = new ImportParams();
importParams.setHeadRows(1);
try {
List<Map<String, String>> articleList = ExcelImportUtil.importExcel(file.getInputStream(), Map.class, importParams);
for (Map<String, String> objectMap : articleList) {
postWithParam(userId, token, objectMap.get("content"), objectMap.get("type"));
}
} catch (Exception e) {
e.printStackTrace();
}
return new Result();
}
private void postWithParam(String userId, String token, String detail, String type) throws Exception {
CloseableHttpClient httpClient = HttpClients.createDefault();
JSONObject json = new JSONObject();
json.put("userId", userId);
json.put("token", token);
json.put("detail", detail);
json.put("coterieType", type);
HttpPost httpPost = new HttpPost("http://hxb.elinkit.com.cn/InShiBei/rest/coterie/save");
StringEntity stringEntity = new StringEntity(json.toJSONString(), CharEncoding.UTF_8);
stringEntity.setContentEncoding(CharEncoding.UTF_8);
// 发送json数据需要设置contentType
stringEntity.setContentType(MediaType.APPLICATION_JSON_UTF8_VALUE);
httpPost.setEntity(stringEntity);
getStringResult(httpClient.execute(httpPost));
}
private static String getStringResult(CloseableHttpResponse response) {
String result = null;
try {
if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
HttpEntity httpEntity = response.getEntity();
result = EntityUtils.toString(httpEntity, CharEncoding.UTF_8);
} else {
log.error("拉取失败,错误编码为:" + response.getStatusLine().getStatusCode());
}
} catch (ParseException e) {
log.error("getResult方法格式转换异常ParseException");
e.printStackTrace();
} catch (IOException e) {
log.error("getResult方法IO异常IOException");
e.printStackTrace();
} finally {
try {
if (null != response) {
response.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}
}

5
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemFormDTO.java

@ -57,4 +57,9 @@ public class ItemFormDTO implements Serializable {
* 排序方式 0-创建时间倒叙1-最后一次处理时间倒叙
*/
private String orderType;
/**
* 项目状态 0-待处理5-已关闭10-已结案
*/
@NotNull(message = "项目状态不能为空")
private int itemState;
}

2
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemStatisticsFormDTO.java

@ -19,7 +19,7 @@ public class ItemStatisticsFormDTO implements Serializable {
/**
* 部门ID
*/
private Long deptId;
private String deptId;
/**
* 部门ID列表
*/

16
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/workItemController.java → esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/WorkItemController.java

@ -19,7 +19,7 @@ import java.util.List;
*/
@RestController
@RequestMapping("work/item")
public class workItemController {
public class WorkItemController {
@Autowired
private ItemService itemService;
@ -30,11 +30,23 @@ public class workItemController {
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemCategoryStatisticsResultDTO>
* @Author: liuchuang
* @Date: 2019/9/12 13:31
* @Date: 2019/9/12 13:31l
*/
@GetMapping("statistics")
public Result<ItemStatisticsResultDTO> itemStatistics(@RequestBody ItemStatisticsFormDTO formDto) {
formDto.setDeptIdList(SecurityUser.getUser().getDeptIdList());
return this.itemService.getItemStatistics(formDto);
}
/**
* 项目列表--移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("list")
public Result<List<ItemResultDTO>> listItems(@RequestBody ItemFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return this.itemService.listItemsByWork(formDto);
}
}

8
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java

@ -133,6 +133,14 @@ public interface ItemService extends BaseService<ItemEntity> {
* @Date: 2019/9/9 16:47
*/
Result<List<ItemResultDTO>> listItems(ItemFormDTO formDto);
/**
* 项目列表-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
Result<List<ItemResultDTO>> listItemsByWork(ItemFormDTO formDto);
/**
* 移动端-项目详情

18
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java

@ -189,6 +189,24 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
List<ItemResultDTO> data = baseDao.selectListOfItems(formDto, states);
return new Result<List<ItemResultDTO>>().ok(data);
}
/**
* 项目列表-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
@Override
public Result<List<ItemResultDTO>> listItemsByWork(ItemFormDTO formDto) {
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize();
formDto.setPageIndex(pageIndex);
// 查询半年内的数据
formDto.setSomeMonthsAgo(DateUtils.addDateMonths(new Date(), -6));
// 查询项目状态 0-待处理,5-已关闭,10-已结案
int[] states = {EventIssueItemState.ITEM_HANDLING,EventIssueItemState.ITEM_CLOSED, EventIssueItemState.ITEM_CLOSEING_CASE};
List<ItemResultDTO> data = baseDao.selectListOfItems(formDto, states);
return new Result<List<ItemResultDTO>>().ok(data);
}
@Override
public Result<ItemDetailResultDTO> getItemDetail(ItemDetailFormDTO formDto) {

5
esua-epdc/epdc-module/epdc-group/epdc-group-client/src/main/java/com.elink.esua.epdc/dto/group/result/GroupDetailForMobileEndResultDTO.java

@ -30,6 +30,11 @@ public class GroupDetailForMobileEndResultDTO implements Serializable {
*/
private String groupAvatar;
/**
* 社群介绍
*/
private String groupIntroduction;
/**
* 群主
*/

6
esua-epdc/epdc-module/epdc-group/epdc-group-server/pom.xml

@ -108,7 +108,7 @@
<properties>
<spring.profiles.active>dev</spring.profiles.active>
<server.port>9064</server.port>
<server.port>9063</server.port>
<spring.redis.index>2</spring.redis.index>
<spring.redis.host>47.104.224.45</spring.redis.host>
@ -131,7 +131,7 @@
<properties>
<spring.profiles.active>test</spring.profiles.active>
<server.port>9064</server.port>
<server.port>9063</server.port>
<spring.redis.index>2</spring.redis.index>
<spring.redis.host>47.104.224.45</spring.redis.host>
@ -154,7 +154,7 @@
<properties>
<spring.profiles.active>prod</spring.profiles.active>
<server.port>9064</server.port>
<server.port>9063</server.port>
<!-- redis配置 -->
<spring.redis.index>8</spring.redis.index>

4
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/dao/UserGroupDao.java

@ -85,12 +85,12 @@ public interface UserGroupDao extends BaseDao<UserGroupEntity> {
*
* 获取社群成员信息
*
* @params [groupId, userId, state]
* @params [groupId, userId, states]
* @return com.elink.esua.epdc.dto.group.UserGroupDTO
* @author liuchuang
* @since 2019/10/23 13:47
*/
UserGroupDTO selectOnOfUserInfo(String groupId, String userId, Integer state);
UserGroupDTO selectOnOfUserInfo(String groupId, String userId, int[] states);
/**
*

4
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/UserGroupService.java

@ -138,12 +138,12 @@ public interface UserGroupService extends BaseService<UserGroupEntity> {
*
* 获取社群成员信息
*
* @params [groupId, userId, state]
* @params [groupId, userId, states]
* @return com.elink.esua.epdc.dto.group.UserGroupDTO
* @author liuchuang
* @since 2019/10/23 13:46
*/
UserGroupDTO getGroupUserInfo(String groupId, String userId, Integer state);
UserGroupDTO getGroupUserInfo(String groupId, String userId, int[] states);
/**
*

9
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/GroupServiceImpl.java

@ -258,7 +258,8 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
@Override
public Result modifyMemberState(GroupUserRemoveOrQuitFormDTO formDto) {
// 获取成员信息
UserGroupDTO userGroupDto = userGroupService.getGroupUserInfo(formDto.getGroupId(), formDto.getOperatorId(), GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue());
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
UserGroupDTO userGroupDto = userGroupService.getGroupUserInfo(formDto.getGroupId(), formDto.getOperatorId(), states);
// 获取群主信息
UserGroupDTO lordGroupDto = userGroupService.getLordInfoByGroupId(formDto.getGroupId());
// 获取社群信息
@ -297,6 +298,12 @@ public class GroupServiceImpl extends BaseServiceImpl<GroupDao, GroupEntity> imp
@Override
@Transactional(rollbackFor = Exception.class)
public Result applyForGroup(GroupApplyFormDTO formDto) {
// 检查用户是否已申请入群
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_PENDING_REVIEW.getValue(), GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
UserGroupDTO userGroupDto = userGroupService.getGroupUserInfo(formDto.getGroupId(), formDto.getUserId(), states);
if (null != userGroupDto) {
return new Result().error("您已申请过加入该社群,请等待群主审核");
}
UserGroupEntity userGroupEntity = ConvertUtils.sourceToTarget(formDto, UserGroupEntity.class);
userGroupEntity.setLordFlag(NumConstant.ZERO_STR);
userGroupEntity.setState(GroupUserStateEnum.GROUP_USER_STATE_PENDING_REVIEW.getValue());

4
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/group/service/impl/UserGroupServiceImpl.java

@ -137,8 +137,8 @@ public class UserGroupServiceImpl extends BaseServiceImpl<UserGroupDao, UserGrou
}
@Override
public UserGroupDTO getGroupUserInfo(String groupId, String userId, Integer state) {
return baseDao.selectOnOfUserInfo(groupId, userId, state);
public UserGroupDTO getGroupUserInfo(String groupId, String userId, int[] states) {
return baseDao.selectOnOfUserInfo(groupId, userId, states);
}
@Override

6
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/java/com.elink.esua.epdc/modules/topic/service/impl/TopicServiceImpl.java

@ -201,7 +201,8 @@ public class TopicServiceImpl extends BaseServiceImpl<TopicDao, TopicEntity> imp
// 群主关闭话题
if (NumConstant.ZERO_STR.equals(operatorUser)) {
// 获取用户信息
UserGroupDTO userDto = userGroupService.getGroupUserInfo(topicDto.getGroupId(), formDto.getUserId(), GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue());
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
UserGroupDTO userDto = userGroupService.getGroupUserInfo(topicDto.getGroupId(), formDto.getUserId(), states);
if (null == userDto || !NumConstant.ONE_STR.equals(userDto.getLordFlag())) {
return new Result().error("您不是群主,不可以关闭话题");
}
@ -358,7 +359,8 @@ public class TopicServiceImpl extends BaseServiceImpl<TopicDao, TopicEntity> imp
return new Result().error("话题转议题失败,当前社群已解散");
}
// 校验用户身份
UserGroupDTO userDto = userGroupService.getGroupUserInfo(topicDto.getGroupId(), userId, GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue());
int[] states = {GroupUserStateEnum.GROUP_USER_STATE_EXAMINATION_PASSED.getValue()};
UserGroupDTO userDto = userGroupService.getGroupUserInfo(topicDto.getGroupId(), userId, states);
if (null == userDto || !NumConstant.ONE_STR.equals(userDto.getLordFlag())) {
return new Result().error("您不是群主,不可以转为议题");
}

5
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/GroupDao.xml

@ -95,7 +95,7 @@
WHERE
gp.DEL_FLAG = '0'
AND gp.GRID_ID = #{gridId}
<![CDATA[ AND gp.STATE >= ]]> 20
<![CDATA[ AND gp.STATE <> ]]> 20
GROUP BY
gp.ID
ORDER BY
@ -127,7 +127,7 @@
GROUP BY
gp.ID
ORDER BY
latestTopicTime DESC
MAX( tp.CREATED_TIME ) DESC
</select>
<select id="selectOneOfGroupDetailForMobileEnd" resultType="com.elink.esua.epdc.dto.group.result.GroupDetailForMobileEndResultDTO">
@ -136,6 +136,7 @@
gp.GROUP_NAME,
gp.GROUP_AVATAR,
gp.GROUP_CATEGORY,
gp.GROUP_INTRODUCTION,
COUNT( ugp.ID ) AS totalNum,
ugp1.NICKNAME,
ugp2.LORD_FLAG,

10
esua-epdc/epdc-module/epdc-group/epdc-group-server/src/main/resources/mapper/group/UserGroupDao.xml

@ -43,10 +43,10 @@
<if test="state == 10">
CONVERT(NICKNAME USING gbk) ASC,
</if>
ASC CREATED_TIME DESC
CREATED_TIME DESC
</select>
<select id="selectOneOfLordByGroupId" resultType="com.elink.esua.epdc.dto.group.UserGroupDTO">
<select id="selectOneOfLordInfoByGroupId" resultType="com.elink.esua.epdc.dto.group.UserGroupDTO">
SELECT
ID,
GROUP_ID,
@ -70,7 +70,11 @@
</update>
<select id="selectOnOfUserInfo" resultType="com.elink.esua.epdc.dto.group.UserGroupDTO">
SELECT * FROM epdc_user_group WHERE DEL_FLAG = '0' AND GROUP_ID = #{groupId} AND USER_ID = #{userId} AND STATE = #{state}
SELECT * FROM epdc_user_group WHERE DEL_FLAG = '0' AND GROUP_ID = #{groupId} AND USER_ID = #{userId}
AND STATE in
<foreach item="state" collection="states" open="(" separator="," close=")">
#{state}
</foreach>
</select>
<select id="selectListOfGroupUserIdsByState" resultType="string">

34
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java

@ -18,6 +18,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* 对移动端开放
@ -170,7 +171,7 @@ public class EpdcAppUserController {
/**
* 社群添加好友列表
*
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.util.List < com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO>>
* @params [formDto]
* @author liuchuang
* @since 2019/10/23 16:22
@ -254,6 +255,7 @@ public class EpdcAppUserController {
/**
* 获取居民详情已认证或待认证提交信息待审核的居民用户
*
* @param userId 用户Id
* @return
*/
@ -264,23 +266,26 @@ public class EpdcAppUserController {
/**
* 获取党员详情已认证或未认证的党员用户
*
* @param userId
* @return
*/
@GetMapping("partyMemberDetail/{userId}")
public Result<EpdcPartyMemberDetailDto> partyMemberDetail(@PathVariable("userId") String userId){
public Result<EpdcPartyMemberDetailDto> partyMemberDetail(@PathVariable("userId") String userId) {
return userService.partyMemberDetail(userId);
}
/**
* 认证用户用户信息审核
* @param formDTO
* @return
*/
/**
* 认证用户用户信息审核
*
* @param formDTO
* @return
*/
@PostMapping("authenticateResident")
public Result authenticateResident(@RequestBody EpdcAppAuthenticateResidentFormDTO formDTO) {
return userService.authenticateResident(formDTO);
}
/***
* 用户列表
* @param workUserFromDto
@ -289,7 +294,20 @@ public class EpdcAppUserController {
* @date 2019/11/18 13:47
*/
@GetMapping("list")
public Result<List<EpdcWorkUserResultDTO>> getWorkUserList(@RequestBody EpdcWorkUserFromDTO workUserFromDto){
public Result<List<EpdcWorkUserResultDTO>> getWorkUserList(@RequestBody EpdcWorkUserFromDTO workUserFromDto) {
return userService.getWorkUserList(workUserFromDto);
}
/***
* 查询待认证用户数量
* @param params
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.Integer>
* @author qushutong
* @date 2019/11/19 13:25
*/
@GetMapping("unauthorizedAmount")
public Result<Integer> unauthorizedAmount(@RequestParam Map<String, Object> params) {
return userService.getAnauthorizedAmount(params);
}
}

37
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java

@ -104,38 +104,51 @@ public interface UserDao extends BaseDao<UserEntity> {
/**
* 获取居民详情已认证或待认证提交信息待审核的居民用户
*
* @param userId 用户Id
* @return
*/
EpdcResidentDetailResultDTO residentDetailByUserId(@Param("userId")String userId);
EpdcResidentDetailResultDTO residentDetailByUserId(@Param("userId") String userId);
/**
* 获取党员详情已认证或未认证的党员用户
*
* @param userId
* @return
*/
EpdcPartyMemberDetailDto partyMemberDetailByUserId(@Param("userId")String userId);
EpdcPartyMemberDetailDto partyMemberDetailByUserId(@Param("userId") String userId);
/**
* 未认证的党员用户
*
* @param userId
* @return
*/
EpdcPartyMemberDetailDto partyMemberDetailFaild(@Param("userId")String userId);
EpdcPartyMemberDetailDto partyMemberDetailFaild(@Param("userId") String userId);
/**
* 通过用户ID获取党员身份证号
*
* @param userId
* @return
*/
String getPartyMemberIdNoByUserID(@Param("userId")String userId);
/***
* 用户党员待审核列表
* @param workUserFromDto
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO>
* @author qushutong
* @date 2019/11/18 19:28
*/
String getPartyMemberIdNoByUserID(@Param("userId") String userId);
/***
* 用户党员待审核列表
* @param workUserFromDto
* @return java.util.List<com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO>
* @author qushutong
* @date 2019/11/18 19:28
*/
List<EpdcWorkUserResultDTO> selectWorkUserList(EpdcWorkUserFromDTO workUserFromDto);
/***
* 查询待认证用户数量
* @param params
* @return java.lang.Integer
* @author qushutong
* @date 2019/11/19 13:31
*/
Integer selectOneAnauthorizedAmount(Map<String, Object> params);
}

10
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java

@ -229,4 +229,14 @@ public interface UserService extends BaseService<UserEntity> {
* @date 2019/11/18 14:00
*/
Result<List<EpdcWorkUserResultDTO>> getWorkUserList(EpdcWorkUserFromDTO workUserFromDto);
/***
* 查询待认证用户数量
* @param params
* @return com.elink.esua.epdc.commons.tools.utils.Result<java.lang.Integer>
* @author qushutong
* @date 2019/11/19 13:28
*/
Result<Integer> getAnauthorizedAmount(Map<String,Object> params);
}

5
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java

@ -580,4 +580,9 @@ public class UserServiceImpl extends BaseServiceImpl<UserDao, UserEntity> implem
return new Result<List<EpdcWorkUserResultDTO>>().ok(epdcWorkUserResultDTOS);
}
@Override
public Result<Integer> getAnauthorizedAmount(Map<String, Object> params) {
return new Result<Integer>().ok(baseDao.selectOneAnauthorizedAmount(params));
}
}

184
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

@ -62,35 +62,41 @@
</select>
<select id="selectListUserDto" resultType="com.elink.esua.epdc.dto.UserDTO">
SELECT
u.id,
u.REAL_NAME,
u.MOBILE,
u.REGISTER_TIME,
IDENTITY_NO,
ADDRESS,
STATE,
PARTY_FLAG
u.id,
u.REAL_NAME,
u.MOBILE,
u.REGISTER_TIME,
IDENTITY_NO,
ADDRESS,
STATE,
PARTY_FLAG,
CONCAT(
ifnull(ug.STREET,''),
'-',ug.COMMUNITY,
'-',ug.GRID
) AS myGridName
FROM
epdc_user u
LEFT JOIN epdc_user_grid_relation ug ON u.ID = ug.USER_ID
epdc_user u
LEFT JOIN epdc_user_grid_relation ug ON u.ID = ug.USER_ID
where
u.del_flag = '0'
<if test="startTime != '' and endTime != ''"> and u.register_time between #{startTime} and #{endTime}</if>
<if test="state != '' and state != null"> and u.state = #{state}</if>
<if test="realName != '' and realName != null"> and u.real_name like '%${realName}%'</if>
<if test="mobile != '' and mobile != null"> and u.mobile like '%${mobile}%'</if>
<if test="identityNo != '' and identityNo != null"> and u.identity_no like '%${identityNo}%'</if>
<if test="partyFlag != '' and partyFlag != null"> and u.party_flag = #{partyFlag}</if>
<if test="streetId != '' and streetId != null"> and ug.street_id = #{streetId}</if>
<if test="communityId != '' and communityId != null"> and ug.community_id = #{communityId}</if>
<if test="gridId != '' and gridId != null"> and ug.grid_id = #{gridId}</if>
u.del_flag = '0'
<if test="startTime != '' and endTime != ''">and u.register_time between #{startTime} and #{endTime}</if>
<if test="state != '' and state != null">and u.state = #{state}</if>
<if test="realName != '' and realName != null">and u.real_name like '%${realName}%'</if>
<if test="mobile != '' and mobile != null">and u.mobile like '%${mobile}%'</if>
<if test="identityNo != '' and identityNo != null">and u.identity_no like '%${identityNo}%'</if>
<if test="partyFlag != '' and partyFlag != null">and u.party_flag = #{partyFlag}</if>
<if test="streetId != '' and streetId != null">and ug.street_id = #{streetId}</if>
<if test="communityId != '' and communityId != null">and ug.community_id = #{communityId}</if>
<if test="gridId != '' and gridId != null">and ug.grid_id = #{gridId}</if>
GROUP BY
u.ID
u.ID
ORDER BY
u.register_time desc
u.register_time desc
</select>
<!-- 根据userId获取居民详情(已认证或待认证(提交信息待审核)的居民用户) -->
<resultMap id="EpdcResidentDetailResultDtoMap" type="com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailResultDTO">
<resultMap id="EpdcResidentDetailResultDtoMap"
type="com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailResultDTO">
<id column="id" property="userId"/>
<result column="REAL_NAME" property="realName"/>
<result column="IDENTITY_NO" property="identityNo"/>
@ -99,7 +105,7 @@
<result column="DWELLING_PLACE" property="dwellingPlace"/>
<result column="PARTY_FLAG" property="partyFlag"/>
<result column="state" property="state"/>
<collection property="gridList" ofType="com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailGridResultDTO" >
<collection property="gridList" ofType="com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailGridResultDTO">
<result column="completeName" property="completeName"/>
<result column="leaderFlag" property="leaderFlag"/>
</collection>
@ -127,53 +133,53 @@
<select id="selectListOfInviteUsers" resultType="com.elink.esua.epdc.dto.epdc.result.EpdcUserGroupInviteResultDTO">
SELECT
ID AS userId,
NICKNAME,
FACE_IMG AS userAvatar,
PARTY_FLAG AS partyMember,
MOBILE
ID AS userId,
NICKNAME,
FACE_IMG AS userAvatar,
PARTY_FLAG AS partyMember,
MOBILE
FROM
epdc_user
epdc_user
WHERE
DEL_FLAG = '0'
AND GRID_ID = #{gridId}
AND ID NOT IN
<foreach item="userId" collection="userIds" open="(" separator="," close=")">
#{userId}
</foreach>
<if test="mobile != null and mobile != ''">
and MOBILE = #{mobile}
</if>
<if test="road != null and road != ''">
and ROAD like concat('%', #{road}, '%')
</if>
<if test="lastName != null and lastName != ''">
and LAST_NAME like concat('%', #{lastName}, '%')
</if>
DEL_FLAG = '0'
AND GRID_ID = #{gridId}
AND ID NOT IN
<foreach item="userId" collection="userIds" open="(" separator="," close=")">
#{userId}
</foreach>
<if test="mobile != null and mobile != ''">
and MOBILE = #{mobile}
</if>
<if test="road != null and road != ''">
and ROAD like concat('%', #{road}, '%')
</if>
<if test="lastName != null and lastName != ''">
and LAST_NAME like concat('%', #{lastName}, '%')
</if>
ORDER BY
CONVERT(NICKNAME USING gbk) ASC,
REGISTER_TIME
CONVERT(NICKNAME USING gbk) ASC,
REGISTER_TIME
</select>
<resultMap id="partMemberDetail" type="com.elink.esua.epdc.dto.epdc.result.EpdcPartyMemberDetailDto">
<id column="userId" property="userId" />
<result column="realName" property="realName" />
<result column="identityNo" property="identityNo" />
<result column="road" property="road" />
<result column="villageName" property="villageName" />
<result column="dwellingPlace" property="dwellingPlace" />
<result column="authenticatedFlag" property="authenticatedFlag" />
<result column="streetName" property="streetName" />
<result column="communityName" property="communityName" />
<result column="gridName" property="gridName" />
<result column="partyFlag" property="partyFlag" />
<result column="cadreFlag" property="cadreFlag" />
<collection property="gridList" ofType="com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailGridResultDTO" >
<id column="userId" property="userId"/>
<result column="realName" property="realName"/>
<result column="identityNo" property="identityNo"/>
<result column="road" property="road"/>
<result column="villageName" property="villageName"/>
<result column="dwellingPlace" property="dwellingPlace"/>
<result column="authenticatedFlag" property="authenticatedFlag"/>
<result column="streetName" property="streetName"/>
<result column="communityName" property="communityName"/>
<result column="gridName" property="gridName"/>
<result column="partyFlag" property="partyFlag"/>
<result column="cadreFlag" property="cadreFlag"/>
<collection property="gridList" ofType="com.elink.esua.epdc.dto.epdc.result.EpdcResidentDetailGridResultDTO">
<result column="completeName" property="completeName"/>
<result column="leaderFlag" property="leaderFlag"/>
</collection>
<collection property="tagNameList" ofType="java.lang.String" >
<result column="tagName" />
<collection property="tagNameList" ofType="java.lang.String">
<result column="tagName"/>
</collection>
</resultMap>
@ -200,11 +206,11 @@
LEFT JOIN epdc_user eu ON eu.IDENTITY_NO = epm.IDENTITY_NO
LEFT JOIN epdc_party_tag_relation eptr ON eptr.PARTY_ID = epm.ID
LEFT JOIN epdc_user_tag eut ON eut.ID = eptr.TAG_ID
AND eut.DEL_FLAG = '0'
LEFT JOIN epdc_user_grid_relation eugr on eugr.USER_ID = eu.ID
WHERE
eu.DEL_FLAG = '0'
AND epm.DEL_FLAG = '0'
AND eptr.DEL_FLAG = '0'
AND eu.ID = #{userId}
</select>
@ -274,4 +280,54 @@
AND eu.id = #{userId}
</select>
</mapper>
<!--获取用户列表-->
<select id="selectWorkUserList" resultType="com.elink.esua.epdc.dto.epdc.result.EpdcWorkUserResultDTO">
SELECT
u.ID as userId,
u.NICKNAME as nickname,
u.REGISTER_TIME as registerTime,
u.FACE_IMG as faceImg
FROM
epdc_user_grid_relation ug_l
LEFT JOIN epdc_user_grid_relation ug_r ON ug_l.GRID_ID = ug_r.GRID_ID
LEFT JOIN epdc_user u ON ug_r.USER_ID = u.ID
WHERE
ug_l.USER_ID = #{userId}
AND ug_l.LEADER_FLAG = '1'
AND u.STATE = #{authenticatedFlag}
AND u.PART_FLAG = #{partyFlag}
<if test='allGridFlag=="0"'>
AND ug_r.GRID_ID = #{deptId}
</if>
AND u.CREATED_TIME &lt;= STR_TO_DATE( #{timestamp}, '%Y-%m-%d %H:%i:%s' )
AND ug_l.DEL_FLAG = '0'
AND ug_r.DEL_FLAG = '0'
AND u.DEL_FLAG = '0'
GROUP BY
u.ID
ORDER BY
u.CREATED_TIME DESC
LIMIT #{pageIndex},#{pageSize}
</select>
<!--查询待认证用户数量-->
<select id="selectOneAnauthorizedAmount" resultType="Integer">
SELECT
COUNT(u.ID)
FROM
epdc_user_grid_relation ug_l
LEFT JOIN epdc_user_grid_relation ug_r ON ug_l.GRID_ID = ug_r.GRID_ID
LEFT JOIN epdc_user u ON ug_r.USER_ID = u.ID
WHERE
ug_l.USER_ID = #{userId}
AND ug_l.LEADER_FLAG = '1'
AND u.STATE = '1'
<if test='allGridFlag=="0"'>
AND ug_r.GRID_ID = #{deptId}
</if>
AND ug_l.DEL_FLAG = '0'
AND ug_r.DEL_FLAG = '0'
AND u.DEL_FLAG = '0'
</select>
</mapper>
Loading…
Cancel
Save