package com.ruoyi.web.controller.product; import cn.hutool.core.util.ObjectUtil; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.im.comm.Result; import com.ruoyi.im.service.UserKycService; import com.ruoyi.im.service.impl.UserKycServiceImpl; import com.ruoyi.system.domain.UserAccount; import com.ruoyi.system.domain.UserKyc; import com.ruoyi.system.domain.UserPolicy; import com.ruoyi.system.domain.dto.UserKycDto; import com.ruoyi.system.domain.dto.UserPolicyDto; import com.ruoyi.system.mapper.UserKycMapper; import com.ruoyi.system.service.UserAccountService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; import java.util.Date; @RestController @RequestMapping("/kyc") public class UserKycController { @Autowired UserKycService userKycService; @Autowired UserAccountService userAccountService; /** * 保险购买申请 */ @PostMapping("/kycApply") public Result kycApply(@Valid @RequestBody UserKycDto dto) { try { UserAccount userAccount = userAccountService.getById(dto.getUserId()); if(ObjectUtil.isEmpty(userAccount)){ return Result.error("请重新登录,未查询到你的信息!"); } UserKyc userKyc = new UserKyc(); userKyc.setUserId(userAccount.getId()); userKyc.setState(0); userKyc.setHeadPortraitImg(dto.getHeadPortraitImg()); userKyc.setNationalEmblemImg(dto.getNationalEmblemImg()); userKyc.setHandImg(dto.getHandImg()); userKycService.save(userKyc); return Result.success("提交成功,请等待审核!"); }catch (Exception e){ e.getMessage(); return Result.error("购买失败"); } } /** * 实名认证审批 */ @PostMapping("/examine") public AjaxResult examine(@RequestParam(value = "id") Integer id, @RequestParam(value = "approvalStatus") Integer approvalStatus, @RequestParam(value = "message",required = false) String message) { try { UserKyc userKyc = userKycService.getById(id); if(ObjectUtil.isEmpty(userKyc)){ return AjaxResult.error("实名认证数据不存在"); } if(userKyc.getState() != 0){ return AjaxResult.error("订单已审批!"); } if(approvalStatus == 2 && StringUtils.isEmpty(message)){ return AjaxResult.error("驳回理由不能为空!"); } userKyc.setState(approvalStatus); userKyc.setMessage(message); userKyc.setUpdatedAt(new Date()); return AjaxResult.success("审批成功"); }catch (Exception e){ e.getMessage(); return AjaxResult.error("审批失败!"); } } }