diff --git a/esua-epdc/docker-compose/test/app/admin/docker-compose.yml b/esua-epdc/docker-compose/test/app/admin/docker-compose.yml index 0f2d27f7f..497085e29 100644 --- a/esua-epdc/docker-compose/test/app/admin/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/admin/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-admin-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-admin-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-admin-server:test container_name: epdc-admin-server-01 ports: - 10001:10001 diff --git a/esua-epdc/docker-compose/test/app/analysis/docker-compose.yml b/esua-epdc/docker-compose/test/app/analysis/docker-compose.yml index cc004bc44..0c008bf44 100644 --- a/esua-epdc/docker-compose/test/app/analysis/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/analysis/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-analysis-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-analysis-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-analysis-server:test container_name: epdc-analysis-server-01 ports: - 10003:10003 diff --git a/esua-epdc/docker-compose/test/app/api/docker-compose.yml b/esua-epdc/docker-compose/test/app/api/docker-compose.yml index 0d509209e..44278b637 100644 --- a/esua-epdc/docker-compose/test/app/api/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/api/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-api-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-api-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-api-server:test container_name: epdc-api-server-01 ports: - 10004:10004 diff --git a/esua-epdc/docker-compose/test/app/auth/docker-compose.yml b/esua-epdc/docker-compose/test/app/auth/docker-compose.yml index aac8787fa..e6da970e7 100644 --- a/esua-epdc/docker-compose/test/app/auth/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/auth/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-auth: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-auth:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-auth:test container_name: epdc-auth-server-01 ports: - 10002:10002 diff --git a/esua-epdc/docker-compose/test/app/custom/docker-compose.yml b/esua-epdc/docker-compose/test/app/custom/docker-compose.yml index 48ae797e1..48bbb8568 100644 --- a/esua-epdc/docker-compose/test/app/custom/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/custom/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-custom-server-01: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-custom-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-custom-server:test container_name: epdc-custom-server-01 ports: - 10005:10005 diff --git a/esua-epdc/docker-compose/test/app/events/docker-compose.yml b/esua-epdc/docker-compose/test/app/events/docker-compose.yml index b12646d79..4cb66504b 100644 --- a/esua-epdc/docker-compose/test/app/events/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/events/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-events-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-events-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-events-server:test container_name: epdc-events-server-01 ports: - 10006:10006 diff --git a/esua-epdc/docker-compose/test/app/gateway/docker-compose.yml b/esua-epdc/docker-compose/test/app/gateway/docker-compose.yml index ecae7f10c..79f0ef09b 100644 --- a/esua-epdc/docker-compose/test/app/gateway/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/gateway/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-gateway: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-gateway:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-gateway:test container_name: epdc-gateway-server-01 ports: - 10000:10000 diff --git a/esua-epdc/docker-compose/test/app/group/docker-compose.yml b/esua-epdc/docker-compose/test/app/group/docker-compose.yml index 348885883..6ada55ddd 100644 --- a/esua-epdc/docker-compose/test/app/group/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/group/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-group-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-group-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-group-server:test container_name: epdc-group-server-01 ports: - 10007:10007 diff --git a/esua-epdc/docker-compose/test/app/heart/docker-compose.yml b/esua-epdc/docker-compose/test/app/heart/docker-compose.yml index 8c73b0efc..0cbb13580 100644 --- a/esua-epdc/docker-compose/test/app/heart/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/heart/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-heart-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-heart-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-heart-server:test container_name: epdc-heart-server-01 ports: - 10008:10008 diff --git a/esua-epdc/docker-compose/test/app/kpi/docker-compose.yml b/esua-epdc/docker-compose/test/app/kpi/docker-compose.yml index 0eb745bf3..7b623b685 100644 --- a/esua-epdc/docker-compose/test/app/kpi/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/kpi/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-kpi-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-kpi-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-kpi-server:test container_name: epdc-kpi-server-01 ports: - 10009:10009 diff --git a/esua-epdc/docker-compose/test/app/message/docker-compose.yml b/esua-epdc/docker-compose/test/app/message/docker-compose.yml index 7bf8759d0..cfaace090 100644 --- a/esua-epdc/docker-compose/test/app/message/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/message/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-message-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-message-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-message-server:test container_name: epdc-message-server-01 ports: - 10010:10010 diff --git a/esua-epdc/docker-compose/test/app/news/docker-compose.yml b/esua-epdc/docker-compose/test/app/news/docker-compose.yml index cf120910a..405f47ef4 100644 --- a/esua-epdc/docker-compose/test/app/news/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/news/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-news-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-news-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-news-server:test container_name: epdc-news-server-01 ports: - 10011:10011 diff --git a/esua-epdc/docker-compose/test/app/oss/docker-compose.yml b/esua-epdc/docker-compose/test/app/oss/docker-compose.yml index d677638c4..3940cbce8 100644 --- a/esua-epdc/docker-compose/test/app/oss/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/oss/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-oss-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-oss-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-oss-server:test container_name: epdc-oss-server-01 ports: - 10012:10012 diff --git a/esua-epdc/docker-compose/test/app/user/docker-compose.yml b/esua-epdc/docker-compose/test/app/user/docker-compose.yml index 8ad2e482b..f3209f6a6 100644 --- a/esua-epdc/docker-compose/test/app/user/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/user/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-user-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-user-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-user-server:test container_name: epdc-user-server-01 ports: - 10014:10014 diff --git a/esua-epdc/docker-compose/test/app/webservice/docker-compose.yml b/esua-epdc/docker-compose/test/app/webservice/docker-compose.yml index 77397cdea..6eb85b0ac 100644 --- a/esua-epdc/docker-compose/test/app/webservice/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/webservice/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-websocket-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-webservice:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-webservice:test container_name: epdc-webservice-01 ports: - 10015:10015 diff --git a/esua-epdc/docker-compose/test/app/websocket/docker-compose.yml b/esua-epdc/docker-compose/test/app/websocket/docker-compose.yml index b78cd6043..3fb41729c 100644 --- a/esua-epdc/docker-compose/test/app/websocket/docker-compose.yml +++ b/esua-epdc/docker-compose/test/app/websocket/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: epdc-websocket-server: - image: registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-websocket-server:test + image: registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/epdc-websocket-server:test container_name: epdc-websocket-server-01 ports: - 10016:10016 diff --git a/esua-epdc/dockerfile/Dockerfile b/esua-epdc/dockerfile/Dockerfile new file mode 100755 index 000000000..9e1c30f4f --- /dev/null +++ b/esua-epdc/dockerfile/Dockerfile @@ -0,0 +1,20 @@ +# 基础镜像 +FROM openjdk:8u242-jdk-buster +# 作者 +MAINTAINER rongchao@elink-cn.com +# 对应pom.xml文件中的dockerfile-maven-plugin插件JAR_FILE的值 +ARG JAR_FILE +# 对应pom.xml文件中的dockerfile-maven-plugin插件JAR_NAME的值 +ARG JAR_NAME +# 对应pom.xml文件中的dockerfile-maven-plugin插件SERVER_PORT的值 +ARG SERVER_PORT +# 复制打包完成后的jar文件到/opt目录下 +ENV JAR_PATH /mnt/epdc/${JAR_NAME}.jar +ADD ${JAR_FILE} $JAR_PATH +# /data设为环境变量 +ENV DATAPATH /data +# 挂载/data目录到主机 +VOLUME $DATAPATH +# 启动容器时执行 +ENTRYPOINT java -jar -Xmx1024m $JAR_PATH +EXPOSE ${SERVER_PORT} diff --git a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysAnalysisMenuDTO.java b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysAnalysisMenuDTO.java new file mode 100644 index 000000000..c06629052 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysAnalysisMenuDTO.java @@ -0,0 +1,141 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dto; + +import java.io.Serializable; +import java.util.Date; + +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; + + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +public class SysAnalysisMenuDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * id + */ + @NotNull(message = "{id.require}", groups = UpdateGroup.class) + private Long id; + + /** + * 上级ID,一级菜单为0 + */ + @NotNull(message = "{sysmenu.pid.require}", groups = DefaultGroup.class) + private Long pid; + + /** + * 类型 0:菜单 1:按钮 + */ + @Range(min = 0, max = 1, message = "{sysmenu.type.range}", groups = DefaultGroup.class) + private Integer type; + + /** + * 菜单图标 + */ + private String icon; + + /** + * 样式名称 + */ + private String className; + + /** + * 排序 + */ + @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; + + /** + * 备注 + */ + private String remark; + + /** + * 子模板ID + */ + private String templateId; + + @NotBlank(message = "{sysmenu.name.require}", groups = DefaultGroup.class) + private String name; + + /** + * 是否显示数字 0否 1是 + */ + private String numFlag; + + //虚字段 + + /** + * 上级菜单名称 + */ + private String parentName; + + /** + * 模块名称 + */ + private String modelname; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysAnalysisRoleMenuDTO.java b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysAnalysisRoleMenuDTO.java new file mode 100644 index 000000000..b5a712cf9 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysAnalysisRoleMenuDTO.java @@ -0,0 +1,61 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dto; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +public class SysAnalysisRoleMenuDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * id + */ + private Long id; + + /** + * 角色ID + */ + private Long roleId; + + /** + * 菜单ID + */ + private Long menuId; + + /** + * 创建者 + */ + private Long creator; + + /** + * 创建时间 + */ + private Date createDate; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysRoleDTO.java b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysRoleDTO.java index 74a07bb20..839e9317a 100644 --- a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysRoleDTO.java +++ b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/dto/SysRoleDTO.java @@ -72,4 +72,9 @@ public class SysRoleDTO implements Serializable { * app菜单ID列表 */ private List appMenuIdList; + + /** + * 数据端菜单ID列表 + */ + private List analysisMenuIdList; } diff --git a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java index 6a1b53042..5874ba30f 100644 --- a/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java +++ b/esua-epdc/epdc-admin/epdc-admin-client/src/main/java/com/elink/esua/epdc/enums/MenuTableEnum.java @@ -22,7 +22,11 @@ public enum MenuTableEnum { /** * 非菜单资源 */ - APP("sys_app_menu"); + APP("sys_app_menu"), + /** + * 领导端资源 + */ + ANALYSIS("sys_analysis_menu"); private String value; diff --git a/esua-epdc/epdc-admin/epdc-admin-server/pom.xml b/esua-epdc/epdc-admin/epdc-admin-server/pom.xml index cac6d48fb..25640901b 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/pom.xml +++ b/esua-epdc/epdc-admin/epdc-admin-server/pom.xml @@ -137,6 +137,7 @@ 9092 dev + dev false diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java index 12a19cacb..5bc38d2ad 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/AppMenuController.java @@ -27,6 +27,7 @@ import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup; import com.elink.esua.epdc.dto.AppMenuDTO; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO; import com.elink.esua.epdc.excel.AppMenuExcel; import com.elink.esua.epdc.service.AppMenuService; @@ -126,4 +127,15 @@ public class AppMenuController { public Result> indexPanel(@PathVariable("mobile") String mobile) { return appMenuService.indexPanel(mobile); } + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author lpf + * @Description 首页面板 获取数据端APP菜单 + * @Date 2020/03/18 10:42 + **/ + @GetMapping("/analysisIndexPanel/{userId}") + public Result> analysisIndexPanel(@PathVariable("userId") String userId) { + return appMenuService.getAnalysisIndexPanel(userId); + } } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysAnalysisMenuController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysAnalysisMenuController.java new file mode 100644 index 000000000..04ee8c900 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysAnalysisMenuController.java @@ -0,0 +1,132 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.controller; + +import com.elink.esua.epdc.commons.tools.exception.ErrorCode; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.security.user.UserDetail; +import com.elink.esua.epdc.commons.tools.utils.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.*; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; +import com.elink.esua.epdc.excel.*; +import com.elink.esua.epdc.service.SysAnalysisMenuService; +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; + + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@RestController +@RequestMapping("analysismenu") +public class SysAnalysisMenuController { + + @Autowired + private SysAnalysisMenuService sysAnalysisMenuService; + + /** + * 获取APP菜单列表 + * + * @param type 菜单类型 0:菜单 1:按钮 null:全部 + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author work@yujt.net.cn + * @date 2019/11/19 13:26 + */ + @GetMapping("list") + public Result> list(Integer type) { + List list = sysAnalysisMenuService.getAnalysisMenuList(type); + return new Result>().ok(list); + } + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = sysAnalysisMenuService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + SysAnalysisMenuDTO data = sysAnalysisMenuService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody SysAnalysisMenuDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + sysAnalysisMenuService.save(dto); + return new Result(); + } + @GetMapping("select") + public Result> select(UserDetail userDetail) { + List list = sysAnalysisMenuService.getUserMenuList(userDetail, null); + + return new Result>().ok(list); + } + + @PutMapping + public Result update(@RequestBody SysAnalysisMenuDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + sysAnalysisMenuService.update(dto); + return new Result(); + } + + @DeleteMapping("{id}") + public Result delete(@PathVariable("id") Long id){ + //效验数据 + AssertUtils.isNull(id, "id"); + //判断是否有子菜单或按钮 + if(sysAnalysisMenuService.hasChileMenu(id)){ + return new Result().error(ErrorCode.SUB_MENU_EXIST); + } + sysAnalysisMenuService.delete(id); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = sysAnalysisMenuService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, SysAnalysisMenuExcel.class); + } + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author lpf + * @Description 首页面板 获取数据端APP菜单 + * @Date 2020/03/18 10:42 + **/ + @GetMapping("/analysisIndexPanel/{userId}") + public Result> analysisIndexPanel(@PathVariable("userId") String userId) { + return sysAnalysisMenuService.getAnalysisIndexPanel(userId); + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysAnalysisRoleMenuController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysAnalysisRoleMenuController.java new file mode 100644 index 000000000..65deebc6d --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysAnalysisRoleMenuController.java @@ -0,0 +1,94 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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.*; +import com.elink.esua.epdc.excel.*; +import com.elink.esua.epdc.service.SysAnalysisRoleMenuService; +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; + + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@RestController +@RequestMapping("analysisrolemenu") +public class SysAnalysisRoleMenuController { + + @Autowired + private SysAnalysisRoleMenuService sysAnalysisRoleMenuService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = sysAnalysisRoleMenuService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + SysAnalysisRoleMenuDTO data = sysAnalysisRoleMenuService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody SysAnalysisRoleMenuDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + sysAnalysisRoleMenuService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody SysAnalysisRoleMenuDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + sysAnalysisRoleMenuService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + sysAnalysisRoleMenuService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = sysAnalysisRoleMenuService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, SysAnalysisRoleMenuExcel.class); + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysRoleController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysRoleController.java index b9eab566e..c284327b8 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysRoleController.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysRoleController.java @@ -18,10 +18,7 @@ import com.elink.esua.epdc.commons.tools.validator.group.AddGroup; import com.elink.esua.epdc.commons.tools.validator.group.DefaultGroup; import com.elink.esua.epdc.commons.tools.validator.group.UpdateGroup; import com.elink.esua.epdc.dto.SysRoleDTO; -import com.elink.esua.epdc.service.AppRoleMenuService; -import com.elink.esua.epdc.service.SysRoleDataScopeService; -import com.elink.esua.epdc.service.SysRoleMenuService; -import com.elink.esua.epdc.service.SysRoleService; +import com.elink.esua.epdc.service.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -52,6 +49,8 @@ public class SysRoleController { private SysRoleDataScopeService sysRoleDataScopeService; @Autowired private AppRoleMenuService appRoleMenuService; + @Autowired + private SysAnalysisRoleMenuService sysAnalysisRoleMenuService; @GetMapping("page") @ApiOperation("分页") @@ -92,6 +91,9 @@ public class SysRoleController { //查询角色对应app菜单权限 List appMenuIdList = appRoleMenuService.getAppMenuIdList(id); data.setAppMenuIdList(appMenuIdList); + //查询角色对应数据端菜单权限 + List analysisMenuIdList = sysAnalysisRoleMenuService.getAnalysisMenuIdList(id); + data.setAnalysisMenuIdList(analysisMenuIdList); return new Result().ok(data); } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java index 8154f25e5..4a748f124 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/AppMenuDao.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.dto.AppMenuDTO; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO; import com.elink.esua.epdc.entity.AppMenuEntity; import org.apache.ibatis.annotations.Mapper; @@ -78,4 +79,13 @@ public interface AppMenuDao extends BaseDao { * @Date 2019/11/20 11:10 **/ List indexPanelByMobile(String mobile); + + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author lpf + * @Description 首页面板 获取数据端APP菜单 + * @Date 2020/03/18 10:42 + **/ + List getAnalysisIndexPanel(String userId); } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysAnalysisMenuDao.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysAnalysisMenuDao.java new file mode 100644 index 000000000..e0c83b877 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysAnalysisMenuDao.java @@ -0,0 +1,84 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dao; + +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.dto.AppMenuDTO; +import com.elink.esua.epdc.dto.SysAnalysisMenuDTO; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; +import com.elink.esua.epdc.entity.AppMenuEntity; +import com.elink.esua.epdc.entity.SysAnalysisMenuEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Mapper +public interface SysAnalysisMenuDao extends BaseDao { + + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author lpf + * @Description 首页面板 获取数据端APP菜单 + * @Date 2020/03/18 10:42 + **/ + List getAnalysisIndexPanel(String userId); + + /** + * 获取菜单详细信息 + * @param id + * @return + */ + SysAnalysisMenuDTO selectByIdDIY(@Param("id") String id, @Param("language") String language); + + /** + * 查询所有菜单列表 + * + * @param type 菜单类型 + * @param language 语言 + */ + List getMenuList(@Param("type") Integer type, @Param("language") String language); + + /** + * 查询用户菜单列表 + * + * @param userId 用户ID + * @param type 菜单类型 + * @param language 语言 + */ + List getUserMenuList(@Param("userId") Long userId, @Param("type") Integer type, @Param("language") String language); + + /** + * 获取app菜单列表 + * + * @param type 菜单类型 + * @param language 语言 + * @return java.util.List + * @author work@yujt.net.cn + * @date 2019/11/19 13:43 + */ + List selectListAppMenu(@Param("type") Integer type, @Param("language") String language); + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysAnalysisRoleMenuDao.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysAnalysisRoleMenuDao.java new file mode 100644 index 000000000..e817fc77f --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/dao/SysAnalysisRoleMenuDao.java @@ -0,0 +1,50 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dao; + +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.entity.SysAnalysisRoleMenuEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Mapper +public interface SysAnalysisRoleMenuDao extends BaseDao { + + /** + * 根据角色id,删除角色数据权限关系 + * + * @param roleId 角色id + */ + void deleteByRoleId(Long roleId); + + /** + * 根据角色ID,获取菜单ID列表 + * + * @param id + * @return + */ + List getAnalysisMenuIdList(Long id); + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/SysAnalysisMenuEntity.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/SysAnalysisMenuEntity.java new file mode 100644 index 000000000..ac45ced4b --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/SysAnalysisMenuEntity.java @@ -0,0 +1,120 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("sys_analysis_menu") +public class SysAnalysisMenuEntity extends BaseEntity { + + private static final long serialVersionUID = 1L; + + + /** + * 上级ID,一级菜单为0 + */ + private Long pid; + + /** + * 菜单名称 + */ + @TableField(exist = false) + private String name; + + /** + * 类型 0:菜单 1:按钮 + */ + private Integer type; + + /** + * 菜单图标 + */ + private String icon; + + /** + * 样式名称 + */ + private String className; + + /** + * 排序 + */ + 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; + + /** + * 上级菜单名称 + */ + @TableField(exist = false) + private String parentName; + + /** + * 菜单编码 + */ + private String menuCode; + + /** + * 备注 + */ + private String remark; + + /** + * 子模板ID + */ + private String templateId; + + /** + * 是否显示数字 0否 1是 + */ + private String numFlag; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/SysAnalysisRoleMenuEntity.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/SysAnalysisRoleMenuEntity.java new file mode 100644 index 000000000..0b05aaa73 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/entity/SysAnalysisRoleMenuEntity.java @@ -0,0 +1,63 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.elink.esua.epdc.commons.mybatis.entity.BaseEntity; +import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.Date; + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("sys_analysis_role_menu") +public class SysAnalysisRoleMenuEntity extends BaseEntity { + + private static final long serialVersionUID = 1L; + + + /** + * 角色ID + */ + private Long roleId; + + /** + * 菜单ID + */ + private Long menuId; + + /** + * 创建者 + */ + private Long creator; + + /** + * 创建时间 + */ + private Date createDate; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/SysAnalysisMenuExcel.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/SysAnalysisMenuExcel.java new file mode 100644 index 000000000..9e2c7baa4 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/SysAnalysisMenuExcel.java @@ -0,0 +1,83 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +public class SysAnalysisMenuExcel { + + @Excel(name = "id") + private Long id; + + @Excel(name = "上级ID,一级菜单为0") + private Long pid; + + @Excel(name = "类型 0:菜单 1:按钮") + private Integer type; + + @Excel(name = "模块名称") + private String modelname; + + @Excel(name = "菜单图标") + private String icon; + + @Excel(name = "样式名称") + private String className; + + @Excel(name = "菜单编码(议题管理-待回应:10001,议题管理-待处理:10002,项目管理-待处理:10003,用户管理-待认证居民:10004,消息:10005)") + private String menuCode; + + @Excel(name = "模板ID") + private String templateId; + + @Excel(name = "是否显示数字 0否 1是") + private String numFlag; + + @Excel(name = "排序") + private Integer sort; + + @Excel(name = "备注") + private String remark; + + @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; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/SysAnalysisRoleMenuExcel.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/SysAnalysisRoleMenuExcel.java new file mode 100644 index 000000000..629ac017f --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/excel/SysAnalysisRoleMenuExcel.java @@ -0,0 +1,50 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +public class SysAnalysisRoleMenuExcel { + + @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; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/SysAnalysisMenuRedis.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/SysAnalysisMenuRedis.java new file mode 100644 index 000000000..3349f7c1b --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/SysAnalysisMenuRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Component +public class SysAnalysisMenuRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/SysAnalysisRoleMenuRedis.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/SysAnalysisRoleMenuRedis.java new file mode 100644 index 000000000..f660239da --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/redis/SysAnalysisRoleMenuRedis.java @@ -0,0 +1,47 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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 elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Component +public class SysAnalysisRoleMenuRedis { + @Autowired + private RedisUtils redisUtils; + + public void delete(Object[] ids) { + + } + + public void set(){ + + } + + public String get(String id){ + return null; + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java index b16bd65b9..401d3fcdf 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/AppMenuService.java @@ -22,6 +22,7 @@ import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.security.user.UserDetail; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.AppMenuDTO; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO; import com.elink.esua.epdc.entity.AppMenuEntity; @@ -143,4 +144,12 @@ public interface AppMenuService extends BaseService { * @Date 2019/11/20 10:42 **/ Result> indexPanel(String mobile); + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author lpf + * @Description 首页面板 获取数据端APP菜单 + * @Date 2020/03/18 10:42 + **/ + Result> getAnalysisIndexPanel(String userId); } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysAnalysisMenuService.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysAnalysisMenuService.java new file mode 100644 index 000000000..a59c4e775 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysAnalysisMenuService.java @@ -0,0 +1,125 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.service; + +import com.elink.esua.epdc.commons.mybatis.service.BaseService; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.security.user.UserDetail; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; +import com.elink.esua.epdc.entity.SysAnalysisMenuEntity; +import com.elink.esua.epdc.dto.*; +import java.util.List; +import java.util.Map; + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +public interface SysAnalysisMenuService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-25 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-25 + */ + List list(Map params); + + /** + * 判断是否有子级菜单 + * + * @param id 菜单ID + * @return boolean + * @author work@yujt.net.cn + * @date 2019/11/19 14:30 + */ + boolean hasChileMenu(Long id); + + List getAnalysisMenuList(Integer type); + + /** + * 单条查询 + * + * @param id + * @return SysAnalysisMenuDTO + * @author generator + * @date 2020-03-25 + */ + SysAnalysisMenuDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-25 + */ + void save(SysAnalysisMenuDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-25 + */ + void update(SysAnalysisMenuDTO dto); + + /** + * 用户app端菜单列表 + * + * @param userDetail 用户信息 + * @param type 菜单类型 + */ + List getUserMenuList(UserDetail userDetail, Integer type); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-25 + */ + void delete(Long id); + /** + * @param userId + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @Author lpf + * @Description 首页面板 获取数据端APP菜单 + * @Date 2020/03/18 10:42 + **/ + Result> getAnalysisIndexPanel(String userId); +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysAnalysisRoleMenuService.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysAnalysisRoleMenuService.java new file mode 100644 index 000000000..9ccfd8c74 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysAnalysisRoleMenuService.java @@ -0,0 +1,111 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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.*; +import com.elink.esua.epdc.entity.SysAnalysisRoleMenuEntity; + +import java.util.List; +import java.util.Map; + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +public interface SysAnalysisRoleMenuService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-25 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-25 + */ + List list(Map params); + + /** + * 保存或修改 + * + * @param roleId 角色ID + * @param analysisMenuIdList 菜单ID列表 + */ + void saveOrUpdate(Long roleId, List analysisMenuIdList); + + /** + * 根据角色id,删除角色数据权限关系 + * + * @param roleId 角色id + */ + void deleteByRoleId(Long roleId); + + /** + * 单条查询 + * + * @param id + * @return SysAnalysisRoleMenuDTO + * @author generator + * @date 2020-03-25 + */ + SysAnalysisRoleMenuDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-25 + */ + void save(SysAnalysisRoleMenuDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-25 + */ + void update(SysAnalysisRoleMenuDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-25 + */ + void delete(String[] ids); + List getAnalysisMenuIdList(Long id); +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java index 81e31035d..876d25091 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/AppMenuServiceImpl.java @@ -33,6 +33,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.TreeUtils; import com.elink.esua.epdc.dao.AppMenuDao; import com.elink.esua.epdc.dto.AppMenuDTO; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcAppIndexPanelResultDTO; import com.elink.esua.epdc.entity.AppMenuEntity; import com.elink.esua.epdc.enums.MenuTableEnum; @@ -171,6 +172,14 @@ public class AppMenuServiceImpl extends BaseServiceImpl indexPanelResultDTOList = this.baseDao.indexPanelByMobile(mobile); return new Result().ok(indexPanelResultDTOList); } + @Override + public Result> getAnalysisIndexPanel(String userId) { + if (StringUtils.isBlank(userId)) { + return new Result().error("用户Id不能为空"); + } + List list = this.baseDao.getAnalysisIndexPanel(userId); + return new Result().ok(list); + } } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysAnalysisMenuServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysAnalysisMenuServiceImpl.java new file mode 100644 index 000000000..a4db1690f --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysAnalysisMenuServiceImpl.java @@ -0,0 +1,162 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +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.enums.SuperAdminEnum; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.security.user.UserDetail; +import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; +import com.elink.esua.epdc.commons.tools.constant.FieldConstant; +import com.elink.esua.epdc.commons.tools.utils.HttpContextUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.commons.tools.utils.TreeUtils; +import com.elink.esua.epdc.dao.SysAnalysisMenuDao; +import com.elink.esua.epdc.dto.*; +import com.elink.esua.epdc.dto.epdc.result.EpdcAppChildNavResultDTO; +import com.elink.esua.epdc.entity.AppMenuEntity; +import com.elink.esua.epdc.entity.SysAnalysisMenuEntity; +import com.elink.esua.epdc.enums.MenuTableEnum; +import com.elink.esua.epdc.redis.SysAnalysisMenuRedis; +import com.elink.esua.epdc.service.SysAnalysisMenuService; +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; + +/** + * 菜单管理 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Service +public class SysAnalysisMenuServiceImpl extends BaseServiceImpl implements SysAnalysisMenuService { + + @Autowired + private SysAnalysisMenuRedis sysAnalysisMenuRedis; + @Autowired + private SysLanguageService sysLanguageService; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, SysAnalysisMenuDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, SysAnalysisMenuDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + @Override + public List getAnalysisMenuList(Integer type) { + List menuList = baseDao.selectListAppMenu(type, HttpContextUtils.getLanguage()); + return TreeUtils.build(menuList, Constant.MENU_ROOT); + } + + @Override + public SysAnalysisMenuDTO get(String id) { + SysAnalysisMenuDTO dto = baseDao.selectByIdDIY(id,HttpContextUtils.getLanguage()); + return dto; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(SysAnalysisMenuDTO dto) { + SysAnalysisMenuEntity entity = ConvertUtils.sourceToTarget(dto, SysAnalysisMenuEntity.class); + insert(entity); + sysLanguageService.saveOrUpdate(MenuTableEnum.ANALYSIS.value(), entity.getId(), "name", dto.getName(), HttpContextUtils.getLanguage()); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(SysAnalysisMenuDTO dto) { + SysAnalysisMenuEntity entity = ConvertUtils.sourceToTarget(dto, SysAnalysisMenuEntity.class); + updateById(entity); + sysLanguageService.saveOrUpdate(MenuTableEnum.ANALYSIS.value(), entity.getId(), "name", dto.getName(), HttpContextUtils.getLanguage()); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(Long id) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteById(id); + } + @Override + public boolean hasChileMenu(Long id) { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq("pid", id) + .eq(FieldConstant.DEL_FLAG, DelFlagEnum.NORMAL.value()); + Integer selectCount = baseDao.selectCount(wrapper); + return selectCount > NumConstant.ZERO; + } + /** + * 用户app端菜单列表 + * + * @param userDetail 用户信息 + * @param type 菜单类型 + */ + @Override + public List getUserMenuList(UserDetail userDetail, Integer type) { + List menuList; + + //系统管理员,拥有最高权限 + if (userDetail.getSuperAdmin() == SuperAdminEnum.YES.value()) { + menuList = baseDao.getMenuList(type, HttpContextUtils.getLanguage()); + } else { + menuList = baseDao.getUserMenuList(userDetail.getId(), type, HttpContextUtils.getLanguage()); + } + + List dtoList = ConvertUtils.sourceToTarget(menuList, AppMenuDTO.class); + + return TreeUtils.build(dtoList); + } + @Override + public Result> getAnalysisIndexPanel(String userId) { + if (StringUtils.isBlank(userId)) { + return new Result().error("用户Id不能为空"); + } + List list = this.baseDao.getAnalysisIndexPanel(userId); + return new Result().ok(list); + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysAnalysisRoleMenuServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysAnalysisRoleMenuServiceImpl.java new file mode 100644 index 000000000..81737ec1c --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysAnalysisRoleMenuServiceImpl.java @@ -0,0 +1,150 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.service.impl; + +import cn.hutool.core.collection.CollUtil; +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.SysAnalysisRoleMenuDao; +import com.elink.esua.epdc.dto.*; +import com.elink.esua.epdc.entity.SysAnalysisRoleMenuEntity; +import com.elink.esua.epdc.redis.SysAnalysisRoleMenuRedis; +import com.elink.esua.epdc.service.SysAnalysisRoleMenuService; +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; + +/** + * 角色菜单关系 + * + * @author elink elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Service +public class SysAnalysisRoleMenuServiceImpl extends BaseServiceImpl implements SysAnalysisRoleMenuService { + + @Autowired + private SysAnalysisRoleMenuRedis sysAnalysisRoleMenuRedis; + + @Override + public PageData page(Map params) { + IPage page = baseDao.selectPage( + getPage(params, FieldConstant.CREATED_TIME, false), + getWrapper(params) + ); + return getPageData(page, SysAnalysisRoleMenuDTO.class); + } + + @Override + public List list(Map params) { + List entityList = baseDao.selectList(getWrapper(params)); + + return ConvertUtils.sourceToTarget(entityList, SysAnalysisRoleMenuDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + /** + * 保存或修改 + * + * @param roleId 角色ID + * @param appMenuIdList 菜单ID列表 + */ + @Override + public void saveOrUpdate(Long roleId, List analysisMenuIdList) { + //先删除角色菜单权限关系 + deleteByRoleId(roleId); + + //角色没有一个菜单权限的情况 + if (CollUtil.isEmpty(analysisMenuIdList)) { + return; + } + + //保存角色菜单权限关系 + for (Long menuId : analysisMenuIdList) { + SysAnalysisRoleMenuEntity appRoleMenuEntity = new SysAnalysisRoleMenuEntity(); + appRoleMenuEntity.setMenuId(menuId); + appRoleMenuEntity.setRoleId(roleId); + + //保存 + insert(appRoleMenuEntity); + } + } + /** + * 根据角色id,删除角色数据权限关系 + * + * @param roleId 角色id + */ + @Override + public void deleteByRoleId(Long roleId) { + baseDao.deleteByRoleId(roleId); + } + + @Override + public SysAnalysisRoleMenuDTO get(String id) { + SysAnalysisRoleMenuEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, SysAnalysisRoleMenuDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(SysAnalysisRoleMenuDTO dto) { + SysAnalysisRoleMenuEntity entity = ConvertUtils.sourceToTarget(dto, SysAnalysisRoleMenuEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(SysAnalysisRoleMenuDTO dto) { + SysAnalysisRoleMenuEntity entity = ConvertUtils.sourceToTarget(dto, SysAnalysisRoleMenuEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + /** + * 根据角色ID,获取菜单ID列表 + * + * @param id + * @return + */ + @Override + public List getAnalysisMenuIdList(Long id) { + return baseDao.getAnalysisMenuIdList(id); + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysRoleServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysRoleServiceImpl.java index cb1e6613c..622aee764 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysRoleServiceImpl.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysRoleServiceImpl.java @@ -54,6 +54,8 @@ public class SysRoleServiceImpl extends BaseServiceImpl page(Map params) { @@ -121,6 +123,9 @@ public class SysRoleServiceImpl extends BaseServiceImpl + + + + + + + + + diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysAnalysisMenuDao.xml b/esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysAnalysisMenuDao.xml new file mode 100644 index 000000000..649e12cdf --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysAnalysisMenuDao.xml @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysAnalysisRoleMenuDao.xml b/esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysAnalysisRoleMenuDao.xml new file mode 100644 index 000000000..e06a1bea3 --- /dev/null +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/resources/mapper/SysAnalysisRoleMenuDao.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + delete from sys_analysis_role_menu where role_id = #{value} + + + + + \ No newline at end of file diff --git a/esua-epdc/epdc-auth/pom.xml b/esua-epdc/epdc-auth/pom.xml index f6d3fa70c..af534db6b 100644 --- a/esua-epdc/epdc-auth/pom.xml +++ b/esua-epdc/epdc-auth/pom.xml @@ -106,6 +106,7 @@ 9091 dev + dev 2 diff --git a/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/utils/DateUtils.java b/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/utils/DateUtils.java index 0de5d2834..bff6daf43 100644 --- a/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/utils/DateUtils.java +++ b/esua-epdc/epdc-commons/epdc-commons-tools/src/main/java/com/elink/esua/epdc/commons/tools/utils/DateUtils.java @@ -14,9 +14,11 @@ import org.joda.time.LocalDate; import org.joda.time.format.DateTimeFormat; import org.joda.time.format.DateTimeFormatter; +import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; +import java.util.Locale; /** * 日期处理工具类 @@ -185,4 +187,28 @@ public class DateUtils { DateTime dateTime = new DateTime(date); return dateTime.plusYears(years).toDate(); } + + /*** + * 前端上传信息解析 + * @param oldDate + * @return java.lang.String + * @author qushutong + * @date 2020/3/26 10:09 + */ + public static String dealDateFormat(String oldDate) { + Date date1 = null; + DateFormat df2 = null; + try { + oldDate= oldDate.replace("Z", " UTC"); + DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS Z"); + Date date = df.parse(oldDate); + SimpleDateFormat df1 = new SimpleDateFormat ("EEE MMM dd HH:mm:ss Z yyyy", Locale.UK); + date1 = df1.parse(date.toString()); + df2 = new SimpleDateFormat("yyyy-MM-dd"); + } catch (ParseException e) { + e.printStackTrace(); + } + return df2.format(date1); + } + } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserGridOpiningDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserGridOpiningDTO.java new file mode 100644 index 000000000..c3b3d3769 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserGridOpiningDTO.java @@ -0,0 +1,146 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dto.user; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +public class MetaUserGridOpiningDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 网格id + */ + private String gridId; + + /** + * 用户总数 + */ + private int registerCount; + + /** + * 党员数 + */ + private int partyCount; + + /** + * 已注册居民 + */ + private int residentCount; + + /** + * 未注册居民 + */ + private int unAuthorizedCount; + + /** + * 新闻发布数 + */ + private int newsCount; + + /** + * 社群数 + */ + private int communityCount; + + /** + * 群成员数 + */ + private int communityMemberCount; + + /** + * 群话题数 + */ + private int communityTopicCount; + + /** + * 议题总数 + */ + private int eventCount; + + /** + * 项目数 + */ + private int itemCount; + + /** + * 项目已解决数 + */ + private int itemCloseCount; + + /** + * 好评数 + */ + private int itemPraiseCount; + + /** + * 网格名称 + */ + private String allDeptName; + + /** + * 网格党建指导员姓名 + */ + private String gridLeader; + + /** + * 删除标记 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 注册时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserPartyRankDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserPartyRankDTO.java new file mode 100644 index 000000000..be8c514e5 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserPartyRankDTO.java @@ -0,0 +1,127 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dto.user; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Data +public class MetaUserPartyRankDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 街道id + */ + private String streetId; + + /** + * 街道名称 + */ + private String streetName; + + /** + * 已注册党员数量(已认证) + */ + private Integer partyMemberCount; + + /** + * 年龄超过50岁党员数量 + */ + private Integer oldCount; + + /** + * 老龄化比例 + */ + private BigDecimal oldPercent; + + /** + * 年龄50岁以下的党员数量 + */ + private Integer youngCount; + + /** + * 年轻化比例 + */ + private BigDecimal youngPercent; + + /** + * 男 + */ + private Integer maleCount; + + /** + * 女 + */ + private Integer femaleCount; + + /** + * 未知性别 + */ + private Integer unknownSexCount; + + /** + * 党员认证失败数 + */ + private Integer partyAuthFailureCount; + + /** + * 删除标记 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 注册时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserRegisterRankDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserRegisterRankDTO.java new file mode 100644 index 000000000..52f3b7107 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/MetaUserRegisterRankDTO.java @@ -0,0 +1,137 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.dto.user; + +import java.io.Serializable; +import java.util.Date; +import lombok.Data; + +import java.math.BigDecimal; + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Data +public class MetaUserRegisterRankDTO implements Serializable { + + private static final long serialVersionUID = 1L; + + /** + * 主键 + */ + private String id; + + /** + * 街道id + */ + private String streetId; + + /** + * 街道名称 + */ + private String streetName; + + /** + * 用户总数 + */ + private Integer userCount; + + /** + * 党员数 + */ + private Integer partyMemberCount; + + /** + * 已注册居民 + */ + private Integer residentCount; + + /** + * 为注册居民 + */ + private Integer unAuthorizedCount; + + /** + * 年龄超过50岁 + */ + private Integer oldCount; + + /** + * 老龄化比例 + */ + private BigDecimal oldPercent; + + /** + * 50岁以下用户数量 + */ + private Integer youngCount; + + /** + * 年轻化比例 + */ + private BigDecimal youngPercent; + + /** + * 男 + */ + private Integer maleCount; + + /** + * 女 + */ + private Integer femaleCount; + + /** + * 未知性别 + */ + private Integer unknownSexCount; + + /** + * 删除标记 + */ + private String delFlag; + + /** + * 乐观锁 + */ + private Integer revision; + + /** + * 创建人 + */ + private String createdBy; + + /** + * 注册时间 + */ + private Date createdTime; + + /** + * 更新人 + */ + private String updatedBy; + + /** + * 更新时间 + */ + private Date updatedTime; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/form/ExportOperationFormDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/form/ExportOperationFormDTO.java new file mode 100644 index 000000000..b4fb1ec0f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/form/ExportOperationFormDTO.java @@ -0,0 +1,24 @@ +package com.elink.esua.epdc.dto.user.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; +import java.util.List; + +@Data +public class ExportOperationFormDTO implements Serializable { + + private String operationStartTime; + + private String operationEndTime; + + /** + * 所有部门列表 + */ + private List allDeptIdsShow; + + private List allStreetIds; + + private String endTime; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/ExportOperationDataResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/ExportOperationDataResultDTO.java new file mode 100644 index 000000000..3762374e1 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/user/result/ExportOperationDataResultDTO.java @@ -0,0 +1,81 @@ +package com.elink.esua.epdc.dto.user.result; + + +import lombok.Data; + +import java.io.Serializable; + + +/** + * @author: qushutong + * @Date: 2020/3/23 14:47 + * @Description: 运营导出数据 + */ +@Data +public class ExportOperationDataResultDTO implements Serializable { + + private static final long serialVersionUID = -798787916350968587L; + + /** + * 居民数 + */ + private int registerCount = 0; + + /** + * 未认证用户数 + */ + private int unAuthorizedCount = 0; + + + /** + * 党员数 + */ + private int partyCount = 0; + + /** + * 新闻发布数 + */ + private int newsCount = 0; + + + /** + * 议题数 + */ + private int eventCount = 0; + + /** + * 项目数 + */ + private int itemCount = 0; + + /** + * 项目解决数 + */ + private int itemCloseCount = 0; + + /** + * 社群数 + */ + private int communityCount = 0; + + /** + * 社群成员数 + */ + private int communityMemberCount = 0; + + /** + * 社群话题数 + */ + private int communityTopicCount = 0; + + /** + * 街道 + */ + private String streetName; + + /** + * 企业数 + */ + private int enterpriseCount = 0; + +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DataSourceNames.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DataSourceNames.java index e75611937..55b1b3a2e 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DataSourceNames.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DataSourceNames.java @@ -19,4 +19,5 @@ public interface DataSourceNames { String NINTH = "ninth"; String TENTH = "tenth"; String ELEVENTH = "eleventh"; + String TWELVE = "twelve"; } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSourceConfig.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSourceConfig.java index 9f078d3a1..bf0541ddd 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSourceConfig.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSourceConfig.java @@ -86,6 +86,12 @@ public class DynamicDataSourceConfig { return DruidDataSourceBuilder.create().build(); } + @Bean + @ConfigurationProperties("spring.datasource.druid.twelve") + public DataSource twelvethDataSource() { + return DruidDataSourceBuilder.create().build(); + } + @Bean @Primary public DynamicDataSource dataSource(DataSource firstDataSource, DataSource secondDataSource, @@ -93,7 +99,7 @@ public class DynamicDataSourceConfig { DataSource fifthDataSource, DataSource sixthDataSource, DataSource seventhDataSource, DataSource eighthDataSource, DataSource ninthDataSource, DataSource tenthDataSource, - DataSource eleventhDataSource) { + DataSource eleventhDataSource,DataSource twelvethDataSource) { Map targetDataSources = new HashMap<>(); targetDataSources.put(DataSourceNames.FIRST, firstDataSource); targetDataSources.put(DataSourceNames.SECOND, secondDataSource); @@ -106,6 +112,7 @@ public class DynamicDataSourceConfig { targetDataSources.put(DataSourceNames.NINTH, ninthDataSource); targetDataSources.put(DataSourceNames.TENTH, tenthDataSource); targetDataSources.put(DataSourceNames.ELEVENTH, eleventhDataSource); + targetDataSources.put(DataSourceNames.TWELVE, twelvethDataSource); return new DynamicDataSource(firstDataSource, targetDataSources); } } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/ExportOperationDataExcel.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/ExportOperationDataExcel.java new file mode 100644 index 000000000..4091895ea --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/excel/ExportOperationDataExcel.java @@ -0,0 +1,55 @@ +package com.elink.esua.epdc.excel; + + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.io.Serializable; + + +/** + * @author: qushutong + * @Date: 2020/3/23 14:47 + * @Description: 运营导出数据 + */ +@Data +public class ExportOperationDataExcel implements Serializable { + + private static final long serialVersionUID = 4935348597474149310L; + + @Excel(name = "街道") + private String streetName; + + @Excel(name = "居民数") + private int registerCount = 0; + + @Excel(name = "企业数") + private int enterpriseCount = 0; + + @Excel(name = "已认证党员数") + private int partyCount = 0; + + @Excel(name = "新闻发布数") + private int newsCount = 0; + + + @Excel(name = "议题数") + private int eventCount = 0; + + @Excel(name = "项目数") + private int itemCount = 0; + + @Excel(name = "项目结案数") + private int itemCloseCount = 0; + + @Excel(name = "社群数") + private int communityCount = 0; + + @Excel(name = "社群成员数") + private int communityMemberCount = 0; + + @Excel(name = "社群话题数") + private int communityTopicCount = 0; + + +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserGridOpiningController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserGridOpiningController.java new file mode 100644 index 000000000..0f5b1fc1f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserGridOpiningController.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.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.user.MetaUserGridOpiningDTO; +import com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO; +import com.elink.esua.epdc.modules.user.excel.MetaUserGridOpiningExcel; +import com.elink.esua.epdc.modules.user.service.MetaUserGridOpiningService; +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; + + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@RestController +@RequestMapping("metausergridopining") +public class MetaUserGridOpiningController { + + @Autowired + private MetaUserGridOpiningService metaUserGridOpiningService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = metaUserGridOpiningService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + MetaUserGridOpiningDTO data = metaUserGridOpiningService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody MetaUserGridOpiningDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + metaUserGridOpiningService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody MetaUserGridOpiningDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + metaUserGridOpiningService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + metaUserGridOpiningService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = metaUserGridOpiningService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, MetaUserGridOpiningExcel.class); + } + + /** + * @author: qushutong + * @Date: 2020/3/25 10:35 + * @Description: 临时表导入 + */ + @GetMapping("tolead") + public Result> tolead() { + return metaUserGridOpiningService.createUserAnalysisData(); + } +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserPartyRankController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserPartyRankController.java new file mode 100644 index 000000000..b4d678432 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserPartyRankController.java @@ -0,0 +1,107 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.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.user.MetaUserPartyRankDTO; +import com.elink.esua.epdc.modules.user.excel.MetaUserPartyRankExcel; +import com.elink.esua.epdc.modules.user.service.MetaUserPartyRankService; +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; + + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@RestController +@RequestMapping("metauserpartyrank") +public class MetaUserPartyRankController { + + @Autowired + private MetaUserPartyRankService metaUserPartyRankService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = metaUserPartyRankService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + MetaUserPartyRankDTO data = metaUserPartyRankService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody MetaUserPartyRankDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + metaUserPartyRankService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody MetaUserPartyRankDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + metaUserPartyRankService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + metaUserPartyRankService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = metaUserPartyRankService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, MetaUserPartyRankExcel.class); + } + + /*** + * 定时任务导入 + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author qushutong + * @date 2020/3/26 18:22 + */ + @GetMapping("toLeadPartyRankData") + public Result toLeadPartyRankData(){ + + return metaUserPartyRankService.toLeadPartyRankData(); + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserRegisterRankController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserRegisterRankController.java new file mode 100644 index 000000000..e3f049e58 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/MetaUserRegisterRankController.java @@ -0,0 +1,104 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.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.user.MetaUserRegisterRankDTO; +import com.elink.esua.epdc.modules.user.excel.MetaUserRegisterRankExcel; +import com.elink.esua.epdc.modules.user.service.MetaUserRegisterRankService; +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; + + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@RestController +@RequestMapping("metauserregisterrank") +public class MetaUserRegisterRankController { + + @Autowired + private MetaUserRegisterRankService metaUserRegisterRankService; + + @GetMapping("page") + public Result> page(@RequestParam Map params){ + PageData page = metaUserRegisterRankService.page(params); + return new Result>().ok(page); + } + + @GetMapping("{id}") + public Result get(@PathVariable("id") String id){ + MetaUserRegisterRankDTO data = metaUserRegisterRankService.get(id); + return new Result().ok(data); + } + + @PostMapping + public Result save(@RequestBody MetaUserRegisterRankDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, AddGroup.class, DefaultGroup.class); + metaUserRegisterRankService.save(dto); + return new Result(); + } + + @PutMapping + public Result update(@RequestBody MetaUserRegisterRankDTO dto){ + //效验数据 + ValidatorUtils.validateEntity(dto, UpdateGroup.class, DefaultGroup.class); + metaUserRegisterRankService.update(dto); + return new Result(); + } + + @DeleteMapping + public Result delete(@RequestBody String[] ids){ + //效验数据 + AssertUtils.isArrayEmpty(ids, "id"); + metaUserRegisterRankService.delete(ids); + return new Result(); + } + + @GetMapping("export") + public void export(@RequestParam Map params, HttpServletResponse response) throws Exception { + List list = metaUserRegisterRankService.list(params); + ExcelUtils.exportExcelToTarget(response, null, list, MetaUserRegisterRankExcel.class); + } + /*** + * 定时任务用户注册排行导入数据 + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author qushutong + * @date 2020/3/26 13:44 + */ + @GetMapping("toLeadUserRegisterRandData") + public Result toLeadUserRegisterRandData(){ + return metaUserRegisterRankService.toLeadUserRegisterRandData(); + } +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java index e25f2dc88..18e38eeaa 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/controller/UserAnalysisController.java @@ -4,6 +4,7 @@ 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.ValidatorUtils; +import com.elink.esua.epdc.dto.user.form.ExportOperationFormDTO; import com.elink.esua.epdc.dto.user.form.MemberRankFormDTO; import com.elink.esua.epdc.dto.user.form.UserSortRankFormDTO; import com.elink.esua.epdc.dto.user.result.*; @@ -12,23 +13,20 @@ import com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO; import com.elink.esua.epdc.dto.user.result.OldMemberRankResultDTO; import com.elink.esua.epdc.dto.user.result.UserDataRankResultDTO; import com.elink.esua.epdc.dto.user.result.YoungMemberRankResultDTO; +import com.elink.esua.epdc.excel.ExportOperationDataExcel; import com.elink.esua.epdc.excel.GridOpiningExcel; import com.elink.esua.epdc.modules.user.service.OldMemberRankService; import com.elink.esua.epdc.modules.user.service.YoungMemberRankService; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.elink.esua.epdc.excel.PartyAnalysExcel; import com.elink.esua.epdc.excel.RegisterExcel; import com.elink.esua.epdc.modules.user.service.UserAnalysisService; +import java.util.HashMap; import java.util.List; import java.util.Map; -import org.springframework.web.bind.annotation.RequestParam; - import javax.servlet.http.HttpServletResponse; /** @@ -201,4 +199,18 @@ public class UserAnalysisController { List list = userAnalysisService.listPageGridOpeningsForExport(params); ExcelUtils.exportExcelToTarget(response, "开通网格情况", list, GridOpiningExcel.class); } + + /*** + * 运营数据导出 + * @param + * @param response + * @return void + * @author qushutong + * @date 2020/3/23 16:36 + */ + @PostMapping("export/exportOperationData") + public void exportOperationData(@RequestBody ExportOperationFormDTO exportOperationFormDTO, HttpServletResponse response) throws Exception { + List list = userAnalysisService.listExportOperationCount(exportOperationFormDTO); + ExcelUtils.exportExcelToTarget(response, "开通网格情况", list, ExportOperationDataExcel.class); + } } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserGridOpiningDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserGridOpiningDao.java new file mode 100644 index 000000000..ca5c69bca --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserGridOpiningDao.java @@ -0,0 +1,45 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.dao; + +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.modules.user.entity.MetaUserGridOpiningEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Mapper +public interface MetaUserGridOpiningDao extends BaseDao { + + /*** + * 列表 + * @param params + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @author qushutong + * @date 2020/3/25 17:30 + */ + List pageselectListPage(Map params); +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserPartyRankDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserPartyRankDao.java new file mode 100644 index 000000000..9bebf3d7a --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserPartyRankDao.java @@ -0,0 +1,46 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.dao; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.modules.user.entity.MetaUserPartyRankEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Mapper +public interface MetaUserPartyRankDao extends BaseDao { + + /*** + * 分页 + * @param params + * @return java.util.List + * @author qushutong + * @date 2020/3/26 18:36 + */ + List selectPagePartyRank(Map params); + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserRegisterRankDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserRegisterRankDao.java new file mode 100644 index 000000000..86223fd00 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/MetaUserRegisterRankDao.java @@ -0,0 +1,55 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.dao; + +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.modules.user.entity.MetaUserRegisterRankEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Mapper +public interface MetaUserRegisterRankDao extends BaseDao { + + /*** + * 分页 + * @param params + * @return java.util.List + * @author qushutong + * @date 2020/3/26 15:41 + */ + List selectPageUserRegisterRank(Map params); + + + /*** + * 获取当前用户拥有权限的街道id + * @param params + * @return java.util.List + * @author qushutong + * @date 2020/3/26 16:54 + */ + List selectListStreetId(Map params); +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java index 5c2c50477..5b7b63619 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/dao/UserAnalysisDao.java @@ -2,6 +2,7 @@ package com.elink.esua.epdc.modules.user.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.elink.esua.epdc.dto.user.UserAnalysisDTO; +import com.elink.esua.epdc.dto.user.form.ExportOperationFormDTO; import com.elink.esua.epdc.dto.user.form.UserCountDTO; import com.elink.esua.epdc.dto.user.form.UserSortRankFormDTO; import com.elink.esua.epdc.dto.user.result.*; @@ -157,4 +158,89 @@ public interface UserAnalysisDao extends BaseMapper { * @date 2020/3/5 14:10 */ List selectListUnAuthorizedCountByGridId(Map params); + + /*** + * 运营数据导出用户相关 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportUserCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 运营数据导出未认证用户 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportunAuthorizedCount(ExportOperationFormDTO exportOperationFormDTO); + + + /*** + * 运营数据导出议题 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportEventCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 运营数据导出项目相关 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportItemCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 运营数据导出新闻 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportNewsCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 运营数据导出社群数 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportGroupCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 运营数据导出社群成员数 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportCommunityMemberCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 运营数据导出社群话题数 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportTopicCount(ExportOperationFormDTO exportOperationFormDTO); + + + /*** + * 运营数据导出企业数 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List selectExportEnterpriseCount(ExportOperationFormDTO exportOperationFormDTO); + + } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserGridOpiningEntity.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserGridOpiningEntity.java new file mode 100644 index 000000000..cda46a4a2 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserGridOpiningEntity.java @@ -0,0 +1,116 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.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; + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("meta_epdc_user_grid_opining") +public class MetaUserGridOpiningEntity extends BaseEpdcEntity { + + private static final long serialVersionUID = 1L; + + /** + * 网格id + */ + private String gridId; + + /** + * 用户总数 + */ + private int registerCount; + + /** + * 党员数 + */ + private int partyCount; + + /** + * 已注册居民 + */ + private int residentCount; + + /** + * 未注册居民 + */ + private int unAuthorizedCount; + + /** + * 新闻发布数 + */ + private int newsCount; + + /** + * 社群数 + */ + private int communityCount; + + /** + * 群成员数 + */ + private int communityMemberCount; + + /** + * 群话题数 + */ + private int communityTopicCount; + + /** + * 议题总数 + */ + private int eventCount; + + /** + * 项目数 + */ + private int itemCount; + + /** + * 项目已解决数 + */ + private int itemCloseCount; + + /** + * 好评数 + */ + private int itemPraiseCount; + + /** + * 网格名称 + */ + private String allDeptName; + + /** + * 网格党建指导员姓名 + */ + private String gridLeader; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserPartyRankEntity.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserPartyRankEntity.java new file mode 100644 index 000000000..eec5ce88e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserPartyRankEntity.java @@ -0,0 +1,97 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("meta_epdc_user_party_rank") +public class MetaUserPartyRankEntity extends BaseEpdcEntity { + + private static final long serialVersionUID = 1L; + + /** + * 街道id + */ + private String streetId; + + /** + * 街道名称 + */ + private String streetName; + + /** + * 已注册党员数量(已认证) + */ + private Integer partyMemberCount; + + /** + * 年龄超过50岁党员数量 + */ + private Integer oldCount; + + /** + * 老龄化比例 + */ + private BigDecimal oldPercent; + + /** + * 年龄50岁以下的党员数量 + */ + private Integer youngCount; + + /** + * 年轻化比例 + */ + private BigDecimal youngPercent; + + /** + * 男 + */ + private Integer maleCount; + + /** + * 女 + */ + private Integer femaleCount; + + /** + * 未知性别 + */ + private Integer unknownSexCount; + + /** + * 党员认证失败数 + */ + private Integer partyAuthFailureCount; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserRegisterRankEntity.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserRegisterRankEntity.java new file mode 100644 index 000000000..08f60b8be --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/entity/MetaUserRegisterRankEntity.java @@ -0,0 +1,107 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.entity; + +import com.baomidou.mybatisplus.annotation.TableName; + +import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Data +@EqualsAndHashCode(callSuper=false) +@TableName("meta_epdc_user_register_rank") +public class MetaUserRegisterRankEntity extends BaseEpdcEntity { + + private static final long serialVersionUID = 1L; + + /** + * 街道id + */ + private String streetId; + + /** + * 街道名称 + */ + private String streetName; + + /** + * 用户总数 + */ + private Integer userCount; + + /** + * 党员数 + */ + private Integer partyMemberCount; + + /** + * 已注册居民 + */ + private Integer residentCount; + + /** + * 为注册居民 + */ + private Integer unAuthorizedCount; + + /** + * 年龄超过50岁 + */ + private Integer oldCount; + + /** + * 老龄化比例 + */ + private BigDecimal oldPercent; + + /** + * 50岁以下用户数量 + */ + private Integer youngCount; + + /** + * 年轻化比例 + */ + private BigDecimal youngPercent; + + /** + * 男 + */ + private Integer maleCount; + + /** + * 女 + */ + private Integer femaleCount; + + /** + * 未知性别 + */ + private Integer unknownSexCount; + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserGridOpiningExcel.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserGridOpiningExcel.java new file mode 100644 index 000000000..104301f23 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserGridOpiningExcel.java @@ -0,0 +1,80 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.util.Date; + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Data +public class MetaUserGridOpiningExcel { + + @Excel(name = "网格名称") + private String allDeptNames; + + @Excel(name = "网格党建指导员姓名") + private String gridLeader; + + @Excel(name = "用户总数") + private int registerCount; + + @Excel(name = "党员数") + private int partyCount; + + @Excel(name = "已注册居民") + private int residentCount; + + @Excel(name = "未注册居民") + private int unAuthorizedCount; + + @Excel(name = "新闻发布数") + private String newsCount; + + @Excel(name = "社群数") + private int communityCount; + + @Excel(name = "群成员数") + private int communityMemberCount; + + @Excel(name = "群话题数") + private int communityTopicCount; + + @Excel(name = "议题总数") + private int eventCount; + + @Excel(name = "项目数") + private int itemCount; + + @Excel(name = "项目已解决数") + private int itemCloseCount; + + @Excel(name = "好评数") + private int itemPraiseCount; + + @Excel(name = "更新时间", format = "yyyy-MM-dd HH:mm:ss") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserPartyRankExcel.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserPartyRankExcel.java new file mode 100644 index 000000000..7700c7b3a --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserPartyRankExcel.java @@ -0,0 +1,70 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Data +public class MetaUserPartyRankExcel { + + + @Excel(name = "街道名称") + private String streetName; + + @Excel(name = "已注册党员数量(已认证)") + private Integer partyMemberCount; + + @Excel(name = "年龄超过50岁党员数量") + private Integer oldCount; + + @Excel(name = "老龄化比例") + private BigDecimal oldPercent; + + @Excel(name = "年龄50岁以下的党员数量") + private Integer youngCount; + + @Excel(name = "年轻化比例") + private BigDecimal youngPercent; + + @Excel(name = "男") + private Integer maleCount; + + @Excel(name = "女") + private Integer femaleCount; + + @Excel(name = "未知性别") + private Integer unknownSexCount; + + @Excel(name = "党员认证失败数") + private Integer partyAuthFailureCount; + + @Excel(name = "更新时间", format = "yyyy-MM-dd HH:mm:ss") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserRegisterRankExcel.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserRegisterRankExcel.java new file mode 100644 index 000000000..7fd0c6793 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/excel/MetaUserRegisterRankExcel.java @@ -0,0 +1,76 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Data +public class MetaUserRegisterRankExcel { + + + @Excel(name = "街道名称") + private String streetName; + + @Excel(name = "用户总数") + private Integer userCount; + + @Excel(name = "党员数") + private Integer partyMemberCount; + + @Excel(name = "已注册居民") + private Integer residentCount; + + @Excel(name = "为注册居民") + private Integer unAuthorizedCount; + + @Excel(name = "年龄超过50岁") + private Integer oldCount; + + @Excel(name = "老龄化比例") + private BigDecimal oldPercent; + + @Excel(name = "50岁以下用户数量") + private Integer youngCount; + + @Excel(name = "年轻化比例") + private BigDecimal youngPercent; + + @Excel(name = "男") + private Integer maleCount; + + @Excel(name = "女") + private Integer femaleCount; + + @Excel(name = "未知性别") + private Integer unknownSexCount; + + @Excel(name = "更新时间", format = "yyyy-MM-dd HH:mm:ss") + private Date updatedTime; + + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserGridOpiningService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserGridOpiningService.java new file mode 100644 index 000000000..c28bfabce --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserGridOpiningService.java @@ -0,0 +1,107 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.service; + +import com.elink.esua.epdc.commons.mybatis.service.BaseService; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.user.MetaUserGridOpiningDTO; +import com.elink.esua.epdc.modules.user.entity.MetaUserGridOpiningEntity; + +import java.util.List; +import java.util.Map; + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +public interface MetaUserGridOpiningService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-25 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-25 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return MetaUserGridOpiningDTO + * @author generator + * @date 2020-03-25 + */ + MetaUserGridOpiningDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-25 + */ + void save(MetaUserGridOpiningDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-25 + */ + void update(MetaUserGridOpiningDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-25 + */ + void delete(String[] ids); + + + + /*** + * 网格开通数据生成临时表导入 + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author qushutong + * @date 2020/3/25 10:42 + */ + Result createUserAnalysisData(); +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserPartyRankService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserPartyRankService.java new file mode 100644 index 000000000..b98990bbb --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserPartyRankService.java @@ -0,0 +1,105 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.service; + +import com.elink.esua.epdc.commons.mybatis.service.BaseService; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.user.MetaUserPartyRankDTO; +import com.elink.esua.epdc.modules.user.entity.MetaUserPartyRankEntity; + +import java.util.List; +import java.util.Map; + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +public interface MetaUserPartyRankService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-26 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-26 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return MetaUserPartyRankDTO + * @author generator + * @date 2020-03-26 + */ + MetaUserPartyRankDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-26 + */ + void save(MetaUserPartyRankDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-26 + */ + void update(MetaUserPartyRankDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-26 + */ + void delete(String[] ids); + + /*** + * 定时任务导入党员排行 + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author qushutong + * @date 2020/3/26 18:23 + */ + Result toLeadPartyRankData(); +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserRegisterRankService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserRegisterRankService.java new file mode 100644 index 000000000..82adfb5f2 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/MetaUserRegisterRankService.java @@ -0,0 +1,105 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.service; + +import com.elink.esua.epdc.commons.mybatis.service.BaseService; +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.user.MetaUserRegisterRankDTO; +import com.elink.esua.epdc.modules.user.entity.MetaUserRegisterRankEntity; + +import java.util.List; +import java.util.Map; + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +public interface MetaUserRegisterRankService extends BaseService { + + /** + * 默认分页 + * + * @param params + * @return PageData + * @author generator + * @date 2020-03-26 + */ + PageData page(Map params); + + /** + * 默认查询 + * + * @param params + * @return java.util.List + * @author generator + * @date 2020-03-26 + */ + List list(Map params); + + /** + * 单条查询 + * + * @param id + * @return MetaUserRegisterRankDTO + * @author generator + * @date 2020-03-26 + */ + MetaUserRegisterRankDTO get(String id); + + /** + * 默认保存 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-26 + */ + void save(MetaUserRegisterRankDTO dto); + + /** + * 默认更新 + * + * @param dto + * @return void + * @author generator + * @date 2020-03-26 + */ + void update(MetaUserRegisterRankDTO dto); + + /** + * 批量删除 + * + * @param ids + * @return void + * @author generator + * @date 2020-03-26 + */ + void delete(String[] ids); + + /*** + * 导入用户注册 + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author qushutong + * @date 2020/3/26 13:26 + */ + Result toLeadUserRegisterRandData(); +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/UserAnalysisService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/UserAnalysisService.java index 8a460c049..9f97ce3a9 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/UserAnalysisService.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/UserAnalysisService.java @@ -2,12 +2,10 @@ package com.elink.esua.epdc.modules.user.service; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.user.form.ExportOperationFormDTO; import com.elink.esua.epdc.dto.user.form.UserSortRankFormDTO; import com.elink.esua.epdc.dto.user.form.UserCountDTO; -import com.elink.esua.epdc.dto.user.result.GridDataTotalResultDTO; -import com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO; -import com.elink.esua.epdc.dto.user.result.UserDataRankResultDTO; -import com.elink.esua.epdc.dto.user.result.UserSortRankResultDTO; +import com.elink.esua.epdc.dto.user.result.*; import java.util.List; import java.util.Map; @@ -88,4 +86,42 @@ public interface UserAnalysisService { * @date 2020/2/13 14:22 */ GridDataTotalResultDTO selectGridDataTotal(Map params); + + + /*** + * 运营数据导出用户相关 + * @param exportOperationFormDTO + * @return java.util.List + * @author qushutong + * @date 2020/3/23 15:16 + */ + List listExportOperationCount(ExportOperationFormDTO exportOperationFormDTO); + + /*** + * 获取所有网格 + * @param params + * @return java.util.List + * @author qushutong + * @date 2020/3/25 17:22 + */ + List selectListGridHasMaCode(Map params); + + + /*** + * 获取导入数据 + * @param params + * @return java.util.List + * @author qushutong + * @date 2020/3/25 19:13 + */ + List getToLeadGridOpenings(Map params); + + /*** + * 获取导入用户排行数据 + * @param params + * @return java.util.List + * @author qushutong + * @date 2020/3/26 13:32 + */ + List getToLeadUserRegisterRandData(Map params); } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserGridOpiningServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserGridOpiningServiceImpl.java new file mode 100644 index 000000000..a126d5d1e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserGridOpiningServiceImpl.java @@ -0,0 +1,138 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.toolkit.SqlHelper; +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.commons.tools.utils.DateUtils; +import com.elink.esua.epdc.commons.tools.utils.LocalDateUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.user.MetaUserGridOpiningDTO; +import com.elink.esua.epdc.dto.user.result.GridOpeningResultDTO; +import com.elink.esua.epdc.modules.user.dao.MetaUserGridOpiningDao; +import com.elink.esua.epdc.modules.user.entity.MetaUserGridOpiningEntity; +import com.elink.esua.epdc.modules.user.service.MetaUserGridOpiningService; +import com.elink.esua.epdc.modules.user.service.UserAnalysisService; +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.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; + +/** + * 网格开通情况 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-25 + */ +@Service +public class MetaUserGridOpiningServiceImpl extends BaseServiceImpl implements MetaUserGridOpiningService { + @Autowired + private UserAnalysisService userAnalysisService; + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public PageData page(Map params) { + IPage page = getPage(params); + List metaUserGridOpiningEntityList = getMetaUserGridOpiningEntities(params); + return getPageData(metaUserGridOpiningEntityList,page.getTotal(), MetaUserGridOpiningDTO.class); + } + + private List getMetaUserGridOpiningEntities(Map params) { + // 获取所有网格 + List gridOpeningResultDTOS = userAnalysisService.selectListGridHasMaCode(params); + List deptIdList = new ArrayList<>(); + for(GridOpeningResultDTO item:gridOpeningResultDTOS){ + deptIdList.add(item.getGridId()); + } + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + params.put("deptIdList",deptIdList); + String time = (String) params.get("createdTime"); + if(StringUtils.isBlank(time)){ + String createdTime = format.format(new Date()); + params.put("createdTime",createdTime); + }else { + String createdTime = DateUtils.dealDateFormat(time); + params.put("createdTime",createdTime); + } + return baseDao.pageselectListPage(params); + } + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public List list(Map params) { + List entityList = getMetaUserGridOpiningEntities(params); + + return ConvertUtils.sourceToTarget(entityList, MetaUserGridOpiningDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + return wrapper; + } + + @Override + public MetaUserGridOpiningDTO get(String id) { + MetaUserGridOpiningEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, MetaUserGridOpiningDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(MetaUserGridOpiningDTO dto) { + MetaUserGridOpiningEntity entity = ConvertUtils.sourceToTarget(dto, MetaUserGridOpiningEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(MetaUserGridOpiningDTO dto) { + MetaUserGridOpiningEntity entity = ConvertUtils.sourceToTarget(dto, MetaUserGridOpiningEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public Result createUserAnalysisData() { + List list = userAnalysisService.getToLeadGridOpenings(new HashMap<>()); + List metaUserGridOpiningEntities = ConvertUtils.sourceToTarget(list, MetaUserGridOpiningEntity.class); + boolean b = insertBatch(metaUserGridOpiningEntities); + return b?new Result<>():new Result().error("录入失败"); + } +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserPartyRankServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserPartyRankServiceImpl.java new file mode 100644 index 000000000..5da1eb35a --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserPartyRankServiceImpl.java @@ -0,0 +1,140 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.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.enums.YesOrNoEnum; +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.DateUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.user.MetaUserPartyRankDTO; +import com.elink.esua.epdc.dto.user.result.UserDataRankResultDTO; +import com.elink.esua.epdc.modules.user.dao.MetaUserPartyRankDao; +import com.elink.esua.epdc.modules.user.entity.MetaUserPartyRankEntity; +import com.elink.esua.epdc.modules.user.service.MetaUserPartyRankService; +import com.elink.esua.epdc.modules.user.service.MetaUserRegisterRankService; +import com.elink.esua.epdc.modules.user.service.UserAnalysisService; +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.text.SimpleDateFormat; +import java.util.*; + +/** + * 党员排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Service +public class MetaUserPartyRankServiceImpl extends BaseServiceImpl implements MetaUserPartyRankService { + + @Autowired + private UserAnalysisService userAnalysisService; + + @Autowired + private MetaUserRegisterRankServiceImpl metaUserRegisterRankService; + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public PageData page(Map params) { + IPage page = getPage(params); + List metaUserRegisterRankEntities = getMetaUserPartyRankEntities(params); + return getPageData(metaUserRegisterRankEntities,page.getTotal(), MetaUserPartyRankDTO.class); + } + + private List getMetaUserPartyRankEntities(Map params) { + // 获取权限下的街道id + List streetIdList = metaUserRegisterRankService.getListStreetId(); + params.put("streetIdList",streetIdList); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + String time = (String) params.get("createdTime"); + if(StringUtils.isBlank(time)){ + String createdTime = format.format(new Date()); + params.put("createdTime",createdTime); + }else { + String createdTime = DateUtils.dealDateFormat(time); + params.put("createdTime",createdTime); + } + return baseDao.selectPagePartyRank(params); + } + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public List list(Map params) { + List entityList = getMetaUserPartyRankEntities(params); + + return ConvertUtils.sourceToTarget(entityList, MetaUserPartyRankDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public MetaUserPartyRankDTO get(String id) { + MetaUserPartyRankEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, MetaUserPartyRankDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(MetaUserPartyRankDTO dto) { + MetaUserPartyRankEntity entity = ConvertUtils.sourceToTarget(dto, MetaUserPartyRankEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(MetaUserPartyRankDTO dto) { + MetaUserPartyRankEntity entity = ConvertUtils.sourceToTarget(dto, MetaUserPartyRankEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public Result toLeadPartyRankData() { + // 获取导出数据 + Map params = new HashMap<>(); + params.put("partyFlag", YesOrNoEnum.YES.value()); + List toLeadUserRegisterRandData = userAnalysisService.getToLeadUserRegisterRandData(params); + List metaUserPartyRankEntities = ConvertUtils.sourceToTarget(toLeadUserRegisterRandData, MetaUserPartyRankEntity.class); + return insertBatch(metaUserPartyRankEntities)? new Result(): new Result().error("导入党员排行失败") ; + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserRegisterRankServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserRegisterRankServiceImpl.java new file mode 100644 index 000000000..6d89b576e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/MetaUserRegisterRankServiceImpl.java @@ -0,0 +1,147 @@ +/** + * Copyright 2018 人人开源 https://www.renren.io + *

