From f6f2248e7e63147b5a2c2442b0b186dd0f9f7ce8 Mon Sep 17 00:00:00 2001 From: jianjun Date: Mon, 17 Jan 2022 18:35:48 +0800 Subject: [PATCH 01/14] =?UTF-8?q?=E6=9D=A1=E4=BB=B6=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=E5=AF=B9?= =?UTF-8?q?=E5=A4=96=E5=8F=8A=E5=AF=B9=E5=86=85=20=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../commons/tools/dto/form/PageFormDTO.java | 5 +- .../epmetuser/result/StaffInfoResultDTO.java | 47 ++++++++ .../result/CustomerGridStaffResultDTO.java | 32 +++++ .../result/CustomerStaffGridResultDTO.java | 32 +++++ .../epmet/feign/GovOrgOpenFeignClient.java | 9 +- .../GovOrgOpenFeignClientFallback.java | 5 + .../controller/CustomerGridController.java | 15 +++ .../java/com/epmet/dao/CustomerGridDao.java | 15 +-- .../epmet/service/CustomerGridService.java | 12 ++ .../service/impl/CustomerGridServiceImpl.java | 6 +- .../main/resources/mapper/CustomerGridDao.xml | 22 ++++ .../com/epmet/dto/form/GridStaffFormDTO.java | 52 ++++++++ .../epmet/controller/StaffRoleController.java | 18 +++ .../main/java/com/epmet/dao/StaffRoleDao.java | 11 ++ .../com/epmet/service/StaffRoleService.java | 76 ++---------- .../service/impl/StaffRoleServiceImpl.java | 113 ++++++++---------- .../main/resources/mapper/StaffRoleDao.xml | 29 +++++ 17 files changed, 362 insertions(+), 137 deletions(-) create mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerGridStaffResultDTO.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffGridResultDTO.java create mode 100644 epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/PageFormDTO.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/PageFormDTO.java index 9922a2fb6e..fe22284567 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/PageFormDTO.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/dto/form/PageFormDTO.java @@ -4,6 +4,7 @@ import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; import lombok.Data; import javax.validation.constraints.NotNull; +import java.io.Serializable; /** * 分页通用类 @@ -12,7 +13,9 @@ import javax.validation.constraints.NotNull; * @date 2020/11/20 17:02 */ @Data -public class PageFormDTO { +public class PageFormDTO implements Serializable { + private static final long serialVersionUID = -4145040961294503137L; + public interface AddUserInternalGroup { } diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java new file mode 100644 index 0000000000..c59ac45da9 --- /dev/null +++ b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java @@ -0,0 +1,47 @@ +package com.epmet.dataaggre.dto.epmetuser.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @Description 工作人员信息结果 + * @Auth sun + */ +@Data +public class StaffInfoResultDTO implements Serializable { + + private static final long serialVersionUID = -746814280620822111L; + /** + * 用户Id + */ + private String userId; + + /** + * 用户名 + */ + private String userName; + + /** + * 手机号 + */ + private String mobile; + + /** + * 性别0.未知,1男,2.女 + */ + private Integer gender; + + /** + * 组织Id + */ + private String orgId; + + /** + * 组织名 + */ + private String orgName; + + + +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerGridStaffResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerGridStaffResultDTO.java new file mode 100644 index 0000000000..b325e80461 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerGridStaffResultDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * desc:客户下网格工作人员结果 + * @Author zxc + * @DateTime 2021/6/8 3:23 下午 + * @DESC + */ +@Data +public class CustomerGridStaffResultDTO implements Serializable { + + private static final long serialVersionUID = -5910427385795368242L; + + private String userId; + + private String userName; + + private String mobile; + + private Integer gender; + + private String gridId; + + private String gridName; + + private String agencyId; + +} diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffGridResultDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffGridResultDTO.java new file mode 100644 index 0000000000..ece0ebfc73 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/CustomerStaffGridResultDTO.java @@ -0,0 +1,32 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author 在网格中的工作人员 + * @dscription + * @date 2020/4/23 16:08 + */ +@Data +public class CustomerStaffGridResultDTO implements Serializable { + private static final long serialVersionUID = 1301415104939403933L; + /** + * 用户ID + */ + private String userId; + /** + * 网格Id + */ + private String gridId; + /** + * 网格名称 + */ + private String gridName; + /** + * 组织Id + */ + private String agencyId; + +} 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 9bd7bfb642..8bd74a2c52 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 @@ -462,8 +462,8 @@ public interface GovOrgOpenFeignClient { @PostMapping(value = "/gov/org/house/queryListHouseInfo",consumes = MediaType.APPLICATION_JSON_VALUE) Result> queryListHouseInfo(@RequestBody Set houseIds); - - + + /** * @Description 获取组织下网格选项 * @Param formDTO @@ -549,7 +549,7 @@ public interface GovOrgOpenFeignClient { */ @PostMapping("/gov/org/agency/getsonagencyid") Result> getSonAgencyId(@RequestParam("orgId")String orgId,@RequestParam("type")String type); - + // /icbuilding/{id}?id=demoData /** @@ -576,4 +576,7 @@ public interface GovOrgOpenFeignClient { */ @PostMapping("/gov/org/customeragency/configcustomerareacode") Result configCustomerAreaCode(@RequestBody CustomerAreaCodeFormDTO formDTO); + + @PostMapping("/gov/org/customergrid/getstaffgridlist") + Result> getStaffGridList(@RequestParam("orgId")String orgId, @RequestParam("orgType")String orgType); } 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 c3ddd39202..9aeea0c92b 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 @@ -369,4 +369,9 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { public Result configCustomerAreaCode(CustomerAreaCodeFormDTO formDTO) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "configCustomerAreaCode", formDTO); } + + @Override + public Result> getStaffGridList(String orgId, String orgType) { + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getStaffGridList", orgId, orgType); + } } 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 8843d646c5..ee4afd7bc8 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 @@ -17,8 +17,10 @@ package com.epmet.controller; +import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.dto.result.OptionResultDTO; import com.epmet.commons.tools.page.PageData; +import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -330,4 +332,17 @@ public class CustomerGridController { return new Result>().ok(customerGridService.gridListByAgencyId(agencyId)); } + /** + * @Description 【事件】社区服务热线 + * @author sun + **/ + @PostMapping("getstaffgridlist") + Result> getStaffGridList(@LoginUser TokenDto tokenDto, + @RequestParam("orgId")String orgId, + @RequestParam("orgType")String orgType) { + //tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); + List staffGridList = customerGridService.getStaffGridList(tokenDto.getCustomerId(), orgId, orgType); + return new Result>().ok(staffGridList); + } + } 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 3b5e8c794a..7eef403d38 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 @@ -156,8 +156,8 @@ public interface CustomerGridDao extends BaseDao { List selectGridByIds(@Param("gridIdList") List gridIdList); /** - * @Description 查询网格名 不限制是否同步条件 SYNC_FLAG * @param gridIdList + * @Description 查询网格名 不限制是否同步条件 SYNC_FLAG * @author zxc * @date 2022/1/12 9:42 上午 */ @@ -279,15 +279,15 @@ public interface CustomerGridDao extends BaseDao { CustomerGridDTO getGridBaseInfoById(@Param("gridId") String gridId); /** - * @Description 根据网格ID查询pids + * @Description 根据网格ID查询pids * @Param gridId * @author zxc * @date 2021/7/16 9:52 上午 */ - String selectPidsByGridId(@Param("gridId")String gridId); + String selectPidsByGridId(@Param("gridId") String gridId); /** - * @Description 查询网格名字 + * @Description 查询网格名字 * @Param gridId * @author zxc * @date 2021/8/4 4:30 下午 @@ -295,7 +295,7 @@ public interface CustomerGridDao extends BaseDao { String gridName(String gridId); /** - * @Description 查询组织名字 + * @Description 查询组织名字 * @Param orgIds * @author zxc * @date 2021/8/4 6:25 下午 @@ -303,7 +303,7 @@ public interface CustomerGridDao extends BaseDao { List selectOrgNameByType(@Param("orgIds") List orgIds); /** - * @Description 根据人查询所在组织 + * @Description 根据人查询所在组织 * @Param userId * @author zxc * @date 2021/8/5 10:08 上午 @@ -361,7 +361,8 @@ public interface CustomerGridDao extends BaseDao { CustomerGridDTO gridAgencyByGrid(@Param("gridId") String gridId); int updateSubGridAreaCode(@Param("customerId") String customerId, - @Param("agencyId")String agencyId, + @Param("agencyId") String agencyId, @Param("operateUserId") String operateUserId); + List getStaffGridList(@Param("customerId") String customerId, @Param("orgId") String orgId, @Param("orgType") String orgType); } 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 1bc418d8fd..cac10ea123 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 @@ -362,4 +362,16 @@ public interface CustomerGridService extends BaseService { * @Description 查询组织直属网格列表 **/ List gridListByAgencyId(String agencyId); + + /** + * desc: 获取组织及网格下 工作人员网格关系列表 + * + * @param customerId + * @param orgId + * @param orgType + * @return java.util.List + * @author LiuJanJun + * @date 2022/1/17 3:50 下午 + */ + List getStaffGridList(String customerId, String orgId, String orgType); } 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 115a784406..57fc7340fb 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 @@ -42,7 +42,6 @@ import com.epmet.dao.CustomerStaffGridDao; import com.epmet.dto.*; import com.epmet.dto.form.*; import com.epmet.dto.result.*; -import com.epmet.entity.CustomerAgencyEntity; import com.epmet.entity.CustomerGridEntity; import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetMessageOpenFeignClient; @@ -931,4 +930,9 @@ public class CustomerGridServiceImpl extends BaseServiceImpl getStaffGridList(String customerId, String orgId, String orgType) { + return baseDao.getStaffGridList(customerId,orgId,orgType); + } + } 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 ca2e81e89b..a70cf1d9b6 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 @@ -783,5 +783,27 @@ where customer_id=#{customerId} AND pids LIKE concat('%',#{agencyId}, '%' ) + diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java new file mode 100644 index 0000000000..43d5c8c49f --- /dev/null +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java @@ -0,0 +1,52 @@ +package com.epmet.dto.form; + +import com.epmet.commons.tools.dto.form.PageFormDTO; +import com.epmet.commons.tools.validator.group.DefaultGroup; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.List; + +/** + * DESC:网格下的工作人员 查询 + * @author liujianjun + */ +@Data +public class GridStaffFormDTO extends PageFormDTO { + + /** + * 客户Id + */ + private String customerId; + + /** + * 工作人员Id + */ + private String userId; + + /** + * 工作人员姓名 + */ + private String userName; + + /** + * 手机号 + */ + private String mobile; + + /** + * 角色key + */ + @NotBlank(message = "角色Key不能为空", groups = {DefaultGroup.class}) + private List roleKeyList; + + /** + * 组织ID + */ + private String orgId; + + /** + * 组织类型 agency or grid + */ + private String orgType; +} diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java index 998c3eba7e..a0bfcb4536 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java @@ -2,6 +2,9 @@ package com.epmet.controller; import cn.hutool.core.collection.CollectionUtil; import com.epmet.commons.mybatis.entity.DataScope; +import com.epmet.commons.tools.annotation.LoginUser; +import com.epmet.commons.tools.page.PageData; +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.GovStaffRoleDTO; @@ -195,4 +198,19 @@ public class StaffRoleController { ValidatorUtils.validateEntity(formDTO,RoleStaffIdFormDTO.AddUserInternalGroup.class); return new Result>().ok(staffRoleService.queryRoleStaffIds(formDTO)); } + + /** + * desc: 根据角色、用户名、手机号 组织获取网格下的工作人员 精确匹配 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result> + * @author LiuJanJun + * @date 2022/1/17 2:26 下午 + */ + @PostMapping("getGridStaffList") + Result> getGridStaffList(@LoginUser TokenDto tokenDto, @RequestBody GridStaffFormDTO formDTO){ + //tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); + formDTO.setCustomerId(tokenDto.getCustomerId()); + return new Result>().ok(staffRoleService.getGridStaffList(formDTO)); + } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java index 31e6591d92..3cfb231881 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StaffRoleDao.java @@ -23,6 +23,7 @@ import com.epmet.dto.StaffRoleDTO; import com.epmet.dto.form.CommonUserFormDTO; import com.epmet.dto.form.CustomerStaffRoleListFormDTO; import com.epmet.dto.form.GetRoleKeyListFormDTO; +import com.epmet.dto.form.GridStaffFormDTO; import com.epmet.dto.result.*; import com.epmet.entity.StaffRoleEntity; import org.apache.ibatis.annotations.Mapper; @@ -169,4 +170,14 @@ public interface StaffRoleDao extends BaseDao { * @Description 【事件】网格员服务电话 **/ List staffRoleList(@Param("staffIds") List staffIds); + + /** + * desc: 条件获取工作人员list + * + * @param formDTO + * @return java.util.List + * @author LiuJanJun + * @date 2022/1/17 2:45 下午 + */ + List getStaffList(GridStaffFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java index e8737d7a0c..2458ba809d 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/StaffRoleService.java @@ -22,15 +22,11 @@ import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; import com.epmet.commons.tools.utils.Result; import com.epmet.dto.StaffRoleDTO; -import com.epmet.dto.form.CommonUserFormDTO; -import com.epmet.dto.form.CustomerStaffRoleListFormDTO; -import com.epmet.dto.form.RoleStaffIdFormDTO; -import com.epmet.dto.form.RolesUsersListFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.entity.StaffRoleEntity; import java.util.List; -import java.util.Map; import java.util.Set; /** @@ -41,66 +37,6 @@ import java.util.Set; */ public interface StaffRoleService extends BaseService { - /** - * 默认分页 - * - * @param params - * @return PageData - * @author generator - * @date 2020-04-22 - */ - PageData page(Map params); - - /** - * 默认查询 - * - * @param params - * @return java.util.List - * @author generator - * @date 2020-04-22 - */ - List list(Map params); - - /** - * 单条查询 - * - * @param id - * @return StaffRoleDTO - * @author generator - * @date 2020-04-22 - */ - StaffRoleDTO get(String id); - - /** - * 默认保存 - * - * @param dto - * @return void - * @author generator - * @date 2020-04-22 - */ - void save(StaffRoleDTO dto); - - /** - * 默认更新 - * - * @param dto - * @return void - * @author generator - * @date 2020-04-22 - */ - void update(StaffRoleDTO dto); - - /** - * 批量删除 - * - * @param ids - * @return void - * @author generator - * @date 2020-04-22 - */ - void delete(String[] ids); - /** * 查询具有某角色的staff列表 * @param roleKey @@ -176,4 +112,14 @@ public interface StaffRoleService extends BaseService { * @date 2021/8/19 11:14 上午 */ Set queryRoleStaffIds(RoleStaffIdFormDTO formDTO); + + /** + * desc: 条件获取 网格工作人员信息 + * + * @param formDTO + * @return com.epmet.commons.tools.page.PageData + * @author LiuJanJun + * @date 2022/1/17 2:37 下午 + */ + PageData getGridStaffList(GridStaffFormDTO formDTO); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java index 181b788434..700a7733a9 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java @@ -17,30 +17,29 @@ package com.epmet.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; +import com.alibaba.fastjson.JSON; import com.epmet.commons.mybatis.entity.DataScope; 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.page.PageData; import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.dao.StaffRoleDao; import com.epmet.dto.StaffRoleDTO; -import com.epmet.dto.form.CommonUserFormDTO; -import com.epmet.dto.form.CustomerStaffRoleListFormDTO; -import com.epmet.dto.form.RoleStaffIdFormDTO; -import com.epmet.dto.form.RolesUsersListFormDTO; +import com.epmet.dto.form.*; import com.epmet.dto.result.*; import com.epmet.entity.StaffRoleEntity; +import com.epmet.feign.GovOrgOpenFeignClient; import com.epmet.service.StaffRoleService; -import org.apache.commons.lang3.StringUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.util.*; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.stream.Collectors; /** * 工作人员-角色关系表 @@ -48,61 +47,12 @@ import java.util.*; * @author generator generator@elink-cn.com * @since v1.0.0 2020-04-22 */ +@Slf4j @Service public class StaffRoleServiceImpl extends BaseServiceImpl implements StaffRoleService { - @Override - public PageData page(Map params) { - IPage page = baseDao.selectPage( - getPage(params, FieldConstant.CREATED_TIME, false), - getWrapper(params) - ); - return getPageData(page, StaffRoleDTO.class); - } - - @Override - public List list(Map params) { - List entityList = baseDao.selectList(getWrapper(params)); - - return ConvertUtils.sourceToTarget(entityList, StaffRoleDTO.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 StaffRoleDTO get(String id) { - StaffRoleEntity entity = baseDao.selectById(id); - return ConvertUtils.sourceToTarget(entity, StaffRoleDTO.class); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void save(StaffRoleDTO dto) { - StaffRoleEntity entity = ConvertUtils.sourceToTarget(dto, StaffRoleEntity.class); - insert(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(StaffRoleDTO dto) { - StaffRoleEntity entity = ConvertUtils.sourceToTarget(dto, StaffRoleEntity.class); - updateById(entity); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(String[] ids) { - // 逻辑删除(@TableLogic 注解) - baseDao.deleteBatchIds(Arrays.asList(ids)); - } - + @Autowired + private GovOrgOpenFeignClient govOrgOpenFeignClient; /** * 查询具有某角色的staff列表 * @param roleKey @@ -209,4 +159,47 @@ public class StaffRoleServiceImpl extends BaseServiceImpl getGridStaffList(GridStaffFormDTO formDTO) { + //有这些条件 优先查询用户信息 + List staffList = baseDao.getStaffList(formDTO); + + if (CollectionUtils.isEmpty(staffList)){ + log.warn("getGridStaffList getStaffList return empty,param:{}", JSON.toJSONString(formDTO)); + return new PageData<>(null,NumConstant.ZERO); + } + //继续查询 在网格里的人 + Result> staffGridResult = govOrgOpenFeignClient.getStaffGridList(formDTO.getOrgId(),formDTO.getOrgType()); + if (staffGridResult == null || !staffGridResult.success() || CollectionUtils.isEmpty(staffGridResult.getData())){ + log.warn("getGridStaffList getStaffGridList return empty,param orgId:{},orgType:{}",formDTO.getOrgId(),formDTO.getOrgType()); + return new PageData<>(null,NumConstant.ZERO); + } + Map> userGridListMap = staffGridResult.getData().stream() + .collect(Collectors.groupingBy(CustomerStaffGridResultDTO::getUserId)); + List result = new ArrayList<>(); + Integer offset = formDTO.getOffset(); + Integer pageSize = formDTO.getPageSize(); + + AtomicInteger count = new AtomicInteger(); + staffList.forEach(staff->{ + List dtoList = userGridListMap.get(staff.getUserId()); + if (dtoList == null){ + return; + } + + dtoList.forEach(grid-> { + CustomerGridStaffResultDTO staffNew = ConvertUtils.sourceToTarget(staff, CustomerGridStaffResultDTO.class); + staffNew.setGridId(grid.getGridId()); + staffNew.setGridName(grid.getGridName()); + staffNew.setAgencyId(grid.getAgencyId()); + if (count.intValue() >= offset && result.size() < pageSize) { + result.add(staffNew); + } + count.getAndIncrement(); + }); + + }); + return new PageData<>(result,result.size()); + } + } diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml index edb8b4e4a4..d1c5f61d94 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml @@ -271,5 +271,34 @@ ORDER BY sr.staff_id, gsr.role_key + From 94753d0dc3e0852c01bc5d35ea347eeea09b1475 Mon Sep 17 00:00:00 2001 From: jianjun Date: Mon, 17 Jan 2022 18:39:59 +0800 Subject: [PATCH 02/14] =?UTF-8?q?=E6=9D=A1=E4=BB=B6=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=E5=AF=B9?= =?UTF-8?q?=E5=A4=96=E5=8F=8A=E5=AF=B9=E5=86=85=20=E7=BB=9F=E4=B8=80?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../epmetuser/result/StaffInfoResultDTO.java | 47 ------------------- 1 file changed, 47 deletions(-) delete mode 100644 epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java diff --git a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java b/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java deleted file mode 100644 index c59ac45da9..0000000000 --- a/epmet-module/data-aggregator/data-aggregator-client/src/main/java/com/epmet/dataaggre/dto/epmetuser/result/StaffInfoResultDTO.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.epmet.dataaggre.dto.epmetuser.result; - -import lombok.Data; - -import java.io.Serializable; - -/** - * @Description 工作人员信息结果 - * @Auth sun - */ -@Data -public class StaffInfoResultDTO implements Serializable { - - private static final long serialVersionUID = -746814280620822111L; - /** - * 用户Id - */ - private String userId; - - /** - * 用户名 - */ - private String userName; - - /** - * 手机号 - */ - private String mobile; - - /** - * 性别0.未知,1男,2.女 - */ - private Integer gender; - - /** - * 组织Id - */ - private String orgId; - - /** - * 组织名 - */ - private String orgName; - - - -} From 3c6c7f3af856639d07868385ef5d2d14b8697314 Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 14:33:57 +0800 Subject: [PATCH 03/14] =?UTF-8?q?gateway=E6=B7=BB=E5=8A=A0=E5=A4=96?= =?UTF-8?q?=E9=83=A8=E7=99=BD=E5=90=8D=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/src/main/resources/bootstrap.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index 35b4f1802b..bf6d9f270e 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -523,6 +523,7 @@ epmet: - /third/private-epmet/push-component-access-token - /data/stats/plugins/ofs/** - /data/stats/plugins/workrecord/** + - /epmetuser/staffrole/getGridStaffList #py获取网格员 网格长 # 对外开放接口认证白名单 From 8547d47c780e9fa787de91c1c775a5d6e87d886a Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 14:54:55 +0800 Subject: [PATCH 04/14] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E5=86=85=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/epmet/feign/GovOrgOpenFeignClient.java | 2 +- .../fallback/GovOrgOpenFeignClientFallback.java | 2 +- .../com/epmet/controller/CustomerGridController.java | 8 +++----- .../java/com/epmet/dto/form/GridStaffFormDTO.java | 3 +++ .../com/epmet/controller/StaffRoleController.java | 12 ++++++++---- .../com/epmet/service/impl/StaffRoleServiceImpl.java | 2 +- 6 files changed, 17 insertions(+), 12 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 8bd74a2c52..a7396f195e 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 @@ -578,5 +578,5 @@ public interface GovOrgOpenFeignClient { Result configCustomerAreaCode(@RequestBody CustomerAreaCodeFormDTO formDTO); @PostMapping("/gov/org/customergrid/getstaffgridlist") - Result> getStaffGridList(@RequestParam("orgId")String orgId, @RequestParam("orgType")String orgType); + Result> getStaffGridList(@RequestParam("customerId") String customerId, @RequestParam("orgId") String orgId, @RequestParam("orgType") String orgType); } 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 9aeea0c92b..d44f401c9a 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 @@ -371,7 +371,7 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { } @Override - public Result> getStaffGridList(String orgId, String orgType) { + public Result> getStaffGridList(String customerId, String orgId, String orgType) { return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getStaffGridList", orgId, orgType); } } 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 ee4afd7bc8..34628a197f 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 @@ -17,10 +17,8 @@ package com.epmet.controller; -import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.dto.result.OptionResultDTO; import com.epmet.commons.tools.page.PageData; -import com.epmet.commons.tools.security.dto.TokenDto; import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.validator.AssertUtils; @@ -333,15 +331,15 @@ public class CustomerGridController { } /** - * @Description 【事件】社区服务热线 + * @Description 获取工作人员所在的网格列表 * @author sun **/ @PostMapping("getstaffgridlist") - Result> getStaffGridList(@LoginUser TokenDto tokenDto, + Result> getStaffGridList(@RequestParam("customerId")String customerId, @RequestParam("orgId")String orgId, @RequestParam("orgType")String orgType) { //tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); - List staffGridList = customerGridService.getStaffGridList(tokenDto.getCustomerId(), orgId, orgType); + List staffGridList = customerGridService.getStaffGridList(customerId, orgId, orgType); return new Result>().ok(staffGridList); } diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java index 43d5c8c49f..02d1d99ad2 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java @@ -17,6 +17,7 @@ public class GridStaffFormDTO extends PageFormDTO { /** * 客户Id */ + @NotBlank(message = "客户Id不能为空", groups = {DefaultGroup.class}) private String customerId; /** @@ -43,10 +44,12 @@ public class GridStaffFormDTO extends PageFormDTO { /** * 组织ID */ + @NotBlank(message = "组织ID不能为空", groups = {DefaultGroup.class}) private String orgId; /** * 组织类型 agency or grid */ + @NotBlank(message = "组织类型不能为空", groups = {DefaultGroup.class}) private String orgType; } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java index a0bfcb4536..ee25f967f5 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java @@ -2,11 +2,10 @@ package com.epmet.controller; import cn.hutool.core.collection.CollectionUtil; import com.epmet.commons.mybatis.entity.DataScope; -import com.epmet.commons.tools.annotation.LoginUser; import com.epmet.commons.tools.page.PageData; -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.commons.tools.validator.group.DefaultGroup; import com.epmet.dto.GovStaffRoleDTO; import com.epmet.dto.StaffRoleDTO; import com.epmet.dto.form.*; @@ -14,6 +13,7 @@ import com.epmet.dto.result.*; import com.epmet.entity.GovStaffRoleEntity; import com.epmet.service.GovStaffRoleService; import com.epmet.service.StaffRoleService; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -208,9 +208,13 @@ public class StaffRoleController { * @date 2022/1/17 2:26 下午 */ @PostMapping("getGridStaffList") - Result> getGridStaffList(@LoginUser TokenDto tokenDto, @RequestBody GridStaffFormDTO formDTO){ + Result> getGridStaffList(@RequestHeader("customerId") String customerId, @RequestBody GridStaffFormDTO formDTO){ //tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); - formDTO.setCustomerId(tokenDto.getCustomerId()); + if (StringUtils.isBlank(formDTO.getCustomerId())){ + formDTO.setCustomerId(customerId); + } + ValidatorUtils.validateEntity(formDTO, DefaultGroup.class); + return new Result>().ok(staffRoleService.getGridStaffList(formDTO)); } } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java index 700a7733a9..a13660a752 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java @@ -169,7 +169,7 @@ public class StaffRoleServiceImpl extends BaseServiceImpl(null,NumConstant.ZERO); } //继续查询 在网格里的人 - Result> staffGridResult = govOrgOpenFeignClient.getStaffGridList(formDTO.getOrgId(),formDTO.getOrgType()); + Result> staffGridResult = govOrgOpenFeignClient.getStaffGridList(formDTO.getCustomerId(),formDTO.getOrgId(),formDTO.getOrgType()); if (staffGridResult == null || !staffGridResult.success() || CollectionUtils.isEmpty(staffGridResult.getData())){ log.warn("getGridStaffList getStaffGridList return empty,param orgId:{},orgType:{}",formDTO.getOrgId(),formDTO.getOrgType()); return new PageData<>(null,NumConstant.ZERO); From d992dc54f70d29771546bd732cea99a13f1f3b6d Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 15:07:32 +0800 Subject: [PATCH 05/14] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E5=86=85=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=20UP?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/feign/GovOrgOpenFeignClient.java | 4 +++- .../epmet/feign/fallback/GovOrgOpenFeignClientFallback.java | 4 ++-- 2 files changed, 5 insertions(+), 3 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 a7396f195e..022809bc85 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 @@ -578,5 +578,7 @@ public interface GovOrgOpenFeignClient { Result configCustomerAreaCode(@RequestBody CustomerAreaCodeFormDTO formDTO); @PostMapping("/gov/org/customergrid/getstaffgridlist") - Result> getStaffGridList(@RequestParam("customerId") String customerId, @RequestParam("orgId") String orgId, @RequestParam("orgType") String orgType); + Result> getStaffGridList(@RequestParam("customerId") String customerId, + @RequestParam("orgId") String orgId, + @RequestParam("orgType") String orgType); } 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 d44f401c9a..8d1d2ed21e 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 @@ -362,7 +362,7 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { /** * 运营端-客户管理,修改客户信息,调用gov-org服务,修改组织区划开关,修改根组织areaCode入参。 * - * @param areaCodeFormDTO + * @param formDTO * @return */ @Override @@ -372,6 +372,6 @@ public class GovOrgOpenFeignClientFallback implements GovOrgOpenFeignClient { @Override public Result> getStaffGridList(String customerId, String orgId, String orgType) { - return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getStaffGridList", orgId, orgType); + return ModuleUtils.feignConError(ServiceConstant.GOV_ORG_SERVER, "getStaffGridList",customerId, orgId, orgType); } } From 3bbb9ca3e408a21eb136b4a36d759df9ffffd38b Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 15:17:49 +0800 Subject: [PATCH 06/14] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E5=86=85=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=20UP?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/dto/form/GridStaffFormDTO.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java index 02d1d99ad2..f7bc145afe 100644 --- a/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java +++ b/epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/GridStaffFormDTO.java @@ -5,6 +5,7 @@ import com.epmet.commons.tools.validator.group.DefaultGroup; import lombok.Data; import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotEmpty; import java.util.List; /** @@ -38,7 +39,7 @@ public class GridStaffFormDTO extends PageFormDTO { /** * 角色key */ - @NotBlank(message = "角色Key不能为空", groups = {DefaultGroup.class}) + @NotEmpty(message = "角色Key不能为空", groups = {DefaultGroup.class}) private List roleKeyList; /** From bcd20d014802febc6a342866c051b01dd3b653f2 Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 16:18:16 +0800 Subject: [PATCH 07/14] =?UTF-8?q?=E8=8E=B7=E5=8F=96=E7=BD=91=E6=A0=BC?= =?UTF-8?q?=E5=86=85=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=20=E5=8E=BB?= =?UTF-8?q?=E6=8E=89=E5=AE=A2=E6=88=B7id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/java/com/epmet/controller/StaffRoleController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java index ee25f967f5..0cf0bc1760 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/StaffRoleController.java @@ -208,7 +208,7 @@ public class StaffRoleController { * @date 2022/1/17 2:26 下午 */ @PostMapping("getGridStaffList") - Result> getGridStaffList(@RequestHeader("customerId") String customerId, @RequestBody GridStaffFormDTO formDTO){ + Result> getGridStaffList(@RequestHeader(value = "customerId",required = false) String customerId, @RequestBody GridStaffFormDTO formDTO){ //tokenDto.setCustomerId("45687aa479955f9d06204d415238f7cc"); if (StringUtils.isBlank(formDTO.getCustomerId())){ formDTO.setCustomerId(customerId); From e7fb45b949dff8bf0cb311bf8640ed5db4d1734f Mon Sep 17 00:00:00 2001 From: jianjun Date: Tue, 18 Jan 2022 16:45:21 +0800 Subject: [PATCH 08/14] =?UTF-8?q?=E6=95=B0=E5=AD=97=E7=A4=BE=E5=8C=BA?= =?UTF-8?q?=E5=8D=95=E7=8B=AC=E9=83=A8=E7=BD=B2=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E7=9A=84=E5=AE=9A=E6=97=B6=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../feign/DataStatisticalOpenFeignClient.java | 11 ++ ...ataStatisticalOpenFeignClientFallBack.java | 5 + .../controller/ShiBeiICJobController.java | 101 ++++++++++++++++++ .../task/IcPrivateDeploySupportTask.java | 31 ++++++ 4 files changed, 148 insertions(+) create mode 100644 epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java create mode 100644 epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java index dab2edf301..69feca31d5 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/DataStatisticalOpenFeignClient.java @@ -353,4 +353,15 @@ public interface DataStatisticalOpenFeignClient { */ @PostMapping("/data/stats/demand/volunteer/daily") Result statsVolunteerDemandServicesDaily(@RequestParam(value = "customer-id", required = false) String customerId); + + /** + * desc: 市北私有化部署需要 支持的任务之一 + * + * @param formDTO + * @return com.epmet.commons.tools.utils.Result + * @author LiuJanJun + * @date 2022/1/18 4:37 下午 + */ + @PostMapping("/data/stats/shibeiICJob/userPointAndProjectStatus") + Result userPointAndProjectStatus(@RequestBody ExtractOriginFormDTO formDTO); } diff --git a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java index 56fea9c03f..5ace88fac3 100644 --- a/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java +++ b/epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/feign/impl/DataStatisticalOpenFeignClientFallBack.java @@ -339,4 +339,9 @@ public class DataStatisticalOpenFeignClientFallBack implements DataStatisticalOp public Result statsVolunteerDemandServicesDaily(String customerId) { return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "statsVolunteerDemandServicesDaily", customerId); } + + @Override + public Result userPointAndProjectStatus(ExtractOriginFormDTO formDTO) { + return ModuleUtils.feignConError(ServiceConstant.DATA_STATISTICAL_SERVER, "userPointAndProjectStatus", formDTO); + } } diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java new file mode 100644 index 0000000000..3963c5f579 --- /dev/null +++ b/epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/controller/ShiBeiICJobController.java @@ -0,0 +1,101 @@ +package com.epmet.controller; + +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.redis.RedisKeys; +import com.epmet.commons.tools.redis.RedisUtils; +import com.epmet.commons.tools.utils.DateUtils; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.StatsFormDTO; +import com.epmet.dto.extract.form.ExtractOriginFormDTO; +import com.epmet.dto.screen.form.ScreenCentralZoneDataFormDTO; +import com.epmet.service.StatsProjectService; +import com.epmet.service.evaluationindex.extract.toscreen.ScreenGrassrootsGovernDataAbsorptionService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Set; + +/** + * desc:市北数字社区 单独部署 job入口 【用户积分排名及项目状态数据】 + */ +@RequestMapping("shibeiICJob") +@RestController +@Slf4j +public class ShiBeiICJobController { + @Autowired + private ScreenGrassrootsGovernDataAbsorptionService screenGrassrootsGovernDataAbsorptionService; + @Autowired + private StatsProjectService statsProjectService; + @Autowired + private RedisUtils redisUtils; + + @PostMapping("userPointAndProjectStatus") + public Result userPointAndProjectStatus(@RequestBody ExtractOriginFormDTO formDTO) { + if (StringUtils.isBlank(formDTO.getCustomerId())){ + return new Result().error(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"参数错误cid不能为空"); + } + long start = System.currentTimeMillis(); + Set result = new LinkedHashSet<>(); + if (StringUtils.isNotBlank(formDTO.getStartDate()) && StringUtils.isNotBlank(formDTO.getEndDate())) { + List daysBetween = DateUtils.getDaysBetween(formDTO.getStartDate(), formDTO.getEndDate()); + daysBetween.forEach(d -> { + this.extractUserPointData(formDTO.getCustomerId(), d); + this.agencyProjectStats(formDTO.getCustomerId(), formDTO.getDateId()); + result.add(d); + redisUtils.hSet(RedisKeys.getBackDoorbizExcuteResult("userPointAndProjectStatus"), formDTO.getCustomerId(), result, 3 * 24 * 60 * 60L); + }); + } else { + if (StringUtils.isBlank(formDTO.getDateId())){ + formDTO.setDateId(DateUtils.getBeforeNDay(NumConstant.ONE)); + } + this.extractUserPointData(formDTO.getCustomerId(), formDTO.getDateId()); + this.agencyProjectStats(formDTO.getCustomerId(), formDTO.getDateId()); + result.add(formDTO.getDateId()); + redisUtils.hSet(RedisKeys.getBackDoorbizExcuteResult("userPointAndProjectStatus"), formDTO.getCustomerId(), result, 3 * 24 * 60 * 60L); + } + long end = System.currentTimeMillis(); + long l = (end - start) / 1000; + return new Result().ok("userPointAndProjectStatus耗时" + l + "s"); + } + + /** + * @Author sun + * @Description 数据-项目-机关日(月)统计 + **/ + private Result agencyProjectStats(String customerId, String dateId) { + try { + if (StringUtils.isNotBlank(dateId)) { + dateId = DateUtils.format(DateUtils.parseDate(dateId, DateUtils.DATE_PATTERN_YYYYMMDD)); + } + StatsFormDTO formDTO = new StatsFormDTO(); + formDTO.setCustomerId(customerId); + formDTO.setDate(dateId); + + statsProjectService.agencyProjectStats(formDTO); + } catch (Exception e) { + log.error("市北-项目状态数据写入失败,参数为:{}" + customerId + StrConstant.HYPHEN + dateId, e); + } + return new Result(); + } + + private void extractUserPointData(String customerId, String dateId) { + try { + //基层治理 - 热心市民 screen_party_user_rank_data + ScreenCentralZoneDataFormDTO param = new ScreenCentralZoneDataFormDTO(); + param.setCustomerId(customerId); + param.setDateId(dateId); + screenGrassrootsGovernDataAbsorptionService.userScoreDataHub(param); + } catch (Exception e) { + log.error("市北-热心市民/党员得分数据写入失败,参数为:{}" + customerId + StrConstant.HYPHEN + dateId, e); + } + } +} diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java new file mode 100644 index 0000000000..80dc22febb --- /dev/null +++ b/epmet-module/epmet-job/epmet-job-server/src/main/java/com/epmet/task/IcPrivateDeploySupportTask.java @@ -0,0 +1,31 @@ +package com.epmet.task; + + +import com.alibaba.fastjson.JSON; +import com.epmet.commons.tools.utils.Result; +import com.epmet.dto.extract.form.ExtractOriginFormDTO; +import com.epmet.feign.DataStatisticalOpenFeignClient; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +/** + * desc:数字社区私有化部署 任务之一还有【autoEvaluateDemandTask,statsDemandTask,dailyStatisticalVoteTask】 + */ +@Slf4j +@Component("icPrivateDeploySupportTask") +public class IcPrivateDeploySupportTask implements ITask { + @Autowired + private DataStatisticalOpenFeignClient dataStatisticalOpenFeignClient; + + @Override + public void run(String params) { + ExtractOriginFormDTO formDTO = new ExtractOriginFormDTO(); + if (StringUtils.isNotBlank(params)) { + formDTO = JSON.parseObject(params, ExtractOriginFormDTO.class); + } + Result result = dataStatisticalOpenFeignClient.userPointAndProjectStatus(formDTO); + log.info("IcPrivateDeploySupportTask excute end,param:{},result:{}",params,result); + } +} From 6b9804fa6a4ae889a6c294f0f399ace6cbda2c4c Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 21 Jan 2022 09:47:41 +0800 Subject: [PATCH 09/14] =?UTF-8?q?heart=20=E6=B2=A1=E6=9C=89=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=8B=A6=E6=88=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/src/main/resources/bootstrap.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index 35b4f1802b..71c790afe2 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -487,6 +487,7 @@ epmet: - /gov/voice/** - /resi/voice/** - /epmet/point/** + - /heart/** # 内部认证url白名单(在白名单中的,就不会再校验登录了) internalAuthUrlsWhiteList: From 0f3c05f8d71e1fd6d0a1b4b0a5fe48e57038fe8e Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 21 Jan 2022 10:09:40 +0800 Subject: [PATCH 10/14] =?UTF-8?q?point=20=E9=85=8D=E7=BD=AE=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- epmet-gateway/src/main/resources/bootstrap.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-gateway/src/main/resources/bootstrap.yml b/epmet-gateway/src/main/resources/bootstrap.yml index cacebb80f6..c8c245b15a 100644 --- a/epmet-gateway/src/main/resources/bootstrap.yml +++ b/epmet-gateway/src/main/resources/bootstrap.yml @@ -486,7 +486,7 @@ epmet: - /data/aggregator/** - /gov/voice/** - /resi/voice/** - - /epmet/point/** + - /point/** - /heart/** # 内部认证url白名单(在白名单中的,就不会再校验登录了) From 39cbf31b83686d56f18037f6af6707093fe8780d Mon Sep 17 00:00:00 2001 From: sunyuchao Date: Fri, 21 Jan 2022 10:43:54 +0800 Subject: [PATCH 11/14] =?UTF-8?q?=E8=AE=AE=E9=A2=98=E8=AF=A6=E6=83=85?= =?UTF-8?q?=E8=AE=AE=E9=A2=98=E4=BA=BA=E5=8F=96=E6=88=90=E8=AF=9D=E9=A2=98?= =?UTF-8?q?=E4=BA=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/IssueServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java index edc3a74476..1e970897f2 100644 --- a/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java +++ b/epmet-module/resi-hall/resi-hall-server/src/main/java/com/epmet/service/impl/IssueServiceImpl.java @@ -94,7 +94,7 @@ public class IssueServiceImpl implements IssueService { issueDetailResult.setTopicInfo(topicInfoDTOResult == null ? new TopicInfoDTO() : topicInfoDTOResult); } - /*if("branch".equals(topicInfoDTOResult.getGroupType())){//支部小组话题发起人显示真实姓名 + if (null != topicInfoDTOResult && "branch".equals(topicInfoDTOResult.getGroupType())) {//支部小组话题发起人显示真实姓名 List userIdList = new ArrayList<>(); userIdList.add(issueResult.getUserId()); Result> result = epmetUserOpenFeignClient.queryUserBaseInfo(userIdList); @@ -118,8 +118,8 @@ public class IssueServiceImpl implements IssueService { IssueInitiatorResultDTO initiatorResult = userFeignClient.selectIssueInitiator(initiatorFormDTO).getData(); issueDetailResult.setIssueInitiator(initiatorResult == null ? HallConstat.NULL_CHARACTER_STRING : initiatorResult.getIssueInitiator()); } - }*/ - issueDetailResult.setIssueInitiator(topicInfoDTOResult.getPublishedUser()); + } + //issueDetailResult.setIssueInitiator(topicInfoDTOResult.getPublishedUser()); //判断是否投票 CheckVoteFormDTO formDTO = new CheckVoteFormDTO(); From 6ee54df764e938c8ccb7e1c8f793675c39ccae63 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 21 Jan 2022 11:37:19 +0800 Subject: [PATCH 12/14] =?UTF-8?q?=E5=B1=85=E6=B0=91=E5=88=97=E8=A1=A8?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/epmet/dto/result/SubTableJoinDTO.java | 13 ++++++++ .../feign/OperCustomizeOpenFeignClient.java | 4 +-- .../OperCustomizeOpenFeignClientFallback.java | 2 +- .../epmet/controller/IcFormController.java | 4 +-- .../java/com/epmet/dao/IcFormItemDao.java | 7 ++-- .../com/epmet/service/IcFormItemService.java | 7 ++-- .../service/impl/IcFormItemServiceImpl.java | 19 +++-------- .../main/resources/mapper/IcFormItemDao.xml | 5 +-- .../controller/IcResiUserController.java | 3 ++ .../service/impl/IcResiUserServiceImpl.java | 33 +++++++++++++++---- 10 files changed, 60 insertions(+), 37 deletions(-) create mode 100644 epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/SubTableJoinDTO.java diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/SubTableJoinDTO.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/SubTableJoinDTO.java new file mode 100644 index 0000000000..a7b950d891 --- /dev/null +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/result/SubTableJoinDTO.java @@ -0,0 +1,13 @@ +package com.epmet.dto.result; + +import lombok.Data; + +import java.io.Serializable; + + +@Data +public class SubTableJoinDTO implements Serializable { + private static final long serialVersionUID = 8243764437194993736L; + private String tableName; + private String joinTableSql; +} diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/OperCustomizeOpenFeignClient.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/OperCustomizeOpenFeignClient.java index 9cda858533..0b7aed5915 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/OperCustomizeOpenFeignClient.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/OperCustomizeOpenFeignClient.java @@ -25,7 +25,7 @@ import java.util.Set; * @author yinzuomei@elink-cn.com * @date 2020/6/4 13:16 */ -//@FeignClient(name = ServiceConstant.OPER_CUSTOMIZE_SERVER, fallbackFactory = OperCustomizeOpenFeignClientFallbackFactory.class,url = "http://localhost:8089") +// @FeignClient(name = ServiceConstant.OPER_CUSTOMIZE_SERVER, fallbackFactory = OperCustomizeOpenFeignClientFallbackFactory.class,url = "http://localhost:8089") @FeignClient(name = ServiceConstant.OPER_CUSTOMIZE_SERVER, fallbackFactory = OperCustomizeOpenFeignClientFallbackFactory.class) public interface OperCustomizeOpenFeignClient { @@ -75,7 +75,7 @@ public interface OperCustomizeOpenFeignClient { * @date 2021/11/1 1:07 下午 */ @PostMapping(value = "/oper/customize/icform/querySubTables", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) - Result> querySubTables(@RequestBody CustomerFormQueryDTO queryDTO); + Result> querySubTables(@RequestBody CustomerFormQueryDTO queryDTO); @PostMapping(value = "/oper/customize/icform/queryIcResiSubTables", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) Result> queryIcResiSubTables(@RequestBody CustomerFormQueryDTO queryDTO); diff --git a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/fallback/OperCustomizeOpenFeignClientFallback.java b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/fallback/OperCustomizeOpenFeignClientFallback.java index da282124bb..f393370bf9 100644 --- a/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/fallback/OperCustomizeOpenFeignClientFallback.java +++ b/epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/feign/fallback/OperCustomizeOpenFeignClientFallback.java @@ -61,7 +61,7 @@ public class OperCustomizeOpenFeignClientFallback implements OperCustomizeOpenFe } @Override - public Result> querySubTables(CustomerFormQueryDTO formDto) { + public Result> querySubTables(CustomerFormQueryDTO formDto) { return ModuleUtils.feignConError(ServiceConstant.OPER_CUSTOMIZE_SERVER, "querySubTables", formDto); } diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java index 8466ceb6a6..cce2730c6f 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/IcFormController.java @@ -133,9 +133,9 @@ public class IcFormController { * @date 2021/11/1 1:25 下午 */ @PostMapping(value = "querySubTables") - Result> querySubTables(@RequestBody CustomerFormQueryDTO formQueryDTO){ + Result> querySubTables(@RequestBody CustomerFormQueryDTO formQueryDTO){ ValidatorUtils.validateEntity(formQueryDTO,CustomerFormQueryDTO.AddUserInternalGroup.class); - return new Result>().ok(icFormItemService.querySubTables(formQueryDTO.getCustomerId(),formQueryDTO.getFormCode())); + return new Result>().ok(icFormItemService.querySubTables(formQueryDTO.getCustomerId(),formQueryDTO.getFormCode())); } @PostMapping(value = "queryIcResiSubTables") diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormItemDao.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormItemDao.java index a0ad3ad839..d20a49202a 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormItemDao.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/IcFormItemDao.java @@ -18,10 +18,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; -import com.epmet.dto.result.ColumnTableNameResultDTO; -import com.epmet.dto.result.ConditionResultDTO; -import com.epmet.dto.result.IcFormResColumnDTO; -import com.epmet.dto.result.TableHeaderResultDTO; +import com.epmet.dto.result.*; import com.epmet.entity.IcFormItemEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -62,7 +59,7 @@ public interface IcFormItemDao extends BaseDao { * @author yinzuomei * @date 2021/11/1 1:25 下午 */ - List querySubTables(@Param("customerId") String customerId, @Param("formCode")String formCode); + List querySubTables(@Param("customerId") String customerId, @Param("formCode")String formCode); Set queryIcResiSubTables(@Param("customerId") String customerId, @Param("formCode")String formCode); diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormItemService.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormItemService.java index 575e31d6b1..1856656fd1 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormItemService.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/IcFormItemService.java @@ -19,10 +19,7 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.dto.form.CustomerFormQueryDTO; -import com.epmet.dto.result.ColumnTableNameResultDTO; -import com.epmet.dto.result.ConditionResultDTO; -import com.epmet.dto.result.IcFormResColumnDTO; -import com.epmet.dto.result.TableHeaderResultDTO; +import com.epmet.dto.result.*; import com.epmet.entity.IcFormItemEntity; import java.util.List; @@ -49,7 +46,7 @@ public interface IcFormItemService extends BaseService { List queryConditions(String customerId,String formCode); - List querySubTables(String customerId, String formCode); + List querySubTables(String customerId, String formCode); Set queryIcResiSubTables(String customerId, String formCode); diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormItemServiceImpl.java b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormItemServiceImpl.java index 00c79db52c..9bc06dd941 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormItemServiceImpl.java +++ b/epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/IcFormItemServiceImpl.java @@ -17,28 +17,19 @@ 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.StrConstant; -import com.epmet.commons.tools.page.PageData; -import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.dao.IcFormItemDao; -import com.epmet.dto.IcFormItemDTO; import com.epmet.dto.form.CustomerFormQueryDTO; -import com.epmet.dto.result.ColumnTableNameResultDTO; -import com.epmet.dto.result.ConditionResultDTO; -import com.epmet.dto.result.IcFormResColumnDTO; -import com.epmet.dto.result.TableHeaderResultDTO; +import com.epmet.dto.result.*; import com.epmet.entity.IcFormItemEntity; import com.epmet.service.IcFormItemService; -import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; -import java.util.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Set; /** * 表单项 @@ -100,7 +91,7 @@ public class IcFormItemServiceImpl extends BaseServiceImpl querySubTables(String customerId, String formCode) { + public List querySubTables(String customerId, String formCode) { return baseDao.querySubTables(customerId,formCode); } diff --git a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormItemDao.xml b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormItemDao.xml index c9b16fd11c..9af84eaee4 100644 --- a/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormItemDao.xml +++ b/epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/IcFormItemDao.xml @@ -113,9 +113,10 @@ - select - CONCAT('left join ',temp.TABLE_NAME, ' on ( ic_resi_user.ID=',temp.TABLE_NAME,'.IC_RESI_USER and ',temp.TABLE_NAME,'.del_flag="0" )') as subTables + temp.TABLE_NAME as tableName, + CONCAT('left join ',temp.TABLE_NAME, ' on ( ic_resi_user.ID=',temp.TABLE_NAME,'.IC_RESI_USER and ',temp.TABLE_NAME,'.del_flag="0" )') as joinTableSql from ( SELECT DISTINCT m.TABLE_NAME diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java index 395a5d40b9..fee9ee43ea 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/controller/IcResiUserController.java @@ -256,6 +256,9 @@ public class IcResiUserController { pageFormDTO.setCustomerId(tokenDto.getCustomerId()); pageFormDTO.setStaffId(tokenDto.getUserId()); ValidatorUtils.validateEntity(pageFormDTO, IcResiUserPageFormDTO.AddUserInternalGroup.class); + if(null==pageFormDTO.getConditions()){ + pageFormDTO.setConditions(new ArrayList<>()); + } return new Result>>().ok(icResiUserService.pageResiMap(pageFormDTO)); } diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java index 70f34f2849..822e7fed4c 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/IcResiUserServiceImpl.java @@ -335,9 +335,29 @@ public class IcResiUserServiceImpl extends BaseServiceImpl resultColumns = resultColumnRes.getData(); + // 查询结果列对应的表: + Set resultColumnTables=resultColumns.stream().map(IcFormResColumnDTO::getTableName).collect(Collectors.toSet()); + // 查询列表展示项需要用到哪些子表 - Result> subTablesRes=operCustomizeOpenFeignClient.querySubTables(queryDTO1); - List subTables =subTablesRes.getData(); + Result> subTablesRes=operCustomizeOpenFeignClient.querySubTables(queryDTO1); + List subTables =subTablesRes.getData(); + log.info("1、所有的子表subTables:"+JSON.toJSONString(subTables,true)); + + //关联哪些子表:查询条件用到的表名+查询的列对应的表 并集去重 + Set whereConditionTables=formDTO.getConditions().stream().map(ResiUserQueryValueDTO::getTableName).collect(Collectors.toSet()); + Set tables=new HashSet<>(); + tables.addAll(whereConditionTables); + tables.addAll(resultColumnTables); + log.info("2、查询条件+查询列对应的tables并集去重:"+ JSON.toJSONString(tables,true)); + //最终关联的子表对应的sql: + List finalSubTables =new ArrayList<>(); + subTables.forEach(subTable->{ + if(tables.contains(subTable.getTableName())){ + finalSubTables.add(subTable.getJoinTableSql()); + } + }); + + PageInfo> pageInfo=new PageInfo<>(); if (null == formDTO.getPageFlag()||formDTO.getPageFlag()) { //分页 @@ -347,7 +367,7 @@ public class IcResiUserServiceImpl extends BaseServiceImpl> subTablesRes=operCustomizeOpenFeignClient.querySubTables(queryDTO); + Result> subTablesRes=operCustomizeOpenFeignClient.querySubTables(queryDTO); List subTables=new ArrayList<>(); if(subTablesRes.success()&&CollectionUtils.isNotEmpty(subTablesRes.getData())){ - subTables =subTablesRes.getData(); + subTables =subTablesRes.getData().stream().map(SubTableJoinDTO::getJoinTableSql).collect(Collectors.toList()); } return baseDao.dynamicQuery(customerId,resultTableName,conditions,subTables,currentStaffAgencyId,staffOrgPath); } From d7a085d0df9c548ebce86c009cd281c0de0e6a2e Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 21 Jan 2022 14:06:03 +0800 Subject: [PATCH 13/14] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20-=E3=80=8B=E7=9B=AE=E5=89=8D=E6=98=AF=E7=BB=99?= =?UTF-8?q?=E5=B9=B3=E9=98=B4=E9=9B=86=E6=88=90=E5=B9=B3=E5=8F=B0=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=20=E6=80=BB=E6=95=B0=E4=B8=8D=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/epmet/service/impl/StaffRoleServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java index a13660a752..fca7a68aed 100644 --- a/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java +++ b/epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/StaffRoleServiceImpl.java @@ -199,7 +199,7 @@ public class StaffRoleServiceImpl extends BaseServiceImpl(result,result.size()); + return new PageData<>(result,count.get()); } } From 09dfcc284fe338fbd88207bc89ba43041d6ed2a6 Mon Sep 17 00:00:00 2001 From: jianjun Date: Fri, 21 Jan 2022 14:27:37 +0800 Subject: [PATCH 14/14] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E7=BD=91=E6=A0=BC=E5=B7=A5=E4=BD=9C=E4=BA=BA=E5=91=98=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=20=E5=8A=A0=E4=B8=8A=E5=AE=A2=E6=88=B7Id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/StaffRoleDao.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml index d1c5f61d94..777ef27ee8 100644 --- a/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml +++ b/epmet-user/epmet-user-server/src/main/resources/mapper/StaffRoleDao.xml @@ -273,6 +273,7 @@