| | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.dto.ChargingOrderGroup; |
| | | import com.ruoyi.common.core.dto.ChargingPercentProvinceDto; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | | import com.ruoyi.common.core.web.domain.BasePojo; |
| | | import com.ruoyi.common.redis.service.RedisService; |
| | | import com.ruoyi.common.security.annotation.Logical; |
| | |
| | | if (siteIds.isEmpty()){ |
| | | siteIds.add(-1); |
| | | } |
| | | |
| | | List<TChargingOrder> list = chargingOrderService.list(); |
| | | List<TParkingRecord> parkingRecord = parkingLotClient.getSiteIdAll().getData(); |
| | | for (PayOrderDto record : data.getRecords()) { |
| | | if (record.getType() == 1){ |
| | | TChargingOrder byId = chargingOrderService.getById(record.getId()); |
| | | record.setSiteId(byId.getSiteId()); |
| | | TChargingOrder chargingOrder = list.stream().filter(e -> e.getId().equals(Long.valueOf(record.getId()))).findFirst().orElse(null); |
| | | if (chargingOrder!=null){ |
| | | record.setSiteId(chargingOrder.getSiteId()); |
| | | } |
| | | } |
| | | if (record.getType()==4){ |
| | | Integer siteId=parkingLotClient.getSiteIdByOrderId(Long.valueOf(record.getId())).getData(); |
| | | if (siteId!=null){ |
| | | record.setSiteId(siteId); |
| | | TParkingRecord tParkingRecord = parkingRecord.stream().filter(e -> e.getId().equals(Long.valueOf(record.getId()))).findFirst().orElse(null); |
| | | if (tParkingRecord!=null){ |
| | | record.setSiteId(tParkingRecord.getSiteId()); |
| | | } |
| | | } |
| | | if (roleType==1||(record.getType()!=1&&record.getType()!=4)){ |
| | |
| | | data.setRecords(res1); |
| | | return R.ok(data); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | public static List<PayOrderDto> testing5(long total, long current, long size, List<PayOrderDto> str){ |
| | | List<PayOrderDto> result = new ArrayList<>(); |
| | | //获取初始化分页结构 |
| | |
| | | return R.ok(); |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @ResponseBody |
| | | @GetMapping(value = "/pay/order/refund/detail") |
| | | @ApiOperation(value = "退款信息", tags = {"管理后台-支付订单-订单信息"}) |
| | |
| | | if (byId.getAppUserCarId()!=null) { |
| | | List<TAppUserCar> data3 = appUserCarClient.getCarByIds(Collections.singletonList(byId.getAppUserCarId())).getData(); |
| | | payOrderChargingInfo.setCarNum(data3.get(0).getLicensePlate()); |
| | | }else{ |
| | | payOrderChargingInfo.setCarNum(byId.getPlateNum()); |
| | | } |
| | | payOrderChargingInfo.setTChargingOrder(byId); |
| | | |
| | |
| | | carid.add(byId.getAppUserCarId()); |
| | | R<List<TAppUserCar>> carByIds = appUserCarClient.getCarByIds(carid); |
| | | payOrderChargingInfo.setCarNum(carByIds.getData().get(0).getLicensePlate()); |
| | | }else{ |
| | | payOrderChargingInfo.setCarNum(byId.getPlateNum()); |
| | | } |
| | | payOrderChargingInfo.setStartTime(byId.getStartTime()); |
| | | payOrderChargingInfo.setEndTime(byId.getEndTime()); |
| | |
| | | return refundList1; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | public static List<TChargingOrderRefund> testing4(long total, long current, long size, List<TChargingOrderRefund> str){ |
| | | List<TChargingOrderRefund> result = new ArrayList<>(); |
| | | //获取初始化分页结构 |
| | |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @ResponseBody |
| | | @PostMapping(value = "/pay/order/refund/list1") |
| | | @ApiOperation(value = "列表1", tags = {"管理后台-支付订单-退款订单"}) |
| | |
| | | TCharingOrderVO res = chargingOrderService.chargingOrder(dto); |
| | | return AjaxResult.success(res); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | @RequiresPermissions(value = {"/chargingPileOrder/monitoring_record"}, logical = Logical.OR) |
| | |
| | | chargingOrderInfoVO.setVehicleModel(data.getVehicleModel()); |
| | | chargingOrderInfoVO.setVehicleUse(data.getVehicleUse()); |
| | | } |
| | | }else{ |
| | | chargingOrderInfoVO.setLicensePlate(byId.getPlateNum()); |
| | | } |
| | | // 时段总服务费 |
| | | List<TChargingOrderAccountingStrategy> list = chargingOrderAccountingStrategyService.lambdaQuery().eq(TChargingOrderAccountingStrategy::getChargingOrderId, strategyId).orderByDesc(TChargingOrderAccountingStrategy::getStartTime).list(); |
| | | DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); |
| | | for (TChargingOrderAccountingStrategy tChargingOrderAccountingStrategy : list) { |
| | | String format = tChargingOrderAccountingStrategy.getCreateTime().format(formatter); |
| | | String format = ""; |
| | | String format1 = ""; |
| | | // String temp1=list.get(0).getStartTime().split(":")[0]; |
| | | System.err.println("订单详情时间第一条"+list.get(0).getStartTime()); |
| | | System.err.println("订单详情时间开始"+tChargingOrderAccountingStrategy.getStartTime()); |
| | | System.err.println("订单详情时间结束"+tChargingOrderAccountingStrategy.getEndTime()); |
| | | String temp1=list.get(0).getStartTime().split(" ")[1].split(":")[0]; |
| | | String[] split = tChargingOrderAccountingStrategy.getStartTime().split(" ")[1].split(":"); |
| | | if (Integer.parseInt(split[0])>=Integer.valueOf(temp1)){ |
| | | format = byId.getCreateTime().format(formatter); |
| | | }else { |
| | | format = byId.getEndTime().format(formatter); |
| | | } |
| | | String[] split1 = tChargingOrderAccountingStrategy.getEndTime().split(" ")[1].split(":"); |
| | | if (Integer.parseInt(split1[0])<Integer.valueOf(temp1)){ |
| | | format1 = byId.getCreateTime().format(formatter); |
| | | }else { |
| | | format1 = byId.getEndTime().format(formatter); |
| | | } |
| | | tChargingOrderAccountingStrategy.setStartTime(format+" "+tChargingOrderAccountingStrategy.getStartTime()); |
| | | tChargingOrderAccountingStrategy.setEndTime(format+" "+tChargingOrderAccountingStrategy.getEndTime()); |
| | | tChargingOrderAccountingStrategy.setEndTime(format1+" "+tChargingOrderAccountingStrategy.getEndTime()); |
| | | if (byId.getVipDiscountAmount()!=null && byId.getServiceCharge().compareTo(BigDecimal.ZERO) != 0){ |
| | | BigDecimal multiply = byId.getVipDiscountAmount().divide(byId.getServiceCharge(), 2) |
| | | .multiply(tChargingOrderAccountingStrategy.getPeriodOriginalServicePrice()); |
| | |
| | | return AjaxResult.success(chargingOrderInfoVO); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | @ResponseBody |
| | | @PostMapping(value = "/addEvaluate") |
| | | @ApiOperation(value = "添加评价", tags = {"小程序-扫一扫"}) |
| | |
| | | orderEvaluateService.addOrderEvaluate(dto); |
| | | return AjaxResult.success(); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 查询用户最近一次充电记录使用的车辆 |
| | | * |
| | |
| | | return R.ok(-1L); |
| | | } |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 查询会员在本月有多少次享受了充电折扣 |
| | |
| | | .between(TChargingOrder::getStartTime, req.getStartTime(), req.getEndTime())).size(); |
| | | return R.ok(size); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | //用户订单数量 |
| | | @PostMapping(value = "/useOrderCount") |
| | | public R<Long> useOrderCount(@RequestParam("userId") Long userId) { |
| | |
| | | return R.ok(count); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | //订单详情 |
| | | @PostMapping(value = "/detail") |
| | | public R<TChargingOrder> detail(@RequestParam("orderId") Long orderId) { |
| | | return R.ok(chargingOrderService.getById(orderId)); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @PostMapping(value = "/getList") |
| | | public R<List<TChargingOrder>> getList(@RequestParam("siteId") Integer siteId) { |
| | | |
| | |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | @PostMapping(value = "/getBySiteIdAndTime") |
| | | public R<List<ChargingOrderGroup>> getBySiteIdAndTime(@RequestBody ChargingPercentProvinceDto chargingPercentProvinceDto) { |
| | | |
| | | List<ChargingOrderGroup> groups = chargingOrderService.chargingOrderGroup(chargingPercentProvinceDto); |
| | | return R.ok(groups); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据站点id和时间区间查询订单数据 |
| | | * @param chargingPercentProvinceDto |
| | | * @return |
| | | */ |
| | | @PostMapping(value = "/getOrderBySiteIdAndTime") |
| | | public R<List<TChargingOrder>> getOrderBySiteIdAndTime(@RequestBody ChargingPercentProvinceDto chargingPercentProvinceDto){ |
| | | LocalDate date1 = chargingPercentProvinceDto.getDate1(); |
| | | LocalDate date2 = chargingPercentProvinceDto.getDate2(); |
| | | String tripartitePlatformName = chargingPercentProvinceDto.getTripartitePlatformName(); |
| | | List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>().in(TChargingOrder::getSiteId, chargingPercentProvinceDto.getSiteIds()) |
| | | .between(null != date1 && null != date2, TChargingOrder::getPayTime, date1.atTime(0, 0, 0), date2.atTime(23, 59, 59)) |
| | | .eq(TChargingOrder::getDelFlag, 0).eq(TChargingOrder::getStatus, 5) |
| | | .eq(StringUtils.isNotEmpty(tripartitePlatformName), TChargingOrder::getOrderSource, 2) |
| | | .eq(StringUtils.isNotEmpty(tripartitePlatformName), TChargingOrder::getTripartitePlatformName, tripartitePlatformName)); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 根据充电枪id获取正在进行中的订单 |
| | |
| | | |
| | | |
| | | /** |
| | | * |
| | | * @param code |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping(value = "/refund") |
| | | public R refund(@RequestParam(value = "code") String code){ |
| | | chargingOrderService.refund(code); |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 远程启动失败后退款回调 |
| | | */ |
| | | @ResponseBody |
| | |
| | | log.info("-------------------停止充电返回账单后计算费用及修改业务状态-------------------:" + vo); |
| | | return chargingOrderService.endChargeBillingCharge(vo); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | |
| | | map.put("shopAmount",data1); |
| | | BigDecimal data2 = vipOrderService.getSumAmout(sixBefore); |
| | | map.put("vipAmount",data2); |
| | | List<TChargingOrder> list = chargingOrderService.lambdaQuery().between(TChargingOrder::getCreateTime, sixBefore, LocalDate.now()).list(); |
| | | BigDecimal serviceCharge = new BigDecimal("0"); |
| | | BigDecimal commissionAmount = new BigDecimal("0"); |
| | | |
| | | for (TChargingOrder chargingOrder : list) { |
| | | if (chargingOrder.getOrderSource().equals(2)){ |
| | | serviceCharge = serviceCharge.add(chargingOrder.getServiceCharge()!=null?chargingOrder.getServiceCharge().multiply(new BigDecimal("0.2")).setScale(2,BigDecimal.ROUND_DOWN):new BigDecimal("0")); |
| | | commissionAmount = commissionAmount.add(chargingOrder.getServiceCharge()!=null?chargingOrder.getServiceCharge().multiply(new BigDecimal("0.2")).setScale(2,BigDecimal.ROUND_DOWN):new BigDecimal("0")); |
| | | }else{ |
| | | serviceCharge = serviceCharge.add(chargingOrder.getServiceCharge()); |
| | | } |
| | | |
| | | |
| | | } |
| | | map.put("service_charge",serviceCharge); |
| | | map.put("commission_amount",commissionAmount); |
| | | return R.ok(map); |
| | | } |
| | | |
| | |
| | | chargingOrderService.endCharge(code, 2); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 硬件异常结束充电后的处理逻辑 |
| | | * @param code |
| | |
| | | TChargingOrder chargingOrder = chargingOrderService.getChargingOrderByLicensePlate(query); |
| | | return R.ok(chargingOrder); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 修改充电订单 |
| | | * @param chargingOrder |
| | |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据车牌号查询指定时间范围内的数据 |
| | | * @param plateNum |
| | | * @param startTime |
| | | * @param endTime |
| | | * @return |
| | | */ |
| | | @PostMapping("/getCarChargingOrderByPlateNum") |
| | | public R<List<TChargingOrder>> getCarChargingOrderByPlateNum(@RequestParam("plateNum") String plateNum, @RequestParam("startTime") String startTime, |
| | | @RequestParam("endTime") String endTime){ |
| | | List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getPlateNum, plateNum).eq(TChargingOrder::getDelFlag, 0) |
| | | .in(TChargingOrder::getStatus, Arrays.asList(4, 5)).between(TChargingOrder::getStartTime, startTime, endTime)); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 添加三方平台充电订单数据 |
| | | * @return |
| | | */ |
| | | @PostMapping("/addTripartitePlatformOrder") |
| | | public R addTripartitePlatformOrder(@RequestBody AddTripartitePlatformOrder query){ |
| | | return chargingOrderService.addTripartitePlatformOrder(query); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 根据三方平台订单id获取充电数据 |
| | | * @param startChargeSeq |
| | | * @return |
| | | */ |
| | | @PostMapping("/getChargingOrderByStartChargeSeq") |
| | | public R<TChargingOrder> getChargingOrderByStartChargeSeq(@RequestParam("startChargeSeq") String startChargeSeq){ |
| | | TChargingOrder chargingOrder = chargingOrderService.getOne(new LambdaQueryWrapper<TChargingOrder>().eq(TChargingOrder::getStartChargeSeq, startChargeSeq)); |
| | | return R.ok(chargingOrder); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | | * 根据三方平台订单ids获取充电数据 |
| | | * @param startChargeSeqs |
| | | * @return |
| | | */ |
| | | @PostMapping("/getChargingOrderByStartChargeSeqs") |
| | | public R<List<TChargingOrder>> getChargingOrderByStartChargeSeqs(@RequestParam("startChargeSeqs") List<String> startChargeSeqs){ |
| | | List<TChargingOrder> list = chargingOrderService.list(new LambdaQueryWrapper<TChargingOrder>().in(TChargingOrder::getStartChargeSeq, startChargeSeqs)); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 三方平台请求停止充电 |
| | | * @param startChargeSeq |
| | | * @return |
| | | */ |
| | | @PostMapping("/tripartitePlatformStopCharge") |
| | | public R tripartitePlatformStopCharge(@RequestParam("startChargeSeq") String startChargeSeq){ |
| | | return chargingOrderService.tripartitePlatformStopCharge(startChargeSeq); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 临时接口 |
| | | * 获取充电后没有扣除费用的数据 |
| | | * @return |
| | | */ |
| | | @GetMapping("/getNotPaymentChargingOrder") |
| | | public R getNotPaymentChargingOrder(){ |
| | | return chargingOrderService.getNotPaymentChargingOrder(); |
| | | } |
| | | |
| | | } |