+ * 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. + *

+ * 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. + *

+ * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + */ + +package com.elink.esua.epdc.modules.user.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.security.user.SecurityUser; +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.DateUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.user.MetaUserRegisterRankDTO; +import com.elink.esua.epdc.dto.user.result.UserDataRankResultDTO; +import com.elink.esua.epdc.modules.user.dao.MetaUserRegisterRankDao; +import com.elink.esua.epdc.modules.user.entity.MetaUserRegisterRankEntity; +import com.elink.esua.epdc.modules.user.service.MetaUserRegisterRankService; +import com.elink.esua.epdc.modules.user.service.UserAnalysisService; +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.text.SimpleDateFormat; +import java.util.*; + +/** + * 用户注册排行 + * + * @author qu elink@elink-cn.com + * @since v1.0.0 2020-03-26 + */ +@Service +public class MetaUserRegisterRankServiceImpl extends BaseServiceImpl implements MetaUserRegisterRankService { + + @Autowired + private UserAnalysisService userAnalysisService; + @Override + @DataSource(name = DataSourceNames.TWELVE) + public PageData page(Map params) { + IPage page = getPage(params); + List metaUserRegisterRankEntities = getMetaUserRegisterRankEntities(params); + return getPageData(metaUserRegisterRankEntities,page.getTotal(), MetaUserRegisterRankDTO.class); + } + + private List getMetaUserRegisterRankEntities(Map params) { + // 获取权限下的街道id + List streetIdList = getListStreetId(); + params.put("streetIdList",streetIdList); + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); + String time = (String) params.get("createdTime"); + if(StringUtils.isBlank(time)){ + String createdTime = format.format(new Date()); + params.put("createdTime",createdTime); + }else { + String createdTime = DateUtils.dealDateFormat(time); + params.put("createdTime",createdTime); + } + return baseDao.selectPageUserRegisterRank(params); + } + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public List list(Map params) { + List entityList = getMetaUserRegisterRankEntities(params); + + return ConvertUtils.sourceToTarget(entityList, MetaUserRegisterRankDTO.class); + } + + private QueryWrapper getWrapper(Map params){ + String id = (String)params.get(FieldConstant.ID_HUMP); + + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); + + return wrapper; + } + + @Override + public MetaUserRegisterRankDTO get(String id) { + MetaUserRegisterRankEntity entity = baseDao.selectById(id); + return ConvertUtils.sourceToTarget(entity, MetaUserRegisterRankDTO.class); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void save(MetaUserRegisterRankDTO dto) { + MetaUserRegisterRankEntity entity = ConvertUtils.sourceToTarget(dto, MetaUserRegisterRankEntity.class); + insert(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void update(MetaUserRegisterRankDTO dto) { + MetaUserRegisterRankEntity entity = ConvertUtils.sourceToTarget(dto, MetaUserRegisterRankEntity.class); + updateById(entity); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public void delete(String[] ids) { + // 逻辑删除(@TableLogic 注解) + baseDao.deleteBatchIds(Arrays.asList(ids)); + } + + @Override + @DataSource(name = DataSourceNames.TWELVE) + public Result toLeadUserRegisterRandData() { + // 获取导出数据 + List toLeadUserRegisterRandData = userAnalysisService.getToLeadUserRegisterRandData(new HashMap<>()); + // 导入数据 + List metaUserRegisterRankEntities = ConvertUtils.sourceToTarget(toLeadUserRegisterRandData, MetaUserRegisterRankEntity.class); + return insertBatch(metaUserRegisterRankEntities) ? new Result():new Result().error("导入注册用户排行失败"); + } + + /*** + * 获取当前用户拥有权限的街道id + * @param + * @return java.util.List + * @author qushutong + * @date 2020/3/26 16:57 + */ + public List getListStreetId() { + Map params = new HashMap(); + params.put("deptIdList", SecurityUser.getUser().getDeptIdList()); + return baseDao.selectListStreetId(params); + } + +} \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java index 02108205f..274e26ca7 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/user/service/impl/UserAnalysisServiceImpl.java @@ -13,6 +13,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.datasources.DataSourceNames; import com.elink.esua.epdc.datasources.annotation.DataSource; import com.elink.esua.epdc.dto.user.UserAnalysisDTO; +import com.elink.esua.epdc.dto.user.form.ExportOperationFormDTO; import com.elink.esua.epdc.dto.user.form.UserSortRankFormDTO; import com.elink.esua.epdc.dto.user.form.UserCountDTO; import com.elink.esua.epdc.dto.user.result.*; @@ -23,6 +24,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -51,7 +53,6 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl listPageGridOpeningsForExport(Map params) { params.put("deptIdList", SecurityUser.getUser().getDeptIdList()); - List list = baseDao.selectListGridHasMaCode(params); list = fillFieldForGridOpening(list, params); @@ -139,6 +140,11 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl page = getPage(params); + List list = getListUserDataRankResultDro(params); + return new PageData<>(list, page.getTotal()); + } + + private List getListUserDataRankResultDro(Map params) { List list = baseDao.selectListUserDataRank(params); if (CollUtil.isNotEmpty(list)) { @@ -173,7 +179,7 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl(list, page.getTotal()); + return list; } @@ -269,6 +275,7 @@ public class UserAnalysisServiceImpl extends BaseServiceImpl listExportOperationCount(ExportOperationFormDTO exportOperationFormDTO) { + List allStreetIds = new ArrayList<>(); + for (Long[] item : exportOperationFormDTO.getAllDeptIdsShow()) { + allStreetIds.add(item[0]); + } + exportOperationFormDTO.setAllStreetIds(allStreetIds); + //用户相关 + List exportOperationDataResultDTOS = baseDao.selectExportUserCount(exportOperationFormDTO); + // 未认证用户 + List unAuthorizedResultDTOS = baseDao.selectExportunAuthorizedCount(exportOperationFormDTO); + + List newsResultDTOS = baseDao.selectExportNewsCount(exportOperationFormDTO); + // 议题 + List eventDataResultDTOS = baseDao.selectExportEventCount(exportOperationFormDTO); + // 项目 + List itemDataResultDTOS = baseDao.selectExportItemCount(exportOperationFormDTO); + // 社群 + List groupDataResultDTOS = baseDao.selectExportGroupCount(exportOperationFormDTO); + // 社群成员 + List communityMemberDataResultDTOS = baseDao.selectExportCommunityMemberCount(exportOperationFormDTO); + // 话题 + List topicDataResultDTOS = baseDao.selectExportTopicCount(exportOperationFormDTO); + + // 企业 + List enterpriseDataResultDTOS = baseDao.selectExportEnterpriseCount(exportOperationFormDTO); + //居民数 + for (int i = 0; i < exportOperationDataResultDTOS.size(); i++) { + for (ExportOperationDataResultDTO item : unAuthorizedResultDTOS) { + if (exportOperationDataResultDTOS.get(i).getStreetName().equals(item.getStreetName())) { + exportOperationDataResultDTOS.get(i).setRegisterCount(exportOperationDataResultDTOS.get(i).getRegisterCount() + item.getUnAuthorizedCount()); + } else { + exportOperationDataResultDTOS.get(i).setRegisterCount(exportOperationDataResultDTOS.get(i).getRegisterCount()); + } + } + exportOperationDataResultDTOS.get(i).setNewsCount(newsResultDTOS.get(i).getNewsCount()); + exportOperationDataResultDTOS.get(i).setItemCount(itemDataResultDTOS.get(i).getItemCount()); + exportOperationDataResultDTOS.get(i).setItemCloseCount(itemDataResultDTOS.get(i).getItemCloseCount()); + exportOperationDataResultDTOS.get(i).setEventCount(eventDataResultDTOS.get(i).getEventCount()); + exportOperationDataResultDTOS.get(i).setCommunityCount(groupDataResultDTOS.get(i).getCommunityCount()); + exportOperationDataResultDTOS.get(i).setCommunityMemberCount(communityMemberDataResultDTOS.get(i).getCommunityMemberCount()); + exportOperationDataResultDTOS.get(i).setCommunityTopicCount(topicDataResultDTOS.get(i).getCommunityTopicCount()); + exportOperationDataResultDTOS.get(i).setEnterpriseCount(enterpriseDataResultDTOS.get(i).getEnterpriseCount()); + + } + return exportOperationDataResultDTOS; + } + + @Override + public List selectListGridHasMaCode(Map params) { + params.put("deptIdList", SecurityUser.getUser().getDeptIdList()); + params.put("category", YesOrNoEnum.YES.value()); + return baseDao.selectListGridHasMaCode(params); + } + + @Override + public List getToLeadGridOpenings(Map params) { + params.put("category", YesOrNoEnum.YES.value()); + List list = baseDao.selectListGridHasMaCode(params); + list = fillFieldForGridOpening(list, params); + return list; + } + + @Override + public List getToLeadUserRegisterRandData(Map params) { + return getListUserDataRankResultDro(params); + } + + } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-dev.yml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-dev.yml index 5a5ab6e28..8c0fcdf01 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-dev.yml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-dev.yml @@ -47,6 +47,10 @@ spring: url: jdbc:mysql://47.104.224.45:3308/esua_epdc_user?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai username: epdc password: elink833066 + twelve: #数据源12 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_analysis?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 initial-size: 10 max-active: 100 min-idle: 10 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-prod.yml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-prod.yml index f57e18dc1..516bc46e8 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-prod.yml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-prod.yml @@ -46,6 +46,10 @@ spring: url: jdbc:mysql://172.16.0.52:3306/esua_epdc_user?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai username: epdc password: Elink@833066 + twelve: #数据源12 + url: jdbc:mysql://172.16.0.52:3306/esua_epdc_analysis?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 initial-size: 10 max-active: 100 min-idle: 10 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-test.yml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-test.yml index 5a5ab6e28..8c0fcdf01 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-test.yml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-test.yml @@ -47,6 +47,10 @@ spring: url: jdbc:mysql://47.104.224.45:3308/esua_epdc_user?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai username: epdc password: elink833066 + twelve: #数据源12 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_analysis?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 initial-size: 10 max-active: 100 min-idle: 10 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserGridOpiningDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserGridOpiningDao.xml new file mode 100644 index 000000000..363aff585 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserGridOpiningDao.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserPartyRankDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserPartyRankDao.xml new file mode 100644 index 000000000..fb795db24 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserPartyRankDao.xml @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserRegisterRankDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserRegisterRankDao.xml new file mode 100644 index 000000000..592c90d7c --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/MetaUserRegisterRankDao.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml index 32b76a81e..3485a5d16 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml @@ -44,6 +44,7 @@ AND uu.CREATED_TIME BETWEEN #{startTime} AND #{endTime} + AND ad2.id is NOT NULL AND ad.id IS NOT NULL ) t GROUP BY t.streetId ) t1 @@ -430,4 +431,304 @@ ) t GROUP BY t.userId ) tt GROUP BY tt.gridId + + + + + + + + + + + + + + + + + + + + + + + + + #{item} + + diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-client/pom.xml b/esua-epdc/epdc-module/epdc-api/epdc-api-client/pom.xml index fb4e2c8d7..2e5262f42 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-client/pom.xml +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-client/pom.xml @@ -28,11 +28,6 @@ epdc-heart-client 1.0.0 - - com.esua.epdc - epdc-neighbor-client - 1.0.0 - com.esua.epdc epdc-news-client @@ -43,11 +38,6 @@ epdc-events-client 1.0.0 - - com.esua.epdc - epdc-services-client - 1.0.0 - com.esua.epdc epdc-user-client diff --git a/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/dao/EvaluateInfoDao.java b/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/dao/EvaluateInfoDao.java index 3b485d25d..e2cddd3ec 100644 --- a/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/dao/EvaluateInfoDao.java +++ b/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/dao/EvaluateInfoDao.java @@ -19,6 +19,7 @@ package com.elink.esua.epdc.modules.evaluate.dao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.dto.evaluate.EvaluateSelectOption; +import com.elink.esua.epdc.dto.evaluate.form.EvaluateSubmitFormDTO; import com.elink.esua.epdc.dto.evaluate.result.EvaluateInfoResultDTO; import com.elink.esua.epdc.modules.evaluate.entity.EvaluateInfoEntity; import org.apache.ibatis.annotations.Mapper; @@ -47,5 +48,13 @@ public interface EvaluateInfoDao extends BaseDao { void deleteEvaluate(@Param("id")String id); void UpdateOfficerCount(@Param("id")String id, @Param("type")String type); + + /** + * 校验评价次数 + * @param formDto + * @author wanggongfeng + * @return + */ + Integer checkEvaluateTimes(EvaluateSubmitFormDTO formDto); } \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/service/impl/EvaluateInfoServiceImpl.java b/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/service/impl/EvaluateInfoServiceImpl.java index e1e4bce6f..0c5350cc7 100644 --- a/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/service/impl/EvaluateInfoServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/java/com/elink/esua/epdc/modules/evaluate/service/impl/EvaluateInfoServiceImpl.java @@ -20,17 +20,14 @@ package com.elink.esua.epdc.modules.evaluate.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.constant.FieldConstant; 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.Result; import com.elink.esua.epdc.dto.evaluate.EvaluateDetailDTO; import com.elink.esua.epdc.dto.evaluate.EvaluateInfoDTO; -import com.elink.esua.epdc.dto.evaluate.EvaluateOfficerDTO; import com.elink.esua.epdc.dto.evaluate.EvaluateSelectOption; import com.elink.esua.epdc.dto.evaluate.form.EvaluateSubmitFormDTO; -import com.elink.esua.epdc.dto.evaluate.result.EvaluateDeptCountResultDTO; import com.elink.esua.epdc.dto.evaluate.result.EvaluateInfoResultDTO; import com.elink.esua.epdc.modules.evaluate.dao.EvaluateInfoDao; import com.elink.esua.epdc.modules.evaluate.entity.EvaluateInfoEntity; @@ -123,6 +120,11 @@ public class EvaluateInfoServiceImpl extends BaseServiceImpl 0) { + return new Result().error("今天已评价过该干部。"); + } EvaluateInfoDTO dto = new EvaluateInfoDTO(); dto.setFullName(formDto.getFullName()); dto.setMobile(formDto.getMobile()); diff --git a/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/evaluate/EvaluateInfoDao.xml b/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/evaluate/EvaluateInfoDao.xml index 8f5a05b6f..fb9ed2fee 100644 --- a/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/evaluate/EvaluateInfoDao.xml +++ b/esua-epdc/epdc-module/epdc-custom/epdc-custom-server/src/main/resources/mapper/evaluate/EvaluateInfoDao.xml @@ -105,5 +105,17 @@ where ID = #{id} and DEL_FLAG = '0' + + \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClint.java b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClint.java new file mode 100644 index 000000000..c0b7e2ec5 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/UserFeignClint.java @@ -0,0 +1,41 @@ +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.feign.fallback.UserFeignClintFallback; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.GetMapping; + +/** + * @author: qushutong + * @Date: 2020/3/25 10:20 + * @Description: 用户数据分析 + */ +@FeignClient(name = ServiceConstant.EPDC_ANALYSIS_SERVER, fallback = UserFeignClintFallback.class) +public interface UserFeignClint { + + /*** + * 生成用户分析数据导入临时表 + * @param + * @return void + * @author qushutong + * @date 2020/3/25 10:19 + */ + @GetMapping("analysis/metausergridopining/tolead") + Result createUserAnalysisData(); + + /*** + * 用户注册排行导入数据 + * @param + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author qushutong + * @date 2020/3/26 17:45 + */ + @GetMapping("analysis/metauserregisterrank/toLeadUserRegisterRandData") + Result toLeadUserRegisterRandData(); + + + @GetMapping("analysis/metauserpartyrank/toLeadPartyRankData") + Result toLeadPartyRankData(); + +} diff --git a/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClintFallback.java b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClintFallback.java new file mode 100644 index 000000000..8a2a066dc --- /dev/null +++ b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/feign/fallback/UserFeignClintFallback.java @@ -0,0 +1,31 @@ +package com.elink.esua.epdc.feign.fallback; + +import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; +import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.feign.UserFeignClint; +import org.springframework.stereotype.Component; + +/** + * @author: qushutong + * @Date: 2020/3/25 10:22 + * @Description: 用户数据分析 + */ +@Component +public class UserFeignClintFallback implements UserFeignClint { + + @Override + public Result createUserAnalysisData() { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "createUserAnalysisData", ""); + } + + @Override + public Result toLeadUserRegisterRandData() { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "toLeadUserRegisterRandData", ""); + } + + @Override + public Result toLeadPartyRankData() { + return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "toLeadPartyRankData", ""); + } +} diff --git a/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/service/ScheduleJobUserService.java b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/service/ScheduleJobUserService.java new file mode 100644 index 000000000..b164e52a2 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/service/ScheduleJobUserService.java @@ -0,0 +1,19 @@ +package com.elink.esua.epdc.service; + +/** + * @author: qushutong + * @Date: 2020/3/25 10:18 + * @Description: 用户数据分析 + */ +public interface ScheduleJobUserService { + + /*** + * 生成用户分析数据导入临时表 + * @param + * @return void + * @author qushutong + * @date 2020/3/25 10:19 + */ + void createUserAnalysisData(); + +} diff --git a/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/service/impl/ScheduleJobUserServiceImpl.java b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/service/impl/ScheduleJobUserServiceImpl.java new file mode 100644 index 000000000..246f39540 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/service/impl/ScheduleJobUserServiceImpl.java @@ -0,0 +1,29 @@ +package com.elink.esua.epdc.service.impl; + +import com.elink.esua.epdc.feign.UserFeignClint; +import com.elink.esua.epdc.service.ScheduleJobUserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import org.springframework.stereotype.Service; + +/** + * @author: qushutong + * @Date: 2020/3/25 10:15 + * @Description: 用户数据数据分析 + */ +@Component +public class ScheduleJobUserServiceImpl implements ScheduleJobUserService { + @Autowired + private UserFeignClint userFeignClint; + + @Override + public void createUserAnalysisData() { + // 网格开通 + userFeignClint.createUserAnalysisData(); + // 用户注册 + userFeignClint.toLeadUserRegisterRandData(); + + // 党员排行绑 + userFeignClint.toLeadPartyRankData(); + } +} diff --git a/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/analysis/UserAnalysisTask.java b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/analysis/UserAnalysisTask.java new file mode 100644 index 000000000..d02458b5d --- /dev/null +++ b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/analysis/UserAnalysisTask.java @@ -0,0 +1,18 @@ +package com.elink.esua.epdc.task.analysis; + +/** + * @author: qushutong + * @Date: 2020/3/25 10:04 + * @Description: 用户分析 + */ +public interface UserAnalysisTask { + + /*** + * 网格开通情况 + * @param + * @return void + * @author qushutong + * @date 2020/3/25 10:11 + */ + void run(String params); +} diff --git a/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/analysis/UserAnalysisTaskImpl.java b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/analysis/UserAnalysisTaskImpl.java new file mode 100644 index 000000000..2430504cc --- /dev/null +++ b/esua-epdc/epdc-module/epdc-job/epdc-job-server/src/main/java/com/elink/esua/epdc/task/analysis/UserAnalysisTaskImpl.java @@ -0,0 +1,21 @@ +package com.elink.esua.epdc.task.analysis; + +import com.elink.esua.epdc.service.ScheduleJobUserService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * @author: qushutong + * @Date: 2020/3/25 10:12 + * @Description: + */ +@Component("UserAnalysisTask") +public class UserAnalysisTaskImpl implements UserAnalysisTask { + @Autowired + private ScheduleJobUserService scheduleJobUserService; + + @Override + public void run(String params) { + scheduleJobUserService.createUserAnalysisData(); + } +} diff --git a/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java b/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java index 88907d3f7..1d14e9180 100644 --- a/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java +++ b/esua-epdc/epdc-module/epdc-oss/epdc-oss-server/src/main/java/com/elink/esua/epdc/controller/OssController.java @@ -157,7 +157,7 @@ public class OssController { String suffix = suffixTmp.substring(11, suffixTmp.indexOf(";")); byte[] bytes = new BASE64Decoder().decodeBuffer(base64ImgArr[1]); // 图片压缩 - byte[] imgBytes = CompressImgUtils.commpressPicCycle(bytes, 100, 0.5); + byte[] imgBytes = CompressImgUtils.commpressPicCycle(bytes, 110, 0.9); String url = OssFactory.build().uploadSuffix(imgBytes, suffix); return new Result().ok(url); } @@ -169,7 +169,7 @@ public class OssController { return new Result().error(ModuleErrorCode.UPLOAD_FILE_EMPTY); } // 图片压缩 - byte[] imgBytes = CompressImgUtils.commpressPicCycle(fileByte, 100, 0.5); + byte[] imgBytes = CompressImgUtils.commpressPicCycle(fileByte, 110, 0.9); //上传文件 String extension = FilenameUtils.getExtension(dto.getFileName()); String url = OssFactory.build().uploadSuffix(imgBytes, extension); diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/PartyMembersController.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/PartyMembersController.java index 02b900a23..3f864a4e8 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/PartyMembersController.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/controller/PartyMembersController.java @@ -112,10 +112,7 @@ public class PartyMembersController { public Result delete(@RequestBody String[] ids) { //效验数据 AssertUtils.isArrayEmpty(ids, "id"); - - partyMembersService.delete(ids); - - return new Result(); + return partyMembersService.delete(ids); } @GetMapping("export") @@ -166,5 +163,17 @@ public class PartyMembersController { ExcelUtils.exportExcelToTarget(response, "已认证党员", partyMembersService.exportHasMoudle(params), PartyMembersExcel.class); } + /*** + * 已认证党员优化 + * @param params + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author qushutong + * @date 2020/3/19 13:34 + */ + @GetMapping("optimizeHasAuthenticationPartyPage") + @DataFilter(tableAlias = "eu", prefix = "AND", isPendingCreator = false) + public Result> optimizeHasAuthenticationPartyPage(@RequestParam Map params) { + return partyMembersService.optimizeHasAuthenticationPartyPage(params); + } } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyMembersDao.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyMembersDao.java index 3d422439c..9a482741e 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyMembersDao.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/dao/PartyMembersDao.java @@ -21,6 +21,8 @@ import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.dto.PartyMembersDTO; import com.elink.esua.epdc.entity.PartyMembersEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.springframework.web.bind.annotation.PathVariable; import java.io.Serializable; import java.util.List; @@ -62,4 +64,33 @@ public interface PartyMembersDao extends BaseDao { * @since 2020/3/7 1:20 */ void updateGridByDeptId(String newDeptName, Long deptId); + + /*** + * 已认证党员查询优化 + * @param + * @return java.util.List + * @author qushutong + * @date 2020/3/19 13:32 + */ + + List optimizeHasAuthenticationPartyPage(Map params); + + /*** + * 已认证党员查询优化 + * @param + * @return java.util.List + * @author qushutong + * @date 2020/3/19 13:33 + */ + + List optimizeHasAuthenticationPartyPageInfo(@Param("userIdList") List userIdList); + + /*** + * 删除时校验党员是否被认证 + * @param IdentityNo + * @return + * @author qushutong + * @date 2020/3/20 9:21 + */ + Integer selectCountByIdentity(String IdentityNo); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/PartyMembersService.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/PartyMembersService.java index 4140b3eae..27b1f4f60 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/PartyMembersService.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/PartyMembersService.java @@ -52,7 +52,7 @@ public interface PartyMembersService extends BaseService { void update(PartyMembersDTO dto); - void delete(String[] ids); + Result delete(String[] ids); /*** @@ -111,4 +111,22 @@ public interface PartyMembersService extends BaseService { * @since 2020/3/7 1:23 */ void modifyOrganizationInfo(OrganizationModifyDTO dto); + + /*** + * 已认证党员优化 + * @param params + * @return com.elink.esua.epdc.commons.tools.utils.Result> + * @author qushutong + * @date 2020/3/19 13:36 + */ + Result> optimizeHasAuthenticationPartyPage(Map params); + + /*** + * 通过身份证校验此党员是否被认证 + * @param IdentityNo + * @return java.lang.Integer + * @author qushutong + * @date 2020/3/20 9:10 + */ + Integer checkCertificationByIdentityNo(String IdentityNo); } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/PartyMembersServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/PartyMembersServiceImpl.java index c0fea9fb1..a8bb0b4ab 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/PartyMembersServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/PartyMembersServiceImpl.java @@ -145,7 +145,7 @@ public class PartyMembersServiceImpl extends BaseServiceImpl + * @return java.util.Map * @author work@yujt.net.cn * @date 2020/2/24 16:43 */ @@ -252,12 +252,19 @@ public class PartyMembersServiceImpl extends BaseServiceImpl partyList) { @@ -459,18 +466,18 @@ public class PartyMembersServiceImpl extends BaseServiceImpl + * @params [dto, partyList] * @author liuchuang * @since 2020/3/7 15:17 */ private List handleOrganizationInfo(OrganizationModifyDTO dto, List partyList) { List entities = new ArrayList<>(); - for (PartyMembersDTO party: partyList) { + for (PartyMembersDTO party : partyList) { PartyMembersEntity entity = new PartyMembersEntity(); if (StringUtils.isNotEmpty(party.getParentDeptIds()) && StringUtils.isNotEmpty(party.getParentDeptNames())) { List parentDeptIds = Arrays.asList(party.getParentDeptIds().split(",")); @@ -499,4 +506,22 @@ public class PartyMembersServiceImpl extends BaseServiceImpl> optimizeHasAuthenticationPartyPage(Map params) { + IPage page = getPage(params); + List userIds = baseDao.optimizeHasAuthenticationPartyPage(params); + if (userIds.size() > 0) { + List partyMembersDTOList = baseDao.optimizeHasAuthenticationPartyPageInfo(userIds); + return new Result>().ok(new PageData<>(partyMembersDTOList, page.getTotal())); + } else { + return new Result>().ok(new PageData<>(new ArrayList<>(), NumConstant.ZERO)); + } + + } + + @Override + public Integer checkCertificationByIdentityNo(String IdentityNo) { + return baseDao.selectCountByIdentity(IdentityNo); + } } diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/PartyMembersDao.xml b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/PartyMembersDao.xml index 71e9f1e0a..1d7250d69 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/PartyMembersDao.xml +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/PartyMembersDao.xml @@ -88,25 +88,25 @@ - SELECT pm.*, pm.ALL_DEPT_IDS as deptStrIds, @@ -154,4 +154,85 @@ UPDATE epdc_party_members SET GRID_NAME = #{newDeptName}, UPDATED_TIME = NOW() WHERE GRID_ID = #{deptId} + + + + + + diff --git a/esua-epdc/pom.xml b/esua-epdc/pom.xml index acac2690f..94e8f0d08 100644 --- a/esua-epdc/pom.xml +++ b/esua-epdc/pom.xml @@ -36,7 +36,7 @@ 47.104.85.99:9002 1.4.13 prod - registry.cn-qingdao.aliyuncs.com/esua-epdc-shibei/ + registry-vpc.cn-qingdao.aliyuncs.com/esua-epdc-shibei/ 9508 2.1.1.RELEASE @@ -84,12 +84,6 @@ - - com.spotify - dockerfile-maven-plugin - ${dockerfile-maven-plugin.version} - - com.spotify dockerfile-maven-plugin