From 94910767ee435a492ed6f15ad9fe5a2b945f5bee Mon Sep 17 00:00:00 2001 From: WendyYang Date: Sat, 20 Apr 2024 17:15:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=BA=8B=E9=A1=B9=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../kqapi/admin/controller/MatterController.java | 59 ++++++++++ .../kqapi/admin/controller/WindowController.java | 5 +- .../kqapi/admin/manage/AdminMatterManage.java | 121 +++++++++++++++++++++ .../kqapi/admin/manage/WindowManage.java | 6 +- .../admin/model/dto/MatterCountByWindowIdDTO.java | 20 ++++ .../kqapi/admin/model/req/MatterListReq.java | 35 ++++++ .../kqapi/admin/model/vo/MatterDetailDTO.java | 95 ++++++++++++++++ .../kqapi/admin/model/vo/MatterListVO.java | 34 ++++++ .../kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.java | 9 +- .../kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.xml | 10 ++ .../kqapi/zzsfw/model/entity/NdKqZzsfwMenu.java | 64 ++++++++++- .../kqapi/zzsfw/service/INdKqZzsfwMenuService.java | 9 +- .../service/impl/NdKqZzsfwMenuServiceImpl.java | 20 +++- 13 files changed, 473 insertions(+), 14 deletions(-) create mode 100644 kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/MatterController.java create mode 100644 kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/AdminMatterManage.java create mode 100644 kqapi/src/main/java/com/ningdatech/kqapi/admin/model/dto/MatterCountByWindowIdDTO.java create mode 100644 kqapi/src/main/java/com/ningdatech/kqapi/admin/model/req/MatterListReq.java create mode 100644 kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterDetailDTO.java create mode 100644 kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterListVO.java diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/MatterController.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/MatterController.java new file mode 100644 index 0000000..1872f26 --- /dev/null +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/MatterController.java @@ -0,0 +1,59 @@ +package com.ningdatech.kqapi.admin.controller; + +import com.ningdatech.basic.model.IdVo; +import com.ningdatech.basic.model.PageVo; +import com.ningdatech.kqapi.admin.manage.AdminMatterManage; +import com.ningdatech.kqapi.admin.model.req.MatterListReq; +import com.ningdatech.kqapi.admin.model.vo.MatterDetailDTO; +import com.ningdatech.kqapi.admin.model.vo.MatterListVO; +import com.ningdatech.log.annotation.WebLog; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * MatterController + *

+ * + * @author WendyYang + * @since 16:10 2024/4/20 + */ +@Api(tags = "事项管理") +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/v1/matter") +public class MatterController { + + private final AdminMatterManage matterManage; + + @DeleteMapping("/del") + @ApiOperation("删除事项") + @WebLog("删除事项") + public void del(@RequestBody IdVo id) { + matterManage.del(id); + } + + @GetMapping("/page") + @ApiOperation("事项列表") + @WebLog("事项列表") + public PageVo pageMatter(MatterListReq req) { + return matterManage.pageMatter(req); + } + + @GetMapping("/detail/{id}") + @ApiOperation("事项详情") + @WebLog("事项详情") + public MatterDetailDTO detail(@PathVariable Long id) { + return matterManage.detail(id); + } + + @PostMapping("/save") + @ApiOperation("事项保存或修改") + @WebLog("事项保存或修改") + public void saveOrUpdate(@RequestBody MatterDetailDTO req) { + matterManage.saveOrUpdate(req); + } + +} diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/WindowController.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/WindowController.java index 31c1807..6528f86 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/WindowController.java +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/controller/WindowController.java @@ -2,6 +2,7 @@ package com.ningdatech.kqapi.admin.controller; import com.ningdatech.basic.model.IdVo; +import com.ningdatech.basic.model.PageVo; import com.ningdatech.kqapi.admin.manage.WindowManage; import com.ningdatech.kqapi.admin.model.req.ListWindowReq; import com.ningdatech.kqapi.admin.model.req.WindowSaveReq; @@ -47,8 +48,8 @@ public class WindowController { @GetMapping("/page") @WebLog("窗口列表") @ApiOperation("窗口列表") - public void page(ListWindowReq req) { - windowManage.pageWindow(req); + public PageVo page(ListWindowReq req) { + return windowManage.pageWindow(req); } @GetMapping("/option") diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/AdminMatterManage.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/AdminMatterManage.java new file mode 100644 index 0000000..5c30dce --- /dev/null +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/AdminMatterManage.java @@ -0,0 +1,121 @@ +package com.ningdatech.kqapi.admin.manage; + +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ningdatech.basic.model.IdVo; +import com.ningdatech.basic.model.PageVo; +import com.ningdatech.basic.util.CollUtils; +import com.ningdatech.kqapi.admin.model.req.MatterListReq; +import com.ningdatech.kqapi.admin.model.vo.MatterDetailDTO; +import com.ningdatech.kqapi.admin.model.vo.MatterListVO; +import com.ningdatech.kqapi.zzsfw.model.entity.NdKqZzsfwMenu; +import com.ningdatech.kqapi.zzsfw.service.INdKqZzsfwMenuService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Component; + +import java.util.List; + +/** + *

