package com.ydtech.modules.order.controller; import com.ydtech.aop.request.RequestSingleParam; import com.ydtech.core.page.HttpResult; import com.ydtech.modules.order.aop.AuditVerification; import com.ydtech.modules.order.aop.QuoteVerification; import com.ydtech.modules.order.components.InsOrdersComponents; import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo; import com.ydtech.modules.order.entity.vo.BaseQuoteVo; import com.ydtech.modules.order.entity.vo.ya.YaPayUrlVo; import com.ydtech.modules.order.entity.vo.ya.YaPolicyPrintVo; import com.ydtech.modules.order.service.YongAnOrderService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import java.util.Map; @Api(tags = "永安财险") @RestController @RequestMapping("/order/yongAn") public class YongAnOrderApiController { private final InsOrdersComponents insOrdersComponents; private final YongAnOrderService yongAnOrderService; public YongAnOrderApiController(InsOrdersComponents insOrdersComponents, YongAnOrderService yongAnOrderService) { this.insOrdersComponents = insOrdersComponents; this.yongAnOrderService = yongAnOrderService; } @QuoteVerification("报价授权") @PostMapping("/quote") @ApiOperation("报价") public HttpResult quote(@RequestBody BaseQuoteVo quoteVo) { BaseQuoteInfoVo quoteInfo = insOrdersComponents.getQuoteInfo(quoteVo.getOrderNo(), quoteVo.getAgreementId(),quoteVo.getKinds()); return this.yongAnOrderService.quote(quoteInfo, quoteVo); } @AuditVerification("核保") @PostMapping("/audit") @ApiOperation("核保") public HttpResult audit(@RequestSingleParam(value = "companyId") String companyId) { return this.yongAnOrderService.audit(companyId); } @PostMapping(value = "/submitImage") @ApiOperation(value = "影像上传") public HttpResult submitImage(@RequestSingleParam(value = "companyId") String companyId) { return this.yongAnOrderService.submitImage(companyId); } @PostMapping("/getMessage") @ApiOperation("获取短信验证码") public HttpResult getMessage(@RequestSingleParam(value = "companyId") String companyId) { return this.yongAnOrderService.getMessage(companyId); } @PostMapping("/getPayUrl") @ApiOperation("获取支付url") public HttpResult getPayUrl(@RequestBody YaPayUrlVo yaPayUrlVo) { return this.yongAnOrderService.getPayUrl(yaPayUrlVo); } @GetMapping("/updatePolicy") @ApiOperation(value = "支付回调") public String updatePolicy(@RequestParam Map paramMap) { this.yongAnOrderService.updatePolicy(paramMap); return "0"; } @PostMapping("/getPolicyPrint") @ApiOperation("01 - 电子保单") public HttpResult getPolicyPrint(@RequestBody YaPolicyPrintVo yaPolicyPrintVo) { return this.yongAnOrderService.getPolicyPrint(yaPolicyPrintVo.getCompanyId(), yaPolicyPrintVo.getPolicytype(), "01"); } @PostMapping("/getPolicyPrint2") @ApiOperation("02 - 车险电子标志") public HttpResult getPolicyPrint2(@RequestBody YaPolicyPrintVo yaPolicyPrintVo) { return this.yongAnOrderService.getPolicyPrint(yaPolicyPrintVo.getCompanyId(), yaPolicyPrintVo.getPolicytype(), "02"); } }