package com.xiaopeng.account.controller;
import com.xiaopeng.account.model.dto.QualificationReviewDTO;
import com.xiaopeng.account.model.query.XpQualificationAuditQuery;
import com.xiaopeng.account.service.IXpQualificationAuditService;
import com.xiaopeng.api.vo.account.XpQualificationAuditVO;
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 io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.stereotype.Controller;
import java.io.UnsupportedEncodingException;
import com.xiaopeng.common.log.annotation.AdminOperationLog;
import com.xiaopeng.common.log.enums.AdminBusinessType;
import com.xiaopeng.common.log.enums.AdminOperationType;
/**
*
* 运维人员资质证书审核记录 前端控制器
*
*
* @author mitao
* @since 2026-02-03
*/
@Api(tags = "资质审核记录")
@RestController
@RequestMapping("")
public class XpQualificationAuditController {
@Autowired
private IXpQualificationAuditService xpQualificationAuditService;
@Autowired
private TokenService tokenService;
/**
* 管理后台-综合审核-人员资质审核分页列表
*/
@ApiOperation(value = "管理后台-综合审核-人员资质审核分页列表", tags = {"管理后台-服务中心"})
@PostMapping("/api/v1/qualificationAudit/pageList")
public R> pageList(@RequestBody XpQualificationAuditQuery query) throws UnsupportedEncodingException {
PageInfo pageList = xpQualificationAuditService.pageList(query);
return R.ok(pageList);
}
/**
* 管理后台-综合审核-人员资质审核
*/
@ApiOperation(value = "管理后台-综合审核-人员资质批量审核(单审核共用)", tags = {"管理后台-服务中心"})
@PostMapping("/api/v1/qualificationAudit/audit")
@AdminOperationLog(
businessType = AdminBusinessType.QUALIFICATION_AUDIT,
operationType = AdminOperationType.AUDIT,
contentExpression = "'人员资质审核,ids=' + #p0.ids + ',auditStatus=' + #p0.auditStatus",
appendRequestData = false
)
public R audit(@RequestBody QualificationReviewDTO dto) {
Long userid = tokenService.getLoginUser().getUserid();
xpQualificationAuditService.audit(dto,userid);
return R.ok();
}
/**
* 管理后台-综合审核-人员资质审核删除
*/
@ApiOperation(value = "管理后台-综合审核-人员资质审核删除", tags = {"管理后台-服务中心"})
@DeleteMapping("/api/v1/qualificationAudit/deleteById")
@AdminOperationLog(
businessType = AdminBusinessType.QUALIFICATION_AUDIT,
operationType = AdminOperationType.DELETE,
contentExpression = "'删除人员资质审核,id=' + #p0",
appendRequestData = false
)
public R deleteById(@RequestParam Long id) {
xpQualificationAuditService.removeById(id);
return R.ok();
}
/**
* 管理后台-查询资质审核详情
*/
@ApiOperation(value = "管理后台-查询资质审核详情", tags = {"管理后台-服务中心"})
@GetMapping("/api/v1/qualificationAudit/getQualificationAuditInfo/{id}")
public R getQualificationAuditInfo(@PathVariable Long id){
XpQualificationAuditVO qualificationAuditInfo = null;
try {
qualificationAuditInfo = xpQualificationAuditService.getQualificationAuditInfo(id);
} catch (UnsupportedEncodingException e) {
throw new RuntimeException(e);
}
return R.ok(qualificationAuditInfo);
}
}