Browse Source

🅰 地图设计器初步完稿

master
wangxiang 3 years ago
parent
commit
97e393dfa8
  1. 4
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogistic.java
  2. 3
      kicc-platform/kicc-platform-api/kicc-common-api/src/main/java/com/cloud/kicc/commonbiz/api/entity/MapLogisticPoint.java
  3. 5
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticController.java
  4. 8
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/controller/MapLogisticPointController.java
  5. 9
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/mapper/MapLogisticPointMapper.java
  6. 9
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/IMapLogisticPointService.java
  7. 7
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticPointServiceImpl.java
  8. 52
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/java/com/cloud/kicc/commonbiz/service/impl/MapLogisticServiceImpl.java
  9. 7
      kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapLogisticPointMapper.xml

4
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("地图标记点列表") @ApiModelProperty("地图标记点列表")
private List<MapLogisticPoint> mapLogisticPoint; private List<MapLogisticPoint> mapLogisticPoint;
@TableField(exist = false)
@ApiModelProperty("地图转办任务预设标记点列表")
private List<MapLogisticPoint> mapTaskPresetLogisticPoint;
} }

3
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("关联报告单生成的批次码") @ApiModelProperty("关联报告单生成的批次码")
private String batchCode; private String batchCode;
@ApiModelProperty("收样员ID")
private String courierUserId;
@ApiModelProperty("地图主线物流ID") @ApiModelProperty("地图主线物流ID")
private String mapLogisticId; private String mapLogisticId;

5
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())); mapLogisticPointList.forEach(item -> item.setKey(item.getId()));
mapLogistic.setMapTask(mapTaskList); mapLogistic.setMapTask(mapTaskList);
mapLogistic.setMapLogisticPoint(mapLogisticPointList); mapLogistic.setMapLogisticPoint(mapLogisticPointList);
// 针对与没有地图数据的收样员,检查是否有其他收样员设置的交接转办任务
} else {
} }
return R.ok(mapLogistic); return R.ok(mapLogistic);
} }

8
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 org.springframework.stereotype.Controller;
import java.util.Arrays; import java.util.Arrays;
import java.util.List;
/** /**
* <p> * <p>
@ -57,6 +58,13 @@ public class MapLogisticPointController {
return R.ok(mapLogisticPoint); return R.ok(mapLogisticPoint);
} }
@GetMapping("/getTaskPresetPointByCourierUserId/{courierUserId:\\w+}")
@ApiOperation(value = "获取任务预设标记点")
public R getTaskPresetPointByCourierUserId(@PathVariable String courierUserId) {
List<MapLogisticPoint> mapLogisticPoint = iMapLogisticPointService.getTaskPresetPointByCourierUserId(courierUserId);
return R.ok(mapLogisticPoint);
}
@PostMapping("/save") @PostMapping("/save")
@ApiOperation(value = "保存", notes = "保存") @ApiOperation(value = "保存", notes = "保存")
public R save(@RequestBody MapLogisticPoint mapLogisticPoint) { public R save(@RequestBody MapLogisticPoint mapLogisticPoint) {

9
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.cloud.kicc.commonbiz.api.entity.MapLogisticPoint;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/** /**
* <p> * <p>
* 地图核心主任务表 Mapper 接口 * 地图核心主任务表 Mapper 接口
@ -13,4 +15,11 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/ */
public interface MapLogisticPointMapper extends BaseMapper<MapLogisticPoint> { public interface MapLogisticPointMapper extends BaseMapper<MapLogisticPoint> {
/**
* 获取任务预设标记点
* @param courierUserId 快递员id
* @return List<MapLogisticPoint>
*/
List<MapLogisticPoint> getTaskPresetPointByCourierUserId(String courierUserId);
} }

9
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.cloud.kicc.commonbiz.api.entity.MapLogisticPoint;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/** /**
* <p> * <p>
* 地图核心主任务表 服务类 * 地图核心主任务表 服务类
@ -13,4 +15,11 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/ */
public interface IMapLogisticPointService extends IService<MapLogisticPoint> { public interface IMapLogisticPointService extends IService<MapLogisticPoint> {
/**
* 获取任务预设标记点
* @param courierUserId 快递员id
* @return List<MapLogisticPoint>
*/
List<MapLogisticPoint> getTaskPresetPointByCourierUserId(String courierUserId);
} }

