From 807c4bf1d3c745133fec6fda3ee1a05f4ffcbfe9 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 16 Jul 2021 10:12:35 +0800 Subject: [PATCH 1/8] commit2 --- .../epmet/feign/GovOrgOpenFeignClient.java | 8 ++++++ .../GovOrgOpenFeignClientFallback.java | 5 ++++ .../dto/form/AddSpecialSubjectFormDTO.java | 11 ++++---- .../dto/form/DelSpecialSubjectFormDTO.java | 7 +++-- .../controller/SpecialSubjectController.java | 10 ++++--- .../java/com/epmet/dao/SpecialSubjectDao.java | 2 -- .../epmet/entity/SpecialSubjectEntity.java | 8 ++++-- .../impl/SpecialSubjectServiceImpl.java | 28 ++++++++++++++++--- .../resources/mapper/SpecialSubjectDao.xml | 10 ------- 9 files changed, 58 insertions(+), 31 deletions(-) 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..c246af8c09 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,12 @@ public interface GovOrgOpenFeignClient { **/ @GetMapping(value = "/gov/org/customeragency/getareacodeswitch/{customerId}") Result getAreaCodeSwitch(@PathVariable("customerId")String customerId); + + /** + * 工作人员的个人信息 + * @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..c83d34ca95 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,9 @@ 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); + } } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java index ba663245db..1186ff3cdb 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java @@ -23,6 +23,11 @@ public class AddSpecialSubjectFormDTO implements Serializable { */ @NotBlank(message = "orgId不能为空", groups = AddUserInternalGroup.class) private String orgId; + /** + * orgId的所有上级id + */ + @NotBlank(message = "pids不能为空", groups = QuerySpecialSubFormDTO.AddUserInternalGroup.class) + private String pids; /** * 网格:grid;社区级:community, 乡(镇、街道)级:street, 区县级: district, 市级: city 省级:province @@ -43,12 +48,6 @@ public class AddSpecialSubjectFormDTO implements Serializable { @NotBlank(message = "从token中获取userId为空", groups = AddUserInternalGroup.class) private String addUserId; - /** - * 从TokenDto中获取当前用户所属的agencyId - */ - @NotBlank(message = "从token中获取用户所属组织id为空", groups = AddUserInternalGroup.class) - private String addUserAgencyId; - @NotBlank(message = "从token中获取客户id为空", groups = AddUserInternalGroup.class) private String customerId; } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DelSpecialSubjectFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DelSpecialSubjectFormDTO.java index 4c3d964bc0..fc2f919147 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DelSpecialSubjectFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/DelSpecialSubjectFormDTO.java @@ -30,10 +30,13 @@ public class DelSpecialSubjectFormDTO implements Serializable { @NotBlank(message = "orgId不能为空", groups = AddUserInternalGroup.class) private String orgId; - + // 以下属性从token中获取 /** * 从TokenDto中获取当前用户id */ - @NotBlank(message = "从token中获取userId为空", groups = AddSpecialSubjectFormDTO.AddUserInternalGroup.class) + @NotBlank(message = "从token中获取userId为空", groups = AddUserInternalGroup.class) private String userId; + @NotBlank(message = "从token中获取客户id为空", groups = AddUserInternalGroup.class) + private String customerId; + } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java index 018c88bc33..db715e55d0 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/SpecialSubjectController.java @@ -18,7 +18,7 @@ package com.epmet.controller; import com.epmet.commons.tools.annotation.LoginUser; -import com.epmet.commons.tools.security.dto.GovTokenDto; +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.AddSpecialSubjectFormDTO; @@ -57,9 +57,9 @@ public class SpecialSubjectController { * @Date 2021/7/15 15:31 **/ @PostMapping("add") - public Result addSpecialSubject(@LoginUser GovTokenDto tokenDto, @RequestBody AddSpecialSubjectFormDTO formDTO) { + public Result addSpecialSubject(@LoginUser TokenDto tokenDto, @RequestBody AddSpecialSubjectFormDTO formDTO) { formDTO.setAddUserId(tokenDto.getUserId()); - formDTO.setAddUserAgencyId(tokenDto.getAgencyId()); + formDTO.setCustomerId(tokenDto.getCustomerId()); ValidatorUtils.validateEntity(formDTO, AddSpecialSubjectFormDTO.AddUserInternalGroup.class); return new Result().ok(specialSubjectService.addSpecialSubject(formDTO)); } @@ -72,7 +72,9 @@ public class SpecialSubjectController { * @Date 2021/7/15 20:49 **/ @PostMapping("del") - public Result delSpecialSubject(@RequestBody DelSpecialSubjectFormDTO formDTO){ + public Result delSpecialSubject(@LoginUser TokenDto tokenDto, @RequestBody DelSpecialSubjectFormDTO formDTO){ + formDTO.setUserId(tokenDto.getUserId()); + formDTO.setCustomerId(tokenDto.getCustomerId()); ValidatorUtils.validateEntity(formDTO); specialSubjectService.delSpecialSubject(formDTO); return new Result(); diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java index a759dd78fd..fe2da402c6 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/SpecialSubjectDao.java @@ -34,8 +34,6 @@ import java.util.List; @Mapper public interface SpecialSubjectDao extends BaseDao { - SpecialSubjectEntity selectByOrgIdAndTagId(@Param("orgId") String orgId, @Param("tagId") String tagId); - int delSpecialSubject(@Param("id") String id, @Param("userId") String userId); List queryExistedList(@Param("orgId") String orgId,@Param("notList")List notList); diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java index fd35ce2950..a97fe0df12 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java @@ -18,13 +18,10 @@ package com.epmet.entity; import com.baomidou.mybatisplus.annotation.TableName; - import com.epmet.commons.mybatis.entity.BaseEpmetEntity; import lombok.Data; import lombok.EqualsAndHashCode; -import java.util.Date; - /** * 专题表 * @@ -58,6 +55,11 @@ public class SpecialSubjectEntity extends BaseEpmetEntity { */ private String addOrgId; + /** + * 用户所在的组织或者网格的所有上级 + */ + private String addOrgPids; + /** * 网格:grid;社区级:community, 乡(镇、街道)级:street, diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index 09b7230c6a..70a15d0d08 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -27,15 +27,19 @@ import com.epmet.commons.tools.exception.EpmetErrorCode; 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.utils.Result; import com.epmet.dao.SpecialSubjectDao; import com.epmet.dto.SpecialSubjectDTO; import com.epmet.dto.TagCustomerDTO; import com.epmet.dto.form.AddSpecialSubjectFormDTO; import com.epmet.dto.form.DelSpecialSubjectFormDTO; import com.epmet.dto.form.QuerySpecialSubFormDTO; +import com.epmet.dto.form.StaffInfoFromDTO; import com.epmet.dto.result.AddSpecialSubjectResultDTO; +import com.epmet.dto.result.MineResultDTO; import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.entity.SpecialSubjectEntity; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.SpecialSubjectService; import com.epmet.service.TagCustomerService; import lombok.extern.slf4j.Slf4j; @@ -62,6 +66,9 @@ import java.util.stream.Collectors; public class SpecialSubjectServiceImpl extends BaseServiceImpl implements SpecialSubjectService { @Autowired private TagCustomerService tagCustomerService; + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; + @Override public PageData page(Map params) { @@ -131,13 +138,26 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl havedList=this.queryExistedList(querySpecialSubFormDTO); + List haveTagIds=havedList.stream().map(WorkSpecialSubjectResultDTO::getTagId).distinct().collect(Collectors.toList()); + haveTagIds.forEach(tagId->{ + if(tagId.equals(formDTO.getTagId())){ + throw new RenException(EpmetErrorCode.EXISTED_SPECIAL_PROJECT.getCode(), EpmetErrorCode.EXISTED_SPECIAL_PROJECT.getMsg()); + } + }); // 3、保存 SpecialSubjectEntity insertEntity = ConvertUtils.sourceToTarget(formDTO, SpecialSubjectEntity.class); + StaffInfoFromDTO staffInfoFromDTO = new StaffInfoFromDTO(); + staffInfoFromDTO.setStaffId(formDTO.getAddUserId()); + Result result = govOrgOpenFeignClient.queryStaffProfile(staffInfoFromDTO); + if(result.success()&&null!=result.getData()){ + insertEntity.setAddUserAgencyId(result.getData().getAgencyId()); + } insertEntity.setAddOrgId(formDTO.getOrgId()); + insertEntity.setAddOrgPids(formDTO.getPids()); baseDao.insert(insertEntity); return new AddSpecialSubjectResultDTO(insertEntity.getId()); } 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 index c40828ae10..d3e7c4b40d 100644 --- 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 @@ -2,16 +2,6 @@ - update special_subject set del_flag='1',UPDATED_BY=#{userId},UPDATED_TIME=Now() From ea90b26e2b792c0a30c0b55b4d6c7bdcceb62f48 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 16 Jul 2021 10:36:27 +0800 Subject: [PATCH 2/8] commit3 --- .../com/epmet/dto/form/AddSpecialSubjectFormDTO.java | 2 +- .../epmet/dto/result/WorkSpecialSubjectResultDTO.java | 3 +++ .../epmet/service/impl/SpecialSubjectServiceImpl.java | 11 +++++++++-- .../src/main/resources/mapper/SpecialSubjectDao.xml | 6 +++--- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java index 1186ff3cdb..dc92be3d6f 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java @@ -26,7 +26,7 @@ public class AddSpecialSubjectFormDTO implements Serializable { /** * orgId的所有上级id */ - @NotBlank(message = "pids不能为空", groups = QuerySpecialSubFormDTO.AddUserInternalGroup.class) + @NotBlank(message = "pids不能为空", groups = AddUserInternalGroup.class) private String pids; /** diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/WorkSpecialSubjectResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/WorkSpecialSubjectResultDTO.java index 451a44c296..d82e148a93 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/WorkSpecialSubjectResultDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/WorkSpecialSubjectResultDTO.java @@ -32,4 +32,7 @@ public class WorkSpecialSubjectResultDTO implements Serializable { * 专题id */ private String specialSubjectId; + + private String addOrgId; + private String orgLevel; } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index 70a15d0d08..de50bc1b51 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -203,15 +203,20 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl pidList = Arrays.asList(formDTO.getPids().split(StrConstant.COLON)); for (String pid : pidList) { + if(CollectionUtils.isNotEmpty(resultDTOList)){ + List parentAddList=resultDTOList.stream().map(WorkSpecialSubjectResultDTO::getTagId).distinct().collect(Collectors.toList()); + notList.addAll(parentAddList); + } //优先展示自己的,所以要排除掉 领导们给我建立的专题 List list = baseDao.queryExistedList(pid, notList); list.forEach(dto -> { @@ -220,6 +225,8 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl - and ss.id not in - - #{id} + and ss.tag_id not in + + #{tagId} order by ss.CREATED_TIME desc From 079267b71fd2d69f75dd9f7434028890006c7088 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 16 Jul 2021 10:54:06 +0800 Subject: [PATCH 3/8] commit3 --- .../java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java | 3 +++ .../src/main/java/com/epmet/entity/SpecialSubjectEntity.java | 5 +++++ .../com/epmet/service/impl/SpecialSubjectServiceImpl.java | 1 + .../resources/db/migration/V0.0.4__create_specialsubject.sql | 2 ++ 4 files changed, 11 insertions(+) diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java index dc92be3d6f..46d3e38926 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/AddSpecialSubjectFormDTO.java @@ -23,6 +23,9 @@ public class AddSpecialSubjectFormDTO implements Serializable { */ @NotBlank(message = "orgId不能为空", groups = AddUserInternalGroup.class) private String orgId; + + @NotBlank(message = "pid不能为空", groups = AddUserInternalGroup.class) + private String pid; /** * orgId的所有上级id */ diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java index a97fe0df12..6f0f61ed9a 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/entity/SpecialSubjectEntity.java @@ -55,6 +55,11 @@ public class SpecialSubjectEntity extends BaseEpmetEntity { */ private String addOrgId; + /** + * ADD_ORG_ID的上级id + */ + private String addOrgPid; + /** * 用户所在的组织或者网格的所有上级 */ diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index de50bc1b51..d335da087b 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -157,6 +157,7 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl Date: Fri, 16 Jul 2021 10:55:13 +0800 Subject: [PATCH 4/8] commit4 --- .../epmet/service/SpecialSubjectService.java | 64 ------------------- .../impl/SpecialSubjectServiceImpl.java | 60 ----------------- 2 files changed, 124 deletions(-) diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java index 3d64580035..4c81af3ef1 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/SpecialSubjectService.java @@ -18,8 +18,6 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; -import com.epmet.commons.tools.page.PageData; -import com.epmet.dto.SpecialSubjectDTO; import com.epmet.dto.form.AddSpecialSubjectFormDTO; import com.epmet.dto.form.DelSpecialSubjectFormDTO; import com.epmet.dto.form.QuerySpecialSubFormDTO; @@ -28,7 +26,6 @@ import com.epmet.dto.result.WorkSpecialSubjectResultDTO; import com.epmet.entity.SpecialSubjectEntity; import java.util.List; -import java.util.Map; /** * 专题表 @@ -37,67 +34,6 @@ import java.util.Map; * @since v1.0.0 2021-07-15 */ public interface SpecialSubjectService extends BaseService { - - /** - * 默认分页 - * - * @param params - * @return PageData - * @author generator - * @date 2021-07-15 - */ - PageData page(Map params); - - /** - * 默认查询 - * - * @param params - * @return java.util.List - * @author generator - * @date 2021-07-15 - */ - List list(Map params); - - /** - * 单条查询 - * - * @param id - * @return SpecialSubjectDTO - * @author generator - * @date 2021-07-15 - */ - SpecialSubjectDTO get(String id); - - /** - * 默认保存 - * - * @param dto - * @return void - * @author generator - * @date 2021-07-15 - */ - void save(SpecialSubjectDTO dto); - - /** - * 默认更新 - * - * @param dto - * @return void - * @author generator - * @date 2021-07-15 - */ - void update(SpecialSubjectDTO dto); - - /** - * 批量删除 - * - * @param ids - * @return void - * @author generator - * @date 2021-07-15 - */ - void delete(String[] ids); - /** * 添加专题 * diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index d335da087b..655bd18ace 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -17,15 +17,11 @@ 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.constant.NumConstant; import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.exception.EpmetErrorCode; 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.utils.Result; import com.epmet.dao.SpecialSubjectDao; @@ -44,15 +40,12 @@ import com.epmet.service.SpecialSubjectService; import com.epmet.service.TagCustomerService; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; -import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Map; import java.util.stream.Collectors; /** @@ -69,59 +62,6 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, SpecialSubjectDTO.class); - } - - @Override - public List list(Map params) { - List entityList = baseDao.selectList(getWrapper(params)); - - return ConvertUtils.sourceToTarget(entityList, SpecialSubjectDTO.class); - } - - private QueryWrapper getWrapper(Map params){ - String id = (String)params.get(FieldConstant.ID_HUMP); - - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.eq(StringUtils.isNotBlank(id), FieldConstant.ID, id); - - return wrapper; - } - - @Override - public SpecialSubjectDTO get(String id) { - SpecialSubjectEntity entity = baseDao.selectById(id); - return ConvertUtils.sourceToTarget(entity, SpecialSubjectDTO.class); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void save(SpecialSubjectDTO dto) { - SpecialSubjectEntity entity = ConvertUtils.sourceToTarget(dto, SpecialSubjectEntity.class); - insert(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(SpecialSubjectDTO dto) { - SpecialSubjectEntity entity = ConvertUtils.sourceToTarget(dto, SpecialSubjectEntity.class); - updateById(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(String[] ids) { - // 逻辑删除(@TableLogic 注解) - baseDao.deleteBatchIds(Arrays.asList(ids)); - } - /** * 添加专题 * From e0e060fa60ed350d2a1534b3d4a89c7d6e0f1b99 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 16 Jul 2021 10:57:12 +0800 Subject: [PATCH 5/8] =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/service/impl/SpecialSubjectServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java index 655bd18ace..6df20a9ce6 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/SpecialSubjectServiceImpl.java @@ -158,7 +158,7 @@ public class SpecialSubjectServiceImpl extends BaseServiceImpl parentAddList=resultDTOList.stream().map(WorkSpecialSubjectResultDTO::getTagId).distinct().collect(Collectors.toList()); notList.addAll(parentAddList); } - //优先展示自己的,所以要排除掉 领导们给我建立的专题 + //优先展示自己的,所以要排除掉自己的,自上向下查,优先展示上层领导们给我建立的专题 List list = baseDao.queryExistedList(pid, notList); list.forEach(dto -> { WorkSpecialSubjectResultDTO result = new WorkSpecialSubjectResultDTO(); From 3026be62aa37fac7fbfe1311cf0dbf9b5f255bcb Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 16 Jul 2021 13:24:54 +0800 Subject: [PATCH 6/8] =?UTF-8?q?=E4=B8=93=E9=A2=98=E6=96=87=E7=AB=A0?= =?UTF-8?q?=E5=88=97=E8=A1=A8=EF=BC=8C=E4=B8=93=E9=A2=98=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dto/form/SubjectArticleListFormDTO.java | 33 +++++++++++++ .../epmet/dto/form/SubjectListFormDTO.java | 23 +++++++++ .../result/SubjectArticleListResultDTO.java | 47 +++++++++++++++++++ .../dto/result/SubjectListResultDTO.java | 31 ++++++++++++ .../epmet/controller/ArticleController.java | 26 ++++++++++ .../main/java/com/epmet/dao/ArticleDao.java | 18 +++++++ .../com/epmet/service/ArticleService.java | 16 +++++++ .../service/impl/ArticleServiceImpl.java | 41 +++++++++++++++- .../src/main/resources/mapper/ArticleDao.xml | 42 +++++++++++++++++ 9 files changed, 276 insertions(+), 1 deletion(-) create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectArticleListFormDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectListFormDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectArticleListResultDTO.java create mode 100644 epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectListResultDTO.java diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectArticleListFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectArticleListFormDTO.java new file mode 100644 index 0000000000..d5417bec01 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectArticleListFormDTO.java @@ -0,0 +1,33 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/7/15 2:05 下午 + * @DESC + */ +@Data +public class SubjectArticleListFormDTO implements Serializable { + + private static final long serialVersionUID = 7657974985102791998L; + + public interface SubjectArticleListForm extends CustomerClientShowGroup{}; + + @NotBlank(message = "网格ID不能为空",groups = SubjectArticleListForm.class) + private String gridId; + + @NotBlank(message = "标签ID不能为空",groups = SubjectArticleListForm.class) + private String tagId; + + @NotNull(message = "pageSize不能为空",groups = SubjectArticleListForm.class) + private Integer pageSize; + + @NotNull(message = "pageNo不能为空",groups = SubjectArticleListForm.class) + private Integer pageNo; +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectListFormDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectListFormDTO.java new file mode 100644 index 0000000000..41edf32d48 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/form/SubjectListFormDTO.java @@ -0,0 +1,23 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/7/15 4:34 下午 + * @DESC + */ +@Data +public class SubjectListFormDTO implements Serializable { + + private static final long serialVersionUID = 6397877545890473794L; + + public interface SubjectListForm extends CustomerClientShowGroup{} + + @NotBlank(message = "网格ID不能为空",groups = SubjectListForm.class) + private String gridId; +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectArticleListResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectArticleListResultDTO.java new file mode 100644 index 0000000000..d280126528 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectArticleListResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/7/15 2:11 下午 + * @DESC + */ +@Data +public class SubjectArticleListResultDTO implements Serializable { + + private static final long serialVersionUID = 2580894348808140034L; + + /** + * 文章标题 + */ + private String articleTitle; + + /** + * 文章内容 + */ + private String articleContent; + + /** + * 文章ID + */ + private String articleId; + + /** + * 发布者姓名 + */ + private String publisherName; + + /** + * 发布时间 + */ + private String publishDate; + + /** + * 标签名字集合 + */ + private String tagNames; + +} diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectListResultDTO.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectListResultDTO.java new file mode 100644 index 0000000000..5740cca415 --- /dev/null +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/dto/result/SubjectListResultDTO.java @@ -0,0 +1,31 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author zxc + * @DateTime 2021/7/15 4:46 下午 + * @DESC + */ +@Data +public class SubjectListResultDTO implements Serializable { + + private static final long serialVersionUID = -7761847964768693672L; + + /** + * 专题ID + */ + private String specialSubjectId; + + /** + * 标签ID + */ + private String tagId; + + /** + * 专题名字 + */ + private String tagName; +} diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java index 8f9b03861f..7495fb6561 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/controller/ArticleController.java @@ -22,6 +22,7 @@ import com.epmet.commons.tools.annotation.RequirePermission; import com.epmet.commons.tools.enums.RequirePermissionEnum; import com.epmet.commons.tools.scan.result.SyncScanResult; import com.epmet.commons.tools.security.dto.TokenDto; +import com.epmet.commons.tools.utils.HttpClientManager; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.group.DefaultGroup; @@ -39,6 +40,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +import java.util.HashMap; import java.util.List; @@ -378,4 +380,28 @@ public class ArticleController { return new Result().ok(draftDetailResultDTO); } + /** + * @Description 专题文章列表 + * @Param formDTO + * @author zxc + * @date 2021/7/15 2:21 下午 + */ + @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/15 5:22 下午 + */ + @PostMapping("subjectlist") + public Result> subjectList(@RequestBody SubjectListFormDTO formDTO){ + ValidatorUtils.validateEntity(formDTO, SubjectListFormDTO.SubjectListForm.class); + return new Result>().ok(articleService.subjectList(formDTO)); + } + } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java index b0c4af6252..82d269b257 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/dao/ArticleDao.java @@ -16,6 +16,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.annotation.DataFilter; import com.epmet.commons.mybatis.dao.BaseDao; +import com.epmet.dto.form.SubjectArticleListFormDTO; import com.epmet.dto.result.*; import com.epmet.dto.form.ResiTagListFormDTO; import com.epmet.dto.result.GovArticleContentDTO; @@ -146,4 +147,21 @@ public interface ArticleDao extends BaseDao { * @author zxc */ String getArticleIdByDraftId(@Param("draftId") String draftId); + + /** + * @Description 专题下的文章 + * @Param gridId + * @Param tagId + * @author zxc + * @date 2021/7/15 3:49 下午 + */ + List subjectArticleList(@Param("gridId") String gridId,@Param("tagId") String tagId); + + /** + * @Description 专题列表查询 + * @Param pidList + * @author zxc + * @date 2021/7/16 10:29 上午 + */ + List subjectList(@Param("pidList")List pidList); } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java index 634fcfa7f5..96da85b8b9 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/ArticleService.java @@ -216,4 +216,20 @@ public interface ArticleService extends BaseService { * @return */ void manualPublish(TokenDto tokenDto, String draftId); + + /** + * @Description 专题文章列表 + * @Param formDTO + * @author zxc + * @date 2021/7/15 2:21 下午 + */ + List subjectArticleList(SubjectArticleListFormDTO formDTO); + + /** + * @Description 专题列表 + * @Param formDTO + * @author zxc + * @date 2021/7/15 5:22 下午 + */ + List subjectList(SubjectListFormDTO formDTO); } \ No newline at end of file diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java index d7786573ff..01855ac3a7 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java +++ b/epmet-module/gov-voice/gov-voice-server/src/main/java/com/epmet/service/impl/ArticleServiceImpl.java @@ -1236,7 +1236,7 @@ public class ArticleServiceImpl extends BaseServiceImpl subjectArticleList(SubjectArticleListFormDTO formDTO) { + PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()); + List result = baseDao.subjectArticleList(formDTO.getGridId(), formDTO.getTagId()); + if (!CollectionUtils.isEmpty(result)){ + return result; + } + return new ArrayList<>(); + } + + /** + * @Description 专题列表 + * @Param formDTO + * @author zxc + * @date 2021/7/15 5:22 下午 + */ + @Override + public List subjectList(SubjectListFormDTO formDTO) { + String gridId = formDTO.getGridId(); + Result pidsByGridId = govOrgOpenFeignClient.selectPidsByGridId(gridId); + if (!pidsByGridId.success()){ + throw new RenException("查询pids失败【"+pidsByGridId.getMsg()+"】"); + } + String pids = pidsByGridId.getData(); + List pidList = Arrays.stream(pids.split(":")).collect(Collectors.toList()); + pidList.add(gridId); + List result = baseDao.subjectList(pidList); + if (!CollectionUtils.isEmpty(result)){ + return result; + } + return new ArrayList<>(); + } } diff --git a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml index b781bbd889..dd57d15464 100644 --- a/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml +++ b/epmet-module/gov-voice/gov-voice-server/src/main/resources/mapper/ArticleDao.xml @@ -347,4 +347,46 @@ AND a.draft_id = #{draftId} + + + + + + From 4e30e5544d598ebffeb88d69eafc4e4c096e5605 Mon Sep 17 00:00:00 2001 From: zxc <1272811460@qq.com> Date: Fri, 16 Jul 2021 13:36:32 +0800 Subject: [PATCH 7/8] =?UTF-8?q?=E4=B8=93=E9=A2=98=E6=96=87=E7=AB=A0?= =?UTF-8?q?=E5=88=97=E8=A1=A8=EF=BC=8C=E4=B8=93=E9=A2=98=E5=88=97=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmet/feign/GovVoiceOpenFeignClient.java | 17 +++++++++ .../GovVoiceOpenFeignClientFallback.java | 10 +++++ .../epmet/controller/ArticleController.java | 33 ++++++++++++---- .../com/epmet/service/ArticleService.java | 22 +++++++++-- .../service/impl/ArticleServiceImpl.java | 38 ++++++++++++++++--- 5 files changed, 104 insertions(+), 16 deletions(-) diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/GovVoiceOpenFeignClient.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/GovVoiceOpenFeignClient.java index 3bbc14112f..888d2f16eb 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/GovVoiceOpenFeignClient.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/GovVoiceOpenFeignClient.java @@ -80,5 +80,22 @@ public interface GovVoiceOpenFeignClient { @PostMapping("/gov/voice/article/resiarticledetail") Result resiArticleDetail(@RequestBody ResiArticleDetailFormDTO articleDetailFormDTO); + /** + * @Description 专题文章列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:26 下午 + */ + @PostMapping("/gov/voice/article/subjectarticlelist") + Result> subjectArticleList(@RequestBody SubjectArticleListFormDTO formDTO); + + /** + * @Description 专题列表 + * @Param formDTO + * @author zxc + * @date 2021/7/16 1:26 下午 + */ + @PostMapping("/gov/voice/article/subjectlist") + Result> subjectList(@RequestBody SubjectListFormDTO formDTO); } diff --git a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/fallback/GovVoiceOpenFeignClientFallback.java b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/fallback/GovVoiceOpenFeignClientFallback.java index 9ed332730a..c2d0d3c4cb 100644 --- a/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/fallback/GovVoiceOpenFeignClientFallback.java +++ b/epmet-module/gov-voice/gov-voice-client/src/main/java/com/epmet/feign/fallback/GovVoiceOpenFeignClientFallback.java @@ -47,4 +47,14 @@ public class GovVoiceOpenFeignClientFallback implements GovVoiceOpenFeignClient public Result resiArticleDetail(ResiArticleDetailFormDTO articleDetailFormDTO) { return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "resiArticleDetail", articleDetailFormDTO); } + + @Override + public Result> subjectArticleList(SubjectArticleListFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "subjectArticleList", formDTO); + } + + @Override + public Result> subjectList(SubjectListFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.GOV_VOICE_SERVER, "subjectList", formDTO); + } } 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(); + } + } From fdff195cdb7e2e799a8f1b4e66f61f248b45c713 Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 16 Jul 2021 13:50:30 +0800 Subject: [PATCH 8/8] =?UTF-8?q?=E4=B8=93=E9=A2=98-=E7=BB=84=E7=BB=87?= =?UTF-8?q?=E7=BD=91=E6=A0=BC=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../result/StaffRoleListResultDTO.java | 40 +++++++++ .../result/StaffAgencyGridListResultDTO.java | 48 +++++++++++ .../controller/GovOrgController.java | 15 +++- .../dataaggre/dao/epmetuser/StaffRoleDao.java | 8 ++ .../dao/govorg/CustomerAgencyDao.java | 7 ++ .../dataaggre/dao/govorg/CustomerGridDao.java | 8 ++ .../dao/govorg/CustomerStaffGridDao.java | 7 ++ .../service/epmetuser/EpmetUserService.java | 5 ++ .../epmetuser/impl/EpmetUserServiceImpl.java | 9 ++ .../service/govorg/GovOrgService.java | 9 ++ .../govorg/impl/GovOrgServiceImpl.java | 83 ++++++++++++++++++- .../mapper/epmetuser/StaffRoleDao.xml | 24 ++++++ .../mapper/govorg/CustomerAgencyDao.xml | 17 ++++ .../mapper/govorg/CustomerGridDao.xml | 16 ++++ .../mapper/govorg/CustomerStaffAgencyDao.xml | 9 +- .../mapper/govorg/CustomerStaffGridDao.xml | 17 ++++ 16 files changed, 317 insertions(+), 5 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffRoleListResultDTO.java create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/govorg/result/StaffAgencyGridListResultDTO.java 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..780cfe891c 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(@RequestBody 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