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;