From b6884fadc95485c590ff3406c707c570223e7511 Mon Sep 17 00:00:00 2001 From: yinzuomei <576302893@qq.com> Date: Fri, 7 Apr 2023 17:49:51 +0800 Subject: [PATCH] bingtu --- .../yt/EnterpriseCountPlaceTypeFormDTO.java | 15 ++++++ .../yt/EnterpriseCountPlaceTypeDetailDTO.java | 24 +++++++++ .../yt/EnterpriseCountPlaceTypeResDTO.java | 17 ++++++ .../controller/IcEnterpriseController.java | 17 +++++- .../java/com/epmet/dao/IcEnterpriseDao.java | 11 ++++ .../epmet/service/IcEnterpriseService.java | 12 +++-- .../service/impl/IcEnterpriseServiceImpl.java | 52 +++++++++++++++++-- .../main/resources/mapper/IcEnterpriseDao.xml | 20 +++++++ 8 files changed, 159 insertions(+), 9 deletions(-) create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/yt/EnterpriseCountPlaceTypeFormDTO.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeDetailDTO.java create mode 100644 epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeResDTO.java diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/yt/EnterpriseCountPlaceTypeFormDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/yt/EnterpriseCountPlaceTypeFormDTO.java new file mode 100644 index 0000000000..be4e1aac78 --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/yt/EnterpriseCountPlaceTypeFormDTO.java @@ -0,0 +1,15 @@ +package com.epmet.dto.form.yt; + +import lombok.Data; + +/** + * @Description 九小场所分析 + * @Author yzm + * @Date 2023/4/7 16:47 + */ +@Data +public class EnterpriseCountPlaceTypeFormDTO { + private String orgId; + private String orgType; +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeDetailDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeDetailDTO.java new file mode 100644 index 0000000000..f92834a43b --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeDetailDTO.java @@ -0,0 +1,24 @@ +package com.epmet.dto.result.yt; + +import com.epmet.commons.tools.constant.NumConstant; +import lombok.Data; + +/** + * @Description 九小场所分析 + * @Author yzm + * @Date 2023/4/7 16:48 + */ +@Data +public class EnterpriseCountPlaceTypeDetailDTO { + private String placeType; + private String placeTypeName; + private Integer total; + + + public EnterpriseCountPlaceTypeDetailDTO() { + this.total = NumConstant.ZERO; + } + + +} + diff --git a/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeResDTO.java b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeResDTO.java new file mode 100644 index 0000000000..865a2f481a --- /dev/null +++ b/epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/result/yt/EnterpriseCountPlaceTypeResDTO.java @@ -0,0 +1,17 @@ +package com.epmet.dto.result.yt; + +import lombok.Data; + +import java.util.List; + +/** + * @Description 九小场所分析 + * @Author yzm + * @Date 2023/4/7 16:47 + */ +@Data +public class EnterpriseCountPlaceTypeResDTO { + private Integer total; + private List list; +} + diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcEnterpriseController.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcEnterpriseController.java index 7d9afd1a83..ab66b5aa4f 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcEnterpriseController.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/IcEnterpriseController.java @@ -22,14 +22,15 @@ import com.epmet.commons.tools.utils.*; import com.epmet.commons.tools.utils.poi.excel.handler.FreezeAndFilter; import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.constants.ImportTaskConstants; -import com.epmet.dto.IcEnterpriseChangeRecordDTO; import com.epmet.dto.form.EnterpriseFormDTO; import com.epmet.dto.form.EnterprisePageFormDTO; import com.epmet.dto.form.EnterprisePatrolFormDTO; import com.epmet.dto.form.ImportTaskCommonFormDTO; +import com.epmet.dto.form.yt.EnterpriseCountPlaceTypeFormDTO; import com.epmet.dto.result.EnterpriseDetailDTO; import com.epmet.dto.result.EnterprisePatrolResultDTO; import com.epmet.dto.result.ImportTaskCommonResultDTO; +import com.epmet.dto.result.yt.EnterpriseCountPlaceTypeResDTO; import com.epmet.excel.EnterpriseExportExcelDTO; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.service.IcEnterpriseService; @@ -69,6 +70,7 @@ public class IcEnterpriseController implements ResultDataResolver { private IcEnterpriseService icEnterpriseService; @Autowired private EpmetCommonServiceOpenFeignClient commonServiceOpenFeignClient; + /** * 企事业单位巡查】新增/编辑 * @@ -359,4 +361,17 @@ public class IcEnterpriseController implements ResultDataResolver { icEnterpriseService.qrCodeExport(formDTO,response); } + /** + * 九小场所分析:返回各个场所类型的数量 + * + * @param formDTO + * @return + */ + @PostMapping("count-type") + public Result countType(@RequestBody EnterpriseCountPlaceTypeFormDTO formDTO) { + return new Result().ok(icEnterpriseService.countType(formDTO.getOrgId(), formDTO.getOrgType())); + } + + + } diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcEnterpriseDao.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcEnterpriseDao.java index 40bdde151e..95d7119471 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcEnterpriseDao.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/dao/IcEnterpriseDao.java @@ -3,6 +3,7 @@ package com.epmet.dao; import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.dto.form.EnterprisePageFormDTO; import com.epmet.dto.result.EnterpriseDetailDTO; +import com.epmet.dto.result.yt.EnterpriseCountPlaceTypeDetailDTO; import com.epmet.entity.IcEnterpriseEntity; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -32,4 +33,14 @@ public interface IcEnterpriseDao extends BaseDao { List selectList(EnterprisePageFormDTO formDTO); List selectForUniqueName(@Param("gridId") String gridId, @Param("placeOrgName") String placeOrgName, @Param("enterpriseId") String enterpriseId); + + /** + * 按场所类型 + * @param orgId + * @param orgType + * @return + */ + List selectCountByPlaceType(@Param("customerId")String customerId, + @Param("orgId") String orgId, + @Param("orgType") String orgType); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcEnterpriseService.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcEnterpriseService.java index e141e008e3..5868cb805b 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcEnterpriseService.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/IcEnterpriseService.java @@ -2,19 +2,17 @@ package com.epmet.service; import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.tools.page.PageData; -import com.epmet.dto.IcEnterpriseChangeRecordDTO; import com.epmet.dto.form.EnterpriseFormDTO; import com.epmet.dto.form.EnterprisePageFormDTO; import com.epmet.dto.form.EnterprisePatrolFormDTO; import com.epmet.dto.result.EnterpriseDetailDTO; import com.epmet.dto.result.EnterprisePatrolResultDTO; +import com.epmet.dto.result.yt.EnterpriseCountPlaceTypeResDTO; import com.epmet.entity.IcEnterpriseEntity; import javax.servlet.http.HttpServletResponse; import java.io.IOException; -import java.io.UnsupportedEncodingException; import java.nio.file.Path; -import java.util.List; import java.util.Map; /** @@ -103,4 +101,12 @@ public interface IcEnterpriseService extends BaseService { */ void qrCodeExport(EnterprisePageFormDTO formDTO, HttpServletResponse response) throws IOException; + /** + * 九小场所分析:返回各个场所类型的数量 + * + * @param orgId + * @param orgType + * @return + */ + EnterpriseCountPlaceTypeResDTO countType(String orgId, String orgType); } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java index 7867b1434b..f5da256144 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java +++ b/epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/IcEnterpriseServiceImpl.java @@ -29,10 +29,11 @@ import com.epmet.constants.ImportTaskConstants; import com.epmet.dao.*; import com.epmet.dto.form.*; import com.epmet.dto.result.*; +import com.epmet.dto.result.yt.EnterpriseCountPlaceTypeDetailDTO; +import com.epmet.dto.result.yt.EnterpriseCountPlaceTypeResDTO; import com.epmet.entity.*; import com.epmet.excel.EnterpriseImportExcelDTO; import com.epmet.excel.handler.IcEnterpriseExcelImportListener; -import com.epmet.feign.EpmetAdminOpenFeignClient; import com.epmet.feign.EpmetCommonServiceOpenFeignClient; import com.epmet.feign.EpmetMessageOpenFeignClient; import com.epmet.feign.OssFeignClient; @@ -85,8 +86,6 @@ public class IcEnterpriseServiceImpl extends BaseServiceImpl dictList = SpringContextUtils.getBean(CoverageService.class).dictMap(EpmetRequestHolder.getLoginUserCustomerId(), CoveragePlaceTypeEnum.ENTERPRISE_PATROL.getCode()); + if (CollectionUtils.isEmpty(dictList)) { + throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "场所类型字典为空", "场所类型字典为空"); + } + // + List placeTypeCountList = baseDao.selectCountByPlaceType(EpmetRequestHolder.getLoginUserCustomerId(),orgId, orgType); + Map map = CollectionUtils.isEmpty(placeTypeCountList) ? new HashMap<>() : placeTypeCountList.stream().collect(Collectors.toMap(EnterpriseCountPlaceTypeDetailDTO::getPlaceType, o -> o));; + List list = new ArrayList<>(); + int total = 0; + for (IcCoverageCategoryDictListResultDTO placeType : dictList) { + EnterpriseCountPlaceTypeDetailDTO detailDTO = new EnterpriseCountPlaceTypeDetailDTO(); + detailDTO.setPlaceType(placeType.getValue()); + detailDTO.setPlaceTypeName(placeType.getLabel()); + detailDTO.setTotal(NumConstant.ZERO); + if (map.containsKey(placeType.getValue())) { + detailDTO.setTotal(map.get(placeType.getValue()).getTotal()); + } + list.add(detailDTO); + total += detailDTO.getTotal(); + } + EnterpriseCountPlaceTypeResDTO resDTO = new EnterpriseCountPlaceTypeResDTO(); + resDTO.setList(list); + resDTO.setTotal(total); + + return resDTO; + } + + + } \ No newline at end of file diff --git a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcEnterpriseDao.xml b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcEnterpriseDao.xml index 2b14cedbbb..faf1414459 100644 --- a/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcEnterpriseDao.xml +++ b/epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcEnterpriseDao.xml @@ -108,4 +108,24 @@ and ie.id != #{enterpriseId} + + + \ No newline at end of file