diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java index b60c3a40d1..c9b876389c 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/EpmetErrorCode.java @@ -10,7 +10,7 @@ public enum EpmetErrorCode { ERR10006(10006, "登录超时,请重新登录"), ERR10007(10007, "当前帐号已在别处登录"), ERR401(401, "未授权"), - + VALIDATE_ERROR(7000, "数据校验异常"), SERVER_ERROR(8000, "服务器开小差了..."), CANNOT_JOIN_GROUP(8001, "只有认证党员和居民才可以加入小组,请选择您的身份"), CANNOT_CREATE_GROUP(8002, "只有党员和热心居民才能创建小组,请选择您的身份"), diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenExceptionHandler.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenExceptionHandler.java index e49e03d52d..b7d8fb03ec 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenExceptionHandler.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/RenExceptionHandler.java @@ -61,6 +61,22 @@ public class RenExceptionHandler { // return new Result().error(); } + + /** + * 处理自定义异常 + * "code": 8000, + * "msg": "服务器开小差了...", + */ + @ExceptionHandler(ValidateException.class) + public Result handleVException(ValidateException ex){ + logger.error(ExceptionUtils.getErrorStackTrace(ex)); + Result result=new Result(); + result.setCode(ex.getCode()); + result.setMsg(ex.getMsg()); + return result; +// return new Result().error(); + } + /** * 运行时异常拦截 * "code": 8000, diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/ValidateException.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/ValidateException.java new file mode 100644 index 0000000000..ee165ef2e8 --- /dev/null +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/exception/ValidateException.java @@ -0,0 +1,87 @@ +package com.epmet.commons.tools.exception; + +import com.epmet.commons.tools.utils.MessageUtils; +import org.apache.commons.lang3.StringUtils; + +/** + * @author zhaoqifeng + * @dscription + * @date 2020/4/29 18:13 + */ +public class ValidateException extends RuntimeException { + private static final long serialVersionUID = 1L; + private int code; + private String msg; + + public ValidateException(int code) { + this.code = code; + this.msg = EpmetErrorCode.getMsg(code); + if (StringUtils.isBlank(this.msg)) { + this.msg = MessageUtils.getMessage(code); + } + } + + public ValidateException(int code, String... params) { + this.code = code; + this.msg = EpmetErrorCode.getMsg(code); + if (StringUtils.isBlank(this.msg)) { + this.msg = MessageUtils.getMessage(code, params); + } + } + + public ValidateException(int code, Throwable e) { + super(e); + this.code = code; + this.msg = EpmetErrorCode.getMsg(code); + if (StringUtils.isBlank(this.msg)) { + this.msg = MessageUtils.getMessage(code); + } + } + + public ValidateException(int code, Throwable e, String... params) { + super(e); + this.code = code; + + } + + public ValidateException(int code, String msg) { + this.code = code; + if (StringUtils.isBlank(msg)) { + this.msg = EpmetErrorCode.getMsg(code); + if (StringUtils.isBlank(this.msg)) { + this.msg = MessageUtils.getMessage(code, msg); + } + } else { + this.msg = msg; + } + } + + + public ValidateException(String msg) { + super(msg); + this.code = EpmetErrorCode.VALIDATE_ERROR.getCode(); + this.msg = msg; + } + + public ValidateException(String msg, Throwable e) { + super(msg, e); + this.code = EpmetErrorCode.VALIDATE_ERROR.getCode(); + this.msg = msg; + } + + public String getMsg() { + return msg; + } + + public void setMsg(String msg) { + this.msg = msg; + } + + public int getCode() { + return code; + } + + public void setCode(int code) { + this.code = code; + } +} diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/ValidatorUtils.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/ValidatorUtils.java index 5af37cbdb2..ac14e38ce6 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/ValidatorUtils.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/validator/ValidatorUtils.java @@ -9,6 +9,7 @@ package com.epmet.commons.tools.validator; import com.epmet.commons.tools.exception.RenException; +import com.epmet.commons.tools.exception.ValidateException; import org.hibernate.validator.messageinterpolation.ResourceBundleMessageInterpolator; import org.springframework.context.i18n.LocaleContextHolder; import org.springframework.context.support.ResourceBundleMessageSource; @@ -40,10 +41,10 @@ public class ValidatorUtils { * 校验对象 * @param object 待校验对象 * @param groups 待校验的组 - * @throws RenException 校验不通过,则报RenException异常 + * @throws ValidateException 校验不通过,则报RenException异常 */ public static void validateEntity(Object object, Class... groups) - throws RenException { + throws ValidateException { Locale.setDefault(LocaleContextHolder.getLocale()); Validator validator = Validation.byDefaultProvider().configure().messageInterpolator( new ResourceBundleMessageInterpolator(new MessageSourceResourceBundleLocator(getMessageSource()))) @@ -51,7 +52,7 @@ public class ValidatorUtils { Set> constraintViolations = validator.validate(object, groups); if (!constraintViolations.isEmpty()) { ConstraintViolation constraint = constraintViolations.iterator().next(); - throw new RenException(constraint.getMessage()); + throw new ValidateException(constraint.getMessage()); } } } diff --git a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiTopicController.java b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiTopicController.java index e2eed38422..3f8cbbec7f 100644 --- a/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiTopicController.java +++ b/epmet-module/gov-grid/gov-grid-server/src/main/java/com/epmet/controller/ResiTopicController.java @@ -35,6 +35,7 @@ public class ResiTopicController { **/ @PostMapping("hiddenlist") Result> hiddenList(@LoginUser TokenDto tokenDto, @RequestBody ResiTopicPageFormDTO topicPageFormDTO){ + topicPageFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(topicPageFormDTO); return resiTopicService.hiddenList(topicPageFormDTO); } @@ -49,6 +50,7 @@ public class ResiTopicController { **/ @PostMapping("alltopics") Result> allTopics(@LoginUser TokenDto tokenDto,@RequestBody ResiTopicPageFormDTO topicPageFormDTO){ + topicPageFormDTO.setUserId(tokenDto.getUserId()); ValidatorUtils.validateEntity(topicPageFormDTO); return resiTopicService.allTopics(topicPageFormDTO); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/StaffGridListDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/StaffGridListDTO.java index 263405df0c..a4787ffcef 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/StaffGridListDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/StaffGridListDTO.java @@ -2,12 +2,14 @@ package com.epmet.dto; import lombok.Data; +import java.io.Serializable; + /** * @Auther zxc * @Create 2020-04-23 10:38 */ @Data -public class StaffGridListDTO { +public class StaffGridListDTO implements Serializable { private static final long serialVersionUID = 1L; diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/StaffSubmitFromDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/StaffSubmitFromDTO.java index 107cff7298..7356f97392 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/StaffSubmitFromDTO.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/StaffSubmitFromDTO.java @@ -26,7 +26,6 @@ public class StaffSubmitFromDTO implements Serializable { /** * 机关ID */ - @NotBlank(message = "机关ID不能为空") private String agencyId; /** * 人员ID diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllGridsByUserIdResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllGridsByUserIdResultDTO.java new file mode 100644 index 0000000000..551e3302e5 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/AllGridsByUserIdResultDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Auther sun + * 获取用户访问过的所有网格列表-接口返参 + */ +@Data +public class AllGridsByUserIdResultDTO implements Serializable { + + private static final long serialVersionUID = -1L; + + /** + * 客户Id + */ + private String customerId; + + /** + * 网格Id + */ + private String gridId; + + /** + * 网格名称 + */ + private String gridName; + +} diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java index 834aa9bd1c..5e092efda6 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerGridController.java @@ -171,4 +171,15 @@ public class CustomerGridController { return customerGridService.getAgencyAndStaffsBygridId(gridId); } + /** + * @param gridIdList + * @return + * @Description 根据网格Id集合获取网格列表信息 + * @Author sun + */ + @PostMapping("getgridlistbygridids") + public Result> getGridListByGridIds(@RequestBody List gridIdList) { + return customerGridService.getGridListByGridIds(gridIdList); + } + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java index de20bc5b13..72b6dabe25 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/CustomerStaffGridController.java @@ -26,6 +26,7 @@ import com.epmet.commons.tools.validator.group.AddGroup; import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.dto.CustomerStaffGridDTO; +import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; import com.epmet.excel.CustomerStaffGridExcel; @@ -105,4 +106,17 @@ public class CustomerStaffGridController { ValidatorUtils.validateEntity(latestGridFormDTO); return customerStaffGridService.getStaffGridOrderByGridName(latestGridFormDTO); } + + /** + * @Description 查询一个网格下的所有工作人员 + * @param gridIdFormDTO + * @return Result> + * @author wangc + * @date 2020.04.29 22:59 + **/ + @PostMapping("getgridstaffs") + public Result> getGridStaffs(@RequestBody CommonGridIdFormDTO gridIdFormDTO){ + ValidatorUtils.validateEntity(gridIdFormDTO); + return customerStaffGridService.getAllGridStaffs(gridIdFormDTO); + } } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java index a8c6aeb6d0..70f4361032 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/CustomerGridDao.java @@ -18,17 +18,12 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; -import com.epmet.dto.UserIdAndPidDTO; +import com.epmet.dto.*; import com.epmet.dto.form.ListCustomerGridFormDTO; import com.epmet.dto.form.SelectGridNameByGridIdFormDTO; import com.epmet.dto.result.*; -import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.CustomerGridDTO; -import com.epmet.dto.CustomerStaffGridDTO; -import com.epmet.dto.UserIdDTO; import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.DeleteGridFormDTO; -import com.epmet.dto.form.ListCustomerGridFormDTO; import com.epmet.dto.result.CustomerGridForStrangerResultDTO; import com.epmet.entity.CustomerGridEntity; import org.apache.ibatis.annotations.Mapper; @@ -38,7 +33,7 @@ import java.util.List; import java.util.Map; /** - * 客户网格表 + * 客户网格表 * * @author generator generator@elink-cn.com * @since v1.0.0 2020-03-16 @@ -46,32 +41,28 @@ import java.util.Map; @Mapper public interface CustomerGridDao extends BaseDao { - - /** + * @return CustomerGridForStrangerResultDTO * @Description 查整个城市的网格 * @Param areaCode - * @return CustomerGridForStrangerResultDTO * @Author wangc * @Date 2020.03.19 15:53 **/ List selectGridByCityLike(ListCustomerGridFormDTO listCustomerGridFormDTO); - /** + * @return CustomerGridForStrangerResultDTO * @Description 指定区时查询当前城市下除该区之外其余的网格 * @Param areaCode * @Param cityCode - * @return CustomerGridForStrangerResultDTO * @Author wangc * @Date 2020.03.19 15:53 **/ - List selectRestGridWithoutGivenAreaCode(Map paramsMap); + List selectRestGridWithoutGivenAreaCode(Map paramsMap); CustomerGridDTO getCustomerGridByGridId(CustomerGridFormDTO customerGridFormDTO); /** - * * @Description 根据网格id查询网格名称 * @Author zxc * @CreatedTime 2020/4/27 9:22 @@ -88,6 +79,7 @@ public interface CustomerGridDao extends BaseDao { /** * 根据gridId获取网格详情 + * * @param customerGridFormDTO * @return */ @@ -95,6 +87,7 @@ public interface CustomerGridDao extends BaseDao { /** * 根据gridId查询uerId和pid + * * @param customerGridFormDTO * @return */ @@ -102,6 +95,7 @@ public interface CustomerGridDao extends BaseDao { /** * 根据userId查询customerId + * * @param userId * @return */ @@ -109,57 +103,66 @@ public interface CustomerGridDao extends BaseDao { /** * 根据pid查询pids + * * @param pid * @return */ - String selectPidsByPid(@Param("pid")String pid); + String selectPidsByPid(@Param("pid") String pid); /** * 根据gridName查询gridId + * * @param gridName * @return */ - String selectGridIdByGridName(@Param("gridName")String gridName,@Param("agencyId")String pid,@Param("gridId")String gridId); + AddGridResultDTO selectGridIdByGridName(@Param("gridName") String gridName, @Param("agencyId") String pid, @Param("gridId") String gridId); /** * 编辑网格信息 + * * @param customerGridDTO */ void editGrid(CustomerGridDTO customerGridDTO); /** * 删除网格 + * * @param deleteGridFormDTO */ void deleteGrid(DeleteGridFormDTO deleteGridFormDTO); /** - * * @Description 根据gridId查询userId * @Author zxc * @CreatedTime 2020/4/26 10:08 */ - List selectUserIdByGrid(@Param("gridId")String gridId); - - + List selectUserIdByGrid(@Param("gridId") String gridId); /** + * @return int * @Description 得到当前机构的网格总数 * @Param agencyId(String) 对应CUSTOMER_GRID中的PID字段 - * @return int * @Author wangc * @Date 2020.04.23 15:05 **/ int selectGridCountByAgencyId(@Param("agencyId") String agencyId); /** + * @return List -> GridBaseInfoResultDTO :: getGridId :: getGridName :: getTotalUser * @Description 得到当前机构的网格详情列表 * @Param agencyId(String) 对应CUSTOMER_GRID中的PID字段 - * @return List -> GridBaseInfoResultDTO :: getGridId :: getGridName :: getTotalUser * @Author wangc * @Date 2020.04.23 15:30 **/ - List selectGridListByAgencyId(@Param("agencyId")String agencyId,@Param("pageSize")Integer pageSize); + List selectGridListByAgencyId(@Param("agencyId") String agencyId, @Param("pageSize") Integer pageSize); List listGridsbystaffid(@Param("staffId") String staffId); + + /** + * @param gridIdList + * @return + * @Description 根据网格Id集合获取网格列表信息 + * @Author sun + */ + List selectGridByIds(@Param("gridIdList") List gridIdList); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java index 477780c4bd..0553e60758 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerGridService.java @@ -219,4 +219,13 @@ public interface CustomerGridService extends BaseService { Result getAgencyAndStaffsBygridId(String gridId); List listGridsbystaffid(String staffId); + + /** + * @param gridIdList + * @return + * @Description 根据网格Id集合获取网格列表信息 + * @Author sun + */ + Result> getGridListByGridIds(List gridIdList); + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java index 2f9adf3d59..7813dd3b06 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/CustomerStaffGridService.java @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.CustomerStaffGridDTO; +import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.LatestGridFormDTO; import com.epmet.dto.result.CommonStaffInfoResultDTO; @@ -107,4 +108,13 @@ public interface CustomerStaffGridService extends BaseService getStaffGridOrderByGridName(LatestGridFormDTO latestGridFormDTO); + + /** + * @Description 查询一个网格下的所有工作人员 + * @param gridIdFormDTO + * @return Result> + * @author wangc + * @date 2020.04.29 22:59 + **/ + Result> getAllGridStaffs(CommonGridIdFormDTO gridIdFormDTO); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java index 8f5a6d850d..7004e084cf 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerGridServiceImpl.java @@ -45,6 +45,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -200,19 +201,17 @@ public class CustomerGridServiceImpl extends BaseServiceImpl addGrid(TokenDto tokenDto, AddGridFormDTO addGridFormDTO) { //查询是否重名 - String checkGridName = baseDao.selectGridIdByGridName(addGridFormDTO.getGridName(),addGridFormDTO.getAgencyId(),null); - if (checkGridName!=null){ + AddGridResultDTO gridResult = baseDao.selectGridIdByGridName(addGridFormDTO.getGridName(), addGridFormDTO.getAgencyId(), null); + if (gridResult!=null){ return new Result().error(EpmetErrorCode.NOT_ADD_GRID.getCode()); } - //查询地区编码 - String areaCode = customerAgencyDao.selectAreaCodeByAgencyId(addGridFormDTO.getAgencyId()); - CustomerGridEntity customerGridEntity = new CustomerGridEntity(); - customerGridEntity.setAreaCode(areaCode); CustomerAgencyDTO customerAgencyDTO=customerAgencyService.get(addGridFormDTO.getAgencyId()); - customerGridEntity.setCustomerId(customerAgencyDTO.getCustomerId());//查询customerId - customerGridEntity.setGridName(addGridFormDTO.getGridName()); - customerGridEntity.setManageDistrict(addGridFormDTO.getManageDistrict()); + CustomerGridEntity customerGridEntity = new CustomerGridEntity(); + BeanUtils.copyProperties(addGridFormDTO,customerGridEntity); + customerGridEntity.setAreaCode(customerAgencyDTO.getAreaCode()); + customerGridEntity.setCustomerId(customerAgencyDTO.getCustomerId()); customerGridEntity.setPid(addGridFormDTO.getAgencyId()); + //所有上级机构id,必须包括当前机构id (放在所有上级机构id后) if(StringUtils.isBlank(customerAgencyDTO.getPids())){ customerGridEntity.setPids(addGridFormDTO.getAgencyId()); }else{ @@ -222,12 +221,9 @@ public class CustomerGridServiceImpl extends BaseServiceImpl().ok(addGridResultDTO); } @@ -239,8 +235,8 @@ public class CustomerGridServiceImpl extends BaseServiceImpl listGridsbystaffid(String staffId) { return baseDao.listGridsbystaffid(staffId); } + + /** + * @param gridIdList + * @return + * @Description 根据网格Id集合获取网格列表信息 + * @Author sun + */ + @Override + public Result> getGridListByGridIds(List gridIdList) { + Result> result = new Result>(); + List list = baseDao.selectGridByIds(gridIdList); + return result.ok(list); + } } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java index 456d99f584..44f14521b1 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/CustomerStaffGridServiceImpl.java @@ -23,17 +23,14 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.dao.CustomerStaffGridDao; import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.CustomerStaffGridDTO; -import com.epmet.dto.form.CustomerGridFormDTO; +import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.dto.form.LatestGridFormDTO; -import com.epmet.dto.result.CommonStaffInfoResultDTO; import com.epmet.dto.result.CustomerGridByUserIdResultDTO; import com.epmet.entity.CustomerStaffGridEntity; -import com.epmet.feign.EpmetUserFeignClient; import com.epmet.redis.CustomerStaffGridRedis; import com.epmet.service.CustomerStaffGridService; import org.apache.commons.lang3.StringUtils; @@ -41,9 +38,11 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; +import java.util.stream.Collectors; /** * 网格人员关系表 @@ -57,8 +56,6 @@ public class CustomerStaffGridServiceImpl extends BaseServiceImpl page(Map params) { @@ -128,4 +125,22 @@ public class CustomerStaffGridServiceImpl extends BaseServiceImpl().ok(result); } + + /** + * @Description 查询一个网格下的所有工作人员 + * @param gridIdFormDTO + * @return Result> + * @author wangc + * @date 2020.04.29 22:59 + **/ + @Override + public Result> getAllGridStaffs(CommonGridIdFormDTO gridIdFormDTO) { + List staffs = baseDao.selectByGridId(gridIdFormDTO.getGridId()); + return new Result>().ok( + new ArrayList<>( + staffs.stream().map(CustomerStaffGridDTO::getUserId). + collect(Collectors.toSet()) + ) + ); + } } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml index 8b2962f518..335ff75f55 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/CustomerGridDao.xml @@ -176,7 +176,7 @@ - SELECT id AS gridId FROM @@ -263,4 +263,18 @@ AND sg.USER_ID = #{staffId} + + \ No newline at end of file diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResult2DTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResult2DTO.java new file mode 100644 index 0000000000..c07869dbe4 --- /dev/null +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResult2DTO.java @@ -0,0 +1,71 @@ +package com.epmet.resi.group.dto.group.result; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * @Description 建组申请详情 请求返回实体 与NEI一致 + * @ClassName ApplyingGroupDetailResult2DTO + * @Auth wangc + * @Date 2020-04-30 10:10 + */ +@Data +public class ApplyingGroupDetailResult2DTO implements Serializable { + private static final long serialVersionUID = -924420303614397953L; + + /** + * 组Id + * */ + private String groupId; + + /** + * 组名称 + * */ + private String groupName; + + /** + * 组头像 + * */ + private String groupHeadPhoto; + + /** + * 组介绍 + * */ + private String groupIntroduction; + + /** + * 申请时间 + * */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") + private Date createdTime; + + /** + * 组长名称 + * */ + private String groupLeaderName; + + /** + * 已同意该申请approved 、已驳回rejected + * */ + private String status; + + /** + * 驳回理由 + * */ + private String rejectReason; + + + /** + * 街道 + * */ + private String street; + + /** + * 未读已读标识 unread read + * */ + private String readFlag; + +} diff --git a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResultDTO.java b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResultDTO.java index f293407dc8..205d2d433c 100644 --- a/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResultDTO.java +++ b/epmet-module/resi-group/resi-group-client/src/main/java/com/epmet/resi/group/dto/group/result/ApplyingGroupDetailResultDTO.java @@ -7,7 +7,7 @@ import java.io.Serializable; import java.util.Date; /** - * @Description 建组申请详情 + * @Description 建组申请详情 mapper查询返回 与NEI不一致 * @ClassName ApplyingGroupDetailResultDTO * @Author wangc * @date 2020.04.17 16:13 diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java index 5dfd84b7a1..485efb3f86 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/constant/UserMessageConstant.java @@ -31,5 +31,29 @@ public interface UserMessageConstant { */ String SLIENT_IN_GROUP = "您已被禁言,禁言时间%s"; + /** + * 建组审核驳回时消息模板 + * */ + String DISAGREE_CREATING_GROUP_MSG_TEMPLATE = "您好,您申请的%s小组,由于不符合%s条件的原因,已被驳回。"; + + /** + * 建组审核同意时消息模板 + * */ + String AGREE_CREATING_GROUP_MSG_TEMPLATE = "您好,您申请的%s小组,已审核通过。"; + + /** + * 审核建组申请消息名称 + * */ + String AUDITED_GROUP_APPLYING_TITLE = "您有一条建组审核消息"; + + /** + * 申请建组消息名称 + * */ + String CREATE_GROUP_APPLYING_MSG_TITLE = "您有一条建组申请消息"; + + /** + * 申请组时的消息模板 + */ + String CREATION_OF_GROUP_MESSAGE_TEMPLATE = "%s%s申请创建小组【%s】,请审核。"; } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetMessageFeignClient.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetMessageFeignClient.java new file mode 100644 index 0000000000..bc13516d07 --- /dev/null +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetMessageFeignClient.java @@ -0,0 +1,38 @@ +package com.epmet.modules.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.UserMessageFormDTO; +import com.epmet.modules.feign.fallback.EpmetMessageFeignClientFallback; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.http.MediaType; +import org.springframework.web.bind.annotation.PostMapping; + +import java.util.List; + +/** + * @Description epmet-message服务转发 + * @author wangc + * @date 2020.04.29 23:52 +**/ +@FeignClient(name = ServiceConstant.EPMET_MESSAGE_SERVER, fallback = EpmetMessageFeignClientFallback.class) +public interface EpmetMessageFeignClient { + + /** + * @param formDto + * @return com.epmet.commons.tools.utils.Result + * @Author sun + * @Description 新增未读消息 + **/ + @PostMapping(value = "message/usermessage/saveusermessage", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result saveUserMessage(UserMessageFormDTO formDto); + + /** + * @param msgList + * @return com.epmet.commons.tools.utils.Result + * @Author sun + * @Description 热心居民申请给网格长们发送消息 + **/ + @PostMapping(value = "message/usermessage/saveusermessagelist", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) + Result saveUserMessageList(List msgList); +} diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java index 575d610516..c9ad7e98a8 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java @@ -2,10 +2,7 @@ package com.epmet.modules.feign; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.UserInvitationFormDTO; -import com.epmet.dto.form.UserResiInfoFormDTO; -import com.epmet.dto.form.UserResiInfoListFormDTO; -import com.epmet.dto.form.UserRoleFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.modules.feign.fallback.EpmetUserFeignClientFallback; @@ -63,4 +60,7 @@ public interface EpmetUserFeignClient { **/ @PostMapping(value = "epmetuser/userinvitation/saveuserinvitation", consumes = MediaType.APPLICATION_JSON_VALUE) Result saveUserInvitation(@RequestBody UserInvitationFormDTO userInvitationFormDTO); + + @PostMapping(value = "epmetuser/staffrole/specificrolesstaffs", consumes = MediaType.APPLICATION_JSON_VALUE) + Result> specificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java index 23a4c288f1..d12b4125a8 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java @@ -4,9 +4,14 @@ import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.CustomerDepartmentDTO; import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.modules.feign.fallback.GovOrgFeignClientFallBack; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; + +import java.util.List; /** * @Description gov-org服务feginClient 服务间调用 @@ -34,4 +39,14 @@ public interface GovOrgFeignClient { */ @GetMapping("/gov/org/customerdepartment/{id}") Result getDept(String id); + + /** + * @Description 查询一个网格下的所有工作人员 + * @param gridIdFormDTO + * @return Result> + * @author wangc + * @date 2020.04.29 22:59 + **/ + @PostMapping("/gov/org/customerstaffgrid/getgridstaffs") + Result> getGridStaffs(@RequestBody CommonGridIdFormDTO gridIdFormDTO); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetMessageFeignClientFallback.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetMessageFeignClientFallback.java new file mode 100644 index 0000000000..6506ae2f06 --- /dev/null +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetMessageFeignClientFallback.java @@ -0,0 +1,29 @@ +package com.epmet.modules.feign.fallback; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.ModuleUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.form.UserMessageFormDTO; +import com.epmet.modules.feign.EpmetMessageFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description + * @ClassName EpmetMessageFeignClientFallback + * @Auth wangc + * @Date 2020-04-29 23:53 + */ +@Component +public class EpmetMessageFeignClientFallback implements EpmetMessageFeignClient { + @Override + public Result saveUserMessage(UserMessageFormDTO formDto) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_MESSAGE_SERVER, "saveUserMessage", formDto); + } + + @Override + public Result saveUserMessageList(List msgList) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_MESSAGE_SERVER, "saveUserMessageList", msgList); + } +} diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java index 5eacfdb7a4..e778691743 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallback.java @@ -3,10 +3,7 @@ package com.epmet.modules.feign.fallback; import com.epmet.commons.tools.constant.ServiceConstant; import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.UserInvitationFormDTO; -import com.epmet.dto.form.UserResiInfoFormDTO; -import com.epmet.dto.form.UserResiInfoListFormDTO; -import com.epmet.dto.form.UserRoleFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserRoleResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; @@ -41,4 +38,9 @@ public class EpmetUserFeignClientFallback implements EpmetUserFeignClient { public Result saveUserInvitation(UserInvitationFormDTO userInvitationFormDTO) { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "saveUserInvitation", userInvitationFormDTO); } + + @Override + public Result> specificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "specificRolesStaffs", rolesUsersListFormDTO); + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java index d71016b127..6489af4de3 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java @@ -1,12 +1,17 @@ package com.epmet.modules.feign.fallback; +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.ModuleUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.CustomerDepartmentDTO; import com.epmet.dto.CustomerGridDTO; +import com.epmet.dto.form.CommonGridIdFormDTO; import com.epmet.modules.feign.GovOrgFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + @Component public class GovOrgFeignClientFallBack implements GovOrgFeignClient { @@ -14,11 +19,16 @@ public class GovOrgFeignClientFallBack implements GovOrgFeignClient { @Override public Result getGrid(String id) { - return null; + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGrid", id); } @Override public Result getDept(String id) { - return null; + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getDept", id); + } + + @Override + public Result> getGridStaffs(CommonGridIdFormDTO gridIdFormDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridStaffs", gridIdFormDTO); } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java index 84f5c4ad95..fdd74e28a6 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/controller/ResiGroupController.java @@ -47,12 +47,6 @@ public class ResiGroupController { @Autowired private ResiGroupService resiGroupService; - @GetMapping("test/{test}") - public Result test(@PathVariable("test") String test) { - int result = 1 / 0; - return new Result().ok("请求成功啦❤"); - } - /** * @param tokenDto * @param myGroupFormDTO @@ -269,12 +263,12 @@ public class ResiGroupController { /** * @Description 得到待审核/未审核小组信息的详情 * @Param CommonGroupIdFromDTO -> String groupId; String userId - * @return Result + * @return Result * @Author wangc * @Date 2020.04.20 14:08 **/ @PostMapping("getapplyinggroupdetail") - public Result getApplyingGroupDetail(@RequestBody CommonGroupIdFromDTO groupIdFromDTO){ + public Result getApplyingGroupDetail(@RequestBody CommonGroupIdFromDTO groupIdFromDTO){ ValidatorUtils.validateEntity(groupIdFromDTO); return resiGroupService.getApplyingGroupDetail(groupIdFromDTO); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java index 8d3f760279..71a902430a 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/ResiGroupService.java @@ -240,5 +240,5 @@ public interface ResiGroupService extends BaseService { * @Author wangc * @Date 2020.04.19 23:32 **/ - Result getApplyingGroupDetail(CommonGroupIdFromDTO groupId); + Result getApplyingGroupDetail(CommonGroupIdFromDTO groupId); } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java index e229b1c51b..0289f53934 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/group/service/impl/ResiGroupServiceImpl.java @@ -29,12 +29,14 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.DateUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.UserResiInfoFormDTO; -import com.epmet.dto.form.UserResiInfoListFormDTO; -import com.epmet.dto.form.UserRoleFormDTO; +import com.epmet.constant.ReadFlagConstant; +import com.epmet.dto.form.*; import com.epmet.dto.result.UserResiInfoResultDTO; import com.epmet.dto.result.UserRoleResultDTO; +import com.epmet.modules.constant.UserMessageConstant; +import com.epmet.modules.feign.EpmetMessageFeignClient; import com.epmet.modules.feign.EpmetUserFeignClient; +import com.epmet.modules.feign.GovOrgFeignClient; import com.epmet.modules.group.dao.ResiGroupDao; import com.epmet.modules.group.dao.ResiGroupOperationDao; import com.epmet.modules.group.entity.ResiGroupEntity; @@ -110,6 +112,11 @@ public class ResiGroupServiceImpl extends BaseServiceImpl getApplyingGroupDetail(CommonGroupIdFromDTO groupId){ + public Result getApplyingGroupDetail(CommonGroupIdFromDTO groupId){ //1.查询小组信息 //注意,这里查询出的组申请详情中,无论是已审核还是未审核,都是将该组信息关联到初始化组时状态为[待审核、审核通过、拒绝]其中之一的组操作记录上,并读取审核的已读未读信息,上述三种状态在一个组的所有操作记录当中只可能存在一种,与之后的屏蔽、取消屏蔽、关闭无关,如果查出多条说明建组的逻辑有问题 ApplyingGroupDetailResultDTO detail = baseDao.getApplyingGroupDetailByGroupId(groupId.getGroupId()); @@ -735,6 +767,9 @@ public class ResiGroupServiceImpl extends BaseServiceImpl().ok(detail); + return new Result().ok(ConvertUtils.sourceToTarget(detail, ApplyingGroupDetailResult2DTO.class)); } + /** + * @Description 给加入此网格的网格长发送消息 + * @param msg + * @param gridId + * @param userId + * @author wangc + * @date 2020.04.29 22:49 + **/ + private void sendMsgResi2Gov(String title,String msg,String gridId,String userId,String customerId){ + //1.查询加入当前网格下的人员 customer_staff_grid + CommonGridIdFormDTO commonGridIdFormDTO = new CommonGridIdFormDTO(); + commonGridIdFormDTO.setGridId(gridId); + commonGridIdFormDTO.setUserId(userId); + Result> gridstaffs = + govOrgFeignClient.getGridStaffs(commonGridIdFormDTO); + //2.查询这些人是否有管理员身份且未被禁用 staff_role customer_staff + if(gridstaffs.success() && null != gridstaffs.getData() && gridstaffs.getData().size() > 0){ + RolesUsersListFormDTO rolesUsersListFormDTO = new RolesUsersListFormDTO(); + rolesUsersListFormDTO.setCustomerId(customerId); + List roleKeys = new ArrayList(); + roleKeys.add(ModuleConstant.STAFF_ROLE_GRID_MANAGER); + rolesUsersListFormDTO.setRoleKeys(roleKeys); + rolesUsersListFormDTO.setUserIds(gridstaffs.getData()); + Result> staffRoles = + epmetUserFeignClient.specificRolesStaffs(rolesUsersListFormDTO); + //3.发送消息 + if(staffRoles.success() && null != staffRoles.getData() && staffRoles.getData().size() > 0){ + List msgList = new ArrayList<>(); + for(String to : staffRoles.getData()){ + UserMessageFormDTO msgObj = new UserMessageFormDTO(); + msgObj.setApp(ModuleConstant.APP_GOV); + msgObj.setCustomerId(customerId); + msgObj.setGridId(gridId); + msgObj.setMessageContent(msg); + msgObj.setReadFlag(ReadFlagConstant.UN_READ); + msgObj.setTitle(title); + msgObj.setUserId(to); + msgList.add(msgObj); + } + Result result = epmetMessageFeignClient.saveUserMessageList(msgList); + if(!result.success()){ + logger.warn(String.format(ModuleConstant.FAILED_SEND_MESSAGE,msg)); + } + } + } + + } } diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java index a1303453ba..376619f004 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/topic/service/impl/ResiTopicServiceImpl.java @@ -317,12 +317,7 @@ public class ResiTopicServiceImpl extends BaseServiceImpl> getPastTopicList(TokenDto tokenDto, ResiTopicPageFormDTO topicPageFormDTO) { - if (null == tokenDto) { - logger.error(ModuleConstant.USER_NOT_NULL); - throw new RenException(ModuleConstant.USER_NOT_NULL); - } - - //1.查询历史话题列表 + //1.查询历史话题列表 topicPageFormDTO.setUserId(tokenDto.getUserId()); diff --git a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java index 2d7cb7b448..b54a19bb87 100644 --- a/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java +++ b/epmet-module/resi-group/resi-group-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java @@ -209,6 +209,11 @@ public interface ModuleConstant extends Constant { * */ String APP_RESI = "resi"; + /** + * APP 政府端 + * */ + String APP_GOV = "gov"; + /** * 审核信息未读 * */ @@ -226,7 +231,18 @@ public interface ModuleConstant extends Constant { String UNKNOWN = "未知"; /** - * 申请组时的消息模板 + * 工作人员角色key:管理员 + * */ + String STAFF_ROLE_MANAGER = "manager"; + + /** + * 工作人员角色key:网格长 + * */ + String STAFF_ROLE_GRID_MANAGER = "grid_manager"; + + /** + * 消息发送失败 */ - String CREATION_OF_GROUP_MESSAGE_TEMPLATE = "%s%s申请创建小组【%s】,请审核。"; + String FAILED_SEND_MESSAGE = "消息发送失败,消息内容:【%s】"; + } diff --git a/epmet-module/resi-mine/resi-mine-server/pom.xml b/epmet-module/resi-mine/resi-mine-server/pom.xml index 7b8a38f01c..89df002d39 100644 --- a/epmet-module/resi-mine/resi-mine-server/pom.xml +++ b/epmet-module/resi-mine/resi-mine-server/pom.xml @@ -77,6 +77,12 @@ 2.0.0 compile + + com.epmet + gov-org-client + 2.0.0 + compile + diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java index 74f33cbbea..d2b2dab8b2 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/EpmetUserFeignClient.java @@ -13,6 +13,8 @@ import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; +import java.util.List; + /** * @Description 居民端陌生人导览 调用epmet-user服务 * @Author sun @@ -51,4 +53,13 @@ public interface EpmetUserFeignClient { **/ @PostMapping(value = "epmetuser/userresiinfo/getverificationcode") Result getVerificationCode(VerificationCodeFormDTO formDTO); + + /** + * @return + * @param userId + * @Description 根据用户Id查询用户访问过的网格列表Id集合 + * @Author sun + **/ + @PostMapping(value = "epmetuser/gridlatest/getgridsbyuserid/{userId}") + Result> getGridsByUserId(@PathVariable("userId") String userId); } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java new file mode 100644 index 0000000000..f5cc29b95c --- /dev/null +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/GovOrgFeignClient.java @@ -0,0 +1,28 @@ +package com.epmet.modules.feign; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.AllGridsByUserIdResultDTO; +import com.epmet.modules.feign.fallback.GovOrgFeignClientFallBack; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; + +import java.util.List; + +/** + * @Description gov-org服务 + * @Author sun + */ +@FeignClient(name = ServiceConstant.GOV_ORG_SERVER, fallback = GovOrgFeignClientFallBack.class) +public interface GovOrgFeignClient { + + /** + * @param gridIdList + * @return + * @Description 根据网格Id集合获取网格列表信息 + * @Author sun + */ + @PostMapping("/gov/org/customergrid/getgridlistbygridids") + Result> getGridListByGridIds(List gridIdList); + +} diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java index 79d432f019..1753af5ba0 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/EpmetUserFeignClientFallBack.java @@ -11,6 +11,8 @@ import com.epmet.dto.result.ResiRegisterResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; import org.springframework.stereotype.Component; +import java.util.List; + /** * @Description 居民端-陌生人导览 调用epmet-user服务 * @Author sun @@ -61,5 +63,14 @@ public class EpmetUserFeignClientFallBack implements EpmetUserFeignClient { return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getVerificationCode", formDTO); } - + /** + * @return + * @param userId + * @Description 根据用户Id查询用户访问过的网格列表Id集合 + * @Author sun + **/ + @Override + public Result> getGridsByUserId(String userId) { + return ModuleUtils.feignConError(ServiceConstant.EPMET_USER_SERVER, "getGridsByUserId", userId); + } } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java new file mode 100644 index 0000000000..6541274329 --- /dev/null +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/feign/fallback/GovOrgFeignClientFallBack.java @@ -0,0 +1,23 @@ +package com.epmet.modules.feign.fallback; + +import com.epmet.commons.tools.constant.ServiceConstant; +import com.epmet.commons.tools.utils.ModuleUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.AllGridsByUserIdResultDTO; +import com.epmet.modules.feign.GovOrgFeignClient; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + * @Description gov-org服务 + * @Author sun + */ +@Component +public class GovOrgFeignClientFallBack implements GovOrgFeignClient { + + @Override + public Result> getGridListByGridIds(List gridIdList) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getGridListByGridIds", gridIdList); + } +} diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java index 626f78bfd4..9a1d262509 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/controller/ResiMineGridController.java @@ -3,13 +3,17 @@ package com.epmet.modules.grid.controller; import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.AllGridsByUserIdResultDTO; import com.epmet.dto.result.LatestGridInfoResultDTO; import com.epmet.modules.grid.service.ResiMineGridService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * @Description 居民端用户网格信息相关接口入口 * @Author yinzuomei @@ -32,4 +36,15 @@ public class ResiMineGridController { public Result getLatestGridInfo(@LoginUser TokenDto tokenDto){ return resiMineGridService.getLatestGridInfo(tokenDto); } + + /** + * @return + * @param tokenDto + * @Description 获取用户访问过的所有网格列表 + * @Author sun + **/ + @PostMapping("allgrids") + public Result> allGrids(@LoginUser TokenDto tokenDto){ + return resiMineGridService.allGrids(tokenDto.getUserId()); + } } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java index 29597c8e87..73a98ad7a4 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/ResiMineGridService.java @@ -2,8 +2,11 @@ package com.epmet.modules.grid.service; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.AllGridsByUserIdResultDTO; import com.epmet.dto.result.LatestGridInfoResultDTO; +import java.util.List; + /** * @Description 居民端用户网格信息service * @Author yinzuomei @@ -18,4 +21,12 @@ public interface ResiMineGridService { * @return com.epmet.commons.tools.utils.Result */ Result getLatestGridInfo(TokenDto tokenDto); + + /** + * @return + * @param userId + * @Description 获取用户访问过的所有网格列表 + * @Author sun + **/ + Result> allGrids(String userId); } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java index a0925b8f13..2207f5c491 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/grid/service/impl/ResiMineGridServiceImpl.java @@ -1,11 +1,14 @@ package com.epmet.modules.grid.service.impl; import com.epmet.commons.tools.constant.AppClientConstant; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.result.AllGridsByUserIdResultDTO; import com.epmet.dto.result.LatestGridInfoResultDTO; import com.epmet.modules.feign.EpmetUserFeignClient; +import com.epmet.modules.feign.GovOrgFeignClient; import com.epmet.modules.grid.service.ResiMineGridService; import com.epmet.modules.utils.ModuleConstant; import org.apache.commons.lang3.StringUtils; @@ -14,6 +17,9 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.List; + /** * @Description 居民端用户网格信息service * @Author yinzuomei @@ -24,6 +30,8 @@ public class ResiMineGridServiceImpl implements ResiMineGridService { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private EpmetUserFeignClient epmetUserFeignClient; + @Autowired + private GovOrgFeignClient govOrgFeignClient; /** * @param tokenDto @@ -44,4 +52,33 @@ public class ResiMineGridServiceImpl implements ResiMineGridService { } return epmetUserFeignClient.getLatestGridInfoByUserId(tokenDto.getUserId()); } + + /** + * @return + * @param userId + * @Description 获取用户访问过的所有网格列表 + * @Author sun + **/ + @Override + public Result> allGrids(String userId) { + Result> result = new Result>(); + //1:调用epmet-user服务,根据用户Id查询用户访问过的网格列表Id集合 + Result> resultGridIds = epmetUserFeignClient.getGridsByUserId(userId); + if (!resultGridIds.success()) { + throw new RenException(ModuleConstant.SELECT_EXCEPTION); + } + if (null == resultGridIds.getData() || resultGridIds.getData().size() < NumConstant.ONE) { + return result.ok(new ArrayList()); + } + List gridIdList = resultGridIds.getData(); + //2:调用gov-org服务,根据网格Id集合获取网格列表信息 + Result> resultGrids = govOrgFeignClient.getGridListByGridIds(gridIdList); + if (!resultGrids.success()) { + throw new RenException(ModuleConstant.SELECT_EXCEPTION); + } + if (null == resultGrids.getData() || resultGrids.getData().size() < NumConstant.ONE) { + return result.ok(new ArrayList()); + } + return result.ok(resultGrids.getData()); + } } diff --git a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java index 9fb0533b25..0d9d91c424 100644 --- a/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java +++ b/epmet-module/resi-mine/resi-mine-server/src/main/java/com/epmet/modules/utils/ModuleConstant.java @@ -28,4 +28,9 @@ public interface ModuleConstant extends Constant { */ String FOR_RESI_CALL="当前接口只限居民端调用"; + /** + * 调用epmet-user服务,查询用户访问过的网格列表失败 + */ + String SELECT_EXCEPTION = "获取用户访问过的网格列表失败"; + } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RolesUsersListFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RolesUsersListFormDTO.java new file mode 100644 index 0000000000..7e395bb3f7 --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/RolesUsersListFormDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.form; + +import lombok.Data; + +import java.io.Serializable; +import java.util.List; + +/** + * @Description 特定的角色 特定的员工 + * @ClassName RolesUsersListFormDTO + * @Auth wangc + * @Date 2020-04-29 23:40 + */ +@Data +public class RolesUsersListFormDTO implements Serializable { + private static final long serialVersionUID = -7375096282690016010L; + + /** + * 客户Id + * */ + private String CustomerId; + + /** + * 角色列表 + * */ + private List roleKeys; + + /** + * 人员Id列表 + */ + private List userIds; +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/GridLatestController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/GridLatestController.java index 6ef6cdab25..6d0344839d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/GridLatestController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/GridLatestController.java @@ -103,4 +103,16 @@ public class GridLatestController { public Result getLatestGridInfoByUserId(@PathVariable("userId") String userId){ return gridLatestService.getLatestGridInfoByUserId(userId); } + + /** + * @return + * @param userId + * @Description 根据用户Id查询用户访问过的网格列表Id集合 + * @Author sun + **/ + @PostMapping("getgridsbyuserid/{userId}") + public Result> getGridsByUserId(@PathVariable("userId") String userId){ + return gridLatestService.getGridsByUserId(userId); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java index e332d0ffb5..65c557df7e 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java @@ -7,6 +7,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.dto.GovStaffRoleDTO; import com.epmet.dto.form.CommonUserFormDTO; +import com.epmet.dto.form.RolesUsersListFormDTO; import com.epmet.dto.form.StaffRoleFormDTO; import com.epmet.dto.result.GovStaffRoleResultDTO; import com.epmet.dto.result.StaffRolesResultDTO; @@ -88,4 +89,15 @@ public class StaffRoleController { ValidatorUtils.validateEntity(commonUserFormDTO); return staffRoleService.getStaffRoles(commonUserFormDTO); } + + /** + * @Description 查找具有特定角色的人员Id(可用) + * @param rolesUsersListFormDTO + * @author wangc + * @date 2020.04.29 23:49 + **/ + @PostMapping("specificrolesstaffs") + public Result> specificRolesStaffs(@RequestBody RolesUsersListFormDTO rolesUsersListFormDTO){ + return staffRoleService.getSpecificRolesStaffs(rolesUsersListFormDTO); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/GridLatestDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/GridLatestDao.java index 86437e3d25..735be62827 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/GridLatestDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/GridLatestDao.java @@ -22,6 +22,9 @@ import com.epmet.dto.GridLatestDTO; import com.epmet.dto.result.LatestGridInfoResultDTO; import com.epmet.entity.GridLatestEntity; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** * 最近访问网格表 记录用户访问网格的最近一次记录,对同一网格只记录一条记录,同一网格每次只更新最近一次访问的时间 @@ -36,8 +39,6 @@ public interface GridLatestDao extends BaseDao { int updateByLatestId(GridLatestDTO dto); - GridLatestEntity getGridLatestByIds(GridLatestDTO formDTO); - /** * @return com.epmet.dto.result.LatestGridInfoResultDTO * @param userId @@ -46,4 +47,12 @@ public interface GridLatestDao extends BaseDao { * @Date 2020/3/24 13:17 **/ LatestGridInfoResultDTO selectLatestGridInfoByUserId(String userId); + + /** + * @return + * @param userId + * @Description 根据用户Id查询用户访问过的网格列表Id集合 + * @Author sun + **/ + List selectAllGridsByUserId(@Param("userId") String userId); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java index 8196b45787..3abcf39a6b 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java @@ -66,4 +66,14 @@ public interface StaffRoleDao extends BaseDao { //@DataFilter(tableAliases = { "role" }) StaffRolesResultDTO getStaffRoles(CommonUserFormDTO commonUserFormDTO); + /** + * @Description 查询特定身份的员工Id + * @param roleKeys + * @param userIds + * @param customerId + * @author wangc + * @date 2020.04.29 23:38 + **/ + List selectSpecificRolesStaffs(@Param("roleKeys")List roleKeys,@Param("userIds")List userIds,@Param("customerId")String customerId); + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/GridLatestService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/GridLatestService.java index fc41f0c32d..1833106279 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/GridLatestService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/GridLatestService.java @@ -112,4 +112,12 @@ public interface GridLatestService extends BaseService { **/ Result getLatestGridInfoByUserId(String userId); + /** + * @return + * @param userId + * @Description 根据用户Id查询用户访问过的网格列表Id集合 + * @Author sun + **/ + Result> getGridsByUserId(String userId); + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java index 39680248cb..04dfb2d94f 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java @@ -23,6 +23,7 @@ import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.StaffRoleDTO; import com.epmet.dto.form.CommonUserFormDTO; +import com.epmet.dto.form.RolesUsersListFormDTO; import com.epmet.dto.result.GovStaffRoleResultDTO; import com.epmet.dto.result.StaffRolesResultDTO; import com.epmet.entity.StaffRoleEntity; @@ -120,4 +121,13 @@ public interface StaffRoleService extends BaseService { * @Date 2020.04.26 10:59 **/ Result getStaffRoles(CommonUserFormDTO userParam); + + /** + * @Description 查找具有特定角色的人员Id(可用) + * @param rolesUsersListFormDTO + * @return Result + * @author wangc + * @date 2020.04.29 23:44 + **/ + Result> getSpecificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO); } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/GridLatestServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/GridLatestServiceImpl.java index 345c06e670..a14a1b002c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/GridLatestServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/GridLatestServiceImpl.java @@ -21,10 +21,10 @@ package com.epmet.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; -import com.epmet.commons.tools.constant.FieldConstant; import com.epmet.commons.tools.utils.Result; import com.epmet.constant.GridVisitedConstant; import com.epmet.dao.GridLatestDao; @@ -160,4 +160,16 @@ public class GridLatestServiceImpl extends BaseServiceImpl().ok(latestGridInfoResultDTO); } + /** + * @return + * @param userId + * @Description 根据用户Id查询用户访问过的网格列表Id集合 + * @Author sun + **/ + @Override + public Result> getGridsByUserId(String userId) { + List gridList = baseDao.selectAllGridsByUserId(userId); + return new Result>().ok(gridList); + } + } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java index f76d6545c5..01a44db29a 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java @@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.epmet.commons.mybatis.annotation.DataFilter; import com.epmet.commons.mybatis.entity.DataScope; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; +import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.constant.FieldConstant; @@ -29,6 +30,7 @@ import com.epmet.commons.tools.utils.Result; import com.epmet.dao.StaffRoleDao; import com.epmet.dto.StaffRoleDTO; import com.epmet.dto.form.CommonUserFormDTO; +import com.epmet.dto.form.RolesUsersListFormDTO; import com.epmet.dto.result.GovStaffRoleResultDTO; import com.epmet.dto.result.StaffRolesResultDTO; import com.epmet.entity.StaffRoleEntity; @@ -39,6 +41,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Map; @@ -136,4 +139,22 @@ public class StaffRoleServiceImpl extends BaseServiceImpl().ok(baseDao.getStaffRoles(userParam)); } + /** + * @Description 查找具有特定角色的人员Id(可用) + * @param rolesUsersListFormDTO + * @return Result + * @author wangc + * @date 2020.04.29 23:44 + **/ + @Override + public Result> getSpecificRolesStaffs(RolesUsersListFormDTO rolesUsersListFormDTO) { + if(null != rolesUsersListFormDTO.getRoleKeys() && null != rolesUsersListFormDTO.getUserIds() + && rolesUsersListFormDTO.getRoleKeys().size() > NumConstant.ZERO + && rolesUsersListFormDTO.getUserIds().size() > NumConstant.ZERO){ + return new Result>().ok( + baseDao.selectSpecificRolesStaffs(rolesUsersListFormDTO.getRoleKeys(),rolesUsersListFormDTO.getUserIds(),rolesUsersListFormDTO.getCustomerId())); + } + return new Result>().ok(new ArrayList<>()); + } + } \ No newline at end of file diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/GridLatestDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/GridLatestDao.xml index 893ae7819b..b274779697 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/GridLatestDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/GridLatestDao.xml @@ -71,4 +71,14 @@ gl.LATEST_TIME DESC LIMIT 1 + + diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml index 6cbb4c047d..6dcb9625d0 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml @@ -68,4 +68,38 @@ AND staff.USER_ID = #{userId} AND staff.CUSTOMER_ID = #{customerId} + + + \ No newline at end of file