@ -1,20 +1,29 @@
@@ -1,20 +1,29 @@
package com.cloud.kicc.commonbiz.controller ;
import cn.hutool.core.util.ObjectUtil ;
import cn.hutool.core.util.StrUtil ;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper ;
import com.baomidou.mybatisplus.core.metadata.IPage ;
import com.baomidou.mybatisplus.core.toolkit.Wrappers ;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page ;
import com.cloud.kicc.common.core.api.R ;
import com.cloud.kicc.common.core.constant.AppConstants ;
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.service.IMapLogisticPointService ;
import com.cloud.kicc.commonbiz.service.IMapLogisticService ;
import com.cloud.kicc.commonbiz.service.IMapTaskPresetService ;
import com.cloud.kicc.commonbiz.service.IMapTaskService ;
import io.swagger.annotations.Api ;
import io.swagger.annotations.ApiOperation ;
import lombok.RequiredArgsConstructor ;
import org.springframework.web.bind.annotation.* ;
import java.util.Arrays ;
import java.util.List ;
/ * *
* < p >
@ -31,6 +40,9 @@ import java.util.Arrays;
@@ -31,6 +40,9 @@ import java.util.Arrays;
public class MapLogisticController {
private final IMapLogisticService iMapLogisticService ;
private final IMapTaskService iMapTaskService ;
private final IMapTaskPresetService iMapTaskPresetService ;
private final IMapLogisticPointService iMapLogisticPointService ;
private LambdaQueryWrapper < MapLogistic > getQueryWrapper ( MapLogistic mapLogistic ) {
return new LambdaQueryWrapper < MapLogistic > ( )
@ -47,10 +59,32 @@ public class MapLogisticController {
@@ -47,10 +59,32 @@ public class MapLogisticController {
return R . ok ( iPage . getRecords ( ) , iPage . getTotal ( ) ) ;
}
@GetMapping ( "/{id:\\w+}" )
@ApiOperation ( value = "根据id获取" )
public R getById ( @PathVariable ( "id" ) String id ) {
MapLogistic mapLogistic = iMapLogisticService . getById ( id ) ;
@GetMapping ( "/{courierUserId:\\w+}" )
@ApiOperation ( value = "根据收样员id获取地图数据" )
public R getById ( @PathVariable String courierUserId ) {
MapLogistic mapLogistic = iMapLogisticService . getOne ( Wrappers . < MapLogistic > lambdaQuery ( ) . eq ( MapLogistic : : getCourierUserId , courierUserId ) ) ;
if ( ObjectUtil . isNotEmpty ( mapLogistic ) ) {
List < MapTask > mapTaskList = iMapTaskService
. list ( Wrappers . < MapTask > lambdaQuery ( ) . eq ( MapTask : : getMapLogisticId , mapLogistic . getId ( ) ) ) ;
mapTaskList . forEach ( item - > {
item . setKey ( item . getId ( ) ) ;
List < MapTaskPreset > mapTaskPresetList = iMapTaskPresetService
. list ( Wrappers . < MapTaskPreset > lambdaQuery ( ) . eq ( MapTaskPreset : : getMapTaskId , item . getId ( ) ) ) ;
mapTaskPresetList . forEach ( childItem - > {
childItem . setKey ( childItem . getId ( ) ) ;
} ) ;
item . setMapTaskPreset ( mapTaskPresetList ) ;
} ) ;
List < MapLogisticPoint > mapLogisticPointList = iMapLogisticPointService
. list ( Wrappers . < MapLogisticPoint > lambdaQuery ( ) . eq ( MapLogisticPoint : : getMapLogisticId , mapLogistic . getId ( ) ) ) ;
mapLogisticPointList . forEach ( item - > {
item . setKey ( item . getId ( ) ) ;
} ) ;
mapLogistic . setMapTask ( mapTaskList ) ;
mapLogistic . setMapLogisticPoint ( mapLogisticPointList ) ;
}
return R . ok ( mapLogistic ) ;
}