Browse Source

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

dev
gupeng 7 years ago
parent
commit
76bdbe5df8
  1. 118
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppMenuDTO.java
  2. 62
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/AppRoleMenuDTO.java
  3. 36
      esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java
  4. 109
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java
  5. 94
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppRoleMenuController.java
  6. 48
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java
  7. 33
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppRoleMenuDao.java
  8. 97
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppMenuEntity.java
  9. 49
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/AppRoleMenuEntity.java
  10. 74
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/AppMenuExcel.java
  11. 50
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/AppRoleMenuExcel.java
  12. 47
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppMenuRedis.java
  13. 47
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/AppRoleMenuRedis.java
  14. 126
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java
  15. 95
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppRoleMenuService.java
  16. 132
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java
  17. 104
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppRoleMenuServiceImpl.java
  18. 27
      esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysMenuServiceImpl.java
  19. 18
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppMenuDao.xml
  20. 15
      esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/AppRoleMenuDao.xml
  21. 11
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java
  22. 18
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkUserController.java
  23. 18
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClient.java
  24. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java
  25. 6
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClientFallback.java
  26. 6
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkIssueFeignClientFallback.java
  27. 8
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java
  28. 10
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkUserService.java
  29. 11
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java
  30. 9
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkUserServiceImpl.java
  31. 100
      esua-epdc/epdc-module/epdc-demo/epdc-demo-server/src/main/java/com/elink/esua/epdc/controller/ImportInShiBeiController.java
  32. 5
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ImageConstant.java
  33. 3
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/EpdcEventsReviewFormDTO.java
  34. 20
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppWorkEventsController.java
  35. 9
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/service/impl/EpdcEventsServiceImpl.java
  36. 34
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/EpdcAppUserController.java
  37. 37
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/UserDao.java
  38. 10
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/UserService.java
  39. 5
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java
  40. 176
      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;
}

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);
}
}

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/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;
}

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/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/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/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>

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>

11
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkIssueController.java

@ -3,6 +3,7 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO;
import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO;
@ -33,7 +34,6 @@ public class ApiWorkIssueController {
@GetMapping("issue/statistics")
public Result<IssueStateStatisticsResultDTO> statistics(@RequestBody IssueStateStatisticsFormDTO formDto) {
return workIssueService.stateStatistics(formDto);
}
/**
@ -46,7 +46,6 @@ public class ApiWorkIssueController {
return workIssueService.listIssuePendingResponse(formDto);
}
/**
*事件详情
* @param id
@ -67,4 +66,12 @@ public class ApiWorkIssueController {
}
/**
*事件审核
* @return
*/
@PostMapping("event/review")
public Result review(EpdcEventsReviewFormDTO dto) {
return workIssueService.review(dto);
}
}

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);
}

10
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkIssueFeignClient.java

@ -3,6 +3,7 @@ package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
@ -11,6 +12,7 @@ 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 java.util.List;
@ -49,4 +51,12 @@ public interface WorkIssueFeignClient {
@GetMapping(value = "events/epdc-app/work/issue/categoryList", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<EventCategoryDTO>> categoryList();
/**
* 事件审核
* @param dto
* @return
*/
@PostMapping(value = "events/epdc-app/work/event/review", consumes = MediaType.APPLICATION_JSON_VALUE)
Result review(EpdcEventsReviewFormDTO dto);
}

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);
}
}

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

@ -5,6 +5,7 @@ import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventSubmitFormDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.*;
import com.elink.esua.epdc.dto.issue.result.*;
@ -40,4 +41,9 @@ public class WorkIssueFeignClientFallback implements WorkIssueFeignClient {
public Result<List<EventCategoryDTO>> categoryList() {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "categoryList", "");
}
@Override
public Result review(EpdcEventsReviewFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "review", dto);
}
}

8
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkIssueService.java

@ -20,6 +20,7 @@ package com.elink.esua.epdc.service;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO;
import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO;
@ -56,4 +57,11 @@ public interface WorkIssueService {
* @return
*/
Result<List<EventCategoryDTO>> categoryList();
/**
* 事件审核
* @param dto
* @return
*/
Result review(EpdcEventsReviewFormDTO dto);
}

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);
}

