|
@@ -1018,178 +1018,4 @@ public class InsFeeAuditServiceImpl extends ServiceImpl<InsFeeAuditMapper, InsFe
|
|
|
return this.getOne(queryWrapper);
|
|
return this.getOne(queryWrapper);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- @Override
|
|
|
|
|
- public void sendProject(String insOrderNo) {
|
|
|
|
|
- log.info("订单:{},审核通过后首次推送服务", insOrderNo);
|
|
|
|
|
- executorService.submit(new Runnable() {
|
|
|
|
|
- @Override
|
|
|
|
|
- public void run() {
|
|
|
|
|
- log.info("异步线程开始!程序启动时间:{}", new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"));
|
|
|
|
|
- SendProjectInfo sendProjectInfo = new SendProjectInfo();
|
|
|
|
|
- //查询归属信息
|
|
|
|
|
- OrderVo orderAndAreaCompany = new OrderVo();
|
|
|
|
|
- EsmUserReferrer esmUserReferrer = new EsmUserReferrer();
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("查询ins_orders数据库入参:{}", insOrderNo);
|
|
|
|
|
- orderAndAreaCompany = insOrdersMapper.getOrderAndAreaCompany(insOrderNo);
|
|
|
|
|
- log.info("查询ins_orders数据库出参:{}", JSON.toJSON(orderAndAreaCompany));
|
|
|
|
|
- log.info("查询esm_user_referrer数据库入参:{}", orderAndAreaCompany.getUserid());
|
|
|
|
|
- esmUserReferrer = esmUserReferrerService.getById(orderAndAreaCompany.getUserid());
|
|
|
|
|
- log.info("查询esm_user_referrer数据库出参:{}", JSON.toJSON(esmUserReferrer));
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- e.printStackTrace();
|
|
|
|
|
- log.error("查询ins_orders/esm_user_referrer数据库报错:{}", e.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
- if (esmUserReferrer != null) {
|
|
|
|
|
- sendProjectInfo.setReferrerNo(esmUserReferrer.getReferrerId());
|
|
|
|
|
- }
|
|
|
|
|
- if (orderAndAreaCompany != null) {
|
|
|
|
|
- sendProjectInfo.setUserId(orderAndAreaCompany.getUserid());
|
|
|
|
|
- }
|
|
|
|
|
- //查询费用信息
|
|
|
|
|
- log.info("查询ins_fee_order_new数据库");
|
|
|
|
|
- InsFeeOrderNew insFeeOrderNew = insFeeOrderNewService.getOne(new LambdaQueryWrapper<InsFeeOrderNew>()
|
|
|
|
|
- .eq(InsFeeOrderNew::getInsOrderNo, insOrderNo));
|
|
|
|
|
- log.info("查询ins_fee_order_new数据库出参:{}", JSON.toJSON(insFeeOrderNew));
|
|
|
|
|
- FeeOrderNewVo.ExportFee exportFee = exportFee(insFeeOrderNew);
|
|
|
|
|
- BigDecimal totalAmount = exportFee.getTotalAmount();
|
|
|
|
|
-
|
|
|
|
|
- StringBuffer uuid = new StringBuffer();
|
|
|
|
|
- uuid.append(new SimpleDateFormat("yyyyMMddHHmmss"))
|
|
|
|
|
- .append(UUID.randomUUID());
|
|
|
|
|
-
|
|
|
|
|
- SendProjectInfo userInfo = new SendProjectInfo();
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("查询数据库保险订单表入参:{}", insOrderNo);
|
|
|
|
|
- userInfo = insOrdersMapper.getOrderByCompanyId(insOrderNo);
|
|
|
|
|
- log.info("查询数据库保险订单表出参:{}", JSON.toJSON(userInfo));
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- log.error("查询数据库保险订单表报错:{}", e.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- if (userInfo == null) {
|
|
|
|
|
- return;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- sendProjectInfo.setGiveBudget(totalAmount);
|
|
|
|
|
- sendProjectInfo.setUuid(uuid.toString());
|
|
|
|
|
- sendProjectInfo.setUserName(userInfo.getUserName());
|
|
|
|
|
- sendProjectInfo.setUserPhone(userInfo.getUserPhone());
|
|
|
|
|
- sendProjectInfo.setUserCarNum(userInfo.getUserCarNum());
|
|
|
|
|
-
|
|
|
|
|
- SendProjectEntity addSendProject = new SendProjectEntity();
|
|
|
|
|
- addSendProject.setTotalAmount(sendProjectInfo.getGiveBudget());
|
|
|
|
|
- addSendProject.setUserName(sendProjectInfo.getUserName());
|
|
|
|
|
- addSendProject.setUserCarNum(sendProjectInfo.getUserCarNum());
|
|
|
|
|
- addSendProject.setUserPhone(sendProjectInfo.getUserPhone());
|
|
|
|
|
- addSendProject.setSendState(STRING_2);
|
|
|
|
|
- addSendProject.setSendUuid(sendProjectInfo.getSendUuid());
|
|
|
|
|
- addSendProject.setUserId(sendProjectInfo.getUserId());
|
|
|
|
|
- addSendProject.setReferrerNo(sendProjectInfo.getReferrerNo());
|
|
|
|
|
- addSendProject.setFailNum(INTEGER_0);
|
|
|
|
|
- addSendProject.setState(STRING_1);
|
|
|
|
|
- addSendProject.setIsDelete(STRING_0);
|
|
|
|
|
- addSendProject.setCreateTime(new Date());
|
|
|
|
|
- addSendProject.setUpdateTime(new Date());
|
|
|
|
|
- try {
|
|
|
|
|
- log.info("新增推送服务数据库入参:{}", JSON.toJSON(addSendProject));
|
|
|
|
|
- sendProjectMapper.addSendProjectInfo(addSendProject);
|
|
|
|
|
- } catch (Exception e) {
|
|
|
|
|
- e.printStackTrace();
|
|
|
|
|
- log.error("新增推送服务数据库报错:{}", e.getMessage());
|
|
|
|
|
- }
|
|
|
|
|
- sendProjrctUtils.firstSendProject(sendProjectInfo);
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- private FeeOrderNewVo.ExportFee exportFee(InsFeeOrderNew insFeeOrderNew) {
|
|
|
|
|
- List<FeeOrderNewVo.ExportFee> exportFeeList = new ArrayList<>();
|
|
|
|
|
- //region 出口费用
|
|
|
|
|
- //交强
|
|
|
|
|
- FeeOrderNewVo.ExportFee jqExportFee = this.assignExportFee(BusinessConstant.FEE_INSURANCE_TYPE_1,
|
|
|
|
|
- insFeeOrderNew.getJqPremium(), insFeeOrderNew.getJqCostsExportProportion(),
|
|
|
|
|
- insFeeOrderNew.getJqExportOtherCostsProportion(),
|
|
|
|
|
- insFeeOrderNew.getJqExportSuperviseCostsPremiums(), insFeeOrderNew.getJqExportOtherCostsPremiums()
|
|
|
|
|
- );
|
|
|
|
|
- //exportFeeList.add(jqExportFee);
|
|
|
|
|
-
|
|
|
|
|
- //交强
|
|
|
|
|
- FeeOrderNewVo.ExportFee syExportFee = this.assignExportFee(BusinessConstant.FEE_INSURANCE_TYPE_2,
|
|
|
|
|
- insFeeOrderNew.getSyPremium(), insFeeOrderNew.getSyCostsExportProportion(),
|
|
|
|
|
- insFeeOrderNew.getSyExportOtherCostsProportion(),
|
|
|
|
|
- insFeeOrderNew.getSyExportSuperviseCostsPremiums(), insFeeOrderNew.getSyExportOtherCostsPremiums()
|
|
|
|
|
- );
|
|
|
|
|
- //exportFeeList.add(syExportFee);
|
|
|
|
|
-
|
|
|
|
|
- //交强
|
|
|
|
|
- FeeOrderNewVo.ExportFee noExportFee = this.assignExportFee(BusinessConstant.FEE_INSURANCE_TYPE_3,
|
|
|
|
|
- insFeeOrderNew.getNoPremium(), insFeeOrderNew.getNoCostsExportProportion(),
|
|
|
|
|
- insFeeOrderNew.getNoExportOtherCostsProportion(),
|
|
|
|
|
- insFeeOrderNew.getNoExportSuperviseCostsPremiums(), insFeeOrderNew.getNoExportOtherCostsPremiums());
|
|
|
|
|
-
|
|
|
|
|
- // exportFeeList.add(noExportFee);
|
|
|
|
|
- //add by hxl 添加出单员不能查看优惠的限制 2024-07-11
|
|
|
|
|
- String userId = BaseController.getUserId();
|
|
|
|
|
- SysUserRole sysUserRole = sysUserRoleService.selectByUserId(userId);
|
|
|
|
|
- if (sysUserRole != null && sysUserRole.getRoleId() == 19) {
|
|
|
|
|
- jqExportFee.setTotalAmount(BigDecimal.ZERO);
|
|
|
|
|
- jqExportFee.setTotalProportion(BigDecimal.ZERO);
|
|
|
|
|
- syExportFee.setTotalAmount(BigDecimal.ZERO);
|
|
|
|
|
- syExportFee.setTotalProportion(BigDecimal.ZERO);
|
|
|
|
|
- noExportFee.setTotalAmount(BigDecimal.ZERO);
|
|
|
|
|
- noExportFee.setTotalProportion(BigDecimal.ZERO);
|
|
|
|
|
- }
|
|
|
|
|
- exportFeeList.add(jqExportFee);
|
|
|
|
|
- exportFeeList.add(syExportFee);
|
|
|
|
|
- exportFeeList.add(noExportFee);
|
|
|
|
|
- //出口费用合计
|
|
|
|
|
- FeeOrderNewVo.ExportFee exportFeeTotal = assignExportFeeTotal(exportFeeList);
|
|
|
|
|
- return exportFeeTotal;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- private FeeOrderNewVo.ExportFee assignExportFeeTotal(List<FeeOrderNewVo.ExportFee> exportFeeList) {
|
|
|
|
|
- FeeOrderNewVo.ExportFee exportFee = new FeeOrderNewVo.ExportFee();
|
|
|
|
|
- exportFee.setInsuranceType(BusinessConstant.FEE_INSURANCE_TYPE_4);
|
|
|
|
|
- //总费用合计
|
|
|
|
|
- BigDecimal totalAmount = exportFeeList.stream().map(FeeOrderNewVo.ExportFee::getTotalAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
|
|
|
|
|
- exportFee.setTotalAmount(Optional.of(totalAmount).orElse(BigDecimal.ZERO));
|
|
|
|
|
- return exportFee;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- /**
|
|
|
|
|
- * 出口费用赋值
|
|
|
|
|
- *
|
|
|
|
|
- * @param title
|
|
|
|
|
- * @param premium
|
|
|
|
|
- * @param superviseCostsProportion
|
|
|
|
|
- * @param otherCostsProportion
|
|
|
|
|
- * @param superviseCostsPremiums
|
|
|
|
|
- * @param otherCostsPremiums
|
|
|
|
|
- * @return
|
|
|
|
|
- */
|
|
|
|
|
- public FeeOrderNewVo.ExportFee assignExportFee(String title, BigDecimal premium, BigDecimal superviseCostsProportion,
|
|
|
|
|
- BigDecimal otherCostsProportion,
|
|
|
|
|
- BigDecimal superviseCostsPremiums, BigDecimal otherCostsPremiums
|
|
|
|
|
- ) {
|
|
|
|
|
- FeeOrderNewVo.ExportFee exportFee = new FeeOrderNewVo.ExportFee();
|
|
|
|
|
- exportFee.setInsuranceType(title);
|
|
|
|
|
- //保费
|
|
|
|
|
- exportFee.setPremium(premium);
|
|
|
|
|
- //手续费比例
|
|
|
|
|
- exportFee.setSuperviseCosts(superviseCostsProportion);
|
|
|
|
|
- //跟单比例
|
|
|
|
|
- exportFee.setOtherCostsProportion(otherCostsProportion);
|
|
|
|
|
- //总比例
|
|
|
|
|
- exportFee.setTotalProportion(superviseCostsProportion.add(otherCostsProportion));
|
|
|
|
|
- //手续费
|
|
|
|
|
- exportFee.setSuperviseCostsPremiums(superviseCostsPremiums);
|
|
|
|
|
- //跟单费
|
|
|
|
|
- exportFee.setOtherCostsPremiums(otherCostsPremiums);
|
|
|
|
|
- //总费用
|
|
|
|
|
- exportFee.setTotalAmount(superviseCostsPremiums.add(otherCostsPremiums));
|
|
|
|
|
-
|
|
|
|
|
- return exportFee;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
}
|
|
}
|