liujie
2026-06-09 c96fbe6b0aeb413a17c429133ee6d81d138144b9
xp-robotaxi-maintenance-boot/src/main/java/com/xiaopeng/maintenance/controller/XpCheckLocationController.java
@@ -2,11 +2,13 @@
import cn.hutool.core.collection.CollUtil;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpFleetClient;
import com.xiaopeng.api.feignClient.vehicleConvoy.XpVehicleClient;
import com.xiaopeng.api.model.maintenance.XpCheckLocation;
import com.xiaopeng.common.core.domain.R;
import com.xiaopeng.common.core.enums.DisabledEnum;
import com.xiaopeng.common.core.web.page.PageInfo;
import com.xiaopeng.common.log.annotation.AdminOperationLog;
import com.xiaopeng.common.log.enums.AdminBusinessType;
import com.xiaopeng.common.log.enums.AdminOperationType;
import com.xiaopeng.common.security.service.TokenService;
import com.xiaopeng.maintenance.dto.LocationUpdateStatusDTO;
import com.xiaopeng.maintenance.model.query.XpCheckLocationQuery;
@@ -19,6 +21,9 @@
import java.util.ArrayList;
import java.util.List;
import com.xiaopeng.common.log.annotation.AdminOperationLog;
import com.xiaopeng.common.log.enums.AdminBusinessType;
import com.xiaopeng.common.log.enums.AdminOperationType;
/**
 * @author MiTao
@@ -70,6 +75,12 @@
    @PostMapping("/api/v1/check-location/add")
    @ApiOperation(value = "新增打卡地", tags = {"管理后台-运维执行"})
    @AdminOperationLog(
            businessType = AdminBusinessType.CHECK_LOCATION_MANAGEMENT,
            operationType = AdminOperationType.ADD,
            content = "新增打卡地点",
            appendRequestData = true
    )
    public  R<String> add(@RequestBody XpCheckLocation dto){
        xpCheckLocationService.save(dto);
        return R.ok();
@@ -77,6 +88,12 @@
    @PostMapping("/api/v1/check-location/edit")
    @ApiOperation(value = "编辑打卡地", tags = {"管理后台-运维执行"})
    @AdminOperationLog(
            businessType = AdminBusinessType.CHECK_LOCATION_MANAGEMENT,
            operationType = AdminOperationType.EDIT,
            content = "编辑打卡地点",
            appendRequestData = true
    )
    public  R<String> edit(@RequestBody XpCheckLocation dto){
        xpCheckLocationService.updateById(dto);
        return R.ok();
@@ -84,6 +101,12 @@
    @DeleteMapping("/api/v1/check-location/deleteById")
    @ApiOperation(value = "删除打卡地", tags = {"管理后台-运维执行"})
    @AdminOperationLog(
            businessType = AdminBusinessType.CHECK_LOCATION_MANAGEMENT,
            operationType = AdminOperationType.DELETE,
            contentExpression = "'删除打卡地点,id=' + #p0",
            appendRequestData = false
    )
    public  R<String> deleteById(@RequestParam Long id){
        // 判断打卡地是否已被使用
        Long data = xpFleetClient.getUseCountByLocationId(id).getData();
@@ -96,6 +119,12 @@
    @PostMapping("/api/v1/check-location/updateStatus")
    @ApiOperation(value = "启用禁用打卡地", tags = {"管理后台-运维执行"})
    @AdminOperationLog(
            businessType = AdminBusinessType.CHECK_LOCATION_MANAGEMENT,
            operationTypeExpression = "#p0.status == 1 ? T(com.xiaopeng.common.log.enums.AdminOperationType).ENABLE : T(com.xiaopeng.common.log.enums.AdminOperationType).DISABLE",
            contentExpression = "(#p0.status == 1 ? '启用打卡地点,id=' : '禁用打卡地点,id=') + #p0.id",
            appendRequestData = false
    )
    public  R<String> updateStatus(@RequestBody LocationUpdateStatusDTO dto){
        XpCheckLocation xpCheckLocation = xpCheckLocationService.getById(dto.getId());
        xpCheckLocation.setStatus(dto.getStatus());