11
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkIssueServiceImpl.java

@ -19,6 +19,7 @@ package com.elink.esua.epdc.service.impl;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.category.EventCategoryDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.dto.events.result.EventAppDetailResultDTO;
import com.elink.esua.epdc.dto.issue.form.IssuePendingResponseFormDTO;
import com.elink.esua.epdc.dto.issue.form.IssueStateStatisticsFormDTO;
@ -76,4 +77,14 @@ public class WorkIssueServiceImpl implements WorkIssueService {
public Result<List<EventCategoryDTO>> categoryList() {
return workIssueFeignClient.categoryList();
}
/**
* 事件审核
* @param dto
* @return
*/
@Override
public Result review(EpdcEventsReviewFormDTO dto) {
return workIssueFeignClient.review(dto);
}
}

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/constant/ImageConstant.java

@ -21,4 +21,9 @@ public interface ImageConstant {
* 图片类型-事件拒绝
*/
public final static String TYPE_IMAGE_BIZ_EVENTS_REJECT = "eventsReject";
/**
* 图片类型-议题处理
*/
public final static String TYPE_IMAGE_BIZ_ISSUE_HANDLE = "issueHandle";
}

3
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/events/form/EpdcEventsReviewFormDTO.java

@ -6,6 +6,7 @@ import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.List;
/**
* 审核事件提交表单DTO
@ -35,4 +36,6 @@ public class EpdcEventsReviewFormDTO implements Serializable {
*/
@Size(min = 1, max = 500, message = "处理意见在500字以内")
private String advice;
private List<String> images;
}

20
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/events/controller/EpdcAppWorkEventsController.java

@ -2,13 +2,12 @@ package com.elink.esua.epdc.modules.events.controller;
import com.elink.esua.epdc.commons.tools.constant.Constant;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.events.EpdcEventsDetailDTO;
import com.elink.esua.epdc.dto.events.form.EpdcEventsReviewFormDTO;
import com.elink.esua.epdc.modules.events.service.EpdcEventsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping(Constant.EPDC_APP + "work/event")
@ -27,4 +26,17 @@ public class EpdcAppWorkEventsController {
EpdcEventsDetailDTO data = epdcEventsService.getEvent(id);
return new Result<EpdcEventsDetailDTO>().ok(data);
}
/**
* 事件审核
* @Params: [dto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: liuchuang
* @Date: 2019/9/5 9:02
*/
@PostMapping("review")
public Result eventReview(@RequestBody EpdcEventsReviewFormDTO dto) {
ValidatorUtils.validateEntity(dto);
return epdcEventsService.eventReview(dto);
}
}

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

@ -176,6 +176,9 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
// 更新事件表审核状态
updateById(entity);
String imageType = ImageConstant.TYPE_IMAGE_BIZ_EVENTS_REJECT;
String referenceId = dto.getId();
EpdcEventsEntity eventsEntity = baseDao.selectById(dto.getId());
// 组装发送消息内容
@ -208,7 +211,13 @@ public class EpdcEventsServiceImpl extends BaseServiceImpl<EpdcEventsDao, EpdcEv
// 发送菜单消息-议题待处理
issueService.sendIssueHandleMenuNotice(issueEntity.getGridId(), null);
referenceId = issueHandleEntity.getId();
imageType = ImageConstant.TYPE_IMAGE_BIZ_ISSUE_HANDLE;
}
imgService.saveImages(dto.getImages(),referenceId,imageType);
// 插入部门响应记录
deptRespondTask.saveEventDeptRespond(dto);
// 事件来源-友邻社群-话题转议题

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));
}
}

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

@ -62,35 +62,43 @@
</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
u.id,
u.REAL_NAME,
u.MOBILE,
u.REGISTER_TIME,
IDENTITY_NO,
STATE,
PARTY_FLAG
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 +107,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 +135,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>
@ -274,4 +282,48 @@
AND eu.id = #{userId}
</select>
<!--获取用户列表-->
<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' )
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>
</select>
</mapper>

Loading…
Cancel
Save