Pu Zhibing
13 小时以前 9bc378e6bb9b4563a0dec222e1c2d5d3278632cb
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/controller/TChargingOrderController.java
@@ -58,6 +58,7 @@
import com.ruoyi.order.dto.*;
import com.ruoyi.order.service.*;
import com.ruoyi.order.util.PreviousSixMonths;
import com.ruoyi.order.util.mongodb.service.UploadRealTimeMonitoringDataService;
import com.ruoyi.order.vo.EndOfChargePageInfo;
import com.ruoyi.order.vo.StatisticsOfBatteryVO;
import com.ruoyi.order.vo.WatchChargingOrderVo;
@@ -150,7 +151,7 @@
    @Resource
    private TOrderInvoiceService invoiceService;
    @Resource
    private UploadRealTimeMonitoringDataClient uploadRealTimeMonitoringDataClient;
    private UploadRealTimeMonitoringDataService uploadRealTimeMonitoringDataService;
    @Resource
    private PartnerClient partnerClient;
    @Resource
@@ -221,55 +222,36 @@
    @PostMapping(value = "/pay/order/list")
    @ApiOperation(value = "列表", tags = {"管理后台-支付订单-订单信息"})
    public R<PageInfo<PayOrderDto>> payOrderList(@RequestBody PayOrderQueryDto payOrderQueryDto) {
        Integer pageCurr = payOrderQueryDto.getPageCurr();
        Integer pageSize = payOrderQueryDto.getPageSize();
        payOrderQueryDto.setPageCurr(1);
        payOrderQueryDto.setPageSize(10000999);
        PageInfo<PayOrderDto> data = chargingOrderService.payOrderQuery(payOrderQueryDto).getData();
        List<PayOrderDto> res = new ArrayList<>();
        // 查询当前登陆人按钮权限
        SysUser sysUser = sysUserClient.getSysUser(tokenService.getLoginUser().getUserid()).getData();
        Integer roleType = sysUser.getRoleType();
        Long userId = tokenService.getLoginUser().getUserid();
        //如果没传siteId,获取当前登陆人所有的siteIds
        List<Integer> siteIds = new ArrayList<>();
        if (userId != null){
            List<GetSiteListDTO> data2 = siteClient.getSiteListByUserId(userId).getData();
            for (GetSiteListDTO datum : data2) {
                siteIds.add(datum.getId());
            }
        }
        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 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){
                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)){
                res.add(record);
                continue;
            }
            if (roleType==2 && (record.getType()==1||record.getType()==4) && siteIds.contains(record.getSiteId())){
                res.add(record);
            }
        return chargingOrderService.payOrderQuery(payOrderQueryDto);
        }
        List<PayOrderDto> res1 = testing5(res.size(), pageCurr, pageSize, res);
        data.setTotal(res.size());
        data.setRecords(res1);
        return R.ok(data);
//        List<TChargingOrder> list = chargingOrderService.list();
//        List<TParkingRecord> parkingRecord = parkingLotClient.getSiteIdAll().getData();
//        for (PayOrderDto record : data.getRecords()) {
//            if (record.getType() == 1){
//                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){
//                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)){
//                res.add(record);
//                continue;
//            }
//            if (roleType==2 && (record.getType()==1||record.getType()==4) && siteIds.contains(record.getSiteId())){
//                res.add(record);
//            }
//
//        }
//        List<PayOrderDto> res1 = testing5(res.size(), pageCurr, pageSize, res);
//        data.setTotal(res.size());
//        data.setRecords(res1);
//        return R.ok(data);
    }
