package com.xiaopeng.map.controller;
|
|
|
import com.xiaopeng.api.dto.map.RouteAndFareDto;
|
import com.xiaopeng.api.dto.operation.LonLatDto;
|
import com.xiaopeng.api.vo.operation.XpElectronicFenceVo;
|
import com.xiaopeng.common.core.domain.R;
|
import com.xiaopeng.common.core.web.controller.BaseController;
|
import com.xiaopeng.common.core.web.domain.AjaxResult;
|
import com.xiaopeng.map.dto.WalkTimeDto;
|
import com.xiaopeng.map.service.XpElectronicFenceAreaService;
|
import com.xiaopeng.map.vo.IsInOperationAreaVo;
|
import com.xiaopeng.map.vo.WalkTimeVo;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
import java.util.List;
|
|
@Slf4j
|
@RestController
|
@RequestMapping("/base/v1/mini-program")
|
@Api(tags = "电子围栏")
|
public class XpElectronicFenceController extends BaseController {
|
|
private final XpElectronicFenceAreaService xpElectronicFenceAreaService;
|
|
public XpElectronicFenceController(XpElectronicFenceAreaService xpElectronicFenceAreaService) {
|
this.xpElectronicFenceAreaService = xpElectronicFenceAreaService;
|
|
}
|
|
|
/**
|
* 获取地图开放区域围栏
|
* @return
|
*/
|
@ApiOperation(value = "获取地图开放区域围栏",tags = {"小程序-获取地图开放区域围栏"},response = XpElectronicFenceVo.class)
|
@GetMapping("/cities/list")
|
public AjaxResult<List<XpElectronicFenceVo>> citiesList() {
|
return success(xpElectronicFenceAreaService.citiesList());
|
}
|
|
|
@ApiOperation(value = "判断当前位置是否在运营区域内",tags = {"小程序-判断当前位置是否在运营区域内"})
|
@PostMapping("/fence/check")
|
public AjaxResult<IsInOperationAreaVo> isInOperationArea(@RequestBody @Valid LonLatDto dto) {
|
return success(xpElectronicFenceAreaService.isInOperationArea(dto));
|
}
|
|
|
@ApiOperation(value = "根据点位获取步行时间和距离",tags = {"小程序-根据点位获取步行时间和距离"})
|
@PostMapping("/fence/walkTime")
|
public AjaxResult<WalkTimeVo> getWalkTime(@RequestBody @Valid WalkTimeDto dto) {
|
return success(xpElectronicFenceAreaService.getWalkTime(dto));
|
}
|
|
|
|
/**
|
* 判断是否同一经营区域
|
* @param dto
|
* @return
|
*/
|
@PostMapping("/fence/diagnosisArea")
|
public R<Boolean> diagnosisArea(@RequestBody RouteAndFareDto dto){
|
return R.ok(xpElectronicFenceAreaService.diagnosisArea(dto));
|
}
|
|
}
|