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 43c5468cc3..3a213b5191 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 @@ -138,7 +138,9 @@ public enum EpmetErrorCode { REPEATED_SUBMIT_ERROR(8804, "请勿重复提交"), CUSTOMER_VALIDATE_ERROR(8805, "内部数据校验异常"), CATEGORY_IS_NULL(8806, "请设置分类"), - + EXISTED_SPECIAL_PROJECT(8807, "已经添加过此专题"), + CAN_NOT_DEL_SPECIAL_PROJECT(8808, "您没有权限删除此专题"), + TAG_NOT_EXIST(8809,"标签不存在"), //公众号 865..开头的码 PUBLIC_NOT_EXISTS(8651,"手机号未注册,请先完成信息注册"), diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffRoleListResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffRoleListResultDTO.java new file mode 100644 index 0000000000..24547c5dcc --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffRoleListResultDTO.java @@ -0,0 +1,40 @@ +package com.epmet.dataaggre.dto.epmetuser.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 根据客户Id staffId查询人员在客户下的角色列表-接口返参 + * @Author sun + */ +@Data +public class StaffRoleListResultDTO implements Serializable { + private static final long serialVersionUID = -2049883620062097446L; + + /** + * 客户Id + * */ + private String customerId; + /** + * 员工Id + * */ + private String staffId; + /** + * 员工姓名 + * */ + private String staffName; + /** + * 角色Id + * */ + private String roleId; + /** + * 角色Key + * */ + private String roleKey; + /** + * 角色名称 + * */ + private String roleName; + +} diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/StaffAgencyGridListResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/StaffAgencyGridListResultDTO.java new file mode 100644 index 0000000000..ec17ca86db --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/StaffAgencyGridListResultDTO.java @@ -0,0 +1,48 @@ +package com.epmet.dataaggre.dto.govorg.result; + +import lombok.Data; + +import java.io.Serializable; +import java.util.ArrayList; +import java.util.List; + +/** + * 专题设置-组织网格切换树结构-接口返参 + * @author sun + */ +@Data +public class StaffAgencyGridListResultDTO implements Serializable { + private static final long serialVersionUID = 1L; + + //机关组织Id + private String agencyId = ""; + //机关组织名称 + private String agencyName = ""; + //机关组织名称 + private Boolean isOpt = true; + //网格:grid;社区级:community, 乡(镇、街道)级:street, 区县级: district, 市级: city 省级:province + private String orgLevel = ""; + //当前组织id的上级id,如果当前是跟组织返回0 + private String pid = ""; + //当前组织id的所有上级id,如果当前是跟组织返回0 + private String pids = ""; + //当前机关的下属网格列表 + private List gridList = new ArrayList<>(); + //当前组织的所有下级组织信息(递归) + private List subAgencyGridList = new ArrayList<>(); + + @Data + public static class GridResultDTO{ + //机关组织Id + private String gridId = ""; + //机关组织名称 + private String gridName = ""; + //网格:grid;社区级:community, 乡(镇、街道)级:street, 区县级: district, 市级: city 省级:province + private String orgLevel = ""; + //当前网格所属的组织id + private String pid = ""; + //当前网格所有上级 + private String pids = ""; + } + +} diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java index 064669c50d..1f044a21e2 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/controller/GovOrgController.java @@ -14,12 +14,11 @@ import com.epmet.dataaggre.dto.govorg.form.NextAreaCodeFormDTO; import com.epmet.dataaggre.dto.govorg.result.AgencyGridListResultDTO; import com.epmet.dataaggre.dto.govorg.result.GridMemberDataAnalysisResultDTO; import com.epmet.dataaggre.dto.govorg.result.NextAreaCodeResultDTO; +import com.epmet.dataaggre.dto.govorg.result.StaffAgencyGridListResultDTO; import com.epmet.dataaggre.enums.GridMemberDataAnalysisEnums; import com.epmet.dataaggre.service.AggreGridService; import com.epmet.dataaggre.service.govorg.GovOrgService; -import com.epmet.dto.result.PublicAndInternalFileResultDTO; import org.apache.commons.lang3.StringUtils; -import org.apache.xmlbeans.impl.xb.xsdschema.Public; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.PostMapping; @@ -29,7 +28,6 @@ import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; -import java.util.PriorityQueue; /** * @Author zxc @@ -119,4 +117,15 @@ public class GovOrgController { List resultList = aggreGridService.getGridMemberDataAnalysis(gridIds, searchedStaffName, loginUserId, month, sortType.getValue(), pageNo, pageSize); return new Result().ok(resultList); } + + /** + * @Param tokenDto + * @Description 专题设置-组织网格切换树结构 + * @author sun + */ + @PostMapping("staffagencygridlist") + public Result staffAgencyGridList(@LoginUser TokenDto tokenDto) { + return new Result().ok(govOrgService.staffAgencyGridList(tokenDto)); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java index ac0cf9a846..e6435c6507 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/epmetuser/StaffRoleDao.java @@ -18,6 +18,7 @@ package com.epmet.dataaggre.dao.epmetuser; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dataaggre.dto.epmetuser.result.StaffRoleListResultDTO; import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO; import com.epmet.dataaggre.entity.epmetuser.StaffRoleEntity; import org.apache.ibatis.annotations.Mapper; @@ -40,4 +41,11 @@ public interface StaffRoleDao extends BaseDao { * @author sun */ List staffGridRole(@Param("forms") List forms, @Param("staffName") String staffName); + + /** + * @Description 根据客户Id和staffId查询工作人员拥有的角色列表 + * @Author sun + **/ + List selectStaffRoleList(@Param("customerId") String customerId, @Param("staffId") String staffId); + } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerAgencyDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerAgencyDao.java index 7d705c2aa3..8287c13882 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerAgencyDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerAgencyDao.java @@ -19,6 +19,7 @@ package com.epmet.dataaggre.dao.govorg; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dataaggre.dto.govorg.result.AgencyGridResultDTO; +import com.epmet.dataaggre.dto.govorg.result.StaffAgencyGridListResultDTO; import com.epmet.dataaggre.entity.govorg.CustomerAgencyEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -52,4 +53,10 @@ public interface CustomerAgencyDao extends BaseDao { List selectNextAgency(@Param("customerId")String customerId, @Param("pid")String pid); + + /** + * @Author sun + * @Description 递归查询当前组织的直属下级组织列表 + **/ + List selectSubAgencyList(@Param("subAgencyPids") String subAgencyPids); } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerGridDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerGridDao.java index 3fcc8655ed..56d07daafb 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerGridDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerGridDao.java @@ -21,6 +21,7 @@ import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.result.GridInfoResultDTO; import com.epmet.dataaggre.dto.govorg.result.GridsInfoListResultDTO; +import com.epmet.dataaggre.dto.govorg.result.StaffAgencyGridListResultDTO; import com.epmet.dataaggre.entity.govorg.CustomerGridEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -68,4 +69,11 @@ public interface CustomerGridDao extends BaseDao { * @author sun */ List getGridInfoList(@Param("gridIds") List gridIds, @Param("staffId") String staffId); + + /** + * @Author sun + * @Description 查询当前组织下网格列表 + **/ + List getGridListByAgencyId(@Param("agencyId") String agencyId); + } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java index 233c68d67d..a6757c8cca 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/dao/govorg/CustomerStaffGridDao.java @@ -19,6 +19,7 @@ package com.epmet.dataaggre.dao.govorg; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dataaggre.dto.govorg.result.GridStaffResultDTO; +import com.epmet.dataaggre.dto.govorg.result.StaffAgencyGridListResultDTO; import com.epmet.dataaggre.entity.govorg.CustomerStaffGridEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -39,4 +40,10 @@ public interface CustomerStaffGridDao extends BaseDao { * @author sun */ List selectGridStaffByGridIds(@Param("gridIds") List gridIds); + + /** + * @Description 查询工作人员参与的网格列表信息 + * @author sun + */ + List getStaffGridList(@Param("agencyId") String agencyId, @Param("staffId") String staffId); } \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java index 027e36fb8a..10f164c6a9 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/EpmetUserService.java @@ -81,4 +81,9 @@ public interface EpmetUserService { */ OpenStaffDetailResultDTO openStaffDetail(OpenStaffDetailFormDTO formDTO); + /** + * @Description 根据客户Id和staffId查询工作人员拥有的角色列表 + * @Author sun + **/ + List getStaffRoleList(String customerId, String userId); } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java index 326bb24f20..281f24cc6d 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/epmetuser/impl/EpmetUserServiceImpl.java @@ -365,5 +365,14 @@ public class EpmetUserServiceImpl implements EpmetUserService { return resultDTO; } + /** + * @Description 根据客户Id和staffId查询工作人员拥有的角色列表 + * @Author sun + **/ + @Override + public List getStaffRoleList(String customerId, String userId) { + return staffRoleDao.selectStaffRoleList(customerId, userId); + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java index 8cfd4a2276..2e5422376b 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/GovOrgService.java @@ -1,5 +1,6 @@ package com.epmet.dataaggre.service.govorg; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.form.NextAreaCodeFormDTO; @@ -72,4 +73,12 @@ public interface GovOrgService { * @author sun */ CustomerAgencyDTO gridByAgencyId(String customerId, String staffId); + + /** + * @Param tokenDto + * @Description 专题设置-组织网格切换树结构 + * @author sun + */ + StaffAgencyGridListResultDTO staffAgencyGridList(TokenDto tokenDto); + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java index 31b5f9272c..da5a41d541 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/java/com/epmet/dataaggre/service/govorg/impl/GovOrgServiceImpl.java @@ -5,12 +5,13 @@ import com.epmet.commons.dynamic.datasource.annotation.DataSource; import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.RenException; -import com.epmet.commons.tools.utils.Result; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.dataaggre.constant.DataSourceConstant; import com.epmet.dataaggre.dao.govorg.CustomerAgencyDao; import com.epmet.dataaggre.dao.govorg.CustomerGridDao; import com.epmet.dataaggre.dao.govorg.CustomerStaffAgencyDao; import com.epmet.dataaggre.dao.govorg.CustomerStaffGridDao; +import com.epmet.dataaggre.dto.epmetuser.result.StaffRoleListResultDTO; import com.epmet.dataaggre.dto.govorg.CustomerAgencyDTO; import com.epmet.dataaggre.dto.govorg.CustomerGridDTO; import com.epmet.dataaggre.dto.govorg.CustomerStaffAgencyDTO; @@ -285,4 +286,84 @@ public class GovOrgServiceImpl implements GovOrgService { return customerStaffAgencyDao.selectAgencyByStaffId(customerId, staffId); } + /** + * @Param tokenDto + * @Description 专题设置-组织网格切换树结构 + * @author sun + */ + @Override + public StaffAgencyGridListResultDTO staffAgencyGridList(TokenDto tokenDto) { + StaffAgencyGridListResultDTO resultDTO = new StaffAgencyGridListResultDTO(); + //1.查询当前人员所属组织信息 + CustomerAgencyDTO agencyDTO = customerStaffAgencyDao.selectAgencyByStaffId(tokenDto.getCustomerId(), tokenDto.getUserId()); + if (null == agencyDTO) { + throw new RenException("未查询到当前工作人员所属组织信息"); + } + + //2.获取当前人员工作端角色列表信息 + List roleList = epmetUserService.getStaffRoleList(tokenDto.getCustomerId(), tokenDto.getUserId()); + if (roleList.size() < NumConstant.ONE) { + return resultDTO; + } + + //3.判断是否具有党建负责人或党建宣传员角色 + //机关党建负责人角色 + boolean party = false; + //党建宣传员角色 + boolean gridParty = false; + for (StaffRoleListResultDTO role : roleList) { + if ("party_principals".equals(role.getRoleKey())) { + party = true; + } + if ("grid_party_director".equals(role.getRoleKey())) { + gridParty = true; + } + } + if (!party && !gridParty) { + return resultDTO; + } + + //4.根据不同角色查询不同数据 + if (party) { + //4.1:查询当前机关的网格列表以及所有下级机关的网格列表 + //当前机关下网格列表 + List gridList = customerGridDao.getGridListByAgencyId(agencyDTO.getId()); + resultDTO.setGridList(gridList); + //递归查询当前组织的下级组织以及每个下级组织对应的网格列表 + //根组织pids为空 + List subAgencyGridList = getSubAgencyAndGridList(("".equals(agencyDTO.getPids()) ? "" : agencyDTO.getPids() + ":") + agencyDTO.getId()); + resultDTO.setSubAgencyGridList(subAgencyGridList); + } else if (gridParty) { + resultDTO.setIsOpt(false); + //4.2:查询人员在当前机关下参与的网格列表 + List gridList = customerStaffGridDao.getStaffGridList(agencyDTO.getId(), tokenDto.getUserId()); + resultDTO.setGridList(gridList); + } + + //5.封装数据并返回 + resultDTO.setAgencyId(agencyDTO.getId()); + resultDTO.setAgencyName(agencyDTO.getOrganizationName()); + resultDTO.setOrgLevel(agencyDTO.getLevel()); + resultDTO.setPid(agencyDTO.getPid()); + resultDTO.setPids(agencyDTO.getPids()); + + return resultDTO; + } + /** + * @Author sun + * @Description 递归查询当前组织的下一级组织、网格列表 + **/ + private List getSubAgencyAndGridList(String subAgencyPids) { + List subAgencyList = customerAgencyDao.selectSubAgencyList(subAgencyPids); + if (subAgencyList.size() > NumConstant.ZERO) { + for (StaffAgencyGridListResultDTO sub : subAgencyList) { + List gridList = customerGridDao.getGridListByAgencyId(sub.getAgencyId()); + sub.setGridList(gridList); + List subAgency = getSubAgencyAndGridList(sub.getPids() + ":" + sub.getAgencyId()); + sub.setSubAgencyGridList(subAgency); + } + } + return subAgencyList; + } + } diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml index 7805f832f4..fe5ecb1ff5 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/epmetuser/StaffRoleDao.xml @@ -22,4 +22,28 @@ + + \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerAgencyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerAgencyDao.xml index 3033937191..58856e4c7c 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerAgencyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerAgencyDao.xml @@ -45,4 +45,21 @@ AND ca.PID = #{pid} order by ca.CREATED_TIME asc + + + \ No newline at end of file diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerGridDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerGridDao.xml index 2ca96e0edd..0fa266afc8 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerGridDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerGridDao.xml @@ -147,4 +147,20 @@ + + diff --git a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml index 763c06694b..ce5155ccb7 100644 --- a/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml +++ b/epmet-module/data-aggregator/data-aggregator-server/src/main/resources/mapper/govorg/CustomerStaffAgencyDao.xml @@ -19,7 +19,14 @@ + + \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java index 1b99ac96f3..c11cdb7874 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java @@ -352,4 +352,21 @@ public interface GovOrgOpenFeignClient { **/ @GetMapping(value = "/gov/org/customeragency/getareacodeswitch/{customerId}") Result getAreaCodeSwitch(@PathVariable("customerId")String customerId); + + /** + * @Description 根据网格ID查询pids + * @Param gridId + * @author zxc + * @date 2021/7/16 9:52 上午 + */ + @PostMapping(value = "/gov/org/customergrid/pidsbygrid") + Result selectPidsByGridId(@RequestParam("gridId") String gridId); + + /** + * 工作人员的个人信息 + * @param fromDTO + * @return + */ + @PostMapping("/gov/org/staff/mine") + Result queryStaffProfile(@RequestBody StaffInfoFromDTO fromDTO); } diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java index 0d13438885..8110e53936 100644 --- a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/feign/fallback/GovOrgOpenFeignClientFallback.java @@ -209,4 +209,14 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { public Result getAreaCodeSwitch(String customerId) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getAreaCodeSwitch", customerId); } + + @Override + public Result queryStaffProfile(StaffInfoFromDTO fromDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "mine", fromDTO); + } + + @Override + public Result selectPidsByGridId(String gridId) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "selectPidsByGridId", gridId); + } } 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 eec27314ba..bb06477812 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 @@ -241,4 +241,15 @@ public class CustomerGridController { List resultDTOS = customerGridService.listGridIdsInCommunity(gridId); return new Result>().ok(resultDTOS); } + + /** + * @Description 根据网格ID查询pids + * @Param gridId + * @author zxc + * @date 2021/7/16 9:52 上午 + */ + @PostMapping("pidsbygrid") + public Result selectPidsByGridId(@RequestParam("gridId") String gridId){ + return new Result().ok(customerGridService.selectPidsByGridId(gridId)); + } } 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 4277be98c6..ec16bf0dcd 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 @@ -268,4 +268,12 @@ public interface CustomerGridDao extends BaseDao { * @date 2021/4/19 11:56 上午 */ CustomerGridDTO getGridBaseInfoById(@Param("gridId") String gridId); + + /** + * @Description 根据网格ID查询pids + * @Param gridId + * @author zxc + * @date 2021/7/16 9:52 上午 + */ + String selectPidsByGridId(@Param("gridId")String gridId); } 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 4799c38890..b892fa84f8 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 @@ -287,4 +287,12 @@ public interface CustomerGridService extends BaseService { * @date 2021/4/19 11:53 上午 */ Result getBaseInfo(CustomerGridFormDTO customerGridFormDTO); + + /** + * @Description 根据网格ID查询pids + * @Param gridId + * @author zxc + * @date 2021/7/16 9:52 上午 + */ + String selectPidsByGridId(String gridId); } 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 c0a987206b..007aabd4b9 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 @@ -707,4 +707,18 @@ public class CustomerGridServiceImpl extends BaseServiceImpl getBaseInfo(CustomerGridFormDTO customerGridFormDTO) { return new Result().ok(ConvertUtils.sourceToTarget(baseDao.selectById(customerGridFormDTO.getGridId()), CustomerGridDTO.class)); } + + /** + * @Description 根据网格ID查询pids + * @Param gridId + * @author zxc + * @date 2021/7/16 9:52 上午 + */ + @Override + public String selectPidsByGridId(String gridId) { + if (StringUtils.isNotBlank(gridId)){ + return baseDao.selectPidsByGridId(gridId); + } + return ""; + } } 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 2036e76fa6..6c348a0489 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 @@ -314,6 +314,7 @@ INNER JOIN customer_agency ca ON cg.pid = ca.id WHERE cg.del_flag = '0' AND ca.del_flag = '0' + AND cg.SYNC_FLAG='1' AND cg.id IN #{id} @@ -428,6 +429,7 @@ ) agency ON grid.PID = agency.ID WHERE grid.del_flag = 0 + and grid.SYNC_FLAG='1' AND grid.area_code LIKE CONCAT(#{areaCode},'%') @@ -467,6 +469,7 @@ ) agency ON a.PID = agency.ID WHERE a.del_flag = 0 + and a.SYNC_FLAG='1' AND a.customer_id = #{customerId} ) AS c ORDER BY CONVERT ( gridName USING gbk ) ASC @@ -576,4 +579,9 @@ cg.ID = #{gridId} AND cg.DEL_FLAG = '0' + + + diff --git a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java index ca84aee3b0..c7f174086d 100644 --- a/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java +++ b/epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/LatestListFormDTO.java @@ -37,5 +37,7 @@ public class LatestListFormDTO implements Serializable { */ private Integer pageSize = 3; + private Integer num = 0; + } diff --git a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java index 953104da7b..d721ccad51 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java +++ b/epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java @@ -1014,7 +1014,8 @@ public class ProjectServiceImpl extends BaseServiceImpl getClosedProjectList(LatestListFormDTO formDTO) { - + int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize(); + formDTO.setNum(pageIndex); return baseDao.selectClosedProjectList(formDTO); } diff --git a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml index 11eeea95b4..265ef3bcc6 100644 --- a/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml +++ b/epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml @@ -155,19 +155,24 @@ + + + + + + + diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml new file mode 100644 index 0000000000..706460004d --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/SpecialSubjectDao.xml @@ -0,0 +1,41 @@ + + + + + + + update special_subject set del_flag='1',UPDATED_BY=#{userId},UPDATED_TIME=Now() + where id=#{id} + + + + + \ No newline at end of file diff --git a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/PublishSuggestionFormDTO.java b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/PublishSuggestionFormDTO.java index 1261a5e83f..367a1590d3 100644 --- a/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/PublishSuggestionFormDTO.java +++ b/epmet-module/resi-hall/resi-hall-client/src/main/java/com/epmet/dto/form/PublishSuggestionFormDTO.java @@ -30,6 +30,6 @@ public class PublishSuggestionFormDTO implements Serializable { @NotNull(message = "是否匿名不能为空", groups = {AddUserInternalGroup.class}) private Boolean publicFlag; - @Length(max = 500, message = "内容不能超过500字", groups = {AddUserShowGroup.class}) + @Length(min = 1, max = 500, message = "内容不能为空,且不能超过500字", groups = {AddUserShowGroup.class}) private String suggestion; } diff --git a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java index 2a8bbfd988..e4e7d5628e 100644 --- a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java +++ b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/controller/ArticleController.java @@ -4,13 +4,8 @@ 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.commons.tools.validator.ValidatorUtils; -import com.epmet.dto.form.ArticlePageFormDTO; -import com.epmet.dto.form.ResiArticleDetailFormDTO; -import com.epmet.dto.form.ResiTagListFormDTO; -import com.epmet.dto.form.TagCascadeListFormDTO; -import com.epmet.dto.result.ArticleDetailResultDTO; -import com.epmet.dto.result.ArticleWithTagsResultDTO; -import com.epmet.dto.result.TagInfoResultDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; import com.epmet.feign.GovVoiceOpenFeignClient; import com.epmet.service.ArticleService; import org.springframework.beans.factory.annotation.Autowired; @@ -79,4 +74,28 @@ public class ArticleController { return govVoiceOpenFeignClient.resiArticleDetail(articleDetailFormDTO); } + /** + * @Description 专题文章列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:30 下午 + */ + @PostMapping("subjectarticlelist") + public Result> subjectArticleList(@RequestBody SubjectArticleListFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO,SubjectArticleListFormDTO.SubjectArticleListForm.class); + return new Result>().ok(articleService.subjectArticleList(formDTO)); + } + + /** + * @Description 专题列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:30 下午 + */ + @PostMapping("subjectlist") + public Result> subjectList(@RequestBody SubjectListFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, SubjectListFormDTO.SubjectListForm.class); + return new Result>().ok(articleService.subjectList(formDTO)); + } + } diff --git a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java index d84c9fb966..ff95816e96 100644 --- a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java +++ b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/ArticleService.java @@ -1,10 +1,10 @@ package com.epmet.service; import com.epmet.commons.tools.security.dto.TokenDto; -import com.epmet.dto.form.ArticlePageFormDTO; -import com.epmet.dto.form.ResiTagListFormDTO; -import com.epmet.dto.form.TagCascadeListFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.ArticleWithTagsResultDTO; +import com.epmet.dto.result.SubjectArticleListResultDTO; +import com.epmet.dto.result.SubjectListResultDTO; import com.epmet.dto.result.TagInfoResultDTO; import java.util.List; @@ -37,4 +37,20 @@ public interface ArticleService { * @date 2020.06.03 14:19 **/ List articleList(ArticlePageFormDTO articlePageFormDTO); + + /** + * @Description 专题文章列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:31 下午 + */ + List subjectArticleList(SubjectArticleListFormDTO formDTO); + + /** + * @Description 专题列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:31 下午 + */ + List subjectList(SubjectListFormDTO formDTO); } diff --git a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java index 55ad32285d..72b5def2d8 100644 --- a/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java +++ b/epmet-module/resi-voice/resi-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java @@ -5,12 +5,8 @@ import com.epmet.commons.tools.exception.RenException; import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; -import com.epmet.dto.form.ArticlePageFormDTO; -import com.epmet.dto.form.ResiTagListFormDTO; -import com.epmet.dto.form.TagCascadeListFormDTO; -import com.epmet.dto.result.ArticleListResultDTO; -import com.epmet.dto.result.ArticleWithTagsResultDTO; -import com.epmet.dto.result.TagInfoResultDTO; +import com.epmet.dto.form.*; +import com.epmet.dto.result.*; import com.epmet.feign.GovVoiceOpenFeignClient; import com.epmet.service.ArticleService; import com.epmet.utils.ModuleConstant; @@ -89,4 +85,34 @@ public class ArticleServiceImpl implements ArticleService { throw new RenException(articles.getInternalMsg()); } + /** + * @Description 专题文章列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:31 下午 + */ + @Override + public List subjectArticleList(SubjectArticleListFormDTO formDTO) { + Result> listResult = govVoiceOpenFeignClient.subjectArticleList(formDTO); + if (!listResult.success()){ + throw new RenException("resi-voice调用gov-voice查询 专题文章列表失败【"+listResult.getMsg()+"】"); + } + return listResult.getData(); + } + + /** + * @Description 专题列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:31 下午 + */ + @Override + public List subjectList(SubjectListFormDTO formDTO) { + Result> listResult = govVoiceOpenFeignClient.subjectList(formDTO); + if (!listResult.success()){ + throw new RenException("resi-voice调用gov-voice查询 专题列表失败【"+listResult.getMsg()+"】"); + } + return listResult.getData(); + } + } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/GovStaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/GovStaffRoleDao.xml index 42ad1a45ab..7712a0b58c 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/GovStaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/GovStaffRoleDao.xml @@ -132,11 +132,13 @@ gov_staff_role WHERE DEL_FLAG = 0 - AND ( - - ID = #{roleId} - + + AND ( + + ID = #{roleId} + ) +