7
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 com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* <p> * <p>
* 地图核心主任务表 服务实现类 * 地图核心主任务表 服务实现类
@ -17,4 +19,9 @@ import org.springframework.stereotype.Service;
@Service @Service
public class MapLogisticPointServiceImpl extends ServiceImpl<MapLogisticPointMapper, MapLogisticPoint> implements IMapLogisticPointService { public class MapLogisticPointServiceImpl extends ServiceImpl<MapLogisticPointMapper, MapLogisticPoint> implements IMapLogisticPointService {
@Override
public List<MapLogisticPoint> getTaskPresetPointByCourierUserId(String courierUserId) {
return super.baseMapper.getTaskPresetPointByCourierUserId(courierUserId);
}
} }

52
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; 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.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.cloud.kicc.commonbiz.api.entity.MapLogistic; import com.cloud.kicc.commonbiz.api.entity.*;
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.mapper.MapLogisticMapper; import com.cloud.kicc.commonbiz.mapper.MapLogisticMapper;
import com.cloud.kicc.commonbiz.service.IMapLogisticPointService; import com.cloud.kicc.commonbiz.service.*;
import com.cloud.kicc.commonbiz.service.IMapLogisticService;
import com.cloud.kicc.commonbiz.service.IMapTaskPresetService;
import com.cloud.kicc.commonbiz.service.IMapTaskService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/** /**
* <p> * <p>
* 地图核心主任务表 服务实现类 * 地图核心主任务表 服务实现类
@ -34,9 +33,15 @@ public class MapLogisticServiceImpl extends ServiceImpl<MapLogisticMapper, MapLo
private final IMapTaskPresetService iMapTaskPresetService; private final IMapTaskPresetService iMapTaskPresetService;
private final IMapLogisticPointService iMapLogisticPointService; private final IMapLogisticPointService iMapLogisticPointService;
private final HospitalService hospitalService;
private final OrgService orgService;
@Override @Override
public void mapSaveOrUpdate(MapLogistic mapLogistic) { public void mapSaveOrUpdate(MapLogistic mapLogistic) {
// 保存不做过多的处理,直接先删后加,由于前端未做操作记录池功能,不能实现表格数据的增删改 // 保存不做过多的处理,直接先删后加,由于前端未做操作记录池功能,不能实现表格数据的增删改
List<Org> orgList = orgService.list();
List<Hospital> hospitalList = hospitalService.list(Wrappers.<Hospital>lambdaQuery().eq(Hospital::getMapNotify, "1"));
super.removeById(mapLogistic); super.removeById(mapLogistic);
iMapTaskService.remove(Wrappers.<MapTask>lambdaUpdate().eq(MapTask::getMapLogisticId, mapLogistic.getId())); iMapTaskService.remove(Wrappers.<MapTask>lambdaUpdate().eq(MapTask::getMapLogisticId, mapLogistic.getId()));
iMapTaskPresetService.remove(Wrappers.<MapTaskPreset>lambdaUpdate().eq(MapTaskPreset::getMapLogisticId, mapLogistic.getId())); iMapTaskPresetService.remove(Wrappers.<MapTaskPreset>lambdaUpdate().eq(MapTaskPreset::getMapLogisticId, mapLogistic.getId()));
@ -52,8 +57,37 @@ public class MapLogisticServiceImpl extends ServiceImpl<MapLogisticMapper, MapLo
mapTask.getMapTaskPreset().forEach(mapTaskPreset -> { mapTask.getMapTaskPreset().forEach(mapTaskPreset -> {
mapTaskPreset.setMapLogisticId(mapLogistic.getId()); mapTaskPreset.setMapLogisticId(mapLogistic.getId());
mapTaskPreset.setMapTaskId(mapTask.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())); mapLogistic.getMapLogisticPoint().forEach(item -> item.setMapLogisticId(mapLogistic.getId()));

7
kicc-platform/kicc-platform-biz/kicc-common-biz/src/main/resources/mapper/MapLogisticPointMapper.xml

@ -2,4 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.cloud.kicc.commonbiz.mapper.MapLogisticPointMapper"> <mapper namespace="com.cloud.kicc.commonbiz.mapper.MapLogisticPointMapper">
<select id="getTaskPresetPointByCourierUserId" parameterType="String" resultType="MapLogisticPoint">
select *
from common_map_logistic_point lp
where (select count(1) from common_map_task_preset tp where lp.map_task_id != tp.id) = 0
and lp.courier_user_id = #{courierUserId}
</select>
</mapper> </mapper>

Loading…
Cancel
Save