@@ -1118,6 +1100,7 @@
    public R<Map<String,Object>> total() {
        //count近6个月的数据
        Long userId = tokenService.getLoginUser().getUserid();
        SysUser sysUser = sysUserClient.getSysUser(userId).getData();
        //获取当前登录的siteIds
        List<Integer> siteIds = new ArrayList<>();
        List<GetSiteListDTO> data9 = siteClient.getSiteListByUserId(userId).getData();
@@ -1129,17 +1112,23 @@
            siteIds.add(-1);
        }
        Map<String,Object>  map = chargingOrderService.countAll(siteIds);
        BigDecimal data = parkingLotClient.getRecordAmount().getData();
        if (map ==null){
            map = new HashMap<String,Object>();
        if(1 == sysUser.getObjectId()){
            BigDecimal data = parkingLotClient.getRecordAmount().getData();
            if (map ==null){
                map = new HashMap<String,Object>();
            }
            map.put("parkingAmount",data);
            BigDecimal data1 =   shoppingOrderService.getSumAmount();
            map.put("shopAmount",data1);
            BigDecimal data2 =   vipOrderService.getSumAmout();
            map.put("vipAmount",data2);
        }else{
            map.put("parkingAmount",0);
            map.put("shopAmount",0);
            map.put("vipAmount",0);
        }
        map.put("parkingAmount",data);
        BigDecimal data1 =   shoppingOrderService.getSumAmount();
        map.put("shopAmount",data1);
        BigDecimal data2 =   vipOrderService.getSumAmout();
        map.put("vipAmount",data2);
        List<TChargingOrder> list = chargingOrderService.lambdaQuery().eq(TChargingOrder::getStatus, 5).eq(TChargingOrder::getDelFlag, 0)
                .eq(TChargingOrder::getRechargePaymentStatus, 2).list();
                .eq(TChargingOrder::getRechargePaymentStatus, 2).in(TChargingOrder::getSiteId, siteIds).list();
        BigDecimal sharingAmount = BigDecimal.ZERO;
        BigDecimal commissionAmount = BigDecimal.ZERO;
        //计算list中electrovalence的总和
@@ -1255,7 +1244,7 @@
    @GetMapping(value = "/watch/deletes")
    @ApiOperation(value = "监控订单-删除", tags = {"管理后台-订单管理"})
    public R watchChargingOrder(@RequestParam String id) {
        uploadRealTimeMonitoringDataClient.delete(id);
        uploadRealTimeMonitoringDataService.delete(id);
        return R.ok();
    }
    
@@ -1274,8 +1263,10 @@
     */
    @PostMapping(value = "/getOrderByCode/{code}")
    public R<TChargingOrder> getOrderByCode(@PathVariable("code") String code){
        return R.ok(chargingOrderService.getOne(Wrappers.lambdaQuery(TChargingOrder.class)
                .eq(TChargingOrder::getCode,code)));
        TChargingOrder one = chargingOrderService.getOne(Wrappers.lambdaQuery(TChargingOrder.class)
                .eq(TChargingOrder::getCode, code));
        one.setIdStr(one.getId().toString());
        return R.ok(one);
    }
    
    
@@ -2386,9 +2377,12 @@
    /**
     * 充电桩数据大屏  获取站点集合中总的充电量
     */
    @ResponseBody
    @GetMapping("/getSumDegreeBySiteIds")
    public R<BigDecimal> getSumDegreeBySiteIds(@RequestParam("siteIds") List<Integer> SiteIds){
        return R.ok(chargingOrderService.getSumDegreeBySiteIds(SiteIds));
        Double sumDegreeBySiteIds = chargingOrderService.getSumDegreeBySiteIds(SiteIds);
        return R.ok(new BigDecimal(sumDegreeBySiteIds));
    }
@@ -2407,4 +2401,19 @@
        return R.ok(String.valueOf(chargingOrder.getId()));
    }
//    @GetMapping(value = "/getOrderByCode")
//    @ApiOperation(value = "H5通过编号查询订单", tags = {"H5-首页-用户充电订单信息"})
//    public R<String> getOrderByCode(@RequestParam("code") String code) {
//        Long userId = tokenService.getLoginUserApplet().getUserId();
//        TChargingOrder chargingOrder = chargingOrderService.getOne(Wrappers.lambdaQuery(TChargingOrder.class)
//                .eq(TChargingOrder::getAppUserId, userId)
//                .in(TChargingOrder::getStatus, Arrays.asList(1,2,3,4))
//                .orderByDesc(TChargingOrder::getCreateTime)
//                .last("LIMIT 1"));
//        if(Objects.isNull(chargingOrder)){
//            return R.ok();
//        }
//        return R.ok(String.valueOf(chargingOrder.getId()));
//    }
}