+ * MatterManage + *

+ * + * @author WendyYang + * @since 15:41 2024/4/20 + */ +@Component +@RequiredArgsConstructor +public class AdminMatterManage { + + private final INdKqZzsfwMenuService zzsfwMenuService; + + public PageVo pageMatter(MatterListReq req) { + Wrapper query = Wrappers.lambdaQuery(NdKqZzsfwMenu.class) + .like(StrUtil.isNotBlank(req.getMatterName()), NdKqZzsfwMenu::getItemName, req.getMatterName()) + .eq(req.getZoneId() != null, NdKqZzsfwMenu::getZoneId, req.getZoneId()) + .eq(req.getWindowId() != null, NdKqZzsfwMenu::getWindowId, req.getWindowId()) + .eq(req.getMatterType() != null, NdKqZzsfwMenu::getType, req.getMatterType()) + .eq(req.getDepartment() != null, NdKqZzsfwMenu::getDepartment, req.getDepartment()) + .orderByDesc(NdKqZzsfwMenu::getCreateOn); + Page page = zzsfwMenuService.page(req.page(), query); + if (page.getTotal() == 0) { + return PageVo.empty(); + } + List data = CollUtils.convert(page.getRecords(), + w -> MatterListVO.builder() + .matterName(w.getItemName()) + .matterType(w.getType()) + .department(w.getDepartment()) + .zoneName(w.getZoneName()) + .windowName(w.getWindow()) + .build()); + return PageVo.of(data, page.getTotal()); + } + + public void del(IdVo id) { + zzsfwMenuService.removeById(id.getId()); + } + + public MatterDetailDTO detail(Long id) { + NdKqZzsfwMenu matter = zzsfwMenuService.getById(id); + if (matter == null) { + return null; + } + return MatterDetailDTO.builder() + .id(matter.getId()) + .free(matter.getFree()) + .onlinePay(matter.getOnlinePay()) + .hasUrl(matter.getHasUrl()) + .matterType(matter.getType()) + .matterName(matter.getItemName()) + .department(matter.getDepartment()) + .handleAddress(matter.getHandleAddress()) + .handleChannel(matter.getHandleChannel()) + .handleTime(matter.getHandleTime()) + .implSubjectNature(matter.getImplSubjectNature()) + .publicityMaterials(matter.getPublicityMaterials()) + .sceneDesc(matter.getSceneDesc()) + .serviceContent(matter.getServiceContent()) + .serviceObject(matter.getServiceObject()) + .serviceProcess(matter.getServiceProcess()) + .sort(matter.getSort()) + .telephone(matter.getTelephone()) + .window(matter.getWindow()) + .windowId(matter.getWindowId()) + .zoneId(matter.getZoneId()) + .zoneName(matter.getZoneName()) + .webApplyUrl(matter.getWebapplyurl()) + .build(); + } + + public void saveOrUpdate(MatterDetailDTO req) { + NdKqZzsfwMenu matter = new NdKqZzsfwMenu(); + matter.setId(req.getId()); + matter.setFree(req.getFree()); + matter.setOnlinePay(req.getOnlinePay()); + matter.setHasUrl(req.getHasUrl()); + matter.setType(req.getMatterType()); + matter.setItemName(req.getMatterName()); + matter.setDepartment(req.getDepartment()); + matter.setHandleAddress(req.getHandleAddress()); + matter.setHandleChannel(req.getHandleChannel()); + matter.setHandleTime(req.getHandleTime()); + matter.setImplSubjectNature(req.getImplSubjectNature()); + matter.setPublicityMaterials(req.getPublicityMaterials()); + matter.setSceneDesc(req.getSceneDesc()); + matter.setServiceContent(req.getServiceContent()); + matter.setServiceObject(req.getServiceObject()); + matter.setServiceProcess(req.getServiceProcess()); + matter.setSort(req.getSort()); + matter.setTelephone(req.getTelephone()); + matter.setWindow(req.getWindow()); + matter.setWindowId(req.getWindowId()); + matter.setZoneId(req.getZoneId()); + matter.setZoneName(req.getZoneName()); + matter.setWebapplyurl(req.getWebApplyUrl()); + zzsfwMenuService.saveOrUpdate(matter); + } + +} diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/WindowManage.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/WindowManage.java index d46e69f..685a933 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/WindowManage.java +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/manage/WindowManage.java @@ -16,6 +16,7 @@ import com.ningdatech.kqapi.admin.model.req.WindowSaveReq; import com.ningdatech.kqapi.admin.model.vo.WindowDetailVO; import com.ningdatech.kqapi.admin.service.IWindowService; import com.ningdatech.kqapi.admin.service.IZoneService; +import com.ningdatech.kqapi.zzsfw.service.INdKqZzsfwMenuService; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Component; @@ -35,7 +36,7 @@ import java.util.stream.Collectors; public class WindowManage { private final IWindowService windowService; - private final IZoneService zoneService; + private final INdKqZzsfwMenuService zzsfwMenuService; public void windowSaveOrUpdate(WindowSaveReq req) { Window win = BeanUtil.copyProperties(req, Window.class); @@ -54,9 +55,10 @@ public class WindowManage { } List records = page.getRecords(); List windowIds = CollUtils.fieldList(records, Window::getId); + Map matterCountMap = zzsfwMenuService.matterCountByWindowIds(windowIds); List data = records.stream().map(w -> { WindowDetailVO window = BeanUtil.copyProperties(w, WindowDetailVO.class); - window.setItemCount(0); + window.setItemCount(matterCountMap.getOrDefault(w.getId(), 0)); return window; }).collect(Collectors.toList()); return PageVo.of(data, page.getTotal()); diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/dto/MatterCountByWindowIdDTO.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/dto/MatterCountByWindowIdDTO.java new file mode 100644 index 0000000..fd16538 --- /dev/null +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/dto/MatterCountByWindowIdDTO.java @@ -0,0 +1,20 @@ +package com.ningdatech.kqapi.admin.model.dto; + +import lombok.Data; + +/** + *

+ * WindowCountByZoneIdDTO + *

+ * + * @author WendyYang + * @since 14:14 2024/4/20 + */ +@Data +public class MatterCountByWindowIdDTO { + + private Integer windowId; + + private Integer matterCount; + +} diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/req/MatterListReq.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/req/MatterListReq.java new file mode 100644 index 0000000..3489f9f --- /dev/null +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/req/MatterListReq.java @@ -0,0 +1,35 @@ +package com.ningdatech.kqapi.admin.model.req; + +import com.ningdatech.kqapi.common.model.PagePo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * MatterListReq + *

+ * + * @author WendyYang + * @since 15:52 2024/4/20 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class MatterListReq extends PagePo { + + @ApiModelProperty("部门") + private String department; + + @ApiModelProperty("事项名称") + private String matterName; + + @ApiModelProperty("服务类型") + private Integer matterType; + + @ApiModelProperty("专区ID") + private Integer zoneId; + + @ApiModelProperty("窗口ID") + private Integer windowId; + +} diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterDetailDTO.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterDetailDTO.java new file mode 100644 index 0000000..f7ec9d1 --- /dev/null +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterDetailDTO.java @@ -0,0 +1,95 @@ +package com.ningdatech.kqapi.admin.model.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + *

+ * MatterDetailVO + *

+ * + * @author WendyYang + * @since 15:48 2024/4/20 + */ +@Data +@Builder +public class MatterDetailDTO { + + private Long id; + + @ApiModelProperty("事项名称") + private String matterName; + + @ApiModelProperty("专区名称") + private String zoneName; + + @ApiModelProperty("专区ID") + private Integer zoneId; + + @ApiModelProperty("窗口ID") + private Integer windowId; + + @ApiModelProperty("窗口名称") + private String windowName; + + @ApiModelProperty("部门") + private String department; + + @ApiModelProperty("事项类型") + private Integer matterType; + + @ApiModelProperty("事项链接") + private String webApplyUrl; + + @ApiModelProperty("窗口") + private String window; + + @ApiModelProperty("排序") + private Integer sort; + + @ApiModelProperty("是否在政务中心查到url") + private Integer hasUrl; + + @ApiModelProperty("服务内容") + private String serviceContent; + + @ApiModelProperty("服务流程") + private String serviceProcess; + + @ApiModelProperty("咨询电话") + private String telephone; + + @ApiModelProperty("服务对象") + private String serviceObject; + + @ApiModelProperty("是否免费") + private Boolean free; + + @ApiModelProperty("是否网上缴费") + private Boolean onlinePay; + + @ApiModelProperty("办理渠道") + private Integer handleChannel; + + @ApiModelProperty("办理地点") + private String handleAddress; + + @ApiModelProperty("办理时间") + private String handleTime; + + @ApiModelProperty("行使层级") + private String exerciseLevel; + + @ApiModelProperty("实施主体性质") + private Integer implSubjectNature; + + @ApiModelProperty("特色场景描述") + private String sceneDesc; + + @ApiModelProperty("宣传资料") + private String publicityMaterials; + +} diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterListVO.java b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterListVO.java new file mode 100644 index 0000000..3289663 --- /dev/null +++ b/kqapi/src/main/java/com/ningdatech/kqapi/admin/model/vo/MatterListVO.java @@ -0,0 +1,34 @@ +package com.ningdatech.kqapi.admin.model.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Builder; +import lombok.Data; + +/** + *

+ * MatterListVO + *

+ * + * @author WendyYang + * @since 15:48 2024/4/20 + */ +@Data +@Builder +public class MatterListVO { + + @ApiModelProperty("事项名称") + private String matterName; + + @ApiModelProperty("专区名称") + private String zoneName; + + @ApiModelProperty("窗口名称") + private String windowName; + + @ApiModelProperty("部门") + private String department; + + @ApiModelProperty("事项类型") + private Integer matterType; + +} diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.java b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.java index 7d4cad9..badd1f2 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.java +++ b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.java @@ -1,11 +1,16 @@ package com.ningdatech.kqapi.zzsfw.mapper; +import com.ningdatech.kqapi.admin.model.dto.MatterCountByWindowIdDTO; import com.ningdatech.kqapi.zzsfw.model.entity.NdKqZzsfwMenu; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Param; + +import java.util.Collection; +import java.util.List; /** *

- * Mapper 接口 + * Mapper 接口 *

* * @author ZPF @@ -13,4 +18,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface NdKqZzsfwMenuMapper extends BaseMapper { + List selectMatterCountByWindowIds(@Param("windowIds") Collection windowIds); + } diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.xml b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.xml index ad43de2..4a736ae 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.xml +++ b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/mapper/NdKqZzsfwMenuMapper.xml @@ -2,4 +2,14 @@ + + diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/model/entity/NdKqZzsfwMenu.java b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/model/entity/NdKqZzsfwMenu.java index 4cff81c..bcca6be 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/model/entity/NdKqZzsfwMenu.java +++ b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/model/entity/NdKqZzsfwMenu.java @@ -1,17 +1,16 @@ package com.ningdatech.kqapi.zzsfw.model.entity; -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import java.io.Serializable; -import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.io.Serializable; +import java.time.LocalDateTime; + /** *

- * + * *

* * @author ZPF @@ -29,8 +28,21 @@ public class NdKqZzsfwMenu implements Serializable { private Long id; @ApiModelProperty("数据同步时间") + @TableField(fill = FieldFill.INSERT) private LocalDateTime createOn; + @ApiModelProperty("数据更新时间") + @TableField(fill = FieldFill.INSERT_UPDATE) + private LocalDateTime updateOn; + + @ApiModelProperty("创建人") + @TableField(fill = FieldFill.INSERT) + private Long createBy; + + @ApiModelProperty("更新人") + @TableField(fill = FieldFill.INSERT_UPDATE) + private Long updateBy; + @ApiModelProperty("社区名") private String zoneName; @@ -66,4 +78,44 @@ public class NdKqZzsfwMenu implements Serializable { @ApiModelProperty("咨询电话") private String telephone; + + @ApiModelProperty("专区id") + private Integer zoneId; + + @ApiModelProperty("窗口id") + private Integer windowId; + + @ApiModelProperty("是否删除") + private Boolean deleted; + + @ApiModelProperty("服务对象") + private String serviceObject; + + @ApiModelProperty("是否免费") + private Boolean free; + + @ApiModelProperty("是否网上缴费") + private Boolean onlinePay; + + @ApiModelProperty("办理渠道") + private Integer handleChannel; + + @ApiModelProperty("办理地点") + private String handleAddress; + + @ApiModelProperty("办理时间") + private String handleTime; + + @ApiModelProperty("行使层级") + private String exerciseLevel; + + @ApiModelProperty("实施主体性质") + private Integer implSubjectNature; + + @ApiModelProperty("特色场景描述") + private String sceneDesc; + + @ApiModelProperty("宣传资料") + private String publicityMaterials; + } diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/INdKqZzsfwMenuService.java b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/INdKqZzsfwMenuService.java index 9baaa96..abe3528 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/INdKqZzsfwMenuService.java +++ b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/INdKqZzsfwMenuService.java @@ -1,11 +1,14 @@ package com.ningdatech.kqapi.zzsfw.service; -import com.ningdatech.kqapi.zzsfw.model.entity.NdKqZzsfwMenu; import com.baomidou.mybatisplus.extension.service.IService; +import com.ningdatech.kqapi.zzsfw.model.entity.NdKqZzsfwMenu; + +import java.util.Collection; +import java.util.Map; /** *

- * 服务类 + * 服务类 *

* * @author ZPF @@ -13,4 +16,6 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface INdKqZzsfwMenuService extends IService { + Map matterCountByWindowIds(Collection windowIds); + } diff --git a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/impl/NdKqZzsfwMenuServiceImpl.java b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/impl/NdKqZzsfwMenuServiceImpl.java index d8d36cf..604c75f 100644 --- a/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/impl/NdKqZzsfwMenuServiceImpl.java +++ b/kqapi/src/main/java/com/ningdatech/kqapi/zzsfw/service/impl/NdKqZzsfwMenuServiceImpl.java @@ -1,14 +1,22 @@ package com.ningdatech.kqapi.zzsfw.service.impl; +import cn.hutool.core.collection.CollUtil; +import com.ningdatech.basic.util.CollUtils; +import com.ningdatech.kqapi.admin.model.dto.MatterCountByWindowIdDTO; import com.ningdatech.kqapi.zzsfw.model.entity.NdKqZzsfwMenu; import com.ningdatech.kqapi.zzsfw.mapper.NdKqZzsfwMenuMapper; import com.ningdatech.kqapi.zzsfw.service.INdKqZzsfwMenuService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.util.Collection; +import java.util.Collections; +import java.util.List; +import java.util.Map; + /** *

- * 服务实现类 + * 服务实现类 *

* * @author ZPF @@ -17,4 +25,14 @@ import org.springframework.stereotype.Service; @Service public class NdKqZzsfwMenuServiceImpl extends ServiceImpl implements INdKqZzsfwMenuService { + @Override + public Map matterCountByWindowIds(Collection windowIds) { + if (CollUtil.isEmpty(windowIds)) { + return Collections.emptyMap(); + } + List matterCountByWindowIds = baseMapper.selectMatterCountByWindowIds(windowIds); + return CollUtils.listToMap(matterCountByWindowIds, + MatterCountByWindowIdDTO::getWindowId, + MatterCountByWindowIdDTO::getMatterCount); + } }