SendProjectUtils.java 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package com.ydtech.modules.fnc.utils;
  2. import com.alibaba.fastjson.JSON;
  3. import com.ydtech.modules.order.entity.vo.FeeOrderNewVo;
  4. import com.ydtech.modules.order.entity.vo.OrderVo;
  5. import com.ydtech.modules.order.entity.vo.sendProject.SendProjectInfo;
  6. import com.ydtech.modules.order.service.InsOrdersService;
  7. import com.ydtech.modules.sendProject.dao.SendProjectMapper;
  8. import com.ydtech.modules.sendProject.entity.SendProjectEntity;
  9. import com.ydtech.utils.sendProjectUtils.SendProjrctUtils;
  10. import lombok.extern.slf4j.Slf4j;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.scheduling.annotation.Async;
  13. import org.springframework.stereotype.Service;
  14. import java.text.SimpleDateFormat;
  15. import java.util.Date;
  16. import java.util.List;
  17. import java.util.UUID;
  18. @Slf4j
  19. @Service
  20. public class SendProjectUtils {
  21. @Autowired
  22. private InsOrdersService insOrdersService;
  23. @Autowired
  24. private SendProjectMapper sendProjectMapper;
  25. @Autowired
  26. private SendProjrctUtils sendProjrctUtils;
  27. private static final String STRING_0 = "0";
  28. private static final String STRING_1 = "1";
  29. private static final String STRING_2 = "2";
  30. private static final Integer INTEGER_0 = 0;
  31. @Async
  32. public void sendProject(String orderNo) {
  33. SendProjectInfo sendProjectInfo = new SendProjectInfo();
  34. OrderVo data = insOrdersService.getByCompanyId(orderNo, "accountingUser").getData();
  35. List<FeeOrderNewVo.ExportFee> exportFee = data.getFeeOrderNewVo().getExportFee();
  36. for (FeeOrderNewVo.ExportFee fee : exportFee) {
  37. if ("合计".equals(fee.getInsuranceType())) {
  38. sendProjectInfo.setGiveBudget(fee.getTotalAmount());
  39. }
  40. }
  41. StringBuffer uuid = new StringBuffer();
  42. uuid.append(new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()))
  43. .append(UUID.randomUUID());
  44. sendProjectInfo.setReferrerNo(data.getReferrerNo());
  45. sendProjectInfo.setUserId(data.getUserid());
  46. sendProjectInfo.setUserPhone(data.getApplyinfo().getString("mobile"));
  47. sendProjectInfo.setUserCarNum(data.getLicenseno());
  48. sendProjectInfo.setUserName(data.getInsuredname());
  49. sendProjectInfo.setUuid(uuid.toString());
  50. SendProjectEntity addSendProject = new SendProjectEntity();
  51. addSendProject.setTotalAmount(sendProjectInfo.getGiveBudget());
  52. addSendProject.setUserName(sendProjectInfo.getUserName());
  53. addSendProject.setUserCarNum(sendProjectInfo.getUserCarNum());
  54. addSendProject.setUserPhone(sendProjectInfo.getUserPhone());
  55. addSendProject.setSendState(STRING_2);
  56. addSendProject.setSendUuid(sendProjectInfo.getUuid());
  57. addSendProject.setUserId(sendProjectInfo.getUserId());
  58. addSendProject.setReferrerNo(sendProjectInfo.getReferrerNo());
  59. addSendProject.setFailNum(INTEGER_0);
  60. addSendProject.setState(STRING_1);
  61. addSendProject.setIsDelete(STRING_0);
  62. Date date = new Date();
  63. addSendProject.setCreateTime(date);
  64. addSendProject.setUpdateTime(date);
  65. try {
  66. log.info("新增推送服务数据库入参:{}", JSON.toJSON(addSendProject));
  67. sendProjectMapper.addSendProjectInfo(addSendProject);
  68. } catch (Exception e) {
  69. e.printStackTrace();
  70. log.error("新增推送服务数据库报错:{}", e.getMessage());
  71. }
  72. sendProjrctUtils.firstSendProject(sendProjectInfo);
  73. }
  74. }