From f0f54a929ed7d97f1b6f58cdc859ec9c08838e14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8B=8F=E7=AB=B9=E7=BA=A2?= Date: Wed, 14 Jun 2023 20:00:22 +0800 Subject: [PATCH] service --- .../com/cool/store/service}/DeskService.java | 2 +- .../service}/HyPartnerBaseInfoService.java | 2 +- .../service}/HyPartnerIntentInfoService.java | 2 +- .../HyPartnerInterviewPlanService.java | 5 +- .../service}/HyPartnerLineInfoService.java | 2 +- .../cool/store/service}/OpenAreaService.java | 19 ++- .../com/cool/store/service}/ZoneService.java | 3 +- .../store/service}/impl/DeskServiceImpl.java | 10 +- .../impl/HyPartnerBaseInfoServiceImpl.java | 5 +- .../impl/HyPartnerIntentInfoServiceImpl.java | 7 +- .../HyPartnerInterviewPlanServiceImpl.java | 9 +- .../impl/HyPartnerLineInfoServiceImpl.java | 10 +- .../service/impl}/OpenAreaServiceImpl.java | 147 ++++++++--------- .../store/service}/impl/ZoneServiceImpl.java | 7 +- .../Service/impl/OpenAreaServiceImpl.java | 148 ------------------ .../cool/store/controller/DeskController.java | 4 +- .../store/controller/OpenAreaController.java | 6 +- .../cool/store/service/OpenAreaService.java | 50 ------ 18 files changed, 109 insertions(+), 329 deletions(-) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/DeskService.java (96%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/HyPartnerBaseInfoService.java (90%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/HyPartnerIntentInfoService.java (96%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/HyPartnerInterviewPlanService.java (85%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/HyPartnerLineInfoService.java (98%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/OpenAreaService.java (63%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/ZoneService.java (95%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/impl/DeskServiceImpl.java (92%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/impl/HyPartnerBaseInfoServiceImpl.java (89%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/impl/HyPartnerIntentInfoServiceImpl.java (96%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/impl/HyPartnerInterviewPlanServiceImpl.java (97%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/impl/HyPartnerLineInfoServiceImpl.java (97%) rename {coolstore-partner-webc/src/main/java/com/cool/store/service/Impl => coolstore-partner-service/src/main/java/com/cool/store/service/impl}/OpenAreaServiceImpl.java (80%) rename {coolstore-partner-webb/src/main/java/com/cool/store/Service => coolstore-partner-service/src/main/java/com/cool/store/service}/impl/ZoneServiceImpl.java (97%) delete mode 100644 coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/OpenAreaServiceImpl.java delete mode 100644 coolstore-partner-webc/src/main/java/com/cool/store/service/OpenAreaService.java diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/DeskService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/DeskService.java similarity index 96% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/DeskService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/DeskService.java index f245f0bab..c95b5b7e2 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/DeskService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/DeskService.java @@ -1,4 +1,4 @@ -package com.cool.store.Service; +package com.cool.store.service; import com.cool.store.vo.InterviewPlanVO; import com.cool.store.vo.InterviewScheduleInfoVO; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerBaseInfoService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java similarity index 90% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerBaseInfoService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java index 9a6a870eb..d399e597a 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerBaseInfoService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java @@ -1,4 +1,4 @@ -package com.cool.store.Service; +package com.cool.store.service; import com.cool.store.request.AddTagsRequest; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerIntentInfoService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerIntentInfoService.java similarity index 96% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerIntentInfoService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerIntentInfoService.java index fcdd9ca82..47a14455b 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerIntentInfoService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerIntentInfoService.java @@ -1,4 +1,4 @@ -package com.cool.store.Service; +package com.cool.store.service; import com.cool.store.request.BaseUserInfoRequest; import com.cool.store.vo.PartnerIntentApplyInfoVO; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerInterviewPlanService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerInterviewPlanService.java similarity index 85% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerInterviewPlanService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerInterviewPlanService.java index f037111bb..e2f85b6f1 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerInterviewPlanService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerInterviewPlanService.java @@ -1,12 +1,9 @@ -package com.cool.store.Service; +package com.cool.store.service; -import com.cool.store.entity.HyPartnerInterviewPlanDO; import com.cool.store.vo.InterviewDetailInfoVO; import com.cool.store.vo.PartnerInterviewInfoVO; import com.github.pagehelper.PageInfo; -import org.apache.commons.lang3.StringUtils; -import java.util.ArrayList; import java.util.List; /** diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerLineInfoService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerLineInfoService.java similarity index 98% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerLineInfoService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerLineInfoService.java index 194ef9f71..244fbf860 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/HyPartnerLineInfoService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerLineInfoService.java @@ -1,4 +1,4 @@ -package com.cool.store.Service; +package com.cool.store.service; import com.cool.store.request.CloseFollowRequest; import com.cool.store.request.LineRequest; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/OpenAreaService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/OpenAreaService.java similarity index 63% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/OpenAreaService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/OpenAreaService.java index 30bebec4a..21548368a 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/OpenAreaService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/OpenAreaService.java @@ -1,8 +1,10 @@ -package com.cool.store.Service; +package com.cool.store.service; import com.cool.store.request.OpenAreaRequest; import com.cool.store.vo.OpenAreaTreeVO; import com.cool.store.vo.OpenAreaVO; +import com.cool.store.vo.OpenProvinceVO; +import com.github.pagehelper.PageInfo; import java.util.List; @@ -19,7 +21,7 @@ public interface OpenAreaService { * @param keyword * @return */ - List queryByKeyword(String keyword); + List queryByKeyword(String keyword,Boolean flag); /** @@ -38,4 +40,17 @@ public interface OpenAreaService { */ Boolean batchUpdate(String userId, OpenAreaRequest openAreaRequest); + + PageInfo queryKeyOpenAreaList(Integer pageSize, Integer pageNumber); + + + + + /** + * 查询可申请区域 可预约区域 + * @return + */ + OpenProvinceVO getOpenProvince(); + + } diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/ZoneService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/ZoneService.java similarity index 95% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/ZoneService.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/ZoneService.java index c83a1c205..8526bccfd 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/ZoneService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/ZoneService.java @@ -1,10 +1,9 @@ -package com.cool.store.Service; +package com.cool.store.service; import com.cool.store.request.IntentAreaSettingRequest; import com.cool.store.vo.ZoneCheckVO; import com.cool.store.vo.ZoneVO; import com.github.pagehelper.PageInfo; -import io.swagger.models.auth.In; import java.util.List; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/DeskServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java similarity index 92% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/DeskServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java index c769b8c78..e33bd2651 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/DeskServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java @@ -1,23 +1,21 @@ -package com.cool.store.Service.impl; +package com.cool.store.service.impl; import cn.hutool.core.date.DateUtil; -import com.cool.store.Service.DeskService; -import com.cool.store.Service.HyPartnerInterviewPlanService; -import com.cool.store.Service.HyPartnerLineInfoService; import com.cool.store.constants.CommonConstants; import com.cool.store.dao.HyPartnerInterviewPlanDAO; import com.cool.store.dao.HyPartnerLineInfoDAO; import com.cool.store.dto.partner.SpecialDateRangeInterviewCountDTO; -import com.cool.store.entity.HyPartnerInterviewPlanDO; import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.exception.ServiceException; +import com.cool.store.service.DeskService; +import com.cool.store.service.HyPartnerInterviewPlanService; +import com.cool.store.service.HyPartnerLineInfoService; import com.cool.store.utils.CoolDateUtils; import com.cool.store.vo.InterviewDetailInfoVO; import com.cool.store.vo.InterviewPlanVO; import com.cool.store.vo.InterviewScheduleInfoVO; import com.cool.store.vo.StageCountVO; import org.apache.commons.lang3.StringUtils; -import org.apache.http.client.utils.DateUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerBaseInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java similarity index 89% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerBaseInfoServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java index 587b0ec83..af7181b85 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerBaseInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java @@ -1,15 +1,14 @@ -package com.cool.store.Service.impl; +package com.cool.store.service.impl; import com.alibaba.fastjson.JSONObject; -import com.cool.store.Service.HyPartnerBaseInfoService; import com.cool.store.dao.HyPartnerBaseInfoDAO; import com.cool.store.entity.HyPartnerBaseInfoDO; import com.cool.store.request.AddTagsRequest; +import com.cool.store.service.HyPartnerBaseInfoService; import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.Collection; /** * @Author suzhuhong diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerIntentInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java similarity index 96% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerIntentInfoServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java index 80f35d7ae..e2a8205b1 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerIntentInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java @@ -1,21 +1,18 @@ -package com.cool.store.Service.impl; +package com.cool.store.service.impl; -import com.cool.store.Service.HyPartnerIntentInfoService; import com.cool.store.constants.CommonConstants; import com.cool.store.dao.HyPartnerBaseInfoDAO; import com.cool.store.dao.HyPartnerIntentInfoDAO; import com.cool.store.dao.HyPartnerLineInfoDAO; import com.cool.store.dao.HyPartnerUserInfoDAO; import com.cool.store.dto.partner.PartnerIntentApplyInfoDTO; -import com.cool.store.entity.HyPartnerIntentInfoDO; -import com.cool.store.entity.HyPartnerLineInfoDO; import com.cool.store.entity.HyPartnerUserInfoDO; import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.enums.WorkflowStageEnum; import com.cool.store.enums.WorkflowStatusEnum; import com.cool.store.exception.ServiceException; -import com.cool.store.mapper.HyPartnerBaseInfoMapper; import com.cool.store.request.BaseUserInfoRequest; +import com.cool.store.service.HyPartnerIntentInfoService; import com.cool.store.vo.PartnerIntentApplyInfoVO; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerInterviewPlanServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerInterviewPlanServiceImpl.java similarity index 97% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerInterviewPlanServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerInterviewPlanServiceImpl.java index fac20b4c9..22b878104 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerInterviewPlanServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerInterviewPlanServiceImpl.java @@ -1,7 +1,6 @@ -package com.cool.store.Service.impl; +package com.cool.store.service.impl; import cn.hutool.core.date.DateUtil; -import com.cool.store.Service.HyPartnerInterviewPlanService; import com.cool.store.constants.CommonConstants; import com.cool.store.dao.HyPartnerInterviewPlanDAO; import com.cool.store.dao.HyPartnerUserInfoDAO; @@ -10,6 +9,7 @@ import com.cool.store.entity.HyPartnerInterviewPlanDO; import com.cool.store.entity.HyPartnerUserInfoDO; import com.cool.store.enums.WorkflowStageEnum; import com.cool.store.enums.WorkflowStatusEnum; +import com.cool.store.service.HyPartnerInterviewPlanService; import com.cool.store.utils.CoolDateUtils; import com.cool.store.vo.InterviewDetailInfoVO; import com.cool.store.vo.PartnerInterviewInfoVO; @@ -20,7 +20,10 @@ import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.*; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; import java.util.stream.Collectors; /** diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java similarity index 97% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerLineInfoServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 691775d96..10ec43267 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -1,9 +1,7 @@ -package com.cool.store.Service.impl; +package com.cool.store.service.impl; import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; -import com.alibaba.fastjson.JSONPObject; -import com.cool.store.Service.HyPartnerLineInfoService; import com.cool.store.dao.HyPartnerLineInfoDAO; import com.cool.store.dao.HyPartnerUserInfoDAO; import com.cool.store.dto.partner.PartnerBlackListDTO; @@ -18,6 +16,7 @@ import com.cool.store.enums.WorkflowStatusEnum; import com.cool.store.exception.ServiceException; import com.cool.store.request.CloseFollowRequest; import com.cool.store.request.LineRequest; +import com.cool.store.service.HyPartnerLineInfoService; import com.cool.store.utils.CoolDateUtils; import com.cool.store.utils.StringUtil; import com.cool.store.vo.BlackListVO; @@ -26,16 +25,11 @@ import com.cool.store.vo.PartnerLineInfoVO; import com.cool.store.vo.StageCountVO; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; -import com.google.gson.JsonObject; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.time.LocalDate; -import java.time.LocalDateTime; -import java.time.LocalTime; -import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; diff --git a/coolstore-partner-webc/src/main/java/com/cool/store/service/Impl/OpenAreaServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpenAreaServiceImpl.java similarity index 80% rename from coolstore-partner-webc/src/main/java/com/cool/store/service/Impl/OpenAreaServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpenAreaServiceImpl.java index 22022bdcd..3d3f25043 100644 --- a/coolstore-partner-webc/src/main/java/com/cool/store/service/Impl/OpenAreaServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpenAreaServiceImpl.java @@ -1,36 +1,85 @@ -package com.cool.store.service.Impl; +package com.cool.store.service.impl; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.cool.store.dao.HyOpenAreaInfoDAO; import com.cool.store.dto.partner.ApplyReservationProvinceDTO; import com.cool.store.entity.HyOpenAreaInfoDO; +import com.cool.store.request.OpenAreaRequest; import com.cool.store.service.OpenAreaService; import com.cool.store.vo.OpenAreaTreeVO; import com.cool.store.vo.OpenAreaVO; import com.cool.store.vo.OpenProvinceVO; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; -import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.*; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.Set; import java.util.stream.Collectors; /** * @Author suzhuhong - * @Date 2023/6/6 14:28 + * @Date 2023/6/13 22:11 * @Version 1.0 */ @Service public class OpenAreaServiceImpl implements OpenAreaService { - @Resource HyOpenAreaInfoDAO hyOpenAreaInfoDAO; + @Override + public List queryByKeyword(String keyword,Boolean flag) { + //先查出所有的一级菜单 + List openArea = hyOpenAreaInfoDAO.queryFirstLevel(); + Map longHyOpenAreaInfoDOMap = openArea.stream().collect(Collectors.toMap(HyOpenAreaInfoDO::getId, x -> x)); + + //查询关键字下所有的数据 原始的数据 + List hyOpenAreaInfoDOS = hyOpenAreaInfoDAO.queryByKeyword(keyword,flag); + Set longSet = hyOpenAreaInfoDOS.stream().map(HyOpenAreaInfoDO::getId).collect(Collectors.toSet()); + + hyOpenAreaInfoDOS.stream().forEach(x->{ + Long parentId = x.getParentId(); + + if (parentId!=null&&!longSet.contains(parentId)){ + //添加到集合中 + longSet.add(x.getParentId()); + HyOpenAreaInfoDO hyOpenAreaInfoDO = longHyOpenAreaInfoDOMap.get(parentId); + hyOpenAreaInfoDOS.add(hyOpenAreaInfoDO); + } + }); + + JSONArray objects = buildTree(JSONArray.parseArray(JSONObject.toJSONString(hyOpenAreaInfoDOS)), "id", "parentId","childNode" ); + List openAreaTreeVOS = JSONObject.parseArray(objects.toJSONString(), OpenAreaTreeVO.class); + return openAreaTreeVOS; + } + + @Override + public List getChildrenList(String type, Long parentId) { + List childrenList = hyOpenAreaInfoDAO.getChildrenList(type, parentId); + List result = new ArrayList<>(); + childrenList.stream().forEach(x->{ + OpenAreaVO openAreaVO = convertDoToVo(x); + result.add(openAreaVO); + }); + return result; + } + + @Override + public Boolean batchUpdate(String userId, OpenAreaRequest request) { + //修改选择的区域 + hyOpenAreaInfoDAO.batchUpdateById(request.getBackgroundBanner(),request.getDetailBanner(),request.getStatus(),userId,request.getIdList()); + //修改选择区域的子区域 + hyOpenAreaInfoDAO.batchUpdateByParentId(request.getBackgroundBanner(),request.getDetailBanner(),request.getStatus(),userId,request.getIdList()); + + return Boolean.TRUE; + } + @Override public PageInfo queryKeyOpenAreaList(Integer pageSize, Integer pageNumber) { PageHelper.startPage(pageNumber,pageSize); @@ -47,73 +96,6 @@ public class OpenAreaServiceImpl implements OpenAreaService { return hyOpenAreaInfoDOPageInfo; } - - /** - * List DO->VO - * @param hyOpenAreaInfoDO - * @return - */ - private OpenAreaVO convertDoToVo(HyOpenAreaInfoDO hyOpenAreaInfoDO){ - OpenAreaVO openAreaVO = new OpenAreaVO(); - openAreaVO.setId(hyOpenAreaInfoDO.getId()); - openAreaVO.setAreaName(hyOpenAreaInfoDO.getAreaName()); - openAreaVO.setParentId(hyOpenAreaInfoDO.getParentId()); - openAreaVO.setAreaPath(hyOpenAreaInfoDO.getAreaPath()); - openAreaVO.setAreaStatus(hyOpenAreaInfoDO.getAreaStatus()); - openAreaVO.setBackgroundBanner(hyOpenAreaInfoDO.getBackgroundBanner()); - openAreaVO.setDetailBanner(hyOpenAreaInfoDO.getDetailBanner()); - return openAreaVO; - } - - - - @Override - public List queryByKeyword(String keyword) { - //先查出所有的一级菜单 - List openArea = hyOpenAreaInfoDAO.queryFirstLevel(); - Map longHyOpenAreaInfoDOMap = openArea.stream().collect(Collectors.toMap(HyOpenAreaInfoDO::getId, x -> x)); - - //查询关键字下所有的数据 原始的数据 - List hyOpenAreaInfoDOS = hyOpenAreaInfoDAO.queryByKeyword(keyword,Boolean.FALSE); - - Map hyMap = hyOpenAreaInfoDOS.stream().collect(Collectors.toMap(HyOpenAreaInfoDO::getId, x -> x)); - - Set list = new HashSet(); - hyOpenAreaInfoDOS.stream().forEach(x->{ - Long parentId = x.getParentId(); - HyOpenAreaInfoDO hyOpenAreaInfoDO = hyMap.get(parentId); - if (hyOpenAreaInfoDO==null&&parentId!=null){ - //添加到集合中 - list.add(x.getParentId()); - } - }); - if (CollectionUtils.isNotEmpty(list)){ - //二级采单 - List hyOpenAreaInfoDOList = hyOpenAreaInfoDAO.queryByIdsExcludeFirstLevel(new ArrayList<>(list)); - hyOpenAreaInfoDOS.addAll(hyOpenAreaInfoDOList); - //如果二级采单是空 说明list全部是一级采单 - if (CollectionUtils.isEmpty(hyOpenAreaInfoDOList)){ - list.stream().forEach(x->{ - HyOpenAreaInfoDO hyOpenAreaInfoDO = hyMap.get(x); - if (hyOpenAreaInfoDO==null){ - hyOpenAreaInfoDOS.add(longHyOpenAreaInfoDOMap.get(x)); - } - }); - } - hyOpenAreaInfoDOList.stream().forEach(x->{ - Long parentId = x.getParentId(); - HyOpenAreaInfoDO hyOpenAreaInfoDO = hyMap.get(parentId); - if (hyOpenAreaInfoDO==null){ - HyOpenAreaInfoDO infoDO = longHyOpenAreaInfoDOMap.get(parentId); - hyOpenAreaInfoDOS.add(infoDO); - } - }); - } - JSONArray objects = buildTree(JSONArray.parseArray(JSONObject.toJSONString(hyOpenAreaInfoDOS)), "id", "parentId","childNode" ); - List openAreaTreeVOS = JSONObject.parseArray(objects.toJSONString(), OpenAreaTreeVO.class); - return openAreaTreeVOS; - } - @Override public OpenProvinceVO getOpenProvince() { //先查出所有的一级菜单 @@ -139,20 +121,21 @@ public class OpenAreaServiceImpl implements OpenAreaService { return openProvinceVO; } - @Override - public List getChildrenList(String type, Long parentId) { - List childrenList = hyOpenAreaInfoDAO.getChildrenList(type, parentId); - List result = new ArrayList<>(); - childrenList.stream().forEach(x->{ - OpenAreaVO openAreaVO = convertDoToVo(x); - result.add(openAreaVO); - }); - return result; + private OpenAreaVO convertDoToVo(HyOpenAreaInfoDO hyOpenAreaInfoDO){ + OpenAreaVO openAreaVO = new OpenAreaVO(); + openAreaVO.setId(hyOpenAreaInfoDO.getId()); + openAreaVO.setAreaName(hyOpenAreaInfoDO.getAreaName()); + openAreaVO.setParentId(hyOpenAreaInfoDO.getParentId()); + openAreaVO.setAreaPath(hyOpenAreaInfoDO.getAreaPath()); + openAreaVO.setAreaStatus(hyOpenAreaInfoDO.getAreaStatus()); + openAreaVO.setBackgroundBanner(hyOpenAreaInfoDO.getBackgroundBanner()); + openAreaVO.setDetailBanner(hyOpenAreaInfoDO.getDetailBanner()); + return openAreaVO; } /** - * 组装城市树 + * 构建树 * @param arr * @param id * @param pid diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/ZoneServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java similarity index 97% rename from coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/ZoneServiceImpl.java rename to coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java index 75a130652..2f8110b4b 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/ZoneServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ZoneServiceImpl.java @@ -1,7 +1,6 @@ -package com.cool.store.Service.impl; +package com.cool.store.service.impl; import com.alibaba.fastjson.JSONObject; -import com.cool.store.Service.ZoneService; import com.cool.store.dao.EnterpriseUserDAO; import com.cool.store.dao.HyIntendDevMappingDAO; import com.cool.store.dao.HyIntendDevZoneInfoDAO; @@ -13,18 +12,16 @@ import com.cool.store.entity.HyIntendDevelopementMappingDO; import com.cool.store.entity.HyOpenAreaInfoDO; import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.exception.ServiceException; -import com.cool.store.mapper.HyIntendDevelopementMappingMapper; import com.cool.store.request.IntentAreaSettingRequest; +import com.cool.store.service.ZoneService; import com.cool.store.vo.ZoneCheckVO; import com.cool.store.vo.ZoneVO; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; -import com.google.common.collect.Lists; import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.lang.reflect.Array; import java.util.ArrayList; import java.util.Arrays; import java.util.List; diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/OpenAreaServiceImpl.java b/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/OpenAreaServiceImpl.java deleted file mode 100644 index 736956e48..000000000 --- a/coolstore-partner-webb/src/main/java/com/cool/store/Service/impl/OpenAreaServiceImpl.java +++ /dev/null @@ -1,148 +0,0 @@ -package com.cool.store.Service.impl; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import com.cool.store.Service.OpenAreaService; -import com.cool.store.dao.HyOpenAreaInfoDAO; -import com.cool.store.entity.HyOpenAreaInfoDO; -import com.cool.store.request.OpenAreaRequest; -import com.cool.store.vo.OpenAreaTreeVO; -import com.cool.store.vo.OpenAreaVO; -import org.apache.commons.collections4.CollectionUtils; -import org.springframework.stereotype.Service; - -import javax.annotation.Resource; -import java.util.*; -import java.util.stream.Collectors; - -/** - * @Author suzhuhong - * @Date 2023/6/13 22:11 - * @Version 1.0 - */ -@Service -public class OpenAreaServiceImpl implements OpenAreaService { - - @Resource - HyOpenAreaInfoDAO hyOpenAreaInfoDAO; - - - @Override - public List queryByKeyword(String keyword) { - //先查出所有的一级菜单 - List openArea = hyOpenAreaInfoDAO.queryFirstLevel(); - Map longHyOpenAreaInfoDOMap = openArea.stream().collect(Collectors.toMap(HyOpenAreaInfoDO::getId, x -> x)); - - //查询关键字下所有的数据 原始的数据 - List hyOpenAreaInfoDOS = hyOpenAreaInfoDAO.queryByKeyword(keyword,Boolean.TRUE); - Set longSet = hyOpenAreaInfoDOS.stream().map(HyOpenAreaInfoDO::getId).collect(Collectors.toSet()); - - hyOpenAreaInfoDOS.stream().forEach(x->{ - Long parentId = x.getParentId(); - - if (parentId!=null&&!longSet.contains(parentId)){ - //添加到集合中 - longSet.add(x.getParentId()); - HyOpenAreaInfoDO hyOpenAreaInfoDO = longHyOpenAreaInfoDOMap.get(parentId); - hyOpenAreaInfoDOS.add(hyOpenAreaInfoDO); - } - }); - - JSONArray objects = buildTree(JSONArray.parseArray(JSONObject.toJSONString(hyOpenAreaInfoDOS)), "id", "parentId","childNode" ); - List openAreaTreeVOS = JSONObject.parseArray(objects.toJSONString(), OpenAreaTreeVO.class); - return openAreaTreeVOS; - } - - @Override - public List getChildrenList(String type, Long parentId) { - List childrenList = hyOpenAreaInfoDAO.getChildrenList(type, parentId); - List result = new ArrayList<>(); - childrenList.stream().forEach(x->{ - OpenAreaVO openAreaVO = convertDoToVo(x); - result.add(openAreaVO); - }); - return result; - } - - @Override - public Boolean batchUpdate(String userId, OpenAreaRequest request) { - //修改选择的区域 - hyOpenAreaInfoDAO.batchUpdateById(request.getBackgroundBanner(),request.getDetailBanner(),request.getStatus(),userId,request.getIdList()); - //修改选择区域的子区域 - hyOpenAreaInfoDAO.batchUpdateByParentId(request.getBackgroundBanner(),request.getDetailBanner(),request.getStatus(),userId,request.getIdList()); - - return Boolean.TRUE; - } - - private OpenAreaVO convertDoToVo(HyOpenAreaInfoDO hyOpenAreaInfoDO){ - OpenAreaVO openAreaVO = new OpenAreaVO(); - openAreaVO.setId(hyOpenAreaInfoDO.getId()); - openAreaVO.setAreaName(hyOpenAreaInfoDO.getAreaName()); - openAreaVO.setParentId(hyOpenAreaInfoDO.getParentId()); - openAreaVO.setAreaPath(hyOpenAreaInfoDO.getAreaPath()); - openAreaVO.setAreaStatus(hyOpenAreaInfoDO.getAreaStatus()); - openAreaVO.setBackgroundBanner(hyOpenAreaInfoDO.getBackgroundBanner()); - openAreaVO.setDetailBanner(hyOpenAreaInfoDO.getDetailBanner()); - return openAreaVO; - } - - - /** - * 构建树 - * @param arr - * @param id - * @param pid - * @param child - * @return - */ - public static JSONArray buildTree(JSONArray arr, String id, String pid, String child) { - //新建一个JSONArray来接收组装成树形结构的返回值 - JSONArray jsonArray = new JSONArray(); - //新建一个JSONObject对象 - JSONObject hash = new JSONObject(); - //将数组转换为object格式 - for (int i = 0; i < arr.size(); i++) { - //获取当前的JSON对象 - JSONObject json = (JSONObject) arr.get(i); - //把当前id作为键,当前JSON对象作为值 put回hash这个Object对象中 - //这里的put方法类似于map的put方法 - hash.put(json.getString(id), json); - } - //遍历结果集 - for (int j = 0; j < arr.size(); j++) { - //单条记录 - JSONObject aVal = (JSONObject) arr.get(j); - //在hash中取出key为单条记录中pid的值 - String pidStr = ""; - //如果父级id不等于null - if (aVal.get(pid) != null) { - pidStr = aVal.get(pid).toString(); - } - //从hash这个对象中获取父级对象 parent - JSONObject hashParent = (JSONObject) hash.get(pidStr); - //如果记录的pid存在,则说明它有父节点,将她添加到孩子节点的集合中 - if (hashParent != null) { - //检查是否有child属性 - if (hashParent.get(child) != null) { - //有子节点 则先将子节点取出 - JSONArray children = (JSONArray) hashParent.get(child); - //然后把当前这个对象放进子节点之中 - children.add(aVal); - //最后把子节点在放回父节点之中 - hashParent.put(child, children); - } else { - //无子节点 则新建一个子节点 - JSONArray children = new JSONArray(); - //然后再把当前对象放进去 - children.add(aVal); - //最后在放回父节点之中 - hashParent.put(child, children); - } - } else { - jsonArray.add(aVal); - } - } - return jsonArray; - - } -} diff --git a/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java b/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java index d44b67456..e9ed2afe4 100644 --- a/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java +++ b/coolstore-partner-webb/src/main/java/com/cool/store/controller/DeskController.java @@ -1,9 +1,9 @@ package com.cool.store.controller; -import com.cool.store.Service.*; import com.cool.store.enums.LineStatusEnum; import com.cool.store.request.*; import com.cool.store.response.ResponseResult; +import com.cool.store.service.*; import com.cool.store.vo.*; import com.github.pagehelper.PageInfo; import io.swagger.annotations.ApiImplicitParam; @@ -263,7 +263,7 @@ public class DeskController { }) public ResponseResult> getOpenAreaTree(@RequestParam(value = "keyWord",required = false)String keyWord){ - return ResponseResult.success(openAreaService.queryByKeyword(keyWord)); + return ResponseResult.success(openAreaService.queryByKeyword(keyWord,Boolean.TRUE)); } diff --git a/coolstore-partner-webc/src/main/java/com/cool/store/controller/OpenAreaController.java b/coolstore-partner-webc/src/main/java/com/cool/store/controller/OpenAreaController.java index f1793d9c6..eee62096c 100644 --- a/coolstore-partner-webc/src/main/java/com/cool/store/controller/OpenAreaController.java +++ b/coolstore-partner-webc/src/main/java/com/cool/store/controller/OpenAreaController.java @@ -1,11 +1,7 @@ package com.cool.store.controller; -import com.alibaba.fastjson.JSONArray; -import com.aliyun.openservices.shade.com.alibaba.rocketmq.common.filter.impl.Op; -import com.cool.store.enums.RocketMqTagEnum; import com.cool.store.response.ResponseResult; import com.cool.store.service.OpenAreaService; -import com.cool.store.utils.UUIDUtils; import com.cool.store.vo.OpenAreaTreeVO; import com.cool.store.vo.OpenAreaVO; import com.cool.store.vo.OpenProvinceVO; @@ -55,7 +51,7 @@ public class OpenAreaController { @ApiImplicitParam(name = "keyword", value = "搜索关键字", required = false), }) public ResponseResult> getOpenAreaList(@RequestParam(value = "keyword",required = false)String keyword){ - List openAreaTreeVOS = openAreaService.queryByKeyword(keyword); + List openAreaTreeVOS = openAreaService.queryByKeyword(keyword,Boolean.FALSE); return ResponseResult.success(openAreaTreeVOS); } diff --git a/coolstore-partner-webc/src/main/java/com/cool/store/service/OpenAreaService.java b/coolstore-partner-webc/src/main/java/com/cool/store/service/OpenAreaService.java deleted file mode 100644 index 687e5d780..000000000 --- a/coolstore-partner-webc/src/main/java/com/cool/store/service/OpenAreaService.java +++ /dev/null @@ -1,50 +0,0 @@ -package com.cool.store.service; - -import com.alibaba.fastjson.JSONArray; -import com.cool.store.vo.OpenAreaTreeVO; -import com.cool.store.vo.OpenAreaVO; -import com.cool.store.vo.OpenProvinceVO; -import com.github.pagehelper.PageInfo; - -import java.util.List; - -/** - * @Author suzhuhong - * @Date 2023/6/6 14:27 - * @Version 1.0 - */ -public interface OpenAreaService { - - /** - * 重点城市 - * @param pageSize - * @param pageNumber - * @return - */ - PageInfo queryKeyOpenAreaList(Integer pageSize,Integer pageNumber); - - - /** - * 查询全部 - * @return - */ - List queryByKeyword(String keyword); - - - /** - * 查询可申请区域 可预约区域 - * @return - */ - OpenProvinceVO getOpenProvince(); - - - /** - * 查询子列表 - * @param type - * @param parentId - * @return - */ - List getChildrenList(String type,Long parentId); - - -}