From 0e079a1e51fc3f30d73bf9c4e5fce5f3f0d6d33f Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期三, 05 二月 2025 11:22:41 +0800 Subject: [PATCH] 补充 --- ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/taxi/TOrderTaxiController.java | 86 +++++++++++++++++++++++-------------------- 1 files changed, 46 insertions(+), 40 deletions(-) diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/taxi/TOrderTaxiController.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/taxi/TOrderTaxiController.java index 9ae9199..3c504af 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/taxi/TOrderTaxiController.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/taxi/TOrderTaxiController.java @@ -14,6 +14,7 @@ import com.stylefeng.guns.modular.system.util.*; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; +import org.springframework.util.CollectionUtils; import org.springframework.web.bind.annotation.*; import org.springframework.ui.Model; import org.springframework.beans.factory.annotation.Autowired; @@ -106,31 +107,33 @@ Map<String, Object> tOrderTaxi = tOrderTaxiService.getTaxiOrderDetailById(tOrderTaxiId); model.addAttribute("item",tOrderTaxi); // 查询司机扣款 - TPubTransactionDetails tPubTransactionDetails = pubTransactionDetailsService.selectOne(new EntityWrapper<TPubTransactionDetails>() + List<TPubTransactionDetails> tPubTransactionDetails = pubTransactionDetailsService.selectList(new EntityWrapper<TPubTransactionDetails>() .eq("userId", tOrderTaxi.get("driverId")) - .eq("state", 2) + .eq("orderId", tOrderTaxi.get("id")) .eq("type", 1) - .eq("userType", 6) - .eq("payState", 2) - .last("LIMIT 1")); - if (tPubTransactionDetails==null){ + .eq("userType", 2)); + if(CollectionUtils.isEmpty(tPubTransactionDetails)){ model.addAttribute("companyMoney",""); model.addAttribute("driverMoney",""); - - }else{ - model.addAttribute("companyMoney",tPubTransactionDetails.getMoney()); - model.addAttribute("driverMoney",new BigDecimal(tOrderTaxi.get("payMoney").toString()).subtract(tPubTransactionDetails.getMoney())); - - - } - if (tOrderTaxi.get("payManner")!=null){ - if(tOrderTaxi.get("payManner").equals("1")){ - model.addAttribute("payMannerStr","线上收款"); + }else { + TPubTransactionDetails pubTransactionDetailCompany = tPubTransactionDetails.stream().filter(e -> e.getOrderType().equals(6)).findFirst().orElse(null); + if(Objects.nonNull(pubTransactionDetailCompany)){ + model.addAttribute("companyMoney",pubTransactionDetailCompany.getMoney()); }else { - model.addAttribute("payMannerStr","计费打表"); + model.addAttribute("companyMoney",""); + } + TPubTransactionDetails pubTransactionDetailDriver = tPubTransactionDetails.stream().filter(e -> e.getOrderType().equals(2)).findFirst().orElse(null); + if(Objects.nonNull(pubTransactionDetailCompany)){ + model.addAttribute("driverMoney",pubTransactionDetailDriver.getMoney()); + }else { + model.addAttribute("driverMoney",""); } } - + if(tOrderTaxi.get("payManner").equals("1")){ + model.addAttribute("payMannerStr","线上收款"); + }else { + model.addAttribute("payMannerStr","计费打表"); + } LogObjectHolder.me().set(tOrderTaxi); return PREFIX + "tOrderTaxi_edit.html"; } @@ -202,27 +205,29 @@ * @param orderDetailId * @return */ - public static String URL = "https://yingyan.baidu.com/api/v3/track/gettrack?"; - - public static String AK = "WQhfsluNzEeUHUxoH4jc4JiCQOXw4Mnx"; @ResponseBody @RequestMapping(value = "/getOrderTrack", method = RequestMethod.POST) public ResultUtil getOrderTrack(String orderDetailId){ if(ToolUtil.isNotEmpty(orderDetailId)){ try { - TOrderTaxi tOrderTaxi = tOrderTaxiService.selectById(orderDetailId); - TDriver tDriver = driverService.selectById(tOrderTaxi.getDriverId()); - SearchHttpAK ta = new SearchHttpAK(); - Map params = new LinkedHashMap<String, String>(); - params.put("ak", AK); - params.put("entity_name", tDriver.getPhone()); - params.put("service_id", "241187"); - long start = tOrderTaxi.getStartServiceTime().getTime() / 1000L; - long end = tOrderTaxi.getEndServiceTime().getTime() / 1000L; - params.put("start_time", start+""); - params.put("end_time", end+""); - String s = ta.requestGetAK(URL, params); - List<TOrderPositionBaiDu> list = JSONArray.parseArray(s.toString(), TOrderPositionBaiDu.class); +// List<TOrderPosition> list = tOrderPositionService.selectList(new EntityWrapper<TOrderPosition>().eq("orderType", 2).eq("orderId", orderDetailId).orderBy("insertTime")); + /*if(list.size() == 0){ + return ResultUtil.error("该订单没有运行轨迹"); + }*/ + //将数据存储到文件中 + File file = new File(filePath + orderDetailId + "_2.txt"); + if(!file.exists()){ + return ResultUtil.success(new ArrayList<>()); + } + //读取文件(字符流) + BufferedReader in = new BufferedReader(new InputStreamReader(new FileInputStream(file),"UTF-8")); + //循环取出数据 + String str = null; + StringBuffer sb = new StringBuffer(); + while ((str = in.readLine()) != null) { + sb.append(str); + } + List<TOrderPosition> list = JSONArray.parseArray(sb.toString(), TOrderPosition.class); resultUtil = ResultUtil.success(list); }catch (Exception e){ e.printStackTrace(); @@ -380,12 +385,12 @@ tOrderTaxi.setUserId(tUser.getId()); tOrderTaxi.setOrderNum(this.getOrderNum()); tOrderTaxi.setPlacementAddress(tOrderTaxi.getStartAddress()); - tOrderTaxi.setPlacementLon(Double.valueOf(s.get(0).split(",")[0])); - tOrderTaxi.setPlacementLat(Double.valueOf(s.get(0).split(",")[1])); - tOrderTaxi.setStartLon(Double.valueOf(s.get(0).split(",")[0])); - tOrderTaxi.setStartLat(Double.valueOf(s.get(0).split(",")[1])); - tOrderTaxi.setEndLon(Double.valueOf(e.get(0).split(",")[0])); - tOrderTaxi.setEndLat(Double.valueOf(e.get(0).split(",")[1])); + tOrderTaxi.setPlacementLon(Double.valueOf(s.get(0).split(",")[1])); + tOrderTaxi.setPlacementLat(Double.valueOf(s.get(0).split(",")[0])); + tOrderTaxi.setStartLon(Double.valueOf(s.get(0).split(",")[1])); + tOrderTaxi.setStartLat(Double.valueOf(s.get(0).split(",")[0])); + tOrderTaxi.setEndLon(Double.valueOf(e.get(0).split(",")[1])); + tOrderTaxi.setEndLat(Double.valueOf(e.get(0).split(",")[0])); tOrderTaxi.setMileage(0D); tOrderTaxi.setOrderMoney(new BigDecimal(0)); tOrderTaxi.setTravelMoney(new BigDecimal(0)); @@ -399,6 +404,7 @@ tOrderTaxi.setSubstitute(0); tOrderTaxi.setOrderSource(5); tOrderTaxi.setIsDelete(1); + tOrderTaxi.setPayManner(3); tOrderTaxiService.insert(tOrderTaxi); if(tOrderTaxi.getState() == 1){ //推送司机抢单 -- Gitblit v1.7.1