diff --git a/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogistic.java b/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogistic.java index 0d0efb01..ee7d0e42 100644 --- a/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogistic.java +++ b/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogistic.java @@ -85,4 +85,8 @@ public class MapLogistic extends CommonEntity { @ApiModelProperty("地图标记点列表") private List mapLogisticPoint; + @TableField(exist = false) + @ApiModelProperty("地图转办任务预设标记点列表") + private List mapTaskPresetLogisticPoint; + } diff --git a/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java b/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java index 37d55c30..a56d6448 100644 --- a/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java +++ b/kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java @@ -52,6 +52,9 @@ public class MapLogisticPoint extends CommonEntity { @ApiModelProperty("关联报告单生成的批次码") private String batchCode; + @ApiModelProperty("收样员ID") + private String courierUserId; + @ApiModelProperty("地图主线物流ID") private String mapLogisticId; diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticController.java b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticController.java index 8b27acfc..a67ae16e 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticController.java +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticController.java @@ -77,6 +77,11 @@ public class MapLogisticController { mapLogisticPointList.forEach(item -> item.setKey(item.getId())); mapLogistic.setMapTask(mapTaskList); mapLogistic.setMapLogisticPoint(mapLogisticPointList); + // 针对与没有地图数据的收样员,检查是否有其他收样员设置的交接转办任务 + } else { + + + } return R.ok(mapLogistic); } diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticPointController.java b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticPointController.java index 6fb2d3b8..96c4a0c6 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticPointController.java +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticPointController.java @@ -20,6 +20,7 @@ import org.springframework.web.bind.annotation.*; import org.springframework.stereotype.Controller; import java.util.Arrays; +import java.util.List; /** *

@@ -57,6 +58,13 @@ public class MapLogisticPointController { return R.ok(mapLogisticPoint); } + @GetMapping("/getTaskPresetPointByCourierUserId/{courierUserId:\\w+}") + @ApiOperation(value = "获取任务预设标记点") + public R getTaskPresetPointByCourierUserId(@PathVariable String courierUserId) { + List mapLogisticPoint = iMapLogisticPointService.getTaskPresetPointByCourierUserId(courierUserId); + return R.ok(mapLogisticPoint); + } + @PostMapping("/save") @ApiOperation(value = "保存", notes = "保存") public R save(@RequestBody MapLogisticPoint mapLogisticPoint) { diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapLogisticPointMapper.java b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapLogisticPointMapper.java index bca9a95f..5c6ebbab 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapLogisticPointMapper.java +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapLogisticPointMapper.java @@ -3,6 +3,8 @@ package com.cloud.kicc.commonbiz.mapper; import com.cloud.kicc.commonbiz.api.entity.MapLogisticPoint; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import java.util.List; + /** *

* 地图核心主任务表 Mapper 接口 @@ -13,4 +15,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface MapLogisticPointMapper extends BaseMapper { + /** + * 获取任务预设标记点 + * @param courierUserId 快递员id + * @return List + */ + List getTaskPresetPointByCourierUserId(String courierUserId); + } diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/IMapLogisticPointService.java b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/IMapLogisticPointService.java index cafe4850..2f009c8e 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/IMapLogisticPointService.java +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/IMapLogisticPointService.java @@ -3,6 +3,8 @@ package com.cloud.kicc.commonbiz.service; import com.cloud.kicc.commonbiz.api.entity.MapLogisticPoint; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.List; + /** *

* 地图核心主任务表 服务类 @@ -13,4 +15,11 @@ import com.baomidou.mybatisplus.extension.service.IService; */ public interface IMapLogisticPointService extends IService { + /** + * 获取任务预设标记点 + * @param courierUserId 快递员id + * @return List + */ + List getTaskPresetPointByCourierUserId(String courierUserId); + } diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticPointServiceImpl.java b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticPointServiceImpl.java index 5f32eacd..c34b9e4e 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticPointServiceImpl.java +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticPointServiceImpl.java @@ -6,6 +6,8 @@ import com.cloud.kicc.commonbiz.service.IMapLogisticPointService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service; +import java.util.List; + /** *

* 地图核心主任务表 服务实现类 @@ -17,4 +19,9 @@ import org.springframework.stereotype.Service; @Service public class MapLogisticPointServiceImpl extends ServiceImpl implements IMapLogisticPointService { + @Override + public List getTaskPresetPointByCourierUserId(String courierUserId) { + return super.baseMapper.getTaskPresetPointByCourierUserId(courierUserId); + } + } diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java index ca14da7e..4936d277 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java @@ -1,22 +1,21 @@ package com.cloud.kicc.commonbiz.service.impl; +import cn.hutool.core.collection.ListUtil; +import cn.hutool.core.util.ArrayUtil; +import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.cloud.kicc.commonbiz.api.entity.MapLogistic; -import com.cloud.kicc.commonbiz.api.entity.MapLogisticPoint; -import com.cloud.kicc.commonbiz.api.entity.MapTask; -import com.cloud.kicc.commonbiz.api.entity.MapTaskPreset; +import com.cloud.kicc.commonbiz.api.entity.*; import com.cloud.kicc.commonbiz.mapper.MapLogisticMapper; -import com.cloud.kicc.commonbiz.service.IMapLogisticPointService; -import com.cloud.kicc.commonbiz.service.IMapLogisticService; -import com.cloud.kicc.commonbiz.service.IMapTaskPresetService; -import com.cloud.kicc.commonbiz.service.IMapTaskService; +import com.cloud.kicc.commonbiz.service.*; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; + /** *

* 地图核心主任务表 服务实现类 @@ -34,9 +33,15 @@ public class MapLogisticServiceImpl extends ServiceImpl orgList = orgService.list(); + List hospitalList = hospitalService.list(Wrappers.lambdaQuery().eq(Hospital::getMapNotify, "1")); super.removeById(mapLogistic); iMapTaskService.remove(Wrappers.lambdaUpdate().eq(MapTask::getMapLogisticId, mapLogistic.getId())); iMapTaskPresetService.remove(Wrappers.lambdaUpdate().eq(MapTaskPreset::getMapLogisticId, mapLogistic.getId())); @@ -52,8 +57,37 @@ public class MapLogisticServiceImpl extends ServiceImpl { mapTaskPreset.setMapLogisticId(mapLogistic.getId()); mapTaskPreset.setMapTaskId(mapTask.getId()); + iMapTaskPresetService.save(mapTaskPreset); + + /*orgList.stream().filter(ietm -> StrUtil.equals(ietm.getId(), ) )*/ + + /*const hospital = mapState.hospitalList.find(e => e.value == item.hospitalId), + org = item.orgId ? mapState.orgList.find(e => e.value == item.orgId) : {} as MapPointType;*/ + + // 追加交接转办任务标记点,首次新增没有任何数据,后面会有收样员设置的位置数据覆盖 + mapLogistic.getMapLogisticPoint().addAll(ListUtil.of( + new MapLogisticPoint() + .setLng(mapTaskPreset.getOrginPresetLng()) + .setLat(mapTaskPreset.getOrginPresetLat()) + .setSort(Integer.sum(mapLogistic.getMapLogisticPoint().size(),1)) + .setType("0") + .setTaskType("1") + .setMapTaskId(mapTaskPreset.getId()) + .setHospitalId(mapTaskPreset.getOrginPresetId()) + .setHospitalName(mapTaskPreset.getOrginPresetName()) + .setCourierUserId(mapTaskPreset.getCourierUserId()), + new MapLogisticPoint() + .setLng(mapTaskPreset.getDestinationPresetLng()) + .setLat(mapTaskPreset.getDestinationPresetLat()) + .setSort(Integer.sum(mapLogistic.getMapLogisticPoint().size(),2)) + .setType("0") + .setTaskType("1") + .setMapTaskId(mapTaskPreset.getId()) + .setHospitalId(mapTaskPreset.getDestinationPresetId()) + .setHospitalName(mapTaskPreset.getDestinationPresetName()) + .setCourierUserId(mapTaskPreset.getCourierUserId()) + )); }); - iMapTaskPresetService.saveBatch(mapTask.getMapTaskPreset()); } }); mapLogistic.getMapLogisticPoint().forEach(item -> item.setMapLogisticId(mapLogistic.getId())); diff --git a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapLogisticPointMapper.xml b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapLogisticPointMapper.xml index cafafb32..2e553f55 100644 --- a/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapLogisticPointMapper.xml +++ b/kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapLogisticPointMapper.xml @@ -2,4 +2,11 @@ + +