package com.xiaopeng.vehicleConvoy.controller;
|
|
import com.xiaopeng.common.core.domain.R;
|
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.vehicleConvoy.model.dto.XpPolicyApplicationAuditDTO;
|
import com.xiaopeng.vehicleConvoy.model.query.XpPolicyApplicationQuery;
|
import com.xiaopeng.vehicleConvoy.model.vo.QueryPolicyInfoVO;
|
import com.xiaopeng.vehicleConvoy.model.vo.XpPolicyApplicationVO;
|
import com.xiaopeng.vehicleConvoy.service.IXpPolicyApplicationService;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.RequiredArgsConstructor;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.context.annotation.Lazy;
|
import org.springframework.validation.annotation.Validated;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.validation.Valid;
|
import com.xiaopeng.common.log.annotation.AdminOperationLog;
|
import com.xiaopeng.common.log.enums.AdminBusinessType;
|
import com.xiaopeng.common.log.enums.AdminOperationType;
|
|
/**
|
* @author MiTao
|
* @date 2026-02-09 15:30
|
*
|
*/
|
@Slf4j
|
@Validated
|
@RestController
|
@RequiredArgsConstructor(onConstructor_ = @Lazy)
|
public class XpPolicyApplicationController {
|
private final IXpPolicyApplicationService xpPolicyApplicationService;
|
private final TokenService tokenService;
|
|
@ApiOperation("保单审核申请分页列表")
|
@PostMapping("/api/v1/policyApplication/pageList")
|
public R<PageInfo<XpPolicyApplicationVO>> pageList(@RequestBody XpPolicyApplicationQuery query) {
|
PageInfo<XpPolicyApplicationVO> pageInfo = xpPolicyApplicationService.pageList(query);
|
return R.ok(pageInfo);
|
}
|
|
@ApiOperation("批量审核")
|
@PostMapping("/api/v1/policyApplication/batchAudit")
|
@AdminOperationLog(
|
businessType = AdminBusinessType.POLICY_APPLICATION,
|
operationType = AdminOperationType.AUDIT,
|
contentExpression = "'批量审核保单申请,ids=' + #p0.ids + ',auditStatus=' + #p0.auditStatus",
|
appendRequestData = false
|
)
|
public R<?> batchAudit(@Valid @RequestBody XpPolicyApplicationAuditDTO dto) {
|
xpPolicyApplicationService.batchAudit(dto);
|
return R.ok();
|
}
|
@ApiOperation("删除保单申请")
|
@DeleteMapping("/api/v1/policyApplication/deleteById/{id}")
|
@AdminOperationLog(
|
businessType = AdminBusinessType.POLICY_APPLICATION,
|
operationType = AdminOperationType.DELETE,
|
contentExpression = "'删除保单申请,id=' + #p0",
|
appendRequestData = false
|
)
|
public R<?> deleteById(@PathVariable Long id) {
|
xpPolicyApplicationService.removeById(id);
|
return R.ok();
|
}
|
|
@ApiOperation(value = "申请保单查看", tags = {"运维APP-车辆管理"})
|
@GetMapping("/maintenance-app/api/v1/policyApplication/applyPolicyInformation")
|
public R<String> applyPolicyInformation(@RequestParam Long vehicleId) {
|
|
Long id = tokenService.getLoginOperationUser().getId();
|
xpPolicyApplicationService.applyPolicyInformation(vehicleId,id);
|
|
return R.ok();
|
}
|
|
@ApiOperation(value = "通过车辆id查询保单审核明细", tags = {"运维APP-车辆管理"})
|
@GetMapping("/maintenance-app/api/v1/policyApplication/queryPolicyInfoByVid")
|
public R<QueryPolicyInfoVO> queryPolicyInfoByVid(@RequestParam Long vehicleId) {
|
|
Long id = tokenService.getLoginOperationUser().getId();
|
QueryPolicyInfoVO queryPolicyInfoVO = xpPolicyApplicationService.queryPolicyInfoByVid(vehicleId,id);
|
|
return R.ok(queryPolicyInfoVO);
|
}
|
|
}
|