From 28fa9f30d75f7387e4ef13072c10a3fac9feabe3 Mon Sep 17 00:00:00 2001 From: "kuang.yife" Date: Sun, 5 Mar 2023 22:33:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=A5=E9=A9=BB=E5=8C=BA=E5=9F=9F/=E7=B1=BB?= =?UTF-8?q?=E7=9B=AE=E7=BC=96=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../worker/WorkerAreaController.java | 38 ++++++++++++++++++- .../worker/WorkerGoodsCategoryController.java | 36 ++++++++++++++++-- ghy-worker/pom.xml | 4 ++ .../com/ghy/worker/domain/WorkerArea.java | 6 +++ .../worker/domain/WorkerGoodsCategory.java | 7 ++++ 5 files changed, 86 insertions(+), 5 deletions(-) diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerAreaController.java b/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerAreaController.java index f7dd8331..c244250c 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerAreaController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerAreaController.java @@ -2,17 +2,20 @@ package com.ghy.web.controller.worker; import com.ghy.common.core.domain.AjaxResult; import com.ghy.common.core.text.Convert; +import com.ghy.system.domain.SysArea; +import com.ghy.system.service.ISysAreaService; import com.ghy.worker.domain.WorkerArea; import com.ghy.worker.request.WorkerAreaSaveRequest; import com.ghy.worker.service.WorkerAreaService; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; /** @@ -28,6 +31,9 @@ public class WorkerAreaController { @Resource private WorkerAreaService workerAreaService; + @Autowired + private ISysAreaService sysAreaService; + /** * 查询某个师傅的所有接单地区 * @@ -39,6 +45,36 @@ public class WorkerAreaController { return AjaxResult.success(workerAreaService.getByWorker(workerId)); } + @GetMapping("worker/edit") + @ResponseBody + public AjaxResult getEditWorker(Long workerId){ + Map> countryMap = new HashMap<>(); + List byWorker = workerAreaService.getByWorker(workerId); + for (WorkerArea area : byWorker){ + List ids; + if(countryMap.containsKey(area.getDistrictId())){ + ids = countryMap.get(area.getDistrictId()); + }else { + ids = new ArrayList<>(); + } + ids.add(String.valueOf(area.getStreetId())); + countryMap.put(area.getDistrictId(), ids); + } + List result = new ArrayList<>(); + for (Map.Entry> longListEntry : countryMap.entrySet()) { + WorkerArea model = new WorkerArea(); + SysArea countryArea = sysAreaService.selectById(longListEntry.getKey()); + model.setDistrictArea(countryArea); + SysArea cityArea = sysAreaService.selectById(Long.valueOf(countryArea.getParentCode())); + model.setCityArea(cityArea); + SysArea provinceArea = sysAreaService.selectById(Long.valueOf(cityArea.getParentCode())); + model.setProvinceArea(provinceArea); + model.setStreetIds(longListEntry.getValue()); + result.add(model); + } + return AjaxResult.success(result); + } + @PostMapping("save") @ResponseBody @Transactional(rollbackFor = Exception.class) diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerGoodsCategoryController.java b/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerGoodsCategoryController.java index 51148356..54efcd65 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerGoodsCategoryController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/worker/WorkerGoodsCategoryController.java @@ -17,10 +17,7 @@ import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Collections; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; /** @@ -61,6 +58,37 @@ public class WorkerGoodsCategoryController { } return AjaxResult.success(list); } + @GetMapping("worker/edit") + @ResponseBody + public AjaxResult getEditWorker(Long workerId) { + Map> twoMap = new HashMap<>(); + List list = workerGoodsCategoryService.getByWorker(workerId); + if(CollectionUtils.isEmpty(list)){ + return AjaxResult.success(); + } + for (WorkerGoodsCategory item: list) { + List ids; + GoodsCategory goodsCategory = goodsCategoryService.selectById(item.getGoodsCategoryId()); + if(twoMap.containsKey(goodsCategory.getParentCategoryId())){ + ids = twoMap.get(goodsCategory.getParentCategoryId()); + }else { + ids = new ArrayList<>(); + } + ids.add(String.valueOf(goodsCategory.getGoodsCategoryId())); + twoMap.put(goodsCategory.getParentCategoryId(), ids); + } + List result = new ArrayList<>(); + for (Map.Entry> longListEntry : twoMap.entrySet()) { + WorkerGoodsCategory model = new WorkerGoodsCategory(); + GoodsCategory goodsCategory = goodsCategoryService.selectById(longListEntry.getKey()); + model.setTwoGoodsCategory(goodsCategory); + model.setOneGoodsCategory(goodsCategoryService.selectById(goodsCategory.getParentCategoryId())); + model.setCategoryIds(longListEntry.getValue()); + result.add(model); + } + return AjaxResult.success(result); + } + @PostMapping("save") @ResponseBody diff --git a/ghy-worker/pom.xml b/ghy-worker/pom.xml index 62f218f1..877cfdf1 100644 --- a/ghy-worker/pom.xml +++ b/ghy-worker/pom.xml @@ -26,6 +26,10 @@ com.ghy ghy-goods + + com.ghy + ghy-system + diff --git a/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerArea.java b/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerArea.java index 5fe4fe2a..4f2733bc 100644 --- a/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerArea.java +++ b/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerArea.java @@ -2,6 +2,7 @@ package com.ghy.worker.domain; import com.ghy.common.annotation.Excel; import com.ghy.common.core.domain.BaseEntity; +import com.ghy.system.domain.SysArea; import lombok.Data; import java.util.List; @@ -21,17 +22,22 @@ public class WorkerArea extends BaseEntity { @Excel(name = "省份区域id", cellType = Excel.ColumnType.NUMERIC) private Long provinceId; + private SysArea provinceArea; @Excel(name = "市区域id", cellType = Excel.ColumnType.NUMERIC) private Long cityId; + private SysArea cityArea; @Excel(name = "区/县区域id", cellType = Excel.ColumnType.NUMERIC) private Long districtId; + private SysArea districtArea; private List districtIds; @Excel(name = "街道区域id", cellType = Excel.ColumnType.NUMERIC) private Long streetId; + private List streetIds; + private String mergerName; } diff --git a/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerGoodsCategory.java b/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerGoodsCategory.java index 40efbb3d..b56c535f 100644 --- a/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerGoodsCategory.java +++ b/ghy-worker/src/main/java/com/ghy/worker/domain/WorkerGoodsCategory.java @@ -1,6 +1,7 @@ package com.ghy.worker.domain; import com.ghy.common.core.domain.BaseEntity; +import com.ghy.goods.domain.GoodsCategory; import lombok.Data; import java.util.List; @@ -28,6 +29,12 @@ public class WorkerGoodsCategory extends BaseEntity { */ private Long goodsCategoryId; + private GoodsCategory oneGoodsCategory; + + private GoodsCategory twoGoodsCategory; + + private List categoryIds; + private String goodsCategoryName; private String mergeName;