From 775387cd1603946fb91c3f31aa837cc3c3416bbb Mon Sep 17 00:00:00 2001 From: yujintao Date: Mon, 3 Feb 2020 09:29:06 +0800 Subject: [PATCH 01/10] =?UTF-8?q?=E6=96=B0=E9=97=BB=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E6=AD=A3=E5=B8=B8=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elink/esua/epdc/service/impl/NewsServiceImpl.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java index 3083efd38..f09fce3c5 100644 --- a/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/NewsServiceImpl.java @@ -1,6 +1,8 @@ package com.elink.esua.epdc.service.impl; import com.elink.esua.epdc.common.token.dto.TokenDto; +import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum; +import com.elink.esua.epdc.commons.tools.redis.RedisUtils; import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.dto.epdc.form.*; import com.elink.esua.epdc.dto.epdc.result.*; @@ -9,6 +11,7 @@ import com.elink.esua.epdc.service.NewsService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -24,6 +27,9 @@ public class NewsServiceImpl implements NewsService { @Autowired private NewsFeignClient newsFeignClient; + @Autowired + private RedisUtils redisUtils; + @Override public Result> listNotice(TokenDto userDetail, EpdcNoticeListFormDTO formDto) { formDto.setDeptId(userDetail.getGridId()); @@ -42,6 +48,10 @@ public class NewsServiceImpl implements NewsService { @Override public Result> listNews(TokenDto userDetail, EpdcNewsListFromDTO formDto) { + Object requireNewsList = redisUtils.get("epdc:switch:require:newsList"); + if (null != requireNewsList && YesOrNoEnum.NO.value().equals(requireNewsList.toString())) { + return new Result().ok(new ArrayList()); + } formDto.setDeptId(userDetail.getGridId()); return newsFeignClient.listNews(formDto); From cec3a73dd3a2862eae7943362cd31a577dfce349 Mon Sep 17 00:00:00 2001 From: yujintao Date: Wed, 5 Feb 2020 17:59:46 +0800 Subject: [PATCH 02/10] =?UTF-8?q?=E6=89=8B=E5=8A=A8=E8=AE=A4=E8=AF=81?= =?UTF-8?q?=E5=85=9A=E5=91=98=E6=8E=A5=E5=8F=A3=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../elink/esua/epdc/dto/PartyMembersDTO.java | 3 + .../epdc/enums/PartyMemberRegFlagEnum.java | 38 ++++++ .../controller/PartyMembersController.java | 13 -- .../esua/epdc/entity/PartyMembersEntity.java | 2 +- .../service/impl/PartyMembersServiceImpl.java | 6 +- .../epdc/service/impl/UserServiceImpl.java | 116 ++++++++++++++---- 6 files changed, 136 insertions(+), 42 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyMembersDTO.java b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyMembersDTO.java index d586ba5f8..6a1b156ee 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyMembersDTO.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/dto/PartyMembersDTO.java @@ -54,6 +54,9 @@ public class PartyMembersDTO implements Serializable { private String cadreFlag; + /** + * {@link com.elink.esua.epdc.enums.PartyMemberRegFlagEnum} + */ private String registFlag; private Date registTime; diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java new file mode 100644 index 000000000..5b86837d5 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java @@ -0,0 +1,38 @@ +package com.elink.esua.epdc.enums; + +import com.elink.esua.epdc.commons.tools.constant.NumConstant; + +/** + * 党员注册认证状态枚举类 + * + * @param null + * @author work@yujt.net.cn + * @return + * @date 2020/2/5 17:37 + */ +public enum PartyMemberRegFlagEnum { + + /** + * 未注册 + */ + NO(NumConstant.ZERO_STR), + /** + * 自动匹配认证(通过完善信息接口) + */ + AUTO(NumConstant.ONE_STR), + /** + * 手动认证(PC端待认证居民列表页面操作) + */ + MANUAL(NumConstant.TWO_STR); + + + private String value; + + public String getValue() { + return value; + } + + PartyMemberRegFlagEnum(String value) { + this.value = value; + } +} 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 0f255a18c..2c6e0f324 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 @@ -17,13 +17,7 @@ package com.elink.esua.epdc.controller; -import cn.afterturn.easypoi.excel.ExcelImportUtil; -import cn.afterturn.easypoi.excel.entity.ImportParams; -import cn.afterturn.easypoi.excel.entity.result.ExcelImportResult; -import com.alibaba.fastjson.JSON; -import com.elink.esua.epdc.async.PartyTask; import com.elink.esua.epdc.commons.mybatis.annotation.DataFilter; -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.security.user.SecurityUser; import com.elink.esua.epdc.commons.tools.utils.ExcelUtils; @@ -33,22 +27,15 @@ 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.config.StreamUtils; import com.elink.esua.epdc.dto.PartyMembersDTO; import com.elink.esua.epdc.excel.PartyMembersExcel; import com.elink.esua.epdc.service.PartyMembersService; import org.apache.commons.lang3.StringUtils; -import org.apache.commons.lang3.SystemUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; -import java.io.File; -import java.io.FileInputStream; -import java.io.IOException; -import java.util.ArrayList; import java.util.List; import java.util.Map; diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/PartyMembersEntity.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/PartyMembersEntity.java index e0490c6fc..0e165eef2 100755 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/PartyMembersEntity.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/entity/PartyMembersEntity.java @@ -66,7 +66,7 @@ public class PartyMembersEntity extends BaseEpdcEntity { */ private String cadreFlag; /** - * 注册状态(0-否,1-是) + * {@link com.elink.esua.epdc.enums.PartyMemberRegFlagEnum} */ private String registFlag; /** 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 906c7fb56..e710d8e60 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 @@ -23,11 +23,8 @@ import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.elink.esua.epdc.async.PartyTask; 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.FieldConstant; -import com.elink.esua.epdc.commons.tools.enums.YesOrNoEnum; import com.elink.esua.epdc.commons.tools.exception.RenException; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.ConvertUtils; @@ -39,6 +36,7 @@ import com.elink.esua.epdc.dto.PartyMembersDTO; import com.elink.esua.epdc.dto.PartyTagRelationDTO; import com.elink.esua.epdc.dto.epdc.result.EpdcPartyErroyResultDTO; import com.elink.esua.epdc.entity.PartyMembersEntity; +import com.elink.esua.epdc.enums.PartyMemberRegFlagEnum; import com.elink.esua.epdc.excel.PartyMembersExcel; import com.elink.esua.epdc.feign.AdminFeignClient; import com.elink.esua.epdc.redis.PartyMembersRedis; @@ -199,7 +197,7 @@ public class PartyMembersServiceImpl extends BaseServiceImpl implem @Override @Transactional(rollbackFor = Exception.class) public void audit(UserDTO dto) { + + String userId = dto.getId(); + UserEntity findUser = this.baseDao.selectById(userId); + // 手动认证为党员 + if (YesOrNoEnum.YES.value().equals(dto.getPartyFlag())) { + // 校验是否为党员 + checkUserInfoForPartyMember(findUser); + } + // createdTime作为提交注册时间,registerTime作为注册审核时间(即注册时间) + dto.setRegisterTime(new Date()); //先删除以前审核未通过的那条数据 UserEntity entity = ConvertUtils.sourceToTarget(dto, UserEntity.class); - // createdTime作为提交注册时间,registerTime作为注册审核时间(即注册时间) - entity.setRegisterTime(new Date()); updateById(entity); - /*JSONArray jsonArray = JSON.parseArray(dto.getTagIds()); - for (int i = 0; i < jsonArray.size(); i++) { - String tagId = jsonArray.getString(i); - UserTagRelationDTO userTagRelationDTO = new UserTagRelationDTO(); - userTagRelationDTO.setUserId(entity.getId()); - userTagRelationDTO.setTagId(tagId); - userTagRelationService.save(userTagRelationDTO); - }*/ - //组装数据并插入用户认证历史表(epdc_user_authenticate_history) - UserEntity userEntity = this.baseDao.selectById(entity.getId()); + // 组装数据并插入用户认证历史表 + saveUserAuthenticateHistory(findUser, dto.getPartyFlag(), dto.getRemark(), dto.getState()); + // 修改党员库信息 + if (YesOrNoEnum.YES.value().equals(dto.getPartyFlag())) { + updatePartyMember(findUser, dto.getRegisterTime()); + } + } + + /** + * 更新党员库信息 + * + * @param findUser 用户信息 + * @param registerTime 认证时间 + * @return void + * @author work@yujt.net.cn + * @date 2020/2/5 17:50 + */ + private void updatePartyMember(UserEntity findUser, Date registerTime) { + PartyMembersEntity partyMembersEntity = new PartyMembersEntity(); + partyMembersEntity.setRegistFlag(PartyMemberRegFlagEnum.MANUAL.getValue()); + partyMembersEntity.setDeptId(findUser.getDeptId()); + partyMembersEntity.setAllDeptIds(findUser.getAllDeptIds()); + partyMembersEntity.setAllDeptNames(findUser.getAllDeptNames()); + partyMembersEntity.setParentDeptIds(findUser.getParentDeptIds()); + partyMembersEntity.setParentDeptNames(findUser.getParentDeptNames()); + partyMembersEntity.setMobile(findUser.getMobile()); + partyMembersEntity.setRegistTime(registerTime); + + UpdateWrapper partyUpdate = new UpdateWrapper<>(); + partyUpdate.eq(UserFieldConsant.IDENTITY_NO, findUser.getIdentityNo()) + .eq(UserFieldConsant.REAL_NAME, findUser.getRealName()); + this.partyMembersDao.update(partyMembersEntity, partyUpdate); + } + + /** + * 组装数据并插入用户认证历史表(epdc_user_authenticate_history) + * + * @param userEntity 用户信息 + * @param partyFlag 是否党员 + * @param remark 审核备注 + * @param userState 审核状态 + * @return void + * @author work@yujt.net.cn + * @date 2020/2/5 17:49 + */ + private void saveUserAuthenticateHistory(UserEntity userEntity, String partyFlag, String remark, String userState) { + // 组装数据并插入用户认证历史表(epdc_user_authenticate_history) UserAuthenticateHistoryEntity userAuthenticateHistoryEntity = new UserAuthenticateHistoryEntity(); userAuthenticateHistoryEntity.setUserId(userEntity.getId()); userAuthenticateHistoryEntity.setMobile(userEntity.getMobile()); userAuthenticateHistoryEntity.setRealName(userEntity.getRealName()); userAuthenticateHistoryEntity.setAddress(userEntity.getAddress()); - userAuthenticateHistoryEntity.setAuthenticatedFlag(userEntity.getState());//状态(0-已注册,1-已完善信息待审核,2-信息审核不通过,3-信息审核通过) - if (NumConstant.THREE_STR.equals(entity.getState())) { - userAuthenticateHistoryEntity.setAuthenticatedFlag(YesOrNoEnum.YES.value()); - } else { - userAuthenticateHistoryEntity.setAuthenticatedFlag(YesOrNoEnum.NO.value()); - } - userAuthenticateHistoryEntity.setRemark(dto.getRemark()); - userAuthenticateHistoryEntity.setAuthenticatedType(AuthenticatedConsant.partyAuth); // 新维护的 认证类别(0-居民认证,1-党员认证,2-志愿者认证) + userAuthenticateHistoryEntity.setRemark(remark); + // 状态(0-已注册,1-已完善信息待审核,2-信息审核不通过,3-信息审核通过) + userAuthenticateHistoryEntity.setAuthenticatedFlag( + AppUserStatesEnum.STATE_INFORMATION_PASSED.value().equals(userState) ? + YesOrNoEnum.YES.value() : YesOrNoEnum.NO.value()); + // 新维护的 认证类别(0-居民认证,1-党员认证,2-志愿者认证) + userAuthenticateHistoryEntity.setAuthenticatedType(YesOrNoEnum.YES.equals(partyFlag) + ? AuthenticatedConsant.partyAuth : AuthenticatedConsant.userAuth); userAuthenticateHistoryDao.insert(userAuthenticateHistoryEntity); } + /** + * 校验用户是否有匹配的党员信息 + * + * @param userEntity 用户信息 + * @return void + * @author work@yujt.net.cn + * @date 2020/2/5 17:49 + */ + private void checkUserInfoForPartyMember(UserEntity userEntity) { + // 手动认证为党员 + if (StringUtils.isBlank(userEntity.getIdentityNo())) { + throw new RenException("该用户未完善身份证号码"); + } + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.eq(UserFieldConsant.IDENTITY_NO, userEntity.getIdentityNo()) + .eq(UserFieldConsant.REAL_NAME, userEntity.getRealName()); + Integer count = this.baseDao.selectCount(wrapper); + if (count == NumConstant.ZERO) { + throw new RenException("党员库中无此人信息"); + } + } + @Override public Result getUserForLoginByOpenId(String openId) { @@ -349,7 +417,7 @@ public class UserServiceImpl extends BaseServiceImpl implem userEntity.setFaceImg(null); userEntity.setId(userId); //用户已绑定手机号时不更新手机号 - if(StringUtils.isNotBlank(existUser.getMobile())){ + if (StringUtils.isNotBlank(existUser.getMobile())) { userEntity.setMobile(existUser.getMobile()); } this.updateById(userEntity); @@ -487,7 +555,7 @@ public class UserServiceImpl extends BaseServiceImpl implem if (selectCount > NumConstant.ZERO) { return new Result().error("手机号已被注册"); } - //党员都需要查重 + //党员都需要查重 if (YesOrNoEnum.YES.value().equals(userDto.getPartyFlag())) { userWrapper = new QueryWrapper<>(); userWrapper.eq(UserFieldConsant.IDENTITY_NO, userDto.getIdentityNo()) @@ -531,7 +599,7 @@ public class UserServiceImpl extends BaseServiceImpl implem partyMembersEntity.setParentDeptIds(parentAndAllDeptDTOResult.getData().getParentDeptIds()); partyMembersEntity.setGridId(userGridRelation.getGridId()); partyMembersEntity.setGridName(userGridRelation.getGrid()); - partyMembersEntity.setRegistFlag(YesOrNoEnum.YES.value()); + partyMembersEntity.setRegistFlag(PartyMemberRegFlagEnum.AUTO.getValue()); partyMembersEntity.setRegistTime(oldEntity.getRegisterTime()); QueryWrapper partyWrapper = new QueryWrapper<>(); partyWrapper.eq(UserFieldConsant.IDENTITY_NO, identityNo) @@ -578,7 +646,7 @@ public class UserServiceImpl extends BaseServiceImpl implem userAuthenticateHistoryEntity.setAuthenticatedType(AuthenticatedConsant.partyAuth); userAuthenticateHistoryDao.insert(userAuthenticateHistoryEntity); } else { - userDto.setState(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value()); + userDto.setState(AppUserStatesEnum.STATE_COMPLETED_INFORMATION_PENDING_REVIEW.value()); } // 昵称前缀 String nicknamePrefix = "网格长-"; From e920af8d2dde62665ce7cbf38f2bed069896a378 Mon Sep 17 00:00:00 2001 From: yujintao Date: Thu, 6 Feb 2020 10:23:10 +0800 Subject: [PATCH 03/10] =?UTF-8?q?=E6=89=8B=E5=8A=A8=E8=AE=A4=E8=AF=81?= =?UTF-8?q?=E5=85=9A=E5=91=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/elink/esua/epdc/service/impl/UserServiceImpl.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java index cad201e2a..e0a61a7ef 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/java/com/elink/esua/epdc/service/impl/UserServiceImpl.java @@ -203,6 +203,8 @@ public class UserServiceImpl extends BaseServiceImpl implem PartyMembersEntity partyMembersEntity = new PartyMembersEntity(); partyMembersEntity.setRegistFlag(PartyMemberRegFlagEnum.MANUAL.getValue()); partyMembersEntity.setDeptId(findUser.getDeptId()); + // 已认证党员列表,数据权限匹配的字段是grid_id。至于dept_id,暂时没用 @202002061021 + partyMembersEntity.setGridId(findUser.getDeptId()); partyMembersEntity.setAllDeptIds(findUser.getAllDeptIds()); partyMembersEntity.setAllDeptNames(findUser.getAllDeptNames()); partyMembersEntity.setParentDeptIds(findUser.getParentDeptIds()); @@ -258,10 +260,10 @@ public class UserServiceImpl extends BaseServiceImpl implem if (StringUtils.isBlank(userEntity.getIdentityNo())) { throw new RenException("该用户未完善身份证号码"); } - QueryWrapper wrapper = new QueryWrapper<>(); + QueryWrapper wrapper = new QueryWrapper<>(); wrapper.eq(UserFieldConsant.IDENTITY_NO, userEntity.getIdentityNo()) .eq(UserFieldConsant.REAL_NAME, userEntity.getRealName()); - Integer count = this.baseDao.selectCount(wrapper); + Integer count = this.partyMembersDao.selectCount(wrapper); if (count == NumConstant.ZERO) { throw new RenException("党员库中无此人信息"); } From f3982ef73b379d759fc99ff66e77cdaae21918af Mon Sep 17 00:00:00 2001 From: yujintao Date: Thu, 6 Feb 2020 10:42:59 +0800 Subject: [PATCH 04/10] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java index 5b86837d5..bb8603d08 100644 --- a/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java +++ b/esua-epdc/epdc-module/epdc-user/epdc-user-client/src/main/java/com/elink/esua/epdc/enums/PartyMemberRegFlagEnum.java @@ -5,9 +5,7 @@ import com.elink.esua.epdc.commons.tools.constant.NumConstant; /** * 党员注册认证状态枚举类 * - * @param null * @author work@yujt.net.cn - * @return * @date 2020/2/5 17:37 */ public enum PartyMemberRegFlagEnum { From 6edd1416b2aa8cafc6764528dab78b0b676ae679 Mon Sep 17 00:00:00 2001 From: liuchuang Date: Sun, 9 Feb 2020 15:52:06 +0800 Subject: [PATCH 05/10] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=88=86=E6=9E=90?= =?UTF-8?q?=E6=A8=A1=E5=9D=97=20init?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- esua-epdc/epdc-gateway/pom.xml | 6 + .../src/main/resources/application.yml | 8 + .../epdc-module/epdc-analysis/db/mysql.sql | 0 .../epdc-module/epdc-analysis/db/oracle.sql | 0 .../epdc-analysis/db/postgresql.sql | 0 .../epdc-analysis/db/sqlserver.sql | 0 .../epdc-analysis-client/pom.xml | 27 +++ .../epdc-analysis-server/pom.xml | 205 ++++++++++++++++++ .../elink/esua/epdc/AnalysisApplication.java | 31 +++ .../esua/epdc/config/ModuleConfigImpl.java | 26 +++ .../epdc/datasources/DataSourceNames.java | 22 ++ .../epdc/datasources/DynamicDataSource.java | 41 ++++ .../datasources/DynamicDataSourceConfig.java | 106 +++++++++ .../datasources/annotation/DataSource.java | 17 ++ .../datasources/aspect/DataSourceAspect.java | 61 ++++++ .../elink/esua/epdc/utils/ModuleConstant.java | 21 ++ .../src/main/resources/application-dev.yml | 74 +++++++ .../src/main/resources/application-prod.yml | 74 +++++++ .../src/main/resources/application-test.yml | 74 +++++++ .../src/main/resources/application.yml | 62 ++++++ .../main/resources/i18n/messages.properties | 1 + .../resources/i18n/messages_en_US.properties | 1 + .../resources/i18n/messages_zh_CN.properties | 1 + .../resources/i18n/messages_zh_TW.properties | 1 + .../main/resources/i18n/validation.properties | 1 + .../i18n/validation_en_US.properties | 1 + .../i18n/validation_zh_CN.properties | 1 + .../i18n/validation_zh_TW.properties | 1 + .../src/main/resources/logback-spring.xml | 159 ++++++++++++++ .../src/main/resources/registry.conf | 21 ++ esua-epdc/epdc-module/epdc-analysis/pom.xml | 21 ++ esua-epdc/epdc-module/pom.xml | 1 + 32 files changed, 1065 insertions(+) create mode 100644 esua-epdc/epdc-module/epdc-analysis/db/mysql.sql create mode 100644 esua-epdc/epdc-module/epdc-analysis/db/oracle.sql create mode 100644 esua-epdc/epdc-module/epdc-analysis/db/postgresql.sql create mode 100644 esua-epdc/epdc-module/epdc-analysis/db/sqlserver.sql create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/pom.xml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/pom.xml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/AnalysisApplication.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/config/ModuleConfigImpl.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DataSourceNames.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSource.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSourceConfig.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/annotation/DataSource.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/aspect/DataSourceAspect.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/utils/ModuleConstant.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-dev.yml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-prod.yml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-test.yml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application.yml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_en_US.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_CN.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_TW.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_en_US.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_CN.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_TW.properties create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/logback-spring.xml create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/registry.conf create mode 100644 esua-epdc/epdc-module/epdc-analysis/pom.xml diff --git a/esua-epdc/epdc-gateway/pom.xml b/esua-epdc/epdc-gateway/pom.xml index 4ccdd4f1b..51557b40c 100644 --- a/esua-epdc/epdc-gateway/pom.xml +++ b/esua-epdc/epdc-gateway/pom.xml @@ -130,6 +130,8 @@ lb://epdc-kpi-server lb://epdc-custom-server + + lb://epdc-analysis-server false 47.104.224.45:8848 @@ -170,6 +172,7 @@ lb://epdc-websocket-server lb://epdc-kpi-server lb://epdc-custom-server + lb://epdc-analysis-server true @@ -206,6 +209,7 @@ lb://epdc-websocket-server lb://epdc-kpi-server lb://epdc-custom-server + lb://epdc-analysis-server 0 @@ -245,6 +249,7 @@ lb://epdc-websocket-server lb://epdc-kpi-server lb://epdc-custom-server + lb://epdc-analysis-server 0 @@ -285,6 +290,7 @@ lb://epdc-websocket-server lb://epdc-kpi-server lb://epdc-custom-server + lb://epdc-analysis-server 0 diff --git a/esua-epdc/epdc-gateway/src/main/resources/application.yml b/esua-epdc/epdc-gateway/src/main/resources/application.yml index 6a4882b38..b70ad538a 100644 --- a/esua-epdc/epdc-gateway/src/main/resources/application.yml +++ b/esua-epdc/epdc-gateway/src/main/resources/application.yml @@ -162,6 +162,14 @@ spring: - Path=${server.servlet.context-path}/custom/** filters: - StripPrefix=1 + #数据分析模块 + - id: epdc-analysis-server + uri: @gateway.routes.epdc-analysis-server.uri@ + order: 18 + predicates: + - Path=${server.servlet.context-path}/analysis/** + filters: + - StripPrefix=1 nacos: discovery: server-addr: @nacos.server-addr@ diff --git a/esua-epdc/epdc-module/epdc-analysis/db/mysql.sql b/esua-epdc/epdc-module/epdc-analysis/db/mysql.sql new file mode 100644 index 000000000..e69de29bb diff --git a/esua-epdc/epdc-module/epdc-analysis/db/oracle.sql b/esua-epdc/epdc-module/epdc-analysis/db/oracle.sql new file mode 100644 index 000000000..e69de29bb diff --git a/esua-epdc/epdc-module/epdc-analysis/db/postgresql.sql b/esua-epdc/epdc-module/epdc-analysis/db/postgresql.sql new file mode 100644 index 000000000..e69de29bb diff --git a/esua-epdc/epdc-module/epdc-analysis/db/sqlserver.sql b/esua-epdc/epdc-module/epdc-analysis/db/sqlserver.sql new file mode 100644 index 000000000..e69de29bb diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/pom.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/pom.xml new file mode 100644 index 000000000..5da53a2cb --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/pom.xml @@ -0,0 +1,27 @@ + + + 4.0.0 + + + com.esua.epdc + epdc-analysis + 1.0.0 + + + epdc-analysis-client + jar + + + + com.esua.epdc + epdc-commons-tools + 1.0.0 + + + + + ${project.artifactId} + + + diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/pom.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/pom.xml new file mode 100644 index 000000000..3489720a8 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/pom.xml @@ -0,0 +1,205 @@ + + + 4.0.0 + + com.esua.epdc + epdc-analysis + 1.0.0 + + + epdc-analysis-server + jar + + + + com.esua.epdc + epdc-analysis-client + 1.0.0 + + + com.esua.epdc + epdc-commons-tools + 1.0.0 + + + com.esua.epdc + epdc-commons-mybatis + 1.0.0 + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework + spring-context-support + + + de.codecentric + spring-boot-admin-starter-client + ${spring.boot.admin.version} + + + + + com.alibaba.cloud + spring-cloud-starter-alibaba-nacos-discovery + + + + + com.esua.epdc + epdc-commons-api-version-control + ${project.version} + + + + + ${project.artifactId} + + + org.springframework.boot + spring-boot-maven-plugin + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + org.apache.maven.plugins + maven-deploy-plugin + + true + + + + com.spotify + dockerfile-maven-plugin + + + + ${project.basedir}/src/main/java + + + + true + ${basedir}/src/main/resources + + **/application*.yml + **/*.properties + logback-spring.xml + registry.conf + + + + ${basedir}/src/main/resources + + **/application*.yml + **/*.properties + logback-spring.xml + registry.conf + + + + + + + + dev + + true + + + dev + + 9077 + + 2 + 47.104.224.45 + 6379 + elink@888 + + false + 47.104.224.45:8848 + + + + + test + + test + + 9077 + + 2 + 47.104.224.45 + 6379 + elink@888 + + true + 47.104.224.45:8848 + + + + + prod + + prod + + 9077 + + + 0 + 10.5.34.164 + 6379 + Elink@833066 + + true + 10.5.34.164:8848 + + + + + prod_kongcun + + prod + + 9077 + + + 0 + 172.16.1.238 + 6379 + Elink833066 + + + true + 172.16.1.238:8848 + + + + + prod_shibei_aliyun + + prod + + 9077 + + + 0 + 172.16.0.54 + 6379 + Elink833066 + + + true + 172.16.0.52:8848 + + + + + diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/AnalysisApplication.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/AnalysisApplication.java new file mode 100644 index 000000000..ac038bbd7 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/AnalysisApplication.java @@ -0,0 +1,31 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + * + * https://www.renren.io + * + * 版权所有,侵权必究! + */ + +package com.elink.esua.epdc; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.client.discovery.EnableDiscoveryClient; +import org.springframework.cloud.openfeign.EnableFeignClients; + +/** + * 模块 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +@SpringBootApplication +@EnableDiscoveryClient +@EnableFeignClients +public class AnalysisApplication { + + public static void main(String[] args) { + SpringApplication.run(AnalysisApplication.class, args); + } + +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/config/ModuleConfigImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/config/ModuleConfigImpl.java new file mode 100644 index 000000000..edebd6d88 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/config/ModuleConfigImpl.java @@ -0,0 +1,26 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + *

+ * https://www.renren.io + *

+ * 版权所有,侵权必究! + */ + +package com.elink.esua.epdc.config; + +import com.elink.esua.epdc.commons.tools.config.ModuleConfig; +import org.springframework.stereotype.Service; + +/** + * 模块配置信息 + * + * @author Mark sunlightcs@gmail.com + * @since 1.0.0 + */ +@Service +public class ModuleConfigImpl implements ModuleConfig { + @Override + public String getName() { + return "analysis"; + } +} 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 new file mode 100644 index 000000000..e75611937 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DataSourceNames.java @@ -0,0 +1,22 @@ +package com.elink.esua.epdc.datasources; + +/** + * + * 增加多数据源,在此配置 + * + * @Author:liuchuang + * @Date:2020/2/9 14:50 + */ +public interface DataSourceNames { + String FIRST = "first"; + String SECOND = "second"; + String THIRD = "third"; + String FOURTH = "fourth"; + String FIFTH = "fifth"; + String SIXTH = "sixth"; + String SEVENTH = "seventh"; + String EIGHTH = "eighth"; + String NINTH = "ninth"; + String TENTH = "tenth"; + String ELEVENTH = "eleventh"; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSource.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSource.java new file mode 100644 index 000000000..6465e38aa --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSource.java @@ -0,0 +1,41 @@ +package com.elink.esua.epdc.datasources; + +import org.springframework.jdbc.datasource.lookup.AbstractRoutingDataSource; + +import javax.sql.DataSource; +import java.util.Map; + +/** + * + * 动态数据源 + * + * @Author:liuchuang + * @Date:2020/2/9 14:59 + */ +public class DynamicDataSource extends AbstractRoutingDataSource { + + private static final ThreadLocal contextHolder = new ThreadLocal<>(); + + public DynamicDataSource(DataSource defaultTargetDataSource, Map targetDataSources) { + super.setDefaultTargetDataSource(defaultTargetDataSource); + super.setTargetDataSources(targetDataSources); + super.afterPropertiesSet(); + } + + @Override + protected Object determineCurrentLookupKey() { + return getDataSource(); + } + + public static void setDataSource(String dataSource) { + contextHolder.set(dataSource); + } + + public static String getDataSource() { + return contextHolder.get(); + } + + public static void clearDataSource() { + contextHolder.remove(); + } +} 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 new file mode 100644 index 000000000..0840f2e1f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/DynamicDataSourceConfig.java @@ -0,0 +1,106 @@ +package com.elink.esua.epdc.datasources; + +import com.alibaba.druid.spring.boot.autoconfigure.DruidDataSourceBuilder; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.context.annotation.Primary; + +import javax.sql.DataSource; +import java.util.HashMap; +import java.util.Map; + +/** + * + * 配置多数据源 + * + * @Author:liuchuang + * @Date:2020/2/9 15:04 + */ +@Configuration +public class DynamicDataSourceConfig { + + @Bean + @ConfigurationProperties("spring.datasource.druid.first") + public DataSource firstDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.second") + public DataSource secondDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.third") + public DataSource thirdDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.fourth") + public DataSource fourthDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.fifth") + public DataSource fifthDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.sixth") + public DataSource sixthDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.seventh") + public DataSource seventhDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.eighth") + public DataSource eighthDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.ninth") + public DataSource ninthDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.tenth") + public DataSource tenthDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @ConfigurationProperties("spring.datasource.druid.eleventh") + public DataSource eleventhDataSource() { + return DruidDataSourceBuilder.create().build(); + } + + @Bean + @Primary + public DynamicDataSource dataSource(DataSource firstDataSource, DataSource secondDataSource) { + Map targetDataSources = new HashMap<>(); + targetDataSources.put(DataSourceNames.FIRST, firstDataSource); + targetDataSources.put(DataSourceNames.SECOND, secondDataSource); + targetDataSources.put(DataSourceNames.THIRD, secondDataSource); + targetDataSources.put(DataSourceNames.FOURTH, secondDataSource); + targetDataSources.put(DataSourceNames.FIFTH, secondDataSource); + targetDataSources.put(DataSourceNames.SIXTH, secondDataSource); + targetDataSources.put(DataSourceNames.SEVENTH, secondDataSource); + targetDataSources.put(DataSourceNames.EIGHTH, secondDataSource); + targetDataSources.put(DataSourceNames.NINTH, secondDataSource); + targetDataSources.put(DataSourceNames.TENTH, secondDataSource); + targetDataSources.put(DataSourceNames.ELEVENTH, secondDataSource); + return new DynamicDataSource(firstDataSource, targetDataSources); + } +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/annotation/DataSource.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/annotation/DataSource.java new file mode 100644 index 000000000..abb8e5398 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/annotation/DataSource.java @@ -0,0 +1,17 @@ +package com.elink.esua.epdc.datasources.annotation; + +import java.lang.annotation.*; + +/** + * + * 多数据源注解 + * + * @Author:liuchuang + * @Date:2020/2/9 14:50 + */ +@Target(ElementType.METHOD) +@Retention(RetentionPolicy.RUNTIME) +@Documented +public @interface DataSource { + String name() default ""; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/aspect/DataSourceAspect.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/aspect/DataSourceAspect.java new file mode 100644 index 000000000..361340162 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/datasources/aspect/DataSourceAspect.java @@ -0,0 +1,61 @@ +package com.elink.esua.epdc.datasources.aspect; + +import com.elink.esua.epdc.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.DynamicDataSource; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import org.aspectj.lang.ProceedingJoinPoint; +import org.aspectj.lang.annotation.Around; +import org.aspectj.lang.annotation.Aspect; +import org.aspectj.lang.annotation.Pointcut; +import org.aspectj.lang.reflect.MethodSignature; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.core.Ordered; +import org.springframework.stereotype.Component; + +import java.lang.reflect.Method; + +/** + * + * 多数据源,切面处理类 + * + * @Author:liuchuang + * @Date:2020/2/9 15:12 + */ +@Aspect +@Component +public class DataSourceAspect implements Ordered { + protected Logger logger = LoggerFactory.getLogger(getClass()); + + @Pointcut("@annotation(com.elink.esua.epdc.datasources.annotation.DataSource)") + public void dataSourcePointCut() { + + } + + @Around("dataSourcePointCut()") + public Object around(ProceedingJoinPoint point) throws Throwable { + MethodSignature signature = (MethodSignature) point.getSignature(); + Method method = signature.getMethod(); + + DataSource ds = method.getAnnotation(DataSource.class); + if(ds == null){ + DynamicDataSource.setDataSource(DataSourceNames.FIRST); + logger.debug("set datasource is " + DataSourceNames.FIRST); + }else { + DynamicDataSource.setDataSource(ds.name()); + logger.debug("set datasource is " + ds.name()); + } + + try { + return point.proceed(); + } finally { + DynamicDataSource.clearDataSource(); + logger.debug("clean datasource"); + } + } + + @Override + public int getOrder() { + return 1; + } +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/utils/ModuleConstant.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/utils/ModuleConstant.java new file mode 100644 index 000000000..03d407f87 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/utils/ModuleConstant.java @@ -0,0 +1,21 @@ +/** + * Copyright (c) 2018 人人开源 All rights reserved. + * + * https://www.renren.io + * + * 版权所有,侵权必究! + */ + +package com.elink.esua.epdc.utils; + +import com.elink.esua.epdc.commons.tools.constant.Constant; + +/** + * 模块常量 + * + * @author Mark sunlightcs@gmail.com + * @since 1.1.0 + */ +public interface ModuleConstant extends Constant { + +} 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 new file mode 100644 index 000000000..64f8ea7ed --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-dev.yml @@ -0,0 +1,74 @@ +spring: + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.jdbc.Driver + druid: + first: #数据源1 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_admin?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + second: #数据源2 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_api?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + third: #数据源3 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_custom?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + fourth: #数据源4 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_events?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + fifth: #数据源5 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_group?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + sixth: #数据源6 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_job?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + seventh: #数据源7 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_kpi?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + eighth: #数据源8 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_mutuality?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + ninth: #数据源9 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_news?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + tenth: #数据源10 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_points?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + eleventh: #数据源11 + 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 + initial-size: 10 + max-active: 100 + min-idle: 10 + max-wait: 60000 + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 300000 + test-while-idle: true + test-on-borrow: false + test-on-return: false + stat-view-servlet: + enabled: true + url-pattern: /druid/* + filter: + stat: + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: false + wall: + config: + multi-statement-allow: true + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss \ No newline at end of file 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 new file mode 100644 index 000000000..152c03eb3 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-prod.yml @@ -0,0 +1,74 @@ +spring: + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.jdbc.Driver + druid: + first: #数据源1 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_admin?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + second: #数据源2 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_api?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + third: #数据源3 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_custom?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + fourth: #数据源4 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_events?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + fifth: #数据源5 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_group?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + sixth: #数据源6 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_job?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + seventh: #数据源7 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_kpi?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + eighth: #数据源8 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_mutuality?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + ninth: #数据源9 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_news?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + tenth: #数据源10 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_points?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: Elink@833066 + eleventh: #数据源11 + url: jdbc:mysql://172.16.0.52:3308/esua_epdc_user?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 + max-wait: 60000 + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 300000 + test-while-idle: true + test-on-borrow: false + test-on-return: false + stat-view-servlet: + enabled: true + url-pattern: /druid/* + filter: + stat: + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: false + wall: + config: + multi-statement-allow: true + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss \ No newline at end of file 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 new file mode 100644 index 000000000..64f8ea7ed --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application-test.yml @@ -0,0 +1,74 @@ +spring: + datasource: + type: com.alibaba.druid.pool.DruidDataSource + driverClassName: com.mysql.jdbc.Driver + druid: + first: #数据源1 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_admin?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + second: #数据源2 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_api?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + third: #数据源3 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_custom?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + fourth: #数据源4 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_events?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + fifth: #数据源5 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_group?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + sixth: #数据源6 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_job?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + seventh: #数据源7 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_kpi?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + eighth: #数据源8 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_mutuality?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + ninth: #数据源9 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_news?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + tenth: #数据源10 + url: jdbc:mysql://47.104.224.45:3308/esua_epdc_points?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai + username: epdc + password: elink833066 + eleventh: #数据源11 + 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 + initial-size: 10 + max-active: 100 + min-idle: 10 + max-wait: 60000 + pool-prepared-statements: true + max-pool-prepared-statement-per-connection-size: 20 + time-between-eviction-runs-millis: 60000 + min-evictable-idle-time-millis: 300000 + test-while-idle: true + test-on-borrow: false + test-on-return: false + stat-view-servlet: + enabled: true + url-pattern: /druid/* + filter: + stat: + log-slow-sql: true + slow-sql-millis: 1000 + merge-sql: false + wall: + config: + multi-statement-allow: true + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application.yml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application.yml new file mode 100644 index 000000000..f35d9ad4f --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/application.yml @@ -0,0 +1,62 @@ +server: + port: @server.port@ + servlet: + context-path: /analysis + +spring: + main: + allow-bean-definition-overriding: true + application: + name: epdc-analysis-server + # 环境 dev|test|prod + profiles: + active: @spring.profiles.active@ + messages: + encoding: UTF-8 + basename: i18n/messages,i18n/messages_common + jackson: + time-zone: GMT+8 + date-format: yyyy-MM-dd HH:mm:ss + redis: + database: @spring.redis.index@ + host: @spring.redis.host@ + timeout: 30s + port: @spring.redis.port@ + password: @spring.redis.password@ + cloud: + nacos: + discovery: + server-addr: @nacos.server-addr@ + register-enabled: @nacos.register-enabled@ + alibaba: + seata: + tx-service-group: epdc-analysis-server-fescar-service-group + +management: + endpoints: + web: + exposure: + include: "*" + endpoint: + health: + show-details: ALWAYS + +mybatis-plus: + mapper-locations: classpath:/mapper/**/*.xml + #实体扫描,多个package用逗号或者分号分隔 + typeAliasesPackage: com.elink.esua.epdc.modules.*.entity + global-config: + #数据库相关配置 + db-config: + #主键类型 AUTO:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID"; + id-type: UUID + #字段策略 IGNORED:"忽略判断",NOT_NULL:"非 NULL 判断"),NOT_EMPTY:"非空判断" + field-strategy: NOT_NULL + #驼峰下划线转换 + column-underline: true + banner: false + #原生配置 + configuration: + map-underscore-to-camel-case: true + cache-enabled: false + call-setters-on-nulls: true diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages.properties new file mode 100644 index 000000000..a7091dbb4 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages.properties @@ -0,0 +1 @@ +#Default diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_en_US.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_en_US.properties new file mode 100644 index 000000000..9e895e428 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_en_US.properties @@ -0,0 +1 @@ +#English diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_CN.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_CN.properties new file mode 100644 index 000000000..b21fd22ec --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_CN.properties @@ -0,0 +1 @@ +#\u7B80\u4F53\u4E2D\u6587 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_TW.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_TW.properties new file mode 100644 index 000000000..4433dba45 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/messages_zh_TW.properties @@ -0,0 +1 @@ +#\u7E41\u4F53\u4E2D\u6587 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation.properties new file mode 100644 index 000000000..56ca909c4 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation.properties @@ -0,0 +1 @@ +#Default \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_en_US.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_en_US.properties new file mode 100644 index 000000000..9e895e428 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_en_US.properties @@ -0,0 +1 @@ +#English diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_CN.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_CN.properties new file mode 100644 index 000000000..b21fd22ec --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_CN.properties @@ -0,0 +1 @@ +#\u7B80\u4F53\u4E2D\u6587 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_TW.properties b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_TW.properties new file mode 100644 index 000000000..4433dba45 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/i18n/validation_zh_TW.properties @@ -0,0 +1 @@ +#\u7E41\u4F53\u4E2D\u6587 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/logback-spring.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/logback-spring.xml new file mode 100644 index 000000000..379473afc --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/logback-spring.xml @@ -0,0 +1,159 @@ + + + + + + + + + + + + + + debug + + + ${CONSOLE_LOG_PATTERN} + + UTF-8 + + + + + + + + ${log.path}/debug.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + ${log.path}/debug-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + debug + ACCEPT + DENY + + + + + + + ${log.path}/info.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + + ${log.path}/info-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + info + ACCEPT + DENY + + + + + + + ${log.path}/warn.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/warn-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + warn + ACCEPT + DENY + + + + + + + ${log.path}/error.log + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + UTF-8 + + + + ${log.path}/error-%d{yyyy-MM-dd}.%i.log + + 100MB + + + 15 + + + + ERROR + ACCEPT + DENY + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/registry.conf b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/registry.conf new file mode 100644 index 000000000..fb64abd71 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/registry.conf @@ -0,0 +1,21 @@ +registry { + # file 、nacos 、eureka、redis、zk、consul、etcd3、sofa + type = "nacos" + + nacos { + serverAddr = "@nacos.server-addr@" + namespace = "public" + cluster = "default" + } +} + +config { + # file、nacos 、apollo、zk、consul、etcd3 + type = "nacos" + + nacos { + serverAddr = "@nacos.server-addr@" + namespace = "public" + cluster = "default" + } +} diff --git a/esua-epdc/epdc-module/epdc-analysis/pom.xml b/esua-epdc/epdc-module/epdc-analysis/pom.xml new file mode 100644 index 000000000..f7ae2def4 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/pom.xml @@ -0,0 +1,21 @@ + + + 4.0.0 + + + com.esua.epdc + epdc-module + 1.0.0 + + + com.esua.epdc + epdc-analysis + pom + + + epdc-analysis-client + epdc-analysis-server + + + diff --git a/esua-epdc/epdc-module/pom.xml b/esua-epdc/epdc-module/pom.xml index ec076c9e2..15df87d47 100644 --- a/esua-epdc/epdc-module/pom.xml +++ b/esua-epdc/epdc-module/pom.xml @@ -31,6 +31,7 @@ epdc-kpi epdc-webservice epdc-custom + epdc-analysis From 73eb30fd1f274d3a562ced2ab9f6a8eff0337820 Mon Sep 17 00:00:00 2001 From: yinzuomei Date: Mon, 10 Feb 2020 13:07:41 +0800 Subject: [PATCH 06/10] =?UTF-8?q?=E6=9C=80=E7=83=AD=E8=AF=9D=E9=A2=98?= =?UTF-8?q?=E3=80=81=E6=9C=80=E6=96=B0=E8=AF=9D=E9=A2=98=E5=90=8E=E5=8F=B0?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../esua/epdc/dto/result/TopicResultDTO.java | 86 ++++++++++++++++++ .../topic/controller/TopicController.java | 71 +++++++++++++++ .../esua/epdc/modules/topic/dao/TopicDao.java | 53 +++++++++++ .../modules/topic/service/TopicService.java | 49 ++++++++++ .../topic/service/impl/TopicServiceImpl.java | 59 ++++++++++++ .../main/resources/mapper/topic/TopicDao.xml | 90 +++++++++++++++++++ 6 files changed, 408 insertions(+) create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java new file mode 100644 index 000000000..403e69207 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java @@ -0,0 +1,86 @@ +package com.elink.esua.epdc.dto.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description 最热话题列表DTO + * @Author yinzuomei + * @Date 2020/2/10 11:31 + */ +@Data +public class TopicResultDTO implements Serializable { + private static final long serialVersionUID = -1938141144074477454L; + + /** + * 主键 + */ + private String id; + + /** + * 话题摘要 + */ + private String topicContent; + + /** + * 父所有部门ID + */ + private String parentDeptIds; + + /** + * 父所有部门 + */ + private String parentDeptNames; + + /** + * 所有部门ID + */ + private String allDeptIds; + + /** + * 所有部门 + */ + private String allDeptNames; + + /** + * 网格 + */ + private String grid; + + /** + * 网格ID + */ + private Long gridId; + + /** + * 网格来源群名称 + */ + private String groupName; + + /** + * 话题发布人姓名 + */ + private String nickname; + + /** + * 发布时间 + */ + private Date releaseTime; + + /** + * 评论数(评论+回复) + */ + private Integer commentNum; + + /** + * 浏览数 + */ + private Integer browseNum; + + /** + * 表达态度(评论+回复+浏览) + */ + private Integer expressAttitudeNum; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java new file mode 100644 index 000000000..bd460ce39 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java @@ -0,0 +1,71 @@ +/** + * 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.topic.controller; + +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.result.TopicResultDTO; +import com.elink.esua.epdc.modules.topic.service.TopicService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + + +/** + * 话题相关接口 + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-10-10 + */ +@RestController +@RequestMapping("topic") +public class TopicController { + + @Autowired + private TopicService topicService; + + /** + * @param params + * @return com.elink.esua.epdc.dto.result.TopicResultDTO + * @Author yinzuomei + * @Description 最热话题列表查询 + * @Date 2020/2/10 11:34 + **/ + @GetMapping("pageHottestTopic") + public Result> pageHottestTopic(@RequestParam Map params) { + PageData page = topicService.listHottestTopic(params); + return new Result>().ok(page); + } + + /** + * @param params + * @return com.elink.esua.epdc.dto.result.TopicResultDTO + * @Author yinzuomei + * @Description 最新话题列表查询 + * @Date 2020/2/10 12:50 + **/ + @GetMapping("pageLatestTopic") + public Result> pageLatestTopic(@RequestParam Map params) { + PageData page = topicService.listLatestTopic(params); + return new Result>().ok(page); + } +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java new file mode 100644 index 000000000..82e91535b --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java @@ -0,0 +1,53 @@ +/** + * 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.topic.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.elink.esua.epdc.dto.result.TopicResultDTO; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * 话题表 话题表 + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-10-10 + */ +@Mapper +public interface TopicDao extends BaseMapper { + + /** + * @param params + * @return java.util.List + * @Author yinzuomei + * @Description 最热话题列表查询 + * @Date 2020/2/10 11:52 + **/ + List selectListHottestTopicDTO(Map params); + + /** + * @param params + * @return java.util.List + * @Author yinzuomei + * @Description 最新话题列表查询 + * @Date 2020/2/10 12:51 + **/ + List selectListLatesttTopicDTO(Map params); +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java new file mode 100644 index 000000000..1743f20e3 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java @@ -0,0 +1,49 @@ +/** + * 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.topic.service; + +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.dto.result.TopicResultDTO; + +import java.util.Map; + +/** + * 话题相关Service + * + * @author qu qu@elink-cn.com + * @since v1.0.0 2019-10-10 + */ +public interface TopicService { + /** + * @param params + * @return com.elink.esua.epdc.dto.result.TopicResultDTO + * @Author yinzuomei + * @Description 最热话题列表查询 + * @Date 2020/2/10 11:34 + **/ + PageData listHottestTopic(Map params); + + /** + * @param params + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Author yinzuomei + * @Description 最新话题列表查询 + * @Date 2020/2/10 12:50 + **/ + PageData listLatestTopic(Map params); +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java new file mode 100644 index 000000000..552826f03 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java @@ -0,0 +1,59 @@ +package com.elink.esua.epdc.modules.topic.service.impl; + +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.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.result.TopicResultDTO; +import com.elink.esua.epdc.modules.topic.dao.TopicDao; +import com.elink.esua.epdc.modules.topic.service.TopicService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * @Description 话题相关Service + * @Author yinzuomei + * @Date 2020/2/10 10:56 + */ +@Service +public class TopicServiceImpl extends BaseServiceImpl implements TopicService { + @Autowired + private TopicDao topicDao; + + /** + * @param params + * @return com.elink.esua.epdc.dto.result.HottestTopicResultDTO + * @Author yinzuomei + * @Description 最热话题列表查询 + * @Date 2020/2/10 12:53 + **/ + @DataSource(name = DataSourceNames.FIFTH) + @Override + public PageData listHottestTopic(Map params) { + + IPage page = getPage(params); + List list = topicDao.selectListHottestTopicDTO(params); + return new PageData<>(list, page.getTotal()); + } + + /** + * @param params + * @return com.elink.esua.epdc.dto.result.LatestTopicResultDTO + * @Author yinzuomei + * @Description 最新话题列表查询 + * @Date 2020/2/10 12:53 + **/ + @DataSource(name = DataSourceNames.FIFTH) + @Override + public PageData listLatestTopic(Map params) { + IPage page = getPage(params); + List list = topicDao.selectListLatesttTopicDTO(params); + return new PageData<>(list, page.getTotal()); + } + + +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml new file mode 100644 index 000000000..4bcecb528 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml @@ -0,0 +1,90 @@ + + + + + + + + + + From 26d5d5485edffd59dab71c77810650871b2403a7 Mon Sep 17 00:00:00 2001 From: yinzuomei Date: Mon, 10 Feb 2020 13:11:12 +0800 Subject: [PATCH 07/10] =?UTF-8?q?DynamicDataSourceConfig=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../datasources/DynamicDataSourceConfig.java | 25 +++++++++++-------- 1 file changed, 15 insertions(+), 10 deletions(-) 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 0840f2e1f..9f078d3a1 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 @@ -88,19 +88,24 @@ public class DynamicDataSourceConfig { @Bean @Primary - public DynamicDataSource dataSource(DataSource firstDataSource, DataSource secondDataSource) { + public DynamicDataSource dataSource(DataSource firstDataSource, DataSource secondDataSource, + DataSource thirdDataSource, DataSource fourthDataSource, + DataSource fifthDataSource, DataSource sixthDataSource, + DataSource seventhDataSource, DataSource eighthDataSource, + DataSource ninthDataSource, DataSource tenthDataSource, + DataSource eleventhDataSource) { Map targetDataSources = new HashMap<>(); targetDataSources.put(DataSourceNames.FIRST, firstDataSource); targetDataSources.put(DataSourceNames.SECOND, secondDataSource); - targetDataSources.put(DataSourceNames.THIRD, secondDataSource); - targetDataSources.put(DataSourceNames.FOURTH, secondDataSource); - targetDataSources.put(DataSourceNames.FIFTH, secondDataSource); - targetDataSources.put(DataSourceNames.SIXTH, secondDataSource); - targetDataSources.put(DataSourceNames.SEVENTH, secondDataSource); - targetDataSources.put(DataSourceNames.EIGHTH, secondDataSource); - targetDataSources.put(DataSourceNames.NINTH, secondDataSource); - targetDataSources.put(DataSourceNames.TENTH, secondDataSource); - targetDataSources.put(DataSourceNames.ELEVENTH, secondDataSource); + targetDataSources.put(DataSourceNames.THIRD, thirdDataSource); + targetDataSources.put(DataSourceNames.FOURTH, fourthDataSource); + targetDataSources.put(DataSourceNames.FIFTH, fifthDataSource); + targetDataSources.put(DataSourceNames.SIXTH, sixthDataSource); + targetDataSources.put(DataSourceNames.SEVENTH, seventhDataSource); + targetDataSources.put(DataSourceNames.EIGHTH, eighthDataSource); + targetDataSources.put(DataSourceNames.NINTH, ninthDataSource); + targetDataSources.put(DataSourceNames.TENTH, tenthDataSource); + targetDataSources.put(DataSourceNames.ELEVENTH, eleventhDataSource); return new DynamicDataSource(firstDataSource, targetDataSources); } } From e26eedfe9e08925fc5a44bc53b853a9e078902b3 Mon Sep 17 00:00:00 2001 From: yinzuomei Date: Mon, 10 Feb 2020 14:35:40 +0800 Subject: [PATCH 08/10] =?UTF-8?q?=E6=9C=80=E7=83=AD=E9=A1=B9=E7=9B=AE?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epdc/dto/item/result/ItemResultDTO.java | 88 +++++++++++++++++++ .../{ => topic}/result/TopicResultDTO.java | 4 +- .../item/controller/ItemController.java | 59 +++++++++++++ .../esua/epdc/modules/item/dao/ItemDao.java | 42 +++++++++ .../modules/item/service/ItemService.java | 24 +++++ .../item/service/impl/ItemServiceImpl.java | 37 ++++++++ .../topic/controller/TopicController.java | 2 +- .../esua/epdc/modules/topic/dao/TopicDao.java | 2 +- .../modules/topic/service/TopicService.java | 2 +- .../topic/service/impl/TopicServiceImpl.java | 9 +- .../main/resources/mapper/item/ItemDao.xml | 51 +++++++++++ .../main/resources/mapper/topic/TopicDao.xml | 4 +- 12 files changed, 311 insertions(+), 13 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java rename esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/{ => topic}/result/TopicResultDTO.java (93%) create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java new file mode 100644 index 000000000..aa9fe5c60 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java @@ -0,0 +1,88 @@ +package com.elink.esua.epdc.dto.item.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description 项目列表DTO + * @Author yinzuomei + * @Date 2020/2/10 13:44 + */ +@Data +public class ItemResultDTO implements Serializable { + /** + * epdc_item表主键 + */ + private String id; + + /** + * 议题内容-项目摘要 + */ + private String itemContent; + + /** + * 父所有部门ID + */ + private String parentDeptIds; + + /** + * 父所有部门 + */ + private String parentDeptNames; + + /** + * 所有部门ID + */ + private String allDeptIds; + + /** + * 所有部门 + */ + private String allDeptNames; + + /** + * 网格 + */ + private String grid; + + /** + * 网格ID + */ + private Long gridId; + + /** + * 发布人用户昵称 + */ + private String nickName; + /** + * 发布时间 + */ + private Date releaseTime; + + /** + * 支持-点赞次数 + */ + private Integer approveNum; + + /** + * 反对-踩次数 + */ + private Integer opposeNum; + + /** + * 评论数 + */ + private Integer commentNum; + + /** + * 浏览数 + */ + private Integer browseNum; + + /** + * 表达态度(评论+回复+浏览) + */ + private Integer expressAttitudeNum; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java similarity index 93% rename from esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java rename to esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java index 403e69207..270dcb88a 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/result/TopicResultDTO.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java @@ -1,4 +1,4 @@ -package com.elink.esua.epdc.dto.result; +package com.elink.esua.epdc.dto.topic.result; import lombok.Data; @@ -6,7 +6,7 @@ import java.io.Serializable; import java.util.Date; /** - * @Description 最热话题列表DTO + * @Description 话题列表DTO * @Author yinzuomei * @Date 2020/2/10 11:31 */ diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java new file mode 100644 index 000000000..d0e230492 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemController.java @@ -0,0 +1,59 @@ +/** + * 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.item.controller; + +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.item.result.ItemResultDTO; +import com.elink.esua.epdc.modules.item.service.ItemService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + + +/** + * 项目表 项目表 + * + * @author yujintao yujintao@elink-cn.com + * @since v1.0.0 2019-09-04 + */ +@RestController +@RequestMapping("item") +public class ItemController { + + @Autowired + private ItemService itemService; + + /** + * @param params + * @return com.elink.esua.epdc.dto.item.result.ItemResultDTO + * @Author yinzuomei + * @Description 最热项目列表查询 + * @Date 2020/2/10 13:45 + **/ + @GetMapping("pageHottestItem") + public Result> pageHottestItem(@RequestParam Map params) { + PageData page = itemService.listItemResultDTO(params); + return new Result>().ok(page); + } + +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java new file mode 100644 index 000000000..81319ce3e --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemDao.java @@ -0,0 +1,42 @@ +/** + * 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.item.dao; + +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.dto.item.result.ItemResultDTO; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + +/** + * @Description 项目模块 + * @Author yinzuomei + * @Date 2020/2/10 13:43 + */ +@Mapper +public interface ItemDao extends BaseDao { + /** + * @param params + * @return java.util.List + * @Author yinzuomei + * @Description 最热项目列表查询 + * @Date 2020/2/10 13:53 + **/ + List selectListHottestItemResultDTO(Map params); +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java new file mode 100644 index 000000000..eedbbc6ba --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemService.java @@ -0,0 +1,24 @@ +package com.elink.esua.epdc.modules.item.service; + +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.dto.item.result.ItemResultDTO; + +import java.util.Map; + +/** + * 项目模块 + * + * @Author yinzuomei + * @Date 2020/2/10 13:43 + */ +public interface ItemService { + + /** + * @param params + * @return com.elink.esua.epdc.dto.item.result.ItemResultDTO + * @Author yinzuomei + * @Description 最热项目列表查询 + * @Date 2020/2/10 13:46 + **/ + PageData listItemResultDTO(Map params); +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java new file mode 100644 index 000000000..26360c7f5 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java @@ -0,0 +1,37 @@ +package com.elink.esua.epdc.modules.item.service.impl; + +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.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.item.result.ItemResultDTO; +import com.elink.esua.epdc.modules.item.dao.ItemDao; +import com.elink.esua.epdc.modules.item.service.ItemService; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * @Description 项目模块 + * @Author yinzuomei + * @Date 2020/2/10 13:43 + */ +@Service +public class ItemServiceImpl extends BaseServiceImpl implements ItemService { + /** + * @param params + * @return com.elink.esua.epdc.dto.item.result.ItemResultDTO + * @Author yinzuomei + * @Description 最热项目列表查询 + * @Date 2020/2/10 13:47 + **/ + @DataSource(name = DataSourceNames.FOURTH) + @Override + public PageData listItemResultDTO(Map params) { + IPage page = getPage(params); + List list = baseDao.selectListHottestItemResultDTO(params); + return new PageData<>(list, page.getTotal()); + } +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java index bd460ce39..d9daf3a74 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/controller/TopicController.java @@ -19,7 +19,7 @@ package com.elink.esua.epdc.modules.topic.controller; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.utils.Result; -import com.elink.esua.epdc.dto.result.TopicResultDTO; +import com.elink.esua.epdc.dto.topic.result.TopicResultDTO; import com.elink.esua.epdc.modules.topic.service.TopicService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java index 82e91535b..68c546c45 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/dao/TopicDao.java @@ -18,7 +18,7 @@ package com.elink.esua.epdc.modules.topic.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.elink.esua.epdc.dto.result.TopicResultDTO; +import com.elink.esua.epdc.dto.topic.result.TopicResultDTO; import org.apache.ibatis.annotations.Mapper; import java.util.List; diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java index 1743f20e3..862c76d08 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/TopicService.java @@ -18,7 +18,7 @@ package com.elink.esua.epdc.modules.topic.service; import com.elink.esua.epdc.commons.tools.page.PageData; -import com.elink.esua.epdc.dto.result.TopicResultDTO; +import com.elink.esua.epdc.dto.topic.result.TopicResultDTO; import java.util.Map; diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java index 552826f03..fc53e5d42 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java @@ -5,10 +5,9 @@ import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl; import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.datasources.DataSourceNames; import com.elink.esua.epdc.datasources.annotation.DataSource; -import com.elink.esua.epdc.dto.result.TopicResultDTO; +import com.elink.esua.epdc.dto.topic.result.TopicResultDTO; import com.elink.esua.epdc.modules.topic.dao.TopicDao; import com.elink.esua.epdc.modules.topic.service.TopicService; -import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -21,8 +20,6 @@ import java.util.Map; */ @Service public class TopicServiceImpl extends BaseServiceImpl implements TopicService { - @Autowired - private TopicDao topicDao; /** * @param params @@ -36,7 +33,7 @@ public class TopicServiceImpl extends BaseServiceImpl public PageData listHottestTopic(Map params) { IPage page = getPage(params); - List list = topicDao.selectListHottestTopicDTO(params); + List list = baseDao.selectListHottestTopicDTO(params); return new PageData<>(list, page.getTotal()); } @@ -51,7 +48,7 @@ public class TopicServiceImpl extends BaseServiceImpl @Override public PageData listLatestTopic(Map params) { IPage page = getPage(params); - List list = topicDao.selectListLatesttTopicDTO(params); + List list = baseDao.selectListLatesttTopicDTO(params); return new PageData<>(list, page.getTotal()); } diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml new file mode 100644 index 000000000..4cba6a36c --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml @@ -0,0 +1,51 @@ + + + + + + diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml index 4bcecb528..4984cae3a 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml @@ -3,7 +3,7 @@ - select et.ID, et.TOPIC_CONTENT, @@ -46,7 +46,7 @@ - select et.ID, et.TOPIC_CONTENT, From e069a21ce899817b33c9aff35c877fea17e427cc Mon Sep 17 00:00:00 2001 From: yujintao Date: Mon, 10 Feb 2020 14:48:58 +0800 Subject: [PATCH 09/10] =?UTF-8?q?=E6=96=B0=E5=A2=9Epc=E7=AB=AF=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E6=9C=BA=E6=9E=84=E5=B1=82=E7=BA=A7=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epdc/controller/SysUserController.java | 20 +++++++ .../esua/epdc/service/SysDeptService.java | 10 ++++ .../epdc/service/impl/SysDeptServiceImpl.java | 53 ++++++++++++++++++- 3 files changed, 82 insertions(+), 1 deletion(-) diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java index 066944f63..8db11a678 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/controller/SysUserController.java @@ -285,6 +285,8 @@ public class SysUserController { /** * 组装用户部门多层结构 + *

auth模块调用,用户登录时,获取用户机构权限,返回页面组装下拉菜单所需数据,保存在redis

+ *

组装三层,街道-社区-网格

* * @param userId * @return com.elink.esua.epdc.commons.tools.utils.Result @@ -299,6 +301,8 @@ public class SysUserController { /** * 获取用户部门多层结构,用户前端显示,请求需携带token + *

调接口,从redis获取{@link SysUserController#packageUserDeptOption(Long)}接口生成的数据。

+ *

此接口展示三级机构层级(街道-社区-网格),不包括区级

* * @return com.elink.esua.epdc.commons.tools.utils.Result * @author work@yujt.net.cn @@ -311,6 +315,8 @@ public class SysUserController { /** * 获取用户部门多层结构(完整层级结构,包括顶级部门),用户前端显示,请求需携带token + *

新闻、通知发布,选择机构可多选,且展示完整层级结构,市区-街道-社区-网格

+ *

新闻、通知页面主动触发,不在用户登录是自动调用

* * @return com.elink.esua.epdc.commons.tools.utils.Result * @author work@yujt.net.cn @@ -322,6 +328,20 @@ public class SysUserController { return new Result().ok(option); } + /** + * 用户数据分析,pc端页面,获取用户街道-社区层级关系,前端显示,请求需携带token + *

网格开通情况与用户排名分析页面用,只组装街道-社区两级

+ * + * @return com.elink.esua.epdc.commons.tools.utils.Result + * @author work@yujt.net.cn + * @date 2020/2/10 14:45 + */ + @GetMapping("deptOptions/getMiddleByLoginUser") + public Result getMiddleByLoginUser() { + DeptOption option = sysDeptService.getMiddleByLoginUser(); + return new Result().ok(option); + } + /** * 退出登录 * diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java index 0d79a3d9c..385ff1c55 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/SysDeptService.java @@ -212,8 +212,18 @@ public interface SysDeptService extends BaseService { /** * 获取用户部门多层结构(完整层级结构,包括顶级部门),用户前端显示,请求需携带token * + * @return com.elink.esua.epdc.dto.DeptOption * @author work@yujt.net.cn * @date 2020/1/28 10:40 */ DeptOption getAllDeptOptionByLoginUser(); + + /** + * 获取用户部门层级结构(街道-社区),用户前端显示,请求需携带token + * + * @return com.elink.esua.epdc.dto.DeptOption + * @author work@yujt.net.cn + * @date 2020/2/10 13:38 + */ + DeptOption getMiddleByLoginUser(); } diff --git a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java index de54a8349..80f42e52a 100644 --- a/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java +++ b/esua-epdc/epdc-admin/epdc-admin-server/src/main/java/com/elink/esua/epdc/service/impl/SysDeptServiceImpl.java @@ -76,6 +76,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl list(Map params) { //普通管理员,只能查询所属部门及子部门的数据 @@ -356,6 +357,56 @@ public class SysDeptServiceImpl extends BaseServiceImpl options = result.getOptions(); + if (options.isEmpty()) { + return result; + } + // 代表存在子级机构的json key + String childJsonOptionKey = "children"; + // 一个街道机构 + JSONObject streetOption; + // 一个街道下所有社区机构 + JSONArray communityOptionArray; + // 一个社区机构 + JSONObject communityOption; + // 循环所有街道 + for (int i = options.size() - NumConstant.ONE; i >= NumConstant.ZERO; i--) { + // 取出一个街道 + streetOption = options.get(i); + // 街道有children,代表有下级社区(没有children的,其实是区直) + if (null != streetOption.get(childJsonOptionKey)) { + // 获取该街道的所有社区 + communityOptionArray = streetOption.getJSONArray(childJsonOptionKey); + if (!communityOptionArray.isEmpty()) { + // 社区不为空,循环所有社区 + for (int j = 0; j < communityOptionArray.size(); j++) { + // 取出一个社区 + communityOption = communityOptionArray.getJSONObject(j); + // 社区有children,代表有下级网格, + if (null != communityOption.get(childJsonOptionKey)) { + // 移除网格 + communityOption.remove(childJsonOptionKey); + } + } + } + } else { + // 移除区直机构 + options.remove(i); + } + } + return result; + } + /** * @param formDTO * @return java.util.List @@ -411,7 +462,7 @@ public class SysDeptServiceImpl extends BaseServiceImpl Date: Mon, 10 Feb 2020 17:18:49 +0800 Subject: [PATCH 10/10] =?UTF-8?q?=E6=9C=80=E7=83=AD=E8=AE=AE=E9=A2=98?= =?UTF-8?q?=E3=80=81=E6=9C=80=E6=96=B0=E8=AE=AE=E9=A2=98=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epdc/dto/issue/result/IssueResultDTO.java | 64 +++++++++++ .../epdc/dto/item/result/ItemResultDTO.java | 25 ----- .../epdc/dto/topic/result/TopicResultDTO.java | 27 +---- .../issue/controller/IssueController.java | 52 +++++++++ .../esua/epdc/modules/issue/dao/IssueDao.java | 52 +++++++++ .../modules/issue/service/IssueService.java | 31 +++++ .../issue/service/impl/IssueServiceImpl.java | 59 ++++++++++ .../item/service/impl/ItemServiceImpl.java | 4 + .../topic/service/impl/TopicServiceImpl.java | 7 +- .../main/resources/mapper/issue/IssueDao.xml | 106 ++++++++++++++++++ .../main/resources/mapper/item/ItemDao.xml | 10 +- .../main/resources/mapper/topic/TopicDao.xml | 22 ++-- 12 files changed, 395 insertions(+), 64 deletions(-) create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueResultDTO.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueController.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java create mode 100644 esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueDao.xml diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueResultDTO.java new file mode 100644 index 000000000..b3b38979d --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/issue/result/IssueResultDTO.java @@ -0,0 +1,64 @@ +package com.elink.esua.epdc.dto.issue.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description 议题列表DTO + * @Author yinzuomei + * @Date 2020/2/10 15:58 + */ +@Data +public class IssueResultDTO implements Serializable { + /** + * epdc_issue主键 + */ + private String id; + + /** + * 议题内容 + */ + private String issueContent; + + /** + * 来源网格-所有部门 + */ + private String allDeptNames; + + /** + * 用户昵称 + */ + private String nickName; + + /** + * 发布时间 + */ + private Date createdTime; + + /** + * 支持-点赞次数 + */ + private Integer approveNum; + + /** + * 反对-踩次数 + */ + private Integer opposeNum; + + /** + * 评论数 + */ + private Integer commentNum; + + /** + * 浏览数 + */ + private Integer browseNum; + + /** + * 表达态度(评论+回复+浏览) + */ + private Integer expressAttitudeNum; +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java index aa9fe5c60..6e938d00e 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemResultDTO.java @@ -22,36 +22,11 @@ public class ItemResultDTO implements Serializable { */ private String itemContent; - /** - * 父所有部门ID - */ - private String parentDeptIds; - - /** - * 父所有部门 - */ - private String parentDeptNames; - - /** - * 所有部门ID - */ - private String allDeptIds; - /** * 所有部门 */ private String allDeptNames; - /** - * 网格 - */ - private String grid; - - /** - * 网格ID - */ - private Long gridId; - /** * 发布人用户昵称 */ diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java index 270dcb88a..17c9f46a6 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/topic/result/TopicResultDTO.java @@ -24,36 +24,11 @@ public class TopicResultDTO implements Serializable { */ private String topicContent; - /** - * 父所有部门ID - */ - private String parentDeptIds; - - /** - * 父所有部门 - */ - private String parentDeptNames; - - /** - * 所有部门ID - */ - private String allDeptIds; - /** * 所有部门 */ private String allDeptNames; - /** - * 网格 - */ - private String grid; - - /** - * 网格ID - */ - private Long gridId; - /** * 网格来源群名称 */ @@ -62,7 +37,7 @@ public class TopicResultDTO implements Serializable { /** * 话题发布人姓名 */ - private String nickname; + private String nickName; /** * 发布时间 diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueController.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueController.java new file mode 100644 index 000000000..29d382050 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/controller/IssueController.java @@ -0,0 +1,52 @@ +package com.elink.esua.epdc.modules.issue.controller; + +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.commons.tools.utils.Result; +import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import com.elink.esua.epdc.modules.issue.service.IssueService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +/** + * @Description 议题相关 + * @Author yinzuomei + * @Date 2020/2/10 16:06 + */ +@RestController +@RequestMapping("issue") +public class IssueController { + @Autowired + private IssueService issueService; + + /** + * @param params + * @return com.elink.esua.epdc.dto.issue.result.IssueResultDTO + * @Author yinzuomei + * @Description 最热议题列表 + * @Date 2020/2/10 16:15 + **/ + @GetMapping("pageHottestIssue") + public Result> pageHottestIssue(@RequestParam Map params) { + PageData page = issueService.listHottestIssue(params); + return new Result>().ok(page); + } + + /** + * @param params + * @return com.elink.esua.epdc.dto.issue.result.IssueResultDTO + * @Author yinzuomei + * @Description 最新议题列表 + * @Date 2020/2/10 16:15 + **/ + @GetMapping("pageLatestIssue") + public Result> pageLatestIssue(@RequestParam Map params) { + PageData page = issueService.listLatestIssue(params); + return new Result>().ok(page); + } + +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java new file mode 100644 index 000000000..60bbdb98c --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/dao/IssueDao.java @@ -0,0 +1,52 @@ +/** + * 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.issue.dao; + +import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; +import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; +import java.util.Map; + + +/** + * @Description 议题相关 + * @Author yinzuomei + * @Date 2020/2/10 16:06 + */ +@Mapper +public interface IssueDao extends BaseDao { + /** + * @param params + * @return java.util.List + * @Author yinzuomei + * @Description 最热议题列表 + * @Date 2020/2/10 16:19 + **/ + List selectListHottestIssue(Map params); + + /** + * @param params + * @return java.util.List + * @Author yinzuomei + * @Description 最新议题列表 + * @Date 2020/2/10 16:19 + **/ + List selectListLatestIssue(Map params); +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java new file mode 100644 index 000000000..d4c316cab --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/IssueService.java @@ -0,0 +1,31 @@ +package com.elink.esua.epdc.modules.issue.service; + +import com.elink.esua.epdc.commons.tools.page.PageData; +import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; + +import java.util.Map; + +/** + * @Description 议题相关 + * @Author yinzuomei + * @Date 2020/2/10 16:06 + */ +public interface IssueService { + /** + * @param params + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Author yinzuomei + * @Description 最热议题列表 + * @Date 2020/2/10 16:16 + **/ + PageData listHottestIssue(Map params); + + /** + * @param params + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Author yinzuomei + * @Description 最新议题列表 + * @Date 2020/2/10 16:16 + **/ + PageData listLatestIssue(Map params); +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java new file mode 100644 index 000000000..f7ce97cc9 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/issue/service/impl/IssueServiceImpl.java @@ -0,0 +1,59 @@ +package com.elink.esua.epdc.modules.issue.service.impl; + +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.security.user.UserDetail; +import com.elink.esua.epdc.datasources.DataSourceNames; +import com.elink.esua.epdc.datasources.annotation.DataSource; +import com.elink.esua.epdc.dto.issue.result.IssueResultDTO; +import com.elink.esua.epdc.modules.issue.dao.IssueDao; +import com.elink.esua.epdc.modules.issue.service.IssueService; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; + +/** + * @Description 议题相关 + * @Author yinzuomei + * @Date 2020/2/10 16:06 + */ +@Service +public class IssueServiceImpl extends BaseServiceImpl implements IssueService { + + /** + * @param params + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Author yinzuomei + * @Description 最热议题列表 + * @Date 2020/2/10 16:17 + **/ + @DataSource(name = DataSourceNames.FOURTH) + @Override + public PageData listHottestIssue(Map params) { + UserDetail userDetail= SecurityUser.getUser(); + params.put("deptIdList",userDetail.getDeptIdList()); + IPage page = getPage(params); + List list = baseDao.selectListHottestIssue(params); + return new PageData<>(list, page.getTotal()); + } + + /** + * @param params + * @return com.elink.esua.epdc.commons.tools.page.PageData + * @Author yinzuomei + * @Description 最新议题列表 + * @Date 2020/2/10 16:17 + **/ + @DataSource(name = DataSourceNames.FOURTH) + @Override + public PageData listLatestIssue(Map params) { + UserDetail userDetail= SecurityUser.getUser(); + params.put("deptIdList",userDetail.getDeptIdList()); + IPage page = getPage(params); + List list = baseDao.selectListLatestIssue(params); + return new PageData<>(list, page.getTotal()); + } +} diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java index 26360c7f5..c6a499082 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java @@ -3,6 +3,8 @@ package com.elink.esua.epdc.modules.item.service.impl; 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.security.user.UserDetail; import com.elink.esua.epdc.datasources.DataSourceNames; import com.elink.esua.epdc.datasources.annotation.DataSource; import com.elink.esua.epdc.dto.item.result.ItemResultDTO; @@ -30,6 +32,8 @@ public class ItemServiceImpl extends BaseServiceImpl imp @DataSource(name = DataSourceNames.FOURTH) @Override public PageData listItemResultDTO(Map params) { + UserDetail userDetail = SecurityUser.getUser(); + params.put("deptIdList", userDetail.getDeptIdList()); IPage page = getPage(params); List list = baseDao.selectListHottestItemResultDTO(params); return new PageData<>(list, page.getTotal()); diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java index fc53e5d42..e3f31c2fe 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/topic/service/impl/TopicServiceImpl.java @@ -3,6 +3,8 @@ package com.elink.esua.epdc.modules.topic.service.impl; 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.security.user.UserDetail; import com.elink.esua.epdc.datasources.DataSourceNames; import com.elink.esua.epdc.datasources.annotation.DataSource; import com.elink.esua.epdc.dto.topic.result.TopicResultDTO; @@ -31,7 +33,8 @@ public class TopicServiceImpl extends BaseServiceImpl @DataSource(name = DataSourceNames.FIFTH) @Override public PageData listHottestTopic(Map params) { - + UserDetail userDetail = SecurityUser.getUser(); + params.put("deptIdList", userDetail.getDeptIdList()); IPage page = getPage(params); List list = baseDao.selectListHottestTopicDTO(params); return new PageData<>(list, page.getTotal()); @@ -47,6 +50,8 @@ public class TopicServiceImpl extends BaseServiceImpl @DataSource(name = DataSourceNames.FIFTH) @Override public PageData listLatestTopic(Map params) { + UserDetail userDetail = SecurityUser.getUser(); + params.put("deptIdList", userDetail.getDeptIdList()); IPage page = getPage(params); List list = baseDao.selectListLatesttTopicDTO(params); return new PageData<>(list, page.getTotal()); diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueDao.xml new file mode 100644 index 000000000..b97d7f438 --- /dev/null +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/issue/IssueDao.xml @@ -0,0 +1,106 @@ + + + + + + + + + + diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml index 4cba6a36c..d2dca2d1d 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemDao.xml @@ -6,11 +6,7 @@ SELECT ei.id, ei.ITEM_CONTENT, - ei.PARENT_DEPT_IDS, - ei.PARENT_DEPT_NAMES, - ei.ALL_DEPT_IDS, ei.ALL_DEPT_NAMES, - ei.GRID_ID, ei.GRID, ei.NICK_NAME, ei.CREATED_TIME AS releaseTime, @@ -46,6 +42,12 @@ and DATE_FORMAT( ei.CREATED_TIME, '%Y-%m-%d' ) <=#{endTime} + + and ei.GRID_ID in + + #{deptId} + + ORDER BY expressAttitudeNum DESC diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml index 4984cae3a..a21b690ba 100644 --- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml +++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/topic/TopicDao.xml @@ -7,11 +7,7 @@ select et.ID, et.TOPIC_CONTENT, - et.PARENT_DEPT_IDS, - et.PARENT_DEPT_NAMES, - et.ALL_DEPT_IDS, et.ALL_DEPT_NAMES, - et.GRID_ID, et.GRID, et.GROUP_NAME, et.NICKNAME, @@ -21,6 +17,7 @@ et.COMMENT_NUM+et.BROWSE_NUM as expressAttitudeNum from epdc_topic et where et.DEL_FLAG='0' + and et.STATE='0' and et.TOPIC_CONTENT like concat('%', #{topicContent}, '%') @@ -42,6 +39,12 @@ and DATE_FORMAT( et.CREATED_TIME, '%Y-%m-%d' ) <=#{endTime} + + and et.GRID_ID in + + #{deptId} + + order by expressAttitudeNum desc @@ -50,11 +53,7 @@ select et.ID, et.TOPIC_CONTENT, - et.PARENT_DEPT_IDS, - et.PARENT_DEPT_NAMES, - et.ALL_DEPT_IDS, et.ALL_DEPT_NAMES, - et.GRID_ID, et.GRID, et.GROUP_NAME, et.NICKNAME, @@ -64,6 +63,7 @@ et.COMMENT_NUM+et.BROWSE_NUM as expressAttitudeNum from epdc_topic et where et.DEL_FLAG='0' + and et.STATE='0' and et.TOPIC_CONTENT like concat('%', #{topicContent}, '%') @@ -85,6 +85,12 @@ and DATE_FORMAT( et.CREATED_TIME, '%Y-%m-%d' ) <=#{endTime} + + and et.GRID_ID in + + #{deptId} + + order by expressAttitudeNum desc,releaseTime desc