Pu Zhibing
9 天以前 4c77ac6367145e4740141e872e1cda1c16efa9b1
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -2179,6 +2179,13 @@
    */
   @Override
   public R endChargeBillingCharge(TransactionRecordMessageVO vo) {
      Boolean hasKey = redisService.hasKey("endOrder:" + vo.getTransaction_serial_number());
      if(hasKey){
         return R.ok();
      }
      //添加1分钟的缓存
      redisService.setCacheObject("endOrder:" + vo.getTransaction_serial_number(), vo.getTransaction_serial_number(), 1L, TimeUnit.MINUTES);
      try {
      TChargingOrder chargingOrder = this.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getCode, vo.getTransaction_serial_number()));
      if(null == chargingOrder){
         return R.ok();
@@ -2203,7 +2210,6 @@
      chargingOrderAccountingStrategyService.remove(new LambdaQueryWrapper<TChargingOrderAccountingStrategy>().eq(TChargingOrderAccountingStrategy::getChargingOrderId, chargingOrder.getId()));
      SimpleDateFormat sdfs = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
      List<AccountingStrategyDetailOrderVo> lists = new ArrayList<>();
      try {
         //跨天
         if(!vo.getStart_time().split(" ")[0].equals(vo.getEnd_time().split(" ")[0])){
            //当天的
@@ -2323,10 +2329,6 @@
               vo1.setChargingCapacity(sharp_peak_charge);
               lists.add(vo1);
            }
         }
      }catch (Exception e){
         e.printStackTrace();
         R.fail("处理失败");
      }
      
      //开始处理明细
@@ -2648,6 +2650,11 @@
      summaryData.setElectricPrice(electronic_reduce.setScale(2, BigDecimal.ROUND_HALF_EVEN));
      summaryData.setServicePrice(serviceMoney.setScale(2, BigDecimal.ROUND_HALF_EVEN));
      chargingOrderSummaryDataService.save(summaryData);
      }catch (Exception e) {
         e.printStackTrace();
      }finally {
         redisService.deleteObject("endOrder:" + vo.getTransaction_serial_number());
      }
      return R.ok();
   }