| | |
| | | PlatformVO platformVO = new PlatformVO(); |
| | | switch (settlementDetail.getOrderType()){ |
| | | case 1: |
| | | |
| | | // 专车订单 |
| | | TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(settlementDetail.getOrderId()); |
| | | if (tOrderPrivateCar==null){ |
| | |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | platformVO.setEndTime(format.format(settlementRecord.getDay())); |
| | | } |
| | | }else{ |
| | | // 未结算 |
| | | if (state!=null && state!=2){ |
| | | continue; |
| | | } |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | } |
| | | |
| | | res.add(platformVO); |
| | |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | platformVO.setEndTime(format.format(settlementRecord.getDay())); |
| | | } |
| | | }else{ |
| | | // 未结算 |
| | | if (state!=null && state!=2){ |
| | | continue; |
| | | } |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | } |
| | | res.add(platformVO); |
| | | break; |
| | |
| | | platformVO.setState(2); |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | } |
| | | }else{ |
| | | // 未结算 |
| | | if (state!=null && state!=2){ |
| | | continue; |
| | | } |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | } |
| | | res.add(platformVO); |
| | | break; |
| | |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | platformVO.setEndTime(format.format(settlementRecord.getDay())); |
| | | } |
| | | }else{ |
| | | // 未结算 |
| | | if (state!=null && state!=2){ |
| | | continue; |
| | | } |
| | | unBalance = unBalance.add(new BigDecimal(settlementDetail.getPrice())); |
| | | } |
| | | res.add(platformVO); |
| | | break; |
| | |
| | | } |
| | | @RequestMapping(value = "/updateAuth") |
| | | @ResponseBody |
| | | public Object updateAuth(TCar tCar,String zcModel,@RequestParam String serverBox) { |
| | | public Object updateAuth(TCar tCar,String zcModel,String xjModel,@RequestParam String serverBox) { |
| | | //添加经营业务 |
| | | if(tCar.getAuthState()==2){ |
| | | //删除业务 |
| | | tCarServiceService.delete(new EntityWrapper<TCarService>().eq("carId",tCar.getId())); |
| | | |
| | | //添加经营业务 |
| | | String[] serverArray = serverBox.split(","); |
| | | for (int i=0;i<serverArray.length;i++){ |
| | | TCarService tCarService = tCarServiceService.selectOne(new EntityWrapper<TCarService>().eq("carId", tCar.getId()).eq("type", Integer.valueOf(serverArray[i]))); |
| | | if(null == tCarService){ |
| | | tCarService = new TCarService(); |
| | | tCarService.setCarId(tCar.getId()); |
| | | tCarService.setType(Integer.valueOf(serverArray[i])); |
| | | if (1 == tCarService.getType()){ |
| | | tCarService.setServerCarModelId(Integer.valueOf(zcModel)); |
| | | } |
| | | tCarServiceService.insert(tCarService); |
| | | }else{ |
| | | if (1 == tCarService.getType()){ |
| | | tCarService.setServerCarModelId(Integer.valueOf(zcModel)); |
| | | } |
| | | tCarServiceService.updateById(tCarService); |
| | | TCarService service = new TCarService(); |
| | | service.setCarId(tCar.getId()); |
| | | service.setType(Integer.valueOf(serverArray[i])); |
| | | if (1 == service.getType()){ |
| | | service.setServerCarModelId(Integer.valueOf(zcModel)); |
| | | }else if (4 == service.getType()){ |
| | | service.setServerCarModelId(Integer.valueOf(xjModel)); |
| | | } |
| | | |
| | | |
| | | tCarServiceService.insert(service); |
| | | } |
| | | |
| | | } |
| | | tCarService.updateById(tCar); |
| | | tCar = tCarService.selectById(tCar.getId()); |
| | |
| | | driver.setFrozenMoney(driver.getFrozenMoney().subtract(c)); |
| | | driverService.updateById(driver); |
| | | } |
| | | if (orderPrivateCar.getIsFrozen() == 1){ |
| | | // 冻结订单需要给司机播报一个语音内容 |
| | | Integer language1 = tDriver.getLanguage(); |
| | | String text = ""; |
| | | switch (language1){ |
| | | case 1: |
| | | text = "" ; |
| | | break; |
| | | case 2: |
| | | text = ""; |
| | | break; |
| | | case 3: |
| | | text = ""; |
| | | break; |
| | | } |
| | | TOrderPrivateCar finalOrderPrivateCar = orderPrivateCar; |
| | | String audioUrl = ""; |
| | | try { |
| | | audioUrl = TextToSpeechUtil.create(language1 == 1 ? "cmn-CN" : language1 == 2 ? "en-US" : "fr-FR", text, "pushOrder" + orderPrivateCar.getDriverId() + ".mp3"); |
| | | } catch (Exception e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | //定时任务删除语音文件 |
| | | new Timer().schedule(new TimerTask() { |
| | | @Override |
| | | public void run() { |
| | | Process process = null; |
| | | try { |
| | | process = Runtime.getRuntime().exec("rm -rf /usr/local/nginx/html/files/audio/pushOrder" + finalOrderPrivateCar.getDriverId() + ".mp3"); |
| | | } catch (IOException e) { |
| | | throw new RuntimeException(e); |
| | | } |
| | | if (process != null) { |
| | | process.destroy(); |
| | | } |
| | | } |
| | | }, 30000); |
| | | |
| | | String finalAudioUrl = audioUrl; |
| | | |
| | | new Thread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | pushUtil.pushOrderState(2, finalOrderPrivateCar.getDriverId(), finalOrderPrivateCar.getId(), 1, 2, 0, finalAudioUrl); |
| | | } |
| | | }).start(); |
| | | } |
| | | // if (orderPrivateCar.getIsFrozen() == 1){ |
| | | // // 冻结订单需要给司机播报一个语音内容 |
| | | // Integer language1 = tDriver.getLanguage(); |
| | | // String text = ""; |
| | | // switch (language1){ |
| | | // case 1: |
| | | // text = "" ; |
| | | // break; |
| | | // case 2: |
| | | // text = ""; |
| | | // break; |
| | | // case 3: |
| | | // text = ""; |
| | | // break; |
| | | // } |
| | | // TOrderPrivateCar finalOrderPrivateCar = orderPrivateCar; |
| | | // String audioUrl = ""; |
| | | // try { |
| | | // audioUrl = TextToSpeechUtil.create(language1 == 1 ? "cmn-CN" : language1 == 2 ? "en-US" : "fr-FR", text, "pushOrder" + orderPrivateCar.getDriverId() + ".mp3"); |
| | | // } catch (Exception e) { |
| | | // throw new RuntimeException(e); |
| | | // } |
| | | // //定时任务删除语音文件 |
| | | // new Timer().schedule(new TimerTask() { |
| | | // @Override |
| | | // public void run() { |
| | | // Process process = null; |
| | | // try { |
| | | // process = Runtime.getRuntime().exec("rm -rf /usr/local/nginx/html/files/audio/pushOrder" + finalOrderPrivateCar.getDriverId() + ".mp3"); |
| | | // } catch (IOException e) { |
| | | // throw new RuntimeException(e); |
| | | // } |
| | | // if (process != null) { |
| | | // process.destroy(); |
| | | // } |
| | | // } |
| | | // }, 30000); |
| | | // |
| | | // String finalAudioUrl = audioUrl; |
| | | // |
| | | // new Thread(new Runnable() { |
| | | // @Override |
| | | // public void run() { |
| | | // pushUtil.pushOrderState(2, finalOrderPrivateCar.getDriverId(), finalOrderPrivateCar.getId(), 1, 2, 0, finalAudioUrl); |
| | | // } |
| | | // }).start(); |
| | | // } |
| | | orderPrivateCar.setIsFrozen(orderPrivateCar.getIsFrozen()==1?2:1); |
| | | orderPrivateCar.setState(7); |
| | | tOrderPrivateCarService.updateAllColumnById(orderPrivateCar); |
| | |
| | | </div> |
| | | </div> |
| | | <script src="https://a.amap.com/jsapi_demos/static/demo-center/js/demoutils.js"></script> |
| | | <script src="https://webapi.amap.com/maps?v=1.4.8&key=e17d799b2506d05faf7f88320a266803"></script> |
| | | <script async src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCG6PsfkaCEc94VK2vIAZk1YYKvOS_Ewts&callback=initMap&v=weekly"></script> |
| | | <script src="https://cache.amap.com/lbs/static/addToolbar.js"></script> |
| | | <script src="${ctxPath}/static/modular/system/tOrderCrossCity/tOrderCrossCity_info.js"></script> |
| | | @} |
| | |
| | | </div> |
| | | </div> |
| | | <script src="https://a.amap.com/jsapi_demos/static/demo-center/js/demoutils.js"></script> |
| | | <script src="https://webapi.amap.com/maps?v=1.4.8&key=e17d799b2506d05faf7f88320a266803"></script> |
| | | <script async src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCG6PsfkaCEc94VK2vIAZk1YYKvOS_Ewts&callback=initMap&v=weekly"></script> |
| | | <script src="https://cache.amap.com/lbs/static/addToolbar.js"></script> |
| | | <script src="${ctxPath}/static/modular/system/tOrderCrossCity/tOrderCrossCity_info.js"></script> |
| | | @} |
| | |
| | | </div> |
| | | </div> |
| | | <div class="row" style="margin-top: 30px;"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label"></label> |
| | | <div class="col-sm-9"> |
| | | <div id="map" style="height: 500px;width: 100%;"></div> |
| | | </div> |
| | | </div> |
| | | <div class="col-sm-10"> |
| | | <div class="form-horizontal" id="container" style="margin-left: 50px;width: 100%; height: 500px;"></div> |
| | | <div class="form-horizontal" id="container" style="width: 100%; height: 500px;"></div> |
| | | <div class="input-card" style="margin-left: 50px;"> |
| | | <h4>轨迹回放控制</h4> |
| | | <div class="input-item"> |
| | |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | </div> |
| | | <script src="https://a.amap.com/jsapi_demos/static/demo-center/js/demoutils.js"></script> |
| | | <script src="https://webapi.amap.com/maps?v=1.4.8&key=e17d799b2506d05faf7f88320a266803"></script> |
| | | <script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCG6PsfkaCEc94VK2vIAZk1YYKvOS_Ewts&callback=initMap&v=weekly" defer></script> |
| | | <script src="https://cache.amap.com/lbs/static/addToolbar.js"></script> |
| | | <script src="${ctxPath}/static/modular/system/tOrderPrivateCar/tOrderPrivateCar_info.js"></script> |
| | | @} |
| | |
| | | </div> |
| | | </div> |
| | | <script src="https://a.amap.com/jsapi_demos/static/demo-center/js/demoutils.js"></script> |
| | | <script src="https://webapi.amap.com/maps?v=1.4.8&key=e17d799b2506d05faf7f88320a266803"></script> |
| | | <script async src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCG6PsfkaCEc94VK2vIAZk1YYKvOS_Ewts&callback=initMap&v=weekly"></script> |
| | | <script src="https://cache.amap.com/lbs/static/addToolbar.js"></script> |
| | | <script src="${ctxPath}/static/modular/system/tOrderTaxi/tOrderTaxi_info.js"></script> |
| | | @} |
| | |
| | | </div> |
| | | </div> |
| | | <script src="https://a.amap.com/jsapi_demos/static/demo-center/js/demoutils.js"></script> |
| | | <script src="https://webapi.amap.com/maps?v=1.4.8&key=e17d799b2506d05faf7f88320a266803"></script> |
| | | <script async src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCG6PsfkaCEc94VK2vIAZk1YYKvOS_Ewts&callback=initMap&v=weekly"></script> |
| | | <script src="https://cache.amap.com/lbs/static/addToolbar.js"></script> |
| | | <script src="${ctxPath}/static/modular/system/tOrderTaxi/tOrderTaxi_info.js"></script> |
| | | @} |
| | |
| | | </div> |
| | | --> |
| | | <div class="form-group"> |
| | | <label class="col-sm-2 control-label">专车改派:</label> |
| | | <label class="col-sm-2 control-label">打车/包裹改派:</label> |
| | | <div class="col-sm-10"> |
| | | <div class="form-group"> |
| | | <div class="col-sm-9"> |
| | |
| | | }, |
| | | {title: '支付方式', field: 'payType', visible: true, align: 'center', valign: 'middle', |
| | | }, |
| | | {title: '备注', field: 'remark', visible: true, align: 'center', valign: 'middle',}, |
| | | {title: '状态', field: 'paymentStatus', visible: true, align: 'center', valign: 'middle', |
| | | formatter: function (value, row) { |
| | | var state = row.state; |
| | |
| | | return; |
| | | } |
| | | } |
| | | |
| | | var zcModel = $("#zcModel").val(); |
| | | if ("" == zcModel){ |
| | | Feng.info("请选择专车车型"); |
| | | return; |
| | | } |
| | | var xjModel = $("#xjModel").val(); |
| | | if ("" == xjModel){ |
| | | Feng.info("请选择市内小件物流车型"); |
| | | return; |
| | | } |
| | | //提交信息 |
| | | var ajax = new $ax(Feng.ctxPath + "/tCar/updateAuth", function(data){ |
| | | Feng.success("操作成功!"); |
| | |
| | | ajax.set("id",$("#id").val()); |
| | | ajax.set("serverBox",serverBox.toString()); |
| | | ajax.set("zcModel",$("#zcModel").val()); |
| | | ajax.set("xjModel",$("#xjModel").val()); |
| | | ajax.set("authState",authState); |
| | | ajax.start(); |
| | | } |
| | |
| | | btn = ['<p class="toolTip" style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis;" title="服务中" onfocus="TUser.tooltip()">服务中</p>'] |
| | | } else if (row.state == 6){ |
| | | btn = ['<p class="toolTip" style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis;" title="完成服务" onfocus="TUser.tooltip()">完成服务</p>'] |
| | | } else if (row.state == 7){ |
| | | }else if (row.state == 8){ |
| | | btn = ['<p class="toolTip" style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis;" title="待评价" onfocus="TUser.tooltip()">待评价</p>'] |
| | | } |
| | | else if (row.state == 7){ |
| | | btn = ['<p class="toolTip" style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis;" title="待支付" onfocus="TUser.tooltip()">待支付</p>'] |
| | | } else if (row.state == 9){ |
| | | btn = ['<p class="toolTip" style="overflow:hidden;white-space:nowrap;text-overflow:ellipsis;" title="已完成" onfocus="TUser.tooltip()">已完成</p>'] |
| | |
| | | var map; |
| | | |
| | | function initMap() { |
| | | console.log("初始化地图") |
| | | map = new google.maps.Map(document.getElementById("map"), { |
| | | zoom: 14, |
| | | center: { lat: 0, lng: -180 }, |
| | | mapTypeId: "terrain", |
| | | }); |
| | | console.log("初始化地图") |
| | | } |
| | | |
| | | |
| | |
| | | Feng.error("请输入正确金额数!"); |
| | | return; |
| | | } |
| | | if (!re.test(num3)) { |
| | | if (!re.test(num7)&&!re.test(num5)&&!re.test(num3)) { |
| | | Feng.error("请输入正确金额数!"); |
| | | return; |
| | | }if (!re.test(num5)) { |
| | | Feng.error("请输入正确金额数!"); |
| | | return; |
| | | }/*if (!re.test(num7)) { |
| | | } |
| | | /*if (!re.test(num7)) { |
| | | Feng.error("请输入正确金额数!"); |
| | | return; |
| | | }if (!re.test(num9)) { |
| | |
| | | return; |
| | | }*/ |
| | | |
| | | if (!/^[1-9]\d*$/.test(num2)) { |
| | | if (!/^[1-9]\d*$/.test(num2) &&!/^[1-9]\d*$/.test(num4) && !/^[1-9]\d*$/.test(num6)) { |
| | | Feng.error("请输入正确张数!"); |
| | | return; |
| | | } |
| | | if (!/^[1-9]\d*$/.test(num4)) { |
| | | Feng.error("请输入正确张数!"); |
| | | return; |
| | | } |
| | | |
| | | // if (!/^[1-9]\d*$/.test(num6)) { |
| | | // Feng.error("请输入正确张数!"); |
| | | // return; |