| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | |
| | | /** |
| | | * 保存数据 |
| | | * @param traveltime |
| | | * @param carTime |
| | | * @param modelUse |
| | | * @param peopleNumber |
| | |
| | | orderCharteredCar.setUserId(uid); |
| | | Company query = companyCityService.query1(placeLonLat.split(",")[0], placeLonLat.split(",")[1]); |
| | | if(null == query){ |
| | | return ResultUtil.error(language == 1 ? "该地点暂无企业服务" : language == 2 ? "No corporate services are available at this location" : "Aucun service d’entreprise n’est disponible pour cet emplacement"); |
| | | return ResultUtil.error(language == 1 ? "该地点暂无企业服务" : language == 2 ? "No service yet at this area" : "Pas encore de service dans cette zone"); |
| | | } |
| | | orderCharteredCar.setCompanyId(query.getId()); |
| | | orderCharteredCar.setOrderNumber(this.getOrderNum()); |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> maps = orderCharteredCarMapper.queryMyOrderList(uid, pageNum, size); |
| | | for (Map<String, Object> map : maps) { |
| | | String orderTime = map.get("orderTime").toString(); |
| | | map.put("orderTime", DateUtil.conversionFormat(language, orderTime)); |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return maps; |
| | | } |
| | | |
| | |
| | | |
| | | OrderCharteredCar orderCharteredCar = this.selectById(id); |
| | | if(null == orderCharteredCar){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Cancel order failed, order information is incorrect" : "Annulation échouée, informations de commande incorrectes"); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Failed to cancel order, order-information error." : "Échec de l’annulation de la commande, erreur d’information de commande."); |
| | | } |
| | | if(orderCharteredCar.getState() != 1){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Cancel order failed, illegal operation" : "Annulation de la commande échouée, opération illégale"); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Failed to cancel order, illegal operation." : "Échec de l’annulation de la commande, opération illégale."); |
| | | } |
| | | |
| | | OrderCancel orderCancel = new OrderCancel(); |
| | |
| | | |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<List<CouponWarpper>> queryMyCoupons(Integer state, Integer pageNum, Integer size, HttpServletRequest request){ |
| | | public ResultUtil<List<CouponWarpper>> queryMyCoupons(Integer language, Integer state, Integer pageNum, Integer size, HttpServletRequest request){ |
| | | try { |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | if(null == uid){ |
| | | return ResultUtil.tokenErr(); |
| | | } |
| | | List<Map<String, Object>> list = userCouponRecordService.queryMyCoupons(state, pageNum, size, uid); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryMyCoupons(language, state, pageNum, size, uid); |
| | | return ResultUtil.success(CouponWarpper.getCouponWarppers(list)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<List<OrderEvaluateWarpper>> queryOrderEvaluate(Integer id, Integer pageNum, Integer size){ |
| | | public ResultUtil<List<OrderEvaluateWarpper>> queryOrderEvaluate(Integer language, Integer id, Integer pageNum, Integer size){ |
| | | try { |
| | | List<Map<String, Object>> list = orderEvaluateService.queryOrderEvaluate(id, pageNum, size); |
| | | List<Map<String, Object>> list = orderEvaluateService.queryOrderEvaluate(language, id, pageNum, size); |
| | | return ResultUtil.success(OrderEvaluateWarpper.getOrderEvaluateWarpper(list)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | List<Map<String, Object>> list = null; |
| | | switch (type){ |
| | | case 1: |
| | | list = orderPrivateCarService.queryMyOrderList(uid, pageNum, size); |
| | | list = orderPrivateCarService.queryMyOrderList(language, uid, pageNum, size); |
| | | break; |
| | | case 2: |
| | | list = orderTaxiService.queryMyOrderList(uid, pageNum, size); |
| | | list = orderTaxiService.queryMyOrderList(language, uid, pageNum, size); |
| | | break; |
| | | case 3: |
| | | list = orderCrossCityService.queryMyOrderList(uid, pageNum, size); |
| | | list = orderCrossCityService.queryMyOrderList(language, uid, pageNum, size); |
| | | break; |
| | | case 4: |
| | | list = orderLogisticsService.queryMyOrderList(uid, pageNum, size, language); |
| | | break; |
| | | case 5: |
| | | list = orderCharteredCarService.queryMyOrderList(uid, pageNum, size); |
| | | list = orderCharteredCarService.queryMyOrderList(language, uid, pageNum, size); |
| | | break; |
| | | } |
| | | return ResultUtil.success(OrderWarpper.getOrderWarpper(list)); |
| | |
| | | } |
| | | String name = language == 1 ? "打车" : language == 2 ? "Ride" : "Course"; |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> maps = orderCancelService.queryCancel(uid, 2); |
| | | List<Map<String, Object>> maps = orderCancelService.queryCancel(language, uid, 2); |
| | | for (Map<String, Object> map : maps) { |
| | | Integer orderType = Integer.valueOf(map.get("orderType").toString()); |
| | | if(1 == orderType){ |
| | |
| | | map.put("name", language == 1 ? "包裹订单取消" : language == 2 ? "Parcel order cancellation" : "Annulation de commande de colis"); |
| | | } |
| | | } |
| | | List<Map<String, Object>> list = orderPrivateCarService.queryMyTravelRecord(uid);//专车 |
| | | List<Map<String, Object>> list = orderPrivateCarService.queryMyTravelRecord(language, uid);//专车 |
| | | for (Map<String, Object> map : list) { |
| | | map.put("name", name); |
| | | } |
| | | name = language == 1 ? "包裹" : language == 2 ? "Package" : "Livraison"; |
| | | List<Map<String, Object>> list3 = orderLogisticsService.queryMyTravelRecord(uid);//小件物流 |
| | | List<Map<String, Object>> list3 = orderLogisticsService.queryMyTravelRecord(language, uid);//小件物流 |
| | | for (Map<String, Object> map : list3) { |
| | | map.put("name", name); |
| | | } |
| | |
| | | for(TransactionDetails transactionDetails1 : transactionDetails){ |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("money", transactionDetails1.getMoney()); |
| | | map.put("time", sdf.format(transactionDetails1.getInsertTime())); |
| | | map.put("time", DateUtil.conversionFormat(language, sdf.format(transactionDetails1.getInsertTime()))); |
| | | map.put("name", "跨城订单取消退款"); |
| | | map.put("insertTime", Double.valueOf(transactionDetails1.getInsertTime().getTime() / 1000).intValue()); |
| | | list4.add(map); |
| | |
| | | @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<List<OrderWarpper>> queryInvoiceOrder(Integer type, Integer orderType, Date startTime, |
| | | public ResultUtil<List<OrderWarpper>> queryInvoiceOrder(Integer language, Integer type, Integer orderType, Date startTime, |
| | | Date endTime, Double startMoney, Double endMoney, |
| | | Integer pageNum, Integer size, HttpServletRequest request){ |
| | | pageNum = (pageNum - 1) * size; |
| | |
| | | if(null != orderType){ |
| | | switch (orderType){ |
| | | case 1://专车 |
| | | list = orderPrivateCarService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | list = orderPrivateCarService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid); |
| | | break; |
| | | // case 2://出租车 |
| | | // list = orderTaxiService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | |
| | | // list = orderCrossCityService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | // break; |
| | | case 4://同城小件物流 |
| | | list = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | | list = orderLogisticsService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | | break; |
| | | // case 5://跨城小件物流 |
| | | // list = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | |
| | | } |
| | | }else{ |
| | | //专车 |
| | | List<Map<String, Object>> maps = orderPrivateCarService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | List<Map<String, Object>> maps = orderPrivateCarService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid); |
| | | list.addAll(maps); |
| | | // //出租车 |
| | | // List<Map<String, Object>> list1 = orderTaxiService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | |
| | | // List<Map<String, Object>> list2 = orderCrossCityService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | // list.addAll(list2); |
| | | //同城小件物流 |
| | | List<Map<String, Object>> list3 = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | | List<Map<String, Object>> list3 = orderLogisticsService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | | list.addAll(list3); |
| | | // //跨城小件物流 |
| | | // List<Map<String, Object>> list4 = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | |
| | | Map<String, Object> map = null; |
| | | switch (orderType){ |
| | | case 1://专车 |
| | | map = orderPrivateCarService.queryOrderInfo(orderId); |
| | | map = orderPrivateCarService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 2://出租车 |
| | | map = orderTaxiService.queryOrderInfo(orderId); |
| | | map = orderTaxiService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 3://跨城 |
| | | map = orderCrossCityService.queryOrderInfo(orderId); |
| | | map = orderCrossCityService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 4://同城小件 |
| | | map = orderLogisticsService.queryOrderInfo(orderId); |
| | | map = orderLogisticsService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 5://跨城小件 |
| | | map = orderLogisticsService.queryOrderInfo(orderId); |
| | | map = orderLogisticsService.queryOrderInfo(language, orderId); |
| | | break; |
| | | } |
| | | if(map.get("telX") != null){ |
| | |
| | | Map<String, Object> map = null; |
| | | switch (orderType){ |
| | | case 1://专车 |
| | | map = orderPrivateCarService.queryOrderInfo(orderId); |
| | | map = orderPrivateCarService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 2://出租车 |
| | | map = orderTaxiService.queryOrderInfo(orderId); |
| | | map = orderTaxiService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 3://跨城 |
| | | map = orderCrossCityService.queryOrderInfo(orderId); |
| | | map = orderCrossCityService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 4://同城小件 |
| | | map = orderLogisticsService.queryOrderInfo(orderId); |
| | | map = orderLogisticsService.queryOrderInfo(language, orderId); |
| | | break; |
| | | case 5://跨城小件 |
| | | map = orderLogisticsService.queryOrderInfo(orderId); |
| | | map = orderLogisticsService.queryOrderInfo(language, orderId); |
| | | break; |
| | | } |
| | | if(null != map.get("telX")){ |
| | |
| | | Map<String, Object> map = null; |
| | | switch (orderType) { |
| | | case 1://专车 |
| | | map = orderPrivateCarService.queryOrderInfo(orderId); |
| | | ResultUtil<BaseWarpper> res = orderPrivateCarService.queryCancleAmount(orderId); |
| | | map = orderPrivateCarService.queryOrderInfo(language, orderId); |
| | | ResultUtil<BaseWarpper> res = orderPrivateCarService.queryCancleAmount(orderId, language); |
| | | map.put("cancelPayMoney", res.getData().getAmount()); |
| | | break; |
| | | case 2://出租车 |
| | | map = orderTaxiService.queryOrderInfo(orderId); |
| | | map = orderTaxiService.queryOrderInfo(language, orderId); |
| | | ResultUtil<BaseWarpper> re = orderTaxiService.queryCancleAmount(orderId); |
| | | map.put("cancelPayMoney", re.getData().getAmount()); |
| | | break; |
| | | case 3://跨城 |
| | | map = orderCrossCityService.queryOrderInfo(orderId); |
| | | map = orderCrossCityService.queryOrderInfo(language, orderId); |
| | | ResultUtil<BaseWarpper> r = orderCrossCityService.queryCancleAmount(orderId); |
| | | map.put("cancelPayMoney", r.getData().getAmount()); |
| | | break; |
| | |
| | | @ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=跨城)", name = "orderType", required = true, dataType = "int"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<BaseWarpper> queryCancleAmount(Integer id, Integer orderType){ |
| | | public ResultUtil<BaseWarpper> queryCancleAmount(Integer id, Integer orderType, Integer language){ |
| | | try { |
| | | switch (orderType){ |
| | | case 1: |
| | | return orderPrivateCarService.queryCancleAmount(id); |
| | | return orderPrivateCarService.queryCancleAmount(id, language); |
| | | case 2: |
| | | return orderTaxiService.queryCancleAmount(id); |
| | | case 3: |
| | |
| | | @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil queryCoupon(Integer orderId, Integer orderType, Integer pageNum, Integer size, HttpServletRequest request){ |
| | | public ResultUtil queryCoupon(Integer language, Integer orderId, Integer orderType, Integer pageNum, Integer size, HttpServletRequest request){ |
| | | try { |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | if(null == uid){ |
| | |
| | | List<Map<String, Object>> list = new ArrayList<>(); |
| | | switch (orderType){ |
| | | case 1: |
| | | list = orderPrivateCarService.queryCoupon(orderId, uid, pageNum, size); |
| | | list = orderPrivateCarService.queryCoupon(language, orderId, uid, pageNum, size); |
| | | break; |
| | | // case 2: |
| | | // list = orderTaxiService.queryCoupon(orderId, uid, pageNum, size); |
| | |
| | | @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<List<TravelRecordWarpper>> queryRedEnvelope(Integer pageNum, Integer size, HttpServletRequest request){ |
| | | public ResultUtil<List<TravelRecordWarpper>> queryRedEnvelope(Integer language, Integer pageNum, Integer size, HttpServletRequest request){ |
| | | try { |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | if(null == uid){ |
| | | return ResultUtil.tokenErr(); |
| | | } |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> list = orderPrivateCarService.queryRedEnvelope(uid);//专车 |
| | | List<Map<String, Object>> list1 = orderTaxiService.queryRedEnvelope(uid);//出租车 |
| | | List<Map<String, Object>> list2 = orderCrossCityService.queryRedEnvelope(uid);//跨城 |
| | | List<Map<String, Object>> list = orderPrivateCarService.queryRedEnvelope(language, uid);//专车 |
| | | List<Map<String, Object>> list1 = orderTaxiService.queryRedEnvelope(language, uid);//出租车 |
| | | List<Map<String, Object>> list2 = orderCrossCityService.queryRedEnvelope(language, uid);//跨城 |
| | | list.addAll(list1); |
| | | list.addAll(list2); |
| | | |
| | |
| | | String code = redisUtil.getValue(phone+"_Code"); |
| | | System.out.println("缓存中验证码为:"+code); |
| | | if (ToolUtil.isEmpty(kaptcha) || !kaptcha.equalsIgnoreCase(code)) { |
| | | return ResultUtil.error(language == 1 ? "图形验证码错误" : language == 2 ? "The graphic verification code is incorrect" : "Code de vérification graphique incorrect"); |
| | | return ResultUtil.error(language == 1 ? "图形验证码错误" : language == 2 ? "Wrong CAPTCHA" : "CAPTCHA erroné"); |
| | | } |
| | | return userInfoService.queryCaptcha(phone, type, language); |
| | | }catch (Exception e){ |
| | |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | |
| | | if(ToolUtil.isEmpty(email)){ |
| | | return ResultUtil.error(language == 1 ? "邮箱不能为空" : language == 2 ? "The mailbox cannot be empty" : "L’email ne peut pas être vide"); |
| | | return ResultUtil.error(language == 1 ? "邮箱不能为空" : language == 2 ? "E-mail address cannot be empty." : "L’adresse e-mail ne peut pas être vide."); |
| | | } |
| | | |
| | | Random random = new Random(); |
| | |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(value = "微信jscode(小程序登录上传)", name = "jscode", required = false, dataType = "String") |
| | | }) |
| | | public ResultUtil<LoginWarpper> wxIsLogin( String jscode){ |
| | | public ResultUtil<LoginWarpper> wxIsLogin(Integer language, String jscode){ |
| | | try { |
| | | return userInfoService.wxIsLogin(jscode); |
| | | return userInfoService.wxIsLogin(language, jscode); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResultUtil.runErr(); |
| | |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<UserInfoWarpper> queryUserInfo(HttpServletRequest request){ |
| | | public ResultUtil<UserInfoWarpper> queryUserInfo(Integer language, HttpServletRequest request){ |
| | | try { |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | if(null == uid){ |
| | | return ResultUtil.tokenErr(); |
| | | } |
| | | Map<String, Object> map = userInfoService.queryUserInfo(uid); |
| | | Map<String, Object> map = userInfoService.queryUserInfo(language, uid); |
| | | return ResultUtil.success(UserInfoWarpper.getUserInfoWarpper(map)); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | |
| | | @ApiImplicitParam(value = "电话号码", name = "phone", required = true, dataType = "String"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<Object> queryUser(String phone){ |
| | | public ResultUtil<Object> queryUser(Integer language, String phone){ |
| | | try { |
| | | String substring = phone.substring(0, 1); |
| | | if("0".equals(substring)){ |
| | |
| | | if(phone.indexOf("233") < 0){ |
| | | phone = "233" + phone; |
| | | } |
| | | Map<String, Object> map = userInfoService.queryUser(phone); |
| | | Map<String, Object> map = userInfoService.queryUser(language, phone); |
| | | if(null != map){ |
| | | return ResultUtil.success(UserInfoWarpper.getUserInfoWarpper(map)); |
| | | } |
| | |
| | | BigDecimal bigDecimal = new BigDecimal(code); |
| | | long max = Long.MAX_VALUE; |
| | | if(bigDecimal.compareTo(new BigDecimal(max)) >= 0){ |
| | | return ResultUtil.error(language == 1 ? "银行卡号格式错误" : language == 2 ? "The format of bank card number is incorrect" : "Format incorrect du numéro de carte bancaire"); |
| | | return ResultUtil.error(language == 1 ? "银行卡号格式错误" : language == 2 ? "Format error of bank card" : "Erreur de format de la carte bancaire"); |
| | | } |
| | | BankCard bankCard = bankCardService.selectOne(new EntityWrapper<BankCard>().eq("code", code)); |
| | | if(null != bankCard){ |
| | | return ResultUtil.error(language == 1 ? "银行卡重复" : language == 2 ? "Duplicate bank card" : "Double carte bancaire"); |
| | | return ResultUtil.error(language == 1 ? "银行卡重复" : language == 2 ? "Reduplication of bank card" : "Reduplication de la carte bancaire"); |
| | | } |
| | | bankCard = new BankCard(); |
| | | bankCard.setUserId(uid); |
| | |
| | | a.state as state, |
| | | a.oldState as oldState, |
| | | DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime, |
| | | DATE_FORMAT(a.travelTime, '%m月%d日 %H:%i') as travelTime, |
| | | DATE_FORMAT(a.travelTime, '%m-%d %H:%i') as travelTime, |
| | | DATE_FORMAT(a.arriveTime, '%Y-%m-%d %H:%i:%s') as arriveTime, |
| | | DATE_FORMAT(a.travelTime, '%Y-%m-%d %H:%i:%s') as travelTime1, |
| | | a.startLon as startLon, |
| | |
| | | select |
| | | id as orderId, |
| | | DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as orderTime, |
| | | DATE_FORMAT(travelTime, '%m月%d日 %H:%i') as time, |
| | | DATE_FORMAT(travelTime, '%m-%d %H:%i') as time, |
| | | startAddress as startAddress, |
| | | endAddress as endAddress, |
| | | driverId as driverId, |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @param orderId |
| | | * @return |
| | | */ |
| | | Map<String, Object> queryOrderInfo(Integer orderId) throws Exception; |
| | | Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @param uid |
| | | * @return |
| | | */ |
| | | List<Map<String, Object>> queryMyTravelRecord(@Param("uid") Integer uid); |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer language, @Param("uid") Integer uid); |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, |
| | | Double endMoney, Integer uid) throws Exception; |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryRedEnvelope(Integer uid) throws Exception; |
| | | List<Map<String, Object>> queryRedEnvelope(Integer language, Integer uid) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | OrderCrossCity orderCrossCity = this.selectById(orderId); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(uid, orderCrossCity.getCompanyId(), 1, 3, orderCrossCity.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(uid, orderCrossCity.getCompanyId(), 1, 0, orderCrossCity.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(language, uid, orderCrossCity.getCompanyId(), 1, 3, orderCrossCity.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(language, uid, orderCrossCity.getCompanyId(), 1, 0, orderCrossCity.getOrderMoney(), pageNum, size); |
| | | list.addAll(list1); |
| | | return list; |
| | | } |
| | |
| | | paymentRecordService.saveData(1, null, null, orderId, 3, 1, orderMoney, null, 1);//添加预支付数据 |
| | | resultUtil = resultUtil; |
| | | }else{ |
| | | resultUtil = ResultUtil.error("获取支付信息失败"); |
| | | resultUtil = ResultUtil.error(language == 1 ? "获取支付信息失败" : language == 2 ? "Failed to obtain payment information" : "Impossible d’obtenir les informations de paiement"); |
| | | } |
| | | } |
| | | if(payType == 2){//支付宝支付 |
| | |
| | | paymentRecordService.saveData(1, null, null, orderId, 3, 2, orderMoney, null, 1);//添加预支付数据 |
| | | resultUtil = resultUtil; |
| | | }else{ |
| | | resultUtil = ResultUtil.error("获取支付信息失败"); |
| | | resultUtil = ResultUtil.error(language == 1 ? "获取支付信息失败" : language == 2 ? "Failed to obtain payment information" : "Impossible d’obtenir les informations de paiement"); |
| | | } |
| | | } |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() == null || userInfo.getBalance() < orderMoney){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public Map<String, Object> queryOrderInfo(Integer orderId) throws Exception { |
| | | public Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception { |
| | | Map<String, Object> map = orderCrossCityMapper.queryOrderInfo(orderId); |
| | | String insertTime = map.get("insertTime").toString(); |
| | | map.put("insertTime", DateUtil.conversionFormat(language, insertTime)); |
| | | String travelTime = map.get("travelTime").toString(); |
| | | map.put("travelTime", DateUtil.conversionFormat1(language, travelTime)); |
| | | String arriveTime = map.get("arriveTime").toString(); |
| | | map.put("arriveTime", DateUtil.conversionFormat(language, arriveTime)); |
| | | String travelTime1 = map.get("travelTime1").toString(); |
| | | map.put("travelTime1", DateUtil.conversionFormat(language, travelTime1)); |
| | | if(null != map.get("reassignNotice") && Integer.valueOf(String.valueOf(map.get("reassignNotice"))) == 2){//改派完成,重新获取了新的司机数据,开始修改数据防止继续调用 |
| | | OrderCrossCity orderCrossCity = this.selectById(orderId); |
| | | orderCrossCity.setReassignNotice(0); |
| | |
| | | paymentRecordService.saveData(1, null, null, id, 3, 1, query.getMoney(), null, 1);//添加预支付数据 |
| | | resultUtil = resultUtil; |
| | | }else{ |
| | | resultUtil = ResultUtil.error("获取支付信息失败", ""); |
| | | resultUtil = ResultUtil.error(language == 1 ? "获取支付信息失败" : language == 2 ? "Failed to obtain payment information" : "Impossible d’obtenir les informations de paiement", ""); |
| | | } |
| | | } |
| | | if(payType == 2){//支付宝支付 |
| | |
| | | paymentRecordService.saveData(1, null, null, id, 3, 2, query.getMoney(), null, 1);//添加预支付数据 |
| | | resultUtil = resultUtil; |
| | | }else{ |
| | | resultUtil = ResultUtil.error("获取支付信息失败", ""); |
| | | resultUtil = ResultUtil.error(language == 1 ? "获取支付信息失败" : language == 2 ? "Failed to obtain payment information" : "Impossible d’obtenir les informations de paiement", ""); |
| | | } |
| | | } |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() != null && userInfo.getBalance() < query.getMoney()){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(query.getMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> maps = orderCrossCityMapper.queryMyOrderList(uid, pageNum, size); |
| | | for(Map<String, Object> map : maps){ |
| | | if(Integer.valueOf(String.valueOf(map.get("state"))) == 11){ |
| | | map.put("state", map.get("oldState")); |
| | | } |
| | | String orderTime = map.get("orderTime").toString(); |
| | | map.put("orderTime", DateUtil.conversionFormat(language, orderTime)); |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat1(language, time)); |
| | | } |
| | | return maps; |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer uid) { |
| | | return orderCrossCityMapper.queryMyTravelRecord(uid); |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid) { |
| | | List<Map<String, Object>> list = orderCrossCityMapper.queryMyTravelRecord(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, Double endMoney, Integer uid) throws Exception { |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, Double endMoney, Integer uid) throws Exception { |
| | | startTime = dateUtil.getStartOrEndDate(startTime, "start"); |
| | | endTime = dateUtil.getStartOrEndDate(endTime, "end"); |
| | | return orderCrossCityMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | List<Map<String, Object>> list = orderCrossCityMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryRedEnvelope(Integer uid) throws Exception { |
| | | return orderCrossCityMapper.queryRedEnvelope(uid); |
| | | public List<Map<String, Object>> queryRedEnvelope(Integer language, Integer uid) throws Exception { |
| | | List<Map<String, Object>> list = orderCrossCityMapper.queryRedEnvelope(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | @ApiImplicitParams({ |
| | | @ApiImplicitParam(value = "业务类型(4=同城小件物流,5=跨城小件物流)", name = "type", required = true, paramType = "query", dataType = "int"), |
| | | @ApiImplicitParam(value = "起点经纬度(103.23265,30.2312)", name = "startLonLat", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "终点经纬度(103.23265,30.2312)", name = "endLonLat", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "终点详细地址", name = "endAddress", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil queryLogisticsUnitPrice(Integer type, String startLonLat, String endAddress, Integer language, HttpServletRequest request){ |
| | | public ResultUtil queryLogisticsUnitPrice(Integer type, String startLonLat, String endLonLat, String endAddress, Integer language, HttpServletRequest request){ |
| | | try { |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | if(null == uid){ |
| | | return ResultUtil.tokenErr(); |
| | | } |
| | | return orderLogisticsService.queryLogisticsUnitPrice(type, startLonLat, endAddress, uid, language); |
| | | return orderLogisticsService.queryLogisticsUnitPrice(type, startLonLat, endLonLat, endAddress, uid, language); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResultUtil.runErr(); |
| | |
| | | @ApiImplicitParam(value = "货物数量", name = "number", required = true, paramType = "query", dataType = "int"), |
| | | @ApiImplicitParam(value = "业务类型(4=同城小件物流,5=跨城小件物流)", name = "type", required = true, paramType = "query", dataType = "int"), |
| | | @ApiImplicitParam(value = "起点经纬度(103.23265,30.2312)", name = "startLonLat", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "终点经纬度(103.23265,30.2312)", name = "endLonLat", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "终点详细地址", name = "endAddress", required = true, paramType = "query", dataType = "string") |
| | | }) |
| | | public ResultUtil queryPayMoney(Integer number, Integer type, String startLonLat, String endAddress, Integer language){ |
| | | public ResultUtil queryPayMoney(Integer number, Integer type, String startLonLat, String endLonLat, String endAddress, Integer language){ |
| | | try { |
| | | return orderLogisticsService.queryPayMoney(number, type, startLonLat, endAddress, language); |
| | | return orderLogisticsService.queryPayMoney(number, type, startLonLat, endLonLat, endAddress, language); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResultUtil.runErr(); |
| | |
| | | @ApiImplicitParam(value = "预约取货点详细地址", name = "startAddress", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "收货人姓名", name = "recipient", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "收货人电话", name = "recipientPhone", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "终点经纬度(103.23265,30.2312)", name = "endLonLat", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "收货详细地址", name = "endAddress", required = true, paramType = "query", dataType = "string"), |
| | | @ApiImplicitParam(value = "是否加急(1=否,2=是)", name = "urgent", required = true, paramType = "query", dataType = "int"), |
| | | @ApiImplicitParam(value = "加急费用", name = "tipMoney", required = true, paramType = "query", dataType = "double"), |
| | |
| | | @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") |
| | | }) |
| | | public ResultUtil<BaseWarpper> smallLogistics(Integer type, Integer cargoType, Integer cargoNumber, String remark, String placementLon, String placementLat, String startLon, String startLat, String startAddress, |
| | | String recipient, String recipientPhone, String endAddress, Integer urgent, Double tipMoney, Date travelTime, Integer orderSource, Integer language, HttpServletRequest request){ |
| | | String recipient, String recipientPhone, String endLonLat, String endAddress, Integer urgent, Double tipMoney, Date travelTime, Integer orderSource, Integer language, HttpServletRequest request){ |
| | | try { |
| | | Integer uid = userInfoService.getUserIdFormRedis(request); |
| | | if(null == uid){ |
| | | return ResultUtil.tokenErr(); |
| | | } |
| | | return orderLogisticsService.smallLogistics(type, cargoType, cargoNumber, remark, placementLon, placementLat, startLon, startLat, startAddress, |
| | | recipient, recipientPhone, endAddress, urgent, tipMoney, travelTime, orderSource, uid, language); |
| | | recipient, recipientPhone, endLonLat, endAddress, urgent, tipMoney, travelTime, orderSource, uid, language); |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | return ResultUtil.runErr(); |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | ResultUtil queryLogisticsUnitPrice(Integer type, String startLonLat, String endAddress, Integer uid, Integer language) throws Exception; |
| | | ResultUtil queryLogisticsUnitPrice(Integer type, String startLonLat, String endLonLat, String endAddress, Integer uid, Integer language) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | ResultUtil queryPayMoney(Integer number, Integer type, String startLonLat, String endAddress, Integer language) throws Exception; |
| | | ResultUtil queryPayMoney(Integer number, Integer type, String startLonLat, String endLonLat, String endAddress, Integer language) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @throws Exception |
| | | */ |
| | | ResultUtil smallLogistics(Integer type, Integer cargoType, Integer cargoNumber, String remark, String placementLon, String placementLat, String startLon, String startLat, String startAddress, |
| | | String recipient, String recipientPhone, String endAddress, Integer urgent, Double tipMoney, Date travelTime, Integer orderSource, Integer uid, Integer language) throws Exception; |
| | | String recipient, String recipientPhone, String endLonLat, String endAddress, Integer urgent, Double tipMoney, Date travelTime, Integer orderSource, Integer uid, Integer language) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @param uid |
| | | * @return |
| | | */ |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer uid); |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid); |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, |
| | | Double endMoney, Integer uid, Integer orderType) throws Exception; |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | Map<String, Object> queryOrderInfo(Integer orderId) throws Exception; |
| | | Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | } |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public ResultUtil queryLogisticsUnitPrice(Integer type, String startLonLat, String endAddress, Integer uid, Integer language) throws Exception { |
| | | FindPlaceFromTextVo findplacefromtext = GoogleMapUtil.textsearch(endAddress); |
| | | if(null == findplacefromtext){ |
| | | return ResultUtil.error(language == 1 ? "收货地址有误,无法查询具体地址信息" : language == 2 ? "The delivery address is incorrect, and the specific address information cannot be queried" : "L’adresse de livraison est incorrecte, impossible de vérifier l’adresse spécifique"); |
| | | } |
| | | Double lng = findplacefromtext.getLng(); |
| | | Double lat = findplacefromtext.getLat(); |
| | | public ResultUtil queryLogisticsUnitPrice(Integer type, String startLonLat, String endLonLat, String endAddress, Integer uid, Integer language) throws Exception { |
| | | String[] split = endLonLat.split(","); |
| | | Double lng = Double.valueOf(split[0]); |
| | | Double lat = Double.valueOf(split[1]); |
| | | ResultUtil<Map<String, Double>> price = this.getPrice1(type, startLonLat.split(",")[0], startLonLat.split(",")[1], lng.toString(), lat.toString(), language); |
| | | if(price.getCode() != 200){ |
| | | return price; |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | public ResultUtil queryPayMoney(Integer number, Integer type, String startLonLat, String endAddress, Integer language) throws Exception{ |
| | | FindPlaceFromTextVo findplacefromtext = GoogleMapUtil.textsearch(endAddress); |
| | | if(null == findplacefromtext){ |
| | | return ResultUtil.error(language == 1 ? "收货地址有误,无法查询具体地址信息" : language == 2 ? "The delivery address is incorrect, and the specific address information cannot be queried" : "L’adresse de livraison est incorrecte, impossible de vérifier l’adresse spécifique"); |
| | | } |
| | | Double lng = findplacefromtext.getLng(); |
| | | Double lat = findplacefromtext.getLat(); |
| | | public ResultUtil queryPayMoney(Integer number, Integer type, String startLonLat, String endLonLat, String endAddress, Integer language) throws Exception{ |
| | | String[] split = endLonLat.split(","); |
| | | Double lng = Double.valueOf(split[0]); |
| | | Double lat = Double.valueOf(split[1]); |
| | | ResultUtil<Map<String, Double>> price = this.getPrice1(type, startLonLat.split(",")[0], startLonLat.split(",")[1], lng.toString(), lat.toString(), language); |
| | | if(price.getCode() == 200 && type == 5){ |
| | | Map<String, Double> data = price.getData(); |
| | |
| | | */ |
| | | @Override |
| | | public ResultUtil smallLogistics(Integer type, Integer cargoType, Integer cargoNumber, String remark, String placementLon, String placementLat, String startLon, String startLat, String startAddress, String recipient, |
| | | String recipientPhone, String endAddress, Integer urgent, Double tipMoney, Date travelTime, Integer orderSource, Integer uid, Integer language) throws Exception { |
| | | String recipientPhone, String endLonLat, String endAddress, Integer urgent, Double tipMoney, Date travelTime, Integer orderSource, Integer uid, Integer language) throws Exception { |
| | | startAddress = startAddress.replaceAll("& #40;", "("); |
| | | startAddress = startAddress.replaceAll("& #41;", ")"); |
| | | endAddress = endAddress.replaceAll("& #40;", "("); |
| | |
| | | OrderLogistics orderLogistics = new OrderLogistics(); |
| | | Company query = companyCityService.query1(placementLon, placementLat); |
| | | if(null == query){ |
| | | return ResultUtil.error(language == 1 ? "该地点暂无企业服务" : language == 2 ? "No corporate services are available at this location" : "Aucun service d’entreprise n’est disponible pour cet emplacement"); |
| | | return ResultUtil.error(language == 1 ? "该地点暂无企业服务" : language == 2 ? "No service yet at this area" : "Pas encore de service dans cette zone"); |
| | | } |
| | | orderLogistics.setCompanyId(query.getId()); |
| | | orderLogistics.setType(type); |
| | |
| | | orderLogistics.setPlacementLat(Double.valueOf(placementLat)); |
| | | ReverseGeocodeVo reverseGeocode = GoogleMapUtil.getReverseGeocode(Double.valueOf(placementLat), Double.valueOf(placementLon)); |
| | | if(null == reverseGeocode){ |
| | | return ResultUtil.error(language == 1 ? "解析地址出错" : language == 2 ? "Resolve address error" : "Erreur dans la résolution de l’adresse"); |
| | | return ResultUtil.error(language == 1 ? "解析地址出错" : language == 2 ? "Address resolution error" : "Erreur de résolution d’adresse"); |
| | | } |
| | | |
| | | String address = reverseGeocode.getAddress(); |
| | |
| | | orderLogistics.setStartLon(Double.valueOf(startLon)); |
| | | orderLogistics.setStartLat(Double.valueOf(startLat)); |
| | | orderLogistics.setStartAddress(startAddress); |
| | | FindPlaceFromTextVo findplacefromtext = GoogleMapUtil.textsearch(endAddress); |
| | | if(null == findplacefromtext){ |
| | | return ResultUtil.error(language == 1 ? "收货地址有误,无法查询具体地址信息" : language == 2 ? "The delivery address is incorrect, and the specific address information cannot be queried" : "L’adresse de livraison est incorrecte, impossible de vérifier l’adresse spécifique"); |
| | | } |
| | | Double lng = findplacefromtext.getLng(); |
| | | Double lat = findplacefromtext.getLat(); |
| | | |
| | | String[] split = endLonLat.split(","); |
| | | Double lng = Double.valueOf(split[0]); |
| | | Double lat = Double.valueOf(split[1]); |
| | | orderLogistics.setEndLon(lng); |
| | | orderLogistics.setEndLat(lat); |
| | | orderLogistics.setEndAddress(endAddress); |
| | |
| | | Company query = companyCityService.query1(startLon, startLat); |
| | | if(null == query){ |
| | | return ResultUtil.error(language == 1 ? "预约取货点暂无企业服务" : language == 2 ? |
| | | "There is no enterprise service at the reservation pickup point" : "Prise de rendez-vous point de collecte pas encore disponible pour les entreprises"); |
| | | "No service yet at the reserved pickup point." : "Les points de ramassage prévus ne sont pas disponibles pour le moment."); |
| | | } |
| | | Double price1 = 0D; |
| | | Double price2 = 0D; |
| | |
| | | Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null); |
| | | DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(Double.valueOf(startLat), Double.valueOf(startLon), Double.valueOf(endLat), Double.valueOf(endLon)); |
| | | if(null == distancematrix){ |
| | | return ResultUtil.error(language == 1 ? "计算距离出错" : language == 2 ? "Error in distance calculation" : "Erreur de calcul des distances"); |
| | | return ResultUtil.error(language == 1 ? "计算距离出错" : language == 2 ? "Errors in computing distance" : "Erreurs dans le calcul de la distance"); |
| | | } |
| | | if(distancematrix.getDistance() == 0){ |
| | | return ResultUtil.error(language == 1 ? "未获取到有效的距离" : language == 2 ? "A valid distance was not obtained" : "La distance effective n’est pas acquise"); |
| | | return ResultUtil.error(language == 1 ? "未获取到有效的距离" : language == 2 ? "Not obtaining available distance" : "Ne pas obtenir la distance disponible"); |
| | | } |
| | | String content = String.valueOf(query1.get("content")); |
| | | JSONObject jsonObject = JSON.parseObject(content); |
| | |
| | | price1 = jsonObject.getDouble("num11"); |
| | | } |
| | | if(dist.compareTo(jsonObject.getDouble("num10")) > 0){ |
| | | return ResultUtil.error(language == 1 ? "超出可服务范围" : language == 2 ? "Out of service range" : "Au-delà du service disponible"); |
| | | return ResultUtil.error(language == 1 ? "超出可服务范围" : language == 2 ? "Beyond service range" : "Au-delà de la portée de service"); |
| | | } |
| | | }else{ |
| | | Map<String, Object> query1 = systemPriceMapper.query(query.getId(), type, null); |
| | |
| | | public ResultUtil payLogisticsOrder(Integer payType, Integer bankCardId, Integer orderId, Integer type, Integer language) throws Exception { |
| | | OrderLogistics orderLogistics = this.selectById(orderId); |
| | | if(orderLogistics.getState() != 7){ |
| | | return ResultUtil.error(language == 1 ? "订单已完成支付,不允许重复支付" : language == 2 ? "The order has been paid, no double payment is allowed" : "La commande a été payée, aucun paiement en double n’est autorisé", ""); |
| | | return ResultUtil.error(language == 1 ? "订单已完成支付,不允许重复支付" : language == 2 ? "The order has been paid, recurring payments is not allowed." : "La commande a été payée, les paiements récurrents ne sont pas autorisés.", ""); |
| | | } |
| | | Integer uid = orderLogistics.getUserId(); |
| | | Double orderMoney = orderLogistics.getOrderMoney(); |
| | |
| | | |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() == null || userInfo.getBalance() < orderMoney){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant", ""); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant", ""); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | pushUtil.pushOrderState(1, orderLogistics.getUserId(), orderLogistics.getId(), orderLogistics.getType(), orderLogistics.getState(), 0); |
| | | } |
| | | }).start(); |
| | | |
| | | if(ToolUtil.isNotEmpty(userInfo.getEmail())){ |
| | | new Thread(new Runnable() { |
| | | @Override |
| | | public void run() { |
| | | try { |
| | | String path = templatePath + "user/receiptLogistics.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
| | | Driver driver = driverService.selectById(orderLogistics.getDriverId()); |
| | | if(1 == language){ |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_chinese = document.getElementById("title_chinese"); |
| | | title_chinese.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",您在I-GO1个订单消费GHS " + orderLogistics.getPayMoney()); |
| | | Element xcf_chinese = document.getElementById("xcf_chinese"); |
| | | xcf_chinese.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element xj_chinese = document.getElementById("xj_chinese"); |
| | | xj_chinese.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element pay_type_chinese = document.getElementById("pay_type_chinese"); |
| | | pay_type_chinese.text("现金"); |
| | | Element pay_money_chinese = document.getElementById("pay_money_chinese"); |
| | | pay_money_chinese.text("GHS " + orderLogistics.getPayMoney()); |
| | | Element pdf_chinese = document.getElementById("pdf_chinese"); |
| | | pdf_chinese.attr("href", "http://182.160.16.251:80/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4"); |
| | | Element lost_item_chinese = document.getElementById("lost_item_chinese"); |
| | | lost_item_chinese.attr("href", "http://182.160.16.251:81/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4"); |
| | | // Element track_chinese = document.getElementById("track_chinese"); |
| | | // track_chinese.attr("href", "http://182.160.16.251:81/mailbox/user/location.html"); |
| | | Element pay_time_chinese = document.getElementById("pay_time_chinese"); |
| | | pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime()))); |
| | | Elements driver_chinese = document.getElementsByClass("driver_chinese"); |
| | | for (int i = 0; i < driver_chinese.size(); i++) { |
| | | Element element = driver_chinese.get(i); |
| | | element.text(driver.getFirstName() + "." + driver.getLastName()); |
| | | } |
| | | Element start_address_chinese = document.getElementById("start_address_chinese"); |
| | | start_address_chinese.text(orderLogistics.getStartAddress()); |
| | | Element end_address_chinese = document.getElementById("end_address_chinese"); |
| | | end_address_chinese.text(orderLogistics.getEndAddress()); |
| | | Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId())); |
| | | Element server_tel_chinese = document.getElementById("server_tel_chinese"); |
| | | server_tel_chinese.attr("href", "tel:" + (null != phone ? phone.getPhone() : "")); |
| | | } |
| | | if(2 == language){ |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_english = document.getElementById("title_english"); |
| | | title_english.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip "); |
| | | Element xcf_english = document.getElementById("xcf_english"); |
| | | xcf_english.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element xj_english = document.getElementById("xj_english"); |
| | | xj_english.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element pay_type_english = document.getElementById("pay_type_english"); |
| | | pay_type_english.text("cash"); |
| | | Element pay_money_english = document.getElementById("pay_money_english"); |
| | | pay_money_english.text("GHS " + orderLogistics.getPayMoney()); |
| | | Element pdf_english = document.getElementById("pdf_english"); |
| | | pdf_english.attr("href", "http://182.160.16.251:80/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4"); |
| | | Element lost_item_english = document.getElementById("lost_item_english"); |
| | | lost_item_english.attr("href", "http://182.160.16.251:81/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4"); |
| | | // Element track_english = document.getElementById("track_english"); |
| | | // track_english.attr("href", "http://182.160.16.251:81/mailbox/user/location.html"); |
| | | Element pay_time_english = document.getElementById("pay_time_english"); |
| | | pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime()))); |
| | | Elements driver_english = document.getElementsByClass("driver_english"); |
| | | for (int i = 0; i < driver_english.size(); i++) { |
| | | Element element = driver_english.get(i); |
| | | element.text(driver.getFirstName() + "." + driver.getLastName()); |
| | | } |
| | | Element start_address_english = document.getElementById("start_address_english"); |
| | | start_address_english.text(orderLogistics.getStartAddress()); |
| | | Element end_address_english = document.getElementById("end_address_english"); |
| | | end_address_english.text(orderLogistics.getEndAddress()); |
| | | Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId())); |
| | | Element server_tel_english = document.getElementById("server_tel_english"); |
| | | server_tel_english.attr("href", "tel:" + (null != phone ? phone.getPhone() : "")); |
| | | } |
| | | if(3 == language){ |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element title_french = document.getElementById("title_french"); |
| | | title_french.text("Le " + DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ", vous avez dépensé GHS " + orderLogistics.getPayMoney() + " sur le voyage"); |
| | | Element xcf_french = document.getElementById("xcf_french"); |
| | | xcf_french.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element xj_french = document.getElementById("xj_french"); |
| | | xj_french.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element pay_type_french = document.getElementById("pay_type_french"); |
| | | pay_type_french.text("espèces"); |
| | | Element pay_money_french = document.getElementById("pay_money_french"); |
| | | pay_money_french.text("GHS " + orderLogistics.getPayMoney()); |
| | | Element pdf_french = document.getElementById("pdf_french"); |
| | | pdf_french.attr("href", "http://182.160.16.251:80/user/base/order/uploadReceiptPdf?orderId=" + orderId + "&orderType=4"); |
| | | Element lost_item_french = document.getElementById("lost_item_french"); |
| | | lost_item_french.attr("href", "http://182.160.16.251:81/mailbox/user/lossGoods.html?language=" + language + "&orderId=" + orderId + "&orderType=4"); |
| | | // Element track_french = document.getElementById("track_french"); |
| | | // track_french.attr("href", "http://182.160.16.251:81/mailbox/user/location.html"); |
| | | Element pay_time_french = document.getElementById("pay_time_french"); |
| | | pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime()))); |
| | | Elements driver_french = document.getElementsByClass("driver_french"); |
| | | for (int i = 0; i < driver_french.size(); i++) { |
| | | Element element = driver_french.get(i); |
| | | element.text(driver.getFirstName() + "." + driver.getLastName()); |
| | | } |
| | | Element start_address_french = document.getElementById("start_address_french"); |
| | | start_address_french.text(orderLogistics.getStartAddress()); |
| | | Element end_address_french = document.getElementById("end_address_french"); |
| | | end_address_french.text(orderLogistics.getEndAddress()); |
| | | Phone phone = phoneService.selectOne(new EntityWrapper<Phone>().eq("type", 2).eq("companyId", driver.getCompanyId())); |
| | | Element server_tel_french = document.getElementById("server_tel_french"); |
| | | server_tel_french.attr("href", "tel:" + (null != phone ? phone.getPhone() : "")); |
| | | } |
| | | |
| | | EmailUtil.send(userInfo.getEmail(), language == 1 ? "包裹收据" : language == 2 ? "Parcel receipt" : "Réception de colis", document.html()); |
| | | |
| | | //开始生成pdf收据和html收据 |
| | | File file = new File("/usr/local/nginx/html/files/html/"); |
| | | if(!file.exists()){ |
| | | file.mkdirs(); |
| | | } |
| | | file = new File("/usr/local/nginx/html/files/html/parcel_receipt_" + orderId + ".html"); |
| | | if(!file.exists()){ |
| | | file.createNewFile(); |
| | | } |
| | | FileWriter fileWriter = new FileWriter(file); |
| | | fileWriter.write(document.html()); |
| | | fileWriter.flush(); |
| | | fileWriter.close(); |
| | | FileInputStream fileInputStream = new FileInputStream(file); |
| | | File file1 = new File("/usr/local/nginx/html/files/pdf/"); |
| | | if(!file1.exists()){ |
| | | file1.mkdirs(); |
| | | } |
| | | file1 = new File("/usr/local/nginx/html/files/pdf/parcel_receipt_" + orderId + ".pdf"); |
| | | if(!file1.exists()){ |
| | | file1.createNewFile(); |
| | | } |
| | | FileOutputStream fileOutputStream = new FileOutputStream(file1); |
| | | HtmlToPdfUtils.convertToPdf(fileInputStream, "IGO", fileOutputStream); |
| | | |
| | | String link ="http://182.160.16.251:81/files/html/parcel_receipt_" + orderId + ".html"; |
| | | TEmail tEmail = new TEmail(); |
| | | tEmail.setLink(link); |
| | | tEmail.setUserId(uid); |
| | | tEmail.setType(1); |
| | | tEmail.setName(language == 1 ? "包裹收据" : language == 2 ? "Parcel receipt" : "Réception de colis"); |
| | | tEmail.setOrderId(orderId); |
| | | tEmail.setCreateTime(new Date()); |
| | | int i = cn.hutool.core.date.DateUtil.dayOfWeek(new Date())-1; |
| | | String week = EmailUtil.getWeek(language, i); |
| | | tEmail.setWeek(week); |
| | | boolean am = cn.hutool.core.date.DateUtil.isAM(new Date()); |
| | | if(am){ |
| | | tEmail.setAmOrPm(language==1?"上午":language==2?"AM":"Dans la matinée"); |
| | | }else { |
| | | tEmail.setAmOrPm(language==1?"下午":language==2?"PM":"après-midi"); |
| | | } |
| | | emailService.insert(tEmail); |
| | | |
| | | }catch (Exception e){ |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | }).start(); |
| | | } |
| | | |
| | | systemNoticeService.addSystemNotice(1, language == 1 ? "您已成功完成包裹订单支付,谢谢使用!" : language == 2 |
| | | ? "You have successfully completed the parcel order payment, thank you for using!" : |
| | | "Vous avez terminé avec succès le paiement de la commande de colis, merci de l’utiliser!", uid, 1); |
| | |
| | | String path = templatePath + "user/receiptLogistics.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd HH:mm"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
| | | Driver driver = driverService.selectById(orderLogistics.getDriverId()); |
| | | if(1 == language){ |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_chinese = document.getElementById("title_chinese"); |
| | | title_chinese.text(sdf2.format(orderLogistics.getTravelTime()) + ",您在I-GO1个订单消费GHS " + orderLogistics.getPayMoney()); |
| | | title_chinese.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",您在I-GO1个订单消费GHS " + orderLogistics.getPayMoney()); |
| | | Element xcf_chinese = document.getElementById("xcf_chinese"); |
| | | xcf_chinese.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element xj_chinese = document.getElementById("xj_chinese"); |
| | |
| | | // Element track_chinese = document.getElementById("track_chinese"); |
| | | // track_chinese.attr("href", "http://182.160.16.251:81/mailbox/user/location.html"); |
| | | Element pay_time_chinese = document.getElementById("pay_time_chinese"); |
| | | pay_time_chinese.text(sdf1.format(orderLogistics.getTravelTime())); |
| | | pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime()))); |
| | | Elements driver_chinese = document.getElementsByClass("driver_chinese"); |
| | | for (int i = 0; i < driver_chinese.size(); i++) { |
| | | Element element = driver_chinese.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_english = document.getElementById("title_english"); |
| | | title_english.text(sdf2.format(orderLogistics.getTravelTime()) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip "); |
| | | title_english.text(DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ",You spent GHS " + orderLogistics.getPayMoney() + " on the trip "); |
| | | Element xcf_english = document.getElementById("xcf_english"); |
| | | xcf_english.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element xj_english = document.getElementById("xj_english"); |
| | |
| | | // Element track_english = document.getElementById("track_english"); |
| | | // track_english.attr("href", "http://182.160.16.251:81/mailbox/user/location.html"); |
| | | Element pay_time_english = document.getElementById("pay_time_english"); |
| | | pay_time_english.text(sdf1.format(orderLogistics.getTravelTime())); |
| | | pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime()))); |
| | | Elements driver_english = document.getElementsByClass("driver_english"); |
| | | for (int i = 0; i < driver_english.size(); i++) { |
| | | Element element = driver_english.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element title_french = document.getElementById("title_french"); |
| | | title_french.text(sdf2.format(orderLogistics.getTravelTime()) + ",Vous consommez GHS " + orderLogistics.getPayMoney() + " sur votre commande i-go1 le "); |
| | | title_french.text("Le " + DateUtil.conversionFormat(language, sdf2.format(orderLogistics.getTravelTime())) + ", vous avez dépensé GHS " + orderLogistics.getPayMoney() + " sur le voyage" ); |
| | | Element xcf_french = document.getElementById("xcf_french"); |
| | | xcf_french.text("GHS " + orderLogistics.getOrderMoney()); |
| | | Element xj_french = document.getElementById("xj_french"); |
| | |
| | | // Element track_french = document.getElementById("track_french"); |
| | | // track_french.attr("href", "http://182.160.16.251:81/mailbox/user/location.html"); |
| | | Element pay_time_french = document.getElementById("pay_time_french"); |
| | | pay_time_french.text(sdf1.format(orderLogistics.getTravelTime())); |
| | | pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderLogistics.getTravelTime()))); |
| | | Elements driver_french = document.getElementsByClass("driver_french"); |
| | | for (int i = 0; i < driver_french.size(); i++) { |
| | | Element element = driver_french.get(i); |
| | |
| | | |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() == null || userInfo.getBalance() < orderMoney){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> maps = orderLogisticsMapper.queryMyOrderList(uid, pageNum, size, language); |
| | | for (Map<String, Object> map : maps) { |
| | | String orderTime = map.get("orderTime").toString(); |
| | | map.put("orderTime", DateUtil.conversionFormat(language, orderTime)); |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | Integer orderId = Integer.valueOf(String.valueOf(map.get("orderId"))); |
| | | Integer state = Integer.valueOf(String.valueOf(map.get("state"))); |
| | | if(state == 6){ |
| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer uid) { |
| | | return orderLogisticsMapper.queryMyTravelRecord(uid); |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid) { |
| | | List<Map<String, Object>> list = orderLogisticsMapper.queryMyTravelRecord(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, Double endMoney, Integer uid, Integer orderType) throws Exception { |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, Double endMoney, Integer uid, Integer orderType) throws Exception { |
| | | startTime = dateUtil.getStartOrEndDate(startTime, "start"); |
| | | endTime = dateUtil.getStartOrEndDate(endTime, "end"); |
| | | return orderLogisticsMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | | List<Map<String, Object>> list = orderLogisticsMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | OrderLogistics orderLogistics = this.selectById(id); |
| | | Integer integer = null; |
| | | if(null == orderLogistics){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Failed to cancel the order, the order information is incorrect" : "Échec de l'annulation de la commande, les informations de la commande sont incorrectes"); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Failed to cancel order, order-information error." : "Échec de l’annulation de la commande, erreur d’information de commande."); |
| | | } |
| | | if(orderLogistics.getState() > 5 && orderLogistics.getState() != 7 && orderLogistics.getState() != 11){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Cancel order failed, illegal operation" : "Échec de l'annulation de la commande, opération illégale"); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Failed to cancel order, illegal operation." : "Échec de l’annulation de la commande, opération illégale."); |
| | | } |
| | | |
| | | if(orderLogistics.getState() == 7){ |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> queryOrderInfo(Integer orderId) throws Exception { |
| | | public Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception { |
| | | Map<String, Object> map = orderLogisticsMapper.queryOrderInfo(orderId); |
| | | String travelTime = map.get("travelTime").toString(); |
| | | map.put("travelTime", DateUtil.conversionFormat1(language, travelTime)); |
| | | Integer state = Integer.valueOf(String.valueOf(map.get("state"))); |
| | | OrderLogistics orderLogistics = this.selectById(orderId); |
| | | if(null != map.get("reassignNotice") && Integer.valueOf(String.valueOf(map.get("reassignNotice"))) == 2){//改派完成,重新获取了新的司机数据,开始修改数据防止继续调用 |
| | |
| | | |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | OrderLogistics orderLogistics = this.selectById(orderId); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(uid, orderLogistics.getCompanyId(), 1, 4, orderLogistics.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(uid, orderLogistics.getCompanyId(), 1, 0, orderLogistics.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(language, uid, orderLogistics.getCompanyId(), 1, 4, orderLogistics.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(language, uid, orderLogistics.getCompanyId(), 1, 0, orderLogistics.getOrderMoney(), pageNum, size); |
| | | list.addAll(list1); |
| | | return list; |
| | | } |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | ResultUtil<BaseWarpper> queryCancleAmount(Integer id) throws Exception; |
| | | ResultUtil<BaseWarpper> queryCancleAmount(Integer id, Integer language) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, |
| | | Double endMoney, Integer uid) throws Exception; |
| | | |
| | | |
| | |
| | | * @param orderId |
| | | * @return |
| | | */ |
| | | Map<String, Object> queryOrderInfo(Integer orderId) throws Exception; |
| | | Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer uid) throws Exception; |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid) throws Exception; |
| | | |
| | | |
| | | |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryRedEnvelope(Integer uid) throws Exception; |
| | | List<Map<String, Object>> queryRedEnvelope(Integer language, Integer uid) throws Exception; |
| | | } |
| | |
| | | */ |
| | | List<OrderPrivateCar> orderPrivateCars = orderPrivateCarMapper.queryByState(uid, 1, 1, 1, 2, 3, 4, 5, 6, 11); |
| | | if(orderPrivateCars.size() > 0){ |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "There are outstanding orders" : "Il y a des commandes en attente"); |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "Uncompleted order(s)" : "Commande(s) non complétée(s)"); |
| | | } |
| | | List<OrderTaxi> list = orderTaxiMapper.queryByState_(uid, 1, 1, 1, 2, 3, 4, 5, 6, 11); |
| | | if(list.size() > 0){ |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "There are outstanding orders" : "Il y a des commandes en attente"); |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "Uncompleted order(s)" : "Commande(s) non complétée(s)"); |
| | | } |
| | | |
| | | orderPrivateCars = orderPrivateCarMapper.queryByState(uid, 2, 1, 1, 2, 3, 4, 5, 6, 11); |
| | | if(orderPrivateCars.size() > 0 && reservation == 2){ |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "There are outstanding orders" : "Il y a des commandes en attente"); |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "Uncompleted order(s)" : "Commande(s) non complétée(s)"); |
| | | } |
| | | |
| | | orderPrivateCars = orderPrivateCarMapper.queryByState(uid, 1, 1, 7,12); |
| | |
| | | |
| | | list = orderTaxiMapper.queryByState_(uid, 2, 1, 1, 2, 3, 4, 5, 6, 11); |
| | | if(list.size() > 0 && reservation == 2){ |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "There are outstanding orders" : "Il y a des commandes en attente"); |
| | | return ResultUtil.error(language == 1 ? "有未完成的订单" : language == 2 ? "Uncompleted order(s)" : "Commande(s) non complétée(s)"); |
| | | } |
| | | |
| | | startAddress = startAddress.replaceAll("& #40;", "("); |
| | |
| | | endAddress = endAddress.replaceAll("& #40;", "("); |
| | | endAddress = endAddress.replaceAll("& #41;", ")"); |
| | | if((orderSource == 1 || orderSource == 3) && null == serverCarModelId){ |
| | | return ResultUtil.error(language == 1 ? "请选择服务车型" : language == 2 ? "Please select the service model" : "Veuillez sélectionner un modèle de service"); |
| | | return ResultUtil.error(language == 1 ? "请选择服务车型" : language == 2 ? "Please select vehicle-type" : "Veuillez sélectionner le type de véhicule"); |
| | | } |
| | | |
| | | OrderPrivateCar orderPrivateCar = new OrderPrivateCar(); |
| | |
| | | if(instead == 0 || ToolUtil.isEmpty(orderPrivateCar.getPassengers())){ |
| | | UserInfo userInfo = userInfoService.selectById(uid); |
| | | if(ToolUtil.isEmpty(userInfo.getPhone())){ |
| | | return ResultUtil.error(language == 1 ? "请先绑定手机号码" : language == 2 ? "Please bind the mobile phone number first" : "Veuillez d’abord lier le numéro de téléphone mobile"); |
| | | return ResultUtil.error(language == 1 ? "请先绑定手机号码" : language == 2 ? "Please bind your mobile phone number first." : "Veuillez d’abord vous inscrire en liant votre numéro de téléphone portable."); |
| | | } |
| | | orderPrivateCar.setPassengers(userInfo.getFirstName() + "." + userInfo.getLastName()); |
| | | orderPrivateCar.setPassengersPhone(userInfo.getPhone()); |
| | |
| | | if(orderSource == 2){//扫码下单 |
| | | Driver driver = driverService.selectById(driverId); |
| | | if(null == driver){ |
| | | return ResultUtil.error(language == 1 ? "司机信息有误,无法完成下单" : language == 2 ? "Incorrect driver information, unable to complete the order" : "Les informations du conducteur sont incorrectes pour compléter la commande"); |
| | | return ResultUtil.error(language == 1 ? "司机信息有误,无法完成下单" : language == 2 ? "Wrong driver-information, unable to place an order." : "Informations erronées sur le chauffeur, il ne peut donc pas passer une commande."); |
| | | } |
| | | if(driver.getAuthState() == 1){ |
| | | return ResultUtil.error(language == 1 ? "司机信息还未完成审核,无法完成下单" : language == 2 ? "The driver information has not been reviewed, and the order cannot be completed" : "Les informations du conducteur n’ont pas été vérifiées et la commande n’a pas pu être finalisée"); |
| | | return ResultUtil.error(language == 1 ? "司机信息还未完成审核,无法完成下单" : language == 2 ? "The driver is not yet done with review, unable to place an order." : "Le chauffeur n’a pas encore terminé son examen, il ne peut donc pas passer une commande."); |
| | | } |
| | | if(driver.getAuthState() == 3){ |
| | | return ResultUtil.error(language == 1 ? "司机账户已被冻结,无法提供服务" : language == 2 ? "The driver's account has been frozen, unable to provide service" : "Le compte du conducteur a été bloqué et le service n’est pas disponible"); |
| | | return ResultUtil.error(language == 1 ? "司机账户已被冻结,无法提供服务" : language == 2 ? "Driver account is frozen, unable to provide service." : "Le compte du chauffeur est gelé, il n’est donc pas possible de fournir des services."); |
| | | } |
| | | if(driver.getAuthState() == 4){ |
| | | return ResultUtil.error(language == 1 ? "司机信息未通过审核,无法提供服务" : language == 2 ? "Driver information has not passed the audit, unable to provide service" : "Les informations du conducteur n’ont pas été vérifiées et le service n’a pas pu être fourni"); |
| | | return ResultUtil.error(language == 1 ? "司机信息未通过审核,无法提供服务" : language == 2 ? "The driver is not verified and qualified, unable to provide service." : "Le chauffeur n’est pas vérifié et qualifié, incapable de fournir le services."); |
| | | } |
| | | if(driver.getState() == 1){ |
| | | return ResultUtil.error(language == 1 ? "司机还未上线,无法提供服务" : language == 2 ? "The driver is not online and cannot provide service" : "Le chauffeur n’est pas en ligne et n’est pas en mesure d’offrir ses services"); |
| | | return ResultUtil.error(language == 1 ? "司机还未上线,无法提供服务" : language == 2 ? "The driver is not online, unable to provide service." : "Le chauffeur n’est pas en ligne, incapable de fournir le services."); |
| | | } |
| | | if(driver.getState() == 3){ |
| | | return ResultUtil.error(language == 1 ? "司机正在服务中,无法提供服务" : language == 2 ? "The driver is in service and cannot provide service" : "Le chauffeur est en service et le service n’est pas disponible"); |
| | | return ResultUtil.error(language == 1 ? "司机正在服务中,无法提供服务" : language == 2 ? "The driver is on a trip, unable to provide service." : "Le chauffeur est en service, incapable de fournir des services."); |
| | | } |
| | | List<DriverService> query = driverServiceService.query(driverId, 1); |
| | | if(query.size() == 0){ |
| | | return ResultUtil.error(language == 1 ? "该司机不能服务此业务" : language == 2 ? "The driver cannot serve this service" : "Ce conducteur ne peut pas servir cette entreprise"); |
| | | return ResultUtil.error(language == 1 ? "该司机不能服务此业务" : language == 2 ? "Driver has outstanding fees to pay, unable to receive orders." : "Le chauffeur a des frais impayés à payer, incapable de recevoir des commandes."); |
| | | } |
| | | |
| | | int count = this.selectCount(new EntityWrapper<OrderPrivateCar>().eq("driverId", driverId).eq("driverPay", 1).in("state", Arrays.asList(7, 8, 9)).eq("isDelete", 1)); |
| | | if(count > 0){ |
| | | return ResultUtil.error("司机未支付订单费用,无法进行接单"); |
| | | return ResultUtil.error(language == 1 ? "司机未支付订单费用,无法进行接单" : language == 2 ? "Driver has outstanding fees to pay, unable to receive orders." : "Le chauffeur a des frais impayés à payer, incapable de recevoir des commandes."); |
| | | } |
| | | int count1 = orderLogisticsService.selectCount(new EntityWrapper<OrderLogistics>().eq("driverId", driverId).eq("driverPay", 1).ne("state", 10).eq("isDelete", 1)); |
| | | if(count1 > 0){ |
| | | return ResultUtil.error("司机未支付订单费用,无法进行接单"); |
| | | return ResultUtil.error(language == 1 ? "司机未支付订单费用,无法进行接单" : language == 2 ? "Driver has outstanding fees to pay, unable to receive orders." : "Le chauffeur a des frais impayés à payer, incapable de recevoir des commandes."); |
| | | } |
| | | |
| | | orderPrivateCar.setDriverId(driverId); |
| | |
| | | language = userInfoService.queryLanguage(uid, language); |
| | | OrderPrivateCar orderPrivateCar = this.selectById(id); |
| | | if(null == orderPrivateCar){ |
| | | return ResultUtil.error(language == 1 ? "推送订单失败,订单信息有误" : language == 2 ? "Failed to push the order, the order information is wrong" : "Impossible de pousser la commande, les informations de commande sont erronées"); |
| | | return ResultUtil.error(language == 1 ? "推送订单失败,订单信息有误" : language == 2 ? "Failed to deliver order, order-information error." : "Echec de l’envoi de la commande, erreur d’information de commande."); |
| | | } |
| | | if(orderPrivateCar.getState() != 1){ |
| | | return ResultUtil.error(language == 1 ? "订单已被司机接单,不能重复推送" : language == 2 ? "The order has been taken by the driver and cannot be pushed repeatedly" : "La commande a été prise par le chauffeur et ne peut pas être poussée à plusieurs reprises"); |
| | | return ResultUtil.error(language == 1 ? "订单已被司机接单,不能重复推送" : language == 2 ? "Driver has received the order, do not redeliver it." : "Le chauffeur a déjà reçu la commande,Il ne peut pas être répété"); |
| | | } |
| | | //处理摆渡订单的继续推单操作 |
| | | if(orderPrivateCar.getType() == 2){ |
| | |
| | | List<Map<String, Integer>> orders = new ArrayList<>(); |
| | | for(OrderPrivateCar orderPrivateCar1 : list){ |
| | | if(orderPrivateCar1.getState() != 1){ |
| | | return ResultUtil.error(language == 1 ? "订单已被司机接单,推单取消" : language == 2 ? "The order has been taken by the driver, and the push order has been cancelled" : "La commande a été prise par le chauffeur et la commande push a été annulée"); |
| | | return ResultUtil.error(language == 1 ? "订单已被司机接单,推单取消" : language == 2 ? "Driver has received the order, order-delivering cancelled." : "Le chauffeur a déjà reçu la commande. Envoyez-la commande l'annuler."); |
| | | } |
| | | Map<String, Integer> map = new HashMap<>(); |
| | | map.put("orderType", 1); |
| | |
| | | List<OrderTaxi> list1 = orderTaxiService.selectList(new EntityWrapper<OrderTaxi>().eq("type", 2).eq("crossCityOrderId", orderPrivateCar.getCrossCityOrderId()).eq("place", orderPrivateCar.getPlace())); |
| | | for(OrderTaxi orderTaxi : list1){ |
| | | if(orderTaxi.getState() != 1){ |
| | | return ResultUtil.error(language == 1 ? "订单已被司机接单,推单取消" : language == 2 ? "The order has been taken by the driver, and the push order has been cancelled" : "La commande a été prise par le chauffeur et la commande push a été annulée"); |
| | | return ResultUtil.error(language == 1 ? "订单已被司机接单,推单取消" : language == 2 ? "Driver has received the order, order-delivering cancelled." : "Le chauffeur a déjà reçu la commande. Envoyez-la commande l'annuler."); |
| | | } |
| | | Map<String, Integer> map = new HashMap<>(); |
| | | map.put("orderType", 2); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public ResultUtil<BaseWarpper> queryCancleAmount(Integer id) throws Exception { |
| | | public ResultUtil<BaseWarpper> queryCancleAmount(Integer id, Integer language) throws Exception { |
| | | OrderPrivateCar orderPrivateCar = this.selectById(id); |
| | | if(null == orderPrivateCar){ |
| | | return ResultUtil.error("获取数据失败,订单信息有误"); |
| | | return ResultUtil.error(language == 1 ? "获取数据失败,订单信息有误" : language == 2 ? "Failed to obtain data, order-information error." : "Impossible d’obtenir les données, erreur d’information de commande. "); |
| | | } |
| | | double amount = 0; |
| | | CancleOrder query = cancleOrderService.query(orderPrivateCar.getOrderType(), 1, orderPrivateCar.getCompanyId()); |
| | |
| | | OrderPrivateCar orderPrivateCar = this.selectById(id); |
| | | Integer integer = null; |
| | | if(null == orderPrivateCar){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Failed to cancel the order, the order information is incorrect" : "Échec de l'annulation de la commande, les informations de la commande sont incorrectes"); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Failed to cancel order, order-information error." : "Échec de l’annulation de la commande, erreur d’information de commande."); |
| | | } |
| | | if(orderPrivateCar.getState() > 5 && orderPrivateCar.getState() != 11){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Cancel order failed, illegal operation" : "Échec de l'annulation de la commande, opération illégale"); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Failed to cancel order, illegal operation." : "Échec de l’annulation de la commande, opération illégale."); |
| | | } |
| | | if(null == orderPrivateCar.getDriverId()){//没有接单的情况 |
| | | if(orderPrivateCar.getType() == 2){//摆渡车 |
| | |
| | | driver.setState(2); |
| | | driverService.updateById(driver); |
| | | }else{ |
| | | return ResultUtil.error(language == 1 ? "请完善后台取消规则设置" : language == 2 ? "Please improve the background cancellation rule settings" : "Veuillez améliorer les paramètres de la règle d'annulation en arrière-plan"); |
| | | return ResultUtil.error(language == 1 ? "请完善后台取消规则设置" : language == 2 ? "Please complete the setting of cancellation rules from the background." : "Veuillez compléter le réglage des règles d’annulation à partir de l’arrière-plan."); |
| | | } |
| | | |
| | | } |
| | |
| | | ResultUtil resultUtil = ResultUtil.success(""); |
| | | |
| | | if(null == orderPrivateCar){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Order cancellation failed because the order information is incorrect" : "Annulation échouée, informations de commande incorrectes", ""); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,订单信息有误" : language == 2 ? "Failed to cancel order, order-information error." : "Échec de l’annulation de la commande, erreur d’information de commande.", ""); |
| | | } |
| | | if(orderPrivateCar.getState() != 12){ |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Order cancellation failed, illegal operation" : "Annulation de la commande échouée, opération illégale", ""); |
| | | return ResultUtil.error(language == 1 ? "取消订单失败,不合法的操作" : language == 2 ? "Failed to cancel order, illegal operation." : "Échec de l’annulation de la commande, opération illégale.", ""); |
| | | } |
| | | OrderCancel orderCancel = null; |
| | | if(null == cancleId || cancleId==0){ |
| | |
| | | } |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() != null && userInfo.getBalance() < query.getMoney()){ |
| | | return ResultUtil.error((language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"), ""); |
| | | return ResultUtil.error((language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"), ""); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(query.getMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | OrderPrivateCar orderPrivateCar = this.selectById(orderId); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(uid, orderPrivateCar.getCompanyId(), 1, 1, orderPrivateCar.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(uid, orderPrivateCar.getCompanyId(), 1, 0, orderPrivateCar.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(language, uid, orderPrivateCar.getCompanyId(), 1, 1, orderPrivateCar.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(language, uid, orderPrivateCar.getCompanyId(), 1, 0, orderPrivateCar.getOrderMoney(), pageNum, size); |
| | | list.addAll(list1); |
| | | return list; |
| | | } |
| | |
| | | public ResultUtil payPrivateCarOrder(Integer payType, Integer bankCardId, Integer orderId, Integer couponId, Integer type, Integer language) throws Exception { |
| | | OrderPrivateCar orderPrivateCar = this.selectById(orderId); |
| | | if(orderPrivateCar.getState() == 8 || orderPrivateCar.getState() == 9){ |
| | | return ResultUtil.error(language == 1 ? "订单已完成支付,不允许重复支付" : language == 2 ? "The order has been paid, no double payment is allowed" : "La commande a été payée, aucun paiement en double n’est autorisé", ""); |
| | | return ResultUtil.error(language == 1 ? "订单已完成支付,不允许重复支付" : language == 2 ? "The order has been paid, recurring payments is not allowed." : "La commande a été payée, les paiements récurrents ne sont pas autorisés.", ""); |
| | | } |
| | | if(orderPrivateCar.getState() != 7){ |
| | | return ResultUtil.error(language == 1 ? "订单不在待支付状态,不允许支付" : language == 2 ? "The order is not pending payment and cannot be paid" : "La commande n’est pas en attente de paiement et ne permet pas le paiement", ""); |
| | | return ResultUtil.error(language == 1 ? "订单不在待支付状态,不允许支付" : language == 2 ? "The order is no longer with Pending Payment, making payments is not allowed." : "La commande n’est plus en attente de paiement, il n’est pas permis d’effectuer des paiements.", ""); |
| | | } |
| | | Integer uid = orderPrivateCar.getUserId(); |
| | | Double orderMoney = orderPrivateCar.getOrderMoney(); |
| | |
| | | if(null != couponId){ |
| | | userCouponRecord = userCouponRecordService.selectById(couponId); |
| | | if(userCouponRecord.getCompanyId() != orderPrivateCar.getCompanyId()){ |
| | | return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupons cannot be used for this order" : "Le coupon ne peut pas être utilisé pour cette commande", ""); |
| | | return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupon cannot be used for this order." : "Le coupon ne peut pas être utilisé pour cette commande.", ""); |
| | | } |
| | | if(userCouponRecord.getState() == 2){ |
| | | return ResultUtil.error(language == 1 ? "优惠券已使用" : language == 2 ? "Coupon used" : "Coupon a été utilisé", ""); |
| | | return ResultUtil.error(language == 1 ? "优惠券已使用" : language == 2 ? "Coupon has been used." : "Le coupon a été utilisé.", ""); |
| | | } |
| | | if(userCouponRecord.getState() == 3){ |
| | | return ResultUtil.error(language == 1 ? "优惠券已过期" : language == 2 ? "Coupon has expired" : "Le coupon a expiré", ""); |
| | | return ResultUtil.error(language == 1 ? "优惠券已过期" : language == 2 ? "Coupon is expired." : "Le coupon a expiré.", ""); |
| | | } |
| | | if(userCouponRecord.getCouponUseType() != 0 && userCouponRecord.getCouponUseType() != 1){ |
| | | return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupons cannot be used for this order" : "Le coupon ne peut pas être utilisé pour cette commande", ""); |
| | | return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupon cannot be used for this order." : "Le coupon ne peut pas être utilisé pour cette commande.", ""); |
| | | } |
| | | if(userCouponRecord.getCouponType() == 2 && orderMoney.compareTo(userCouponRecord.getFullMoney()) < 0){ |
| | | return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupons cannot be used for this order" : "Le coupon ne peut pas être utilisé pour cette commande", ""); |
| | | return ResultUtil.error(language == 1 ? "优惠券不能用于此订单" : language == 2 ? "Coupon cannot be used for this order." : "Le coupon ne peut pas être utilisé pour cette commande.", ""); |
| | | } |
| | | orderMoney = orderMoney - userCouponRecord.getMoney(); |
| | | orderPrivateCar.setCouponMoney(userCouponRecord.getMoney()); |
| | |
| | | } |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() == null || userInfo.getBalance() < orderMoney){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant", ""); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant", ""); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | String path = templatePath + "user/receipt.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd HH:mm"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
| | | SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm"); |
| | | Car car = carMapper.selectById(orderPrivateCar.getCarId()); |
| | | Driver driver = driverService.selectById(orderPrivateCar.getDriverId()); |
| | |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_chinese = document.getElementById("title_chinese"); |
| | | title_chinese.text(sdf.format(orderPrivateCar.getTravelTime()) + ",您在I-GO1个订单消费GHS " + orderPrivateCar.getPayMoney()); |
| | | title_chinese.text(DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ",您在I-GO1个订单消费GHS " + orderPrivateCar.getPayMoney()); |
| | | Element xcf_chinese = document.getElementById("xcf_chinese"); |
| | | xcf_chinese.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_chinese = document.getElementById("xj_chinese"); |
| | |
| | | Element track_chinese = document.getElementById("track_chinese"); |
| | | track_chinese.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + orderId); |
| | | Element pay_time_chinese = document.getElementById("pay_time_chinese"); |
| | | pay_time_chinese.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_chinese = document.getElementsByClass("driver_chinese"); |
| | | for (int i = 0; i < driver_chinese.size(); i++) { |
| | | Element element = driver_chinese.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_english = document.getElementById("title_english"); |
| | | title_english.text(sdf.format(orderPrivateCar.getTravelTime()) + ",You spent GHS " + orderPrivateCar.getPayMoney() + " on the trip "); |
| | | title_english.text(DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ",You spent GHS " + orderPrivateCar.getPayMoney() + " on the trip "); |
| | | Element xcf_english = document.getElementById("xcf_english"); |
| | | xcf_english.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_english = document.getElementById("xj_english"); |
| | |
| | | Element track_english = document.getElementById("track_english"); |
| | | track_english.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + orderId); |
| | | Element pay_time_english = document.getElementById("pay_time_english"); |
| | | pay_time_english.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_english = document.getElementsByClass("driver_english"); |
| | | for (int i = 0; i < driver_english.size(); i++) { |
| | | Element element = driver_english.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element title_french = document.getElementById("title_french"); |
| | | title_french.text("Vous consommez GHS " + orderPrivateCar.getPayMoney() + " sur votre commande i-go1 le " + sdf.format(orderPrivateCar.getTravelTime())); |
| | | title_french.text("Le " + DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ", vous avez dépensé GHS " + orderPrivateCar.getPayMoney() + " sur le voyage"); |
| | | Element xcf_french = document.getElementById("xcf_french"); |
| | | xcf_french.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_french = document.getElementById("xj_french"); |
| | |
| | | Element track_french = document.getElementById("track_french"); |
| | | track_french.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + orderId); |
| | | Element pay_time_french = document.getElementById("pay_time_french"); |
| | | pay_time_french.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_french = document.getElementsByClass("driver_french"); |
| | | for (int i = 0; i < driver_french.size(); i++) { |
| | | Element element = driver_french.get(i); |
| | | element.text(driver.getFirstName() + "." + driver.getLastName()); |
| | | } |
| | | Element cp_french = document.getElementById("cp_french"); |
| | | cp_french.text("Plaque d’immatriculation:" + car.getCarLicensePlate()); |
| | | cp_french.text("Plaque: GS " + car.getCarLicensePlate()); |
| | | Element pf_french = document.getElementById("pf_french"); |
| | | pf_french.text("Évaluation des pilotes: " + aDouble); |
| | | pf_french.text("Note du chauffeur: " + aDouble); |
| | | Element lc_french = document.getElementById("lc_french"); |
| | | lc_french.text("Kilométrage: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes"); |
| | | lc_french.text("Distance: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes"); |
| | | Element start_time_french = document.getElementById("start_time_french"); |
| | | start_time_french.text(sdf2.format(orderPrivateCar.getTravelTime())); |
| | | Element start_address_french = document.getElementById("start_address_french"); |
| | |
| | | String path = templatePath + "user/receipt.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd HH:mm"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
| | | SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm"); |
| | | Car car = carMapper.selectById(orderPrivateCar.getCarId()); |
| | | Double aDouble = 0D; |
| | |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_chinese = document.getElementById("title_chinese"); |
| | | title_chinese.text(sdf.format(orderPrivateCar.getTravelTime()) + ",您在I-GO1个订单消费GHS " + orderPrivateCar.getPayMoney()); |
| | | title_chinese.text(DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ",您在I-GO1个订单消费GHS " + orderPrivateCar.getPayMoney()); |
| | | Element xcf_chinese = document.getElementById("xcf_chinese"); |
| | | xcf_chinese.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_chinese = document.getElementById("xj_chinese"); |
| | |
| | | Element track_chinese = document.getElementById("track_chinese"); |
| | | track_chinese.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + orderId); |
| | | Element pay_time_chinese = document.getElementById("pay_time_chinese"); |
| | | pay_time_chinese.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_chinese = document.getElementsByClass("driver_chinese"); |
| | | for (int i = 0; i < driver_chinese.size(); i++) { |
| | | Element element = driver_chinese.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_english = document.getElementById("title_english"); |
| | | title_english.text(sdf.format(orderPrivateCar.getTravelTime()) + ",You spent GHS " + orderPrivateCar.getPayMoney() + " on the trip "); |
| | | title_english.text(DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ",You spent GHS " + orderPrivateCar.getPayMoney() + " on the trip "); |
| | | Element xcf_english = document.getElementById("xcf_english"); |
| | | xcf_english.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_english = document.getElementById("xj_english"); |
| | |
| | | Element track_english = document.getElementById("track_english"); |
| | | track_english.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + orderId); |
| | | Element pay_time_english = document.getElementById("pay_time_english"); |
| | | pay_time_english.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_english = document.getElementsByClass("driver_english"); |
| | | for (int i = 0; i < driver_english.size(); i++) { |
| | | Element element = driver_english.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element title_french = document.getElementById("title_french"); |
| | | title_french.text("Vous consommez GHS " + orderPrivateCar.getPayMoney() + " sur votre commande i-go1 le " + sdf.format(orderPrivateCar.getTravelTime())); |
| | | title_french.text("Le " + DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ", vous avez dépensé GHS " + orderPrivateCar.getPayMoney() + " sur le voyage"); |
| | | Element xcf_french = document.getElementById("xcf_french"); |
| | | xcf_french.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_french = document.getElementById("xj_french"); |
| | |
| | | Element track_french = document.getElementById("track_french"); |
| | | track_french.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + orderId); |
| | | Element pay_time_french = document.getElementById("pay_time_french"); |
| | | pay_time_french.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_french = document.getElementsByClass("driver_french"); |
| | | for (int i = 0; i < driver_french.size(); i++) { |
| | | Element element = driver_french.get(i); |
| | | element.text(driver.getFirstName() + "." + driver.getLastName()); |
| | | } |
| | | Element cp_french = document.getElementById("cp_french"); |
| | | cp_french.text("Plaque d’immatriculation:" + car.getCarLicensePlate()); |
| | | cp_french.text("Plaque: GS " + car.getCarLicensePlate()); |
| | | Element pf_french = document.getElementById("pf_french"); |
| | | pf_french.text("Évaluation des pilotes: " + aDouble); |
| | | pf_french.text("Note du chauffeur: " + aDouble); |
| | | Element lc_french = document.getElementById("lc_french"); |
| | | lc_french.text("Kilométrage: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes"); |
| | | lc_french.text("Distance: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes"); |
| | | Element start_time_french = document.getElementById("start_time_french"); |
| | | start_time_french.text(sdf2.format(orderPrivateCar.getTravelTime())); |
| | | Element start_address_french = document.getElementById("start_address_french"); |
| | |
| | | Map<String, Object> map = userActivityRedenvelopeService.query(orderPrivateCar.getCompanyId(), orderPrivateCar.getTravelTime()); |
| | | Double laveMoney = Double.valueOf(String.valueOf(map.get("laveMoney"))); |
| | | if(money.compareTo(laveMoney) > 0){ |
| | | return ResultUtil.error("手速太慢了,红包已派发完啦!"); |
| | | return ResultUtil.error(language == 1 ? "手速太慢了,红包已派发完啦!" : language == 2 ? "Too slow, all the lucky-promo has been distributed!" : "Trop lent, toute la promo chanceuse a été distribuée !"); |
| | | } |
| | | //判断当前红包是否大于剩余可领取总金额 |
| | | if(money.compareTo(Double.valueOf(map.get("lavePrice").toString())) > 0){ |
| | | return ResultUtil.error("手速太慢了,红包已派发完啦!"); |
| | | return ResultUtil.error(language == 1 ? "手速太慢了,红包已派发完啦!" : language == 2 ? "Too slow, all the lucky-promo has been distributed!" : "Trop lent, toute la promo chanceuse a été distribuée !"); |
| | | } |
| | | double v = new BigDecimal(laveMoney).subtract(new BigDecimal(money)).doubleValue(); |
| | | |
| | |
| | | Element user_chinese = document.getElementById("user_chinese"); |
| | | user_chinese.text("您好 " + userInfo.getNickName() + ","); |
| | | Element time_chinese = document.getElementById("time_chinese"); |
| | | time_chinese.text("此活动有效期在" + sdf.format(query.getInsertTime()) + "至" + sdf.format(query.getEndTime()) + ",详情请查看I-GO平台"); |
| | | time_chinese.text("此活动有效期在" + DateUtil.conversionFormat(language, sdf.format(query.getInsertTime())) + "至" + DateUtil.conversionFormat(language, sdf.format(query.getEndTime())) + ",详情请查看I-GO平台"); |
| | | } |
| | | if(2 == language){ |
| | | document.getElementById("chinese").remove(); |
| | |
| | | Element user_english = document.getElementById("user_english"); |
| | | user_english.text("Hello " + userInfo.getNickName() + ","); |
| | | Element time_english = document.getElementById("time_english"); |
| | | time_english.text("You could use it from" + sdf.format(query.getInsertTime()) + "to" + sdf.format(query.getEndTime()) + ",check more details on the app."); |
| | | time_english.text("You could use it from" + DateUtil.conversionFormat(language, sdf.format(query.getInsertTime())) + "to" + DateUtil.conversionFormat(language, sdf.format(query.getEndTime())) + ",check more details on the app."); |
| | | } |
| | | if(3 == language){ |
| | | document.getElementById("chinese").remove(); |
| | |
| | | Element user_french = document.getElementById("user_french"); |
| | | user_french.text("Bonjour " + userInfo.getNickName() + ","); |
| | | Element time_french = document.getElementById("time_french"); |
| | | time_french.text("Cette promotion est valable du" + sdf.format(query.getInsertTime()) + "au" + sdf.format(query.getEndTime()) + ". Veuillez consulter la plateforme i-go pour plus de détails."); |
| | | time_french.text("Cette promotion est valable du" + DateUtil.conversionFormat(language, sdf.format(query.getInsertTime())) + "au" + DateUtil.conversionFormat(language, sdf.format(query.getEndTime())) + ". Veuillez consulter la plateforme i-go pour plus de détails."); |
| | | } |
| | | |
| | | EmailUtil.send(userInfo.getEmail(), language == 1 ? "红包活动" : language == 2 ? "Red envelope activity" : "Activité de l’enveloppe rouge", document.html()); |
| | |
| | | String path = templatePath + "user/receipt.html"; |
| | | Document document = Jsoup.parse(new File(path), "UTF-8"); |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/MM/dd HH:mm"); |
| | | SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
| | | SimpleDateFormat sdf2 = new SimpleDateFormat("HH:mm"); |
| | | Car car = carMapper.selectById(orderPrivateCar.getCarId()); |
| | | Driver driver = driverService.selectById(orderPrivateCar.getDriverId()); |
| | |
| | | document.getElementById("english").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_chinese = document.getElementById("title_chinese"); |
| | | title_chinese.text(sdf.format(orderPrivateCar.getTravelTime()) + ",您在I-GO1个订单消费GHS " + orderPrivateCar.getPayMoney()); |
| | | title_chinese.text(DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ",您在I-GO1个订单消费GHS " + orderPrivateCar.getPayMoney()); |
| | | Element xcf_chinese = document.getElementById("xcf_chinese"); |
| | | xcf_chinese.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_chinese = document.getElementById("xj_chinese"); |
| | |
| | | Element track_chinese = document.getElementById("track_chinese"); |
| | | track_chinese.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + id); |
| | | Element pay_time_chinese = document.getElementById("pay_time_chinese"); |
| | | pay_time_chinese.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_chinese.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_chinese = document.getElementsByClass("driver_chinese"); |
| | | for (int i = 0; i < driver_chinese.size(); i++) { |
| | | Element element = driver_chinese.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("french").remove(); |
| | | Element title_english = document.getElementById("title_english"); |
| | | title_english.text(sdf.format(orderPrivateCar.getTravelTime()) + ",You spent GHS " + orderPrivateCar.getPayMoney() + " on the trip "); |
| | | title_english.text(DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ",You spent GHS " + orderPrivateCar.getPayMoney() + " on the trip "); |
| | | Element xcf_english = document.getElementById("xcf_english"); |
| | | xcf_english.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_english = document.getElementById("xj_english"); |
| | |
| | | Element track_english = document.getElementById("track_english"); |
| | | track_english.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + id); |
| | | Element pay_time_english = document.getElementById("pay_time_english"); |
| | | pay_time_english.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_english.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_english = document.getElementsByClass("driver_english"); |
| | | for (int i = 0; i < driver_english.size(); i++) { |
| | | Element element = driver_english.get(i); |
| | |
| | | document.getElementById("chinese").remove(); |
| | | document.getElementById("english").remove(); |
| | | Element title_french = document.getElementById("title_french"); |
| | | title_french.text("Vous consommez GHS " + orderPrivateCar.getPayMoney() + " sur votre commande i-go1 le " + sdf.format(orderPrivateCar.getTravelTime())); |
| | | title_french.text("Le " + DateUtil.conversionFormat(language, sdf.format(orderPrivateCar.getTravelTime())) + ", vous avez dépensé GHS " + orderPrivateCar.getPayMoney() + " sur le voyage"); |
| | | Element xcf_french = document.getElementById("xcf_french"); |
| | | xcf_french.text("GHS " + orderPrivateCar.getOrderMoney()); |
| | | Element xj_french = document.getElementById("xj_french"); |
| | |
| | | Element track_french = document.getElementById("track_french"); |
| | | track_french.attr("href", "http://182.160.16.251:81/mailbox/user/location.html?orderId=" + id); |
| | | Element pay_time_french = document.getElementById("pay_time_french"); |
| | | pay_time_french.text(sdf1.format(orderPrivateCar.getEndServiceTime())); |
| | | pay_time_french.text(DateUtil.conversionFormat(language, sdf1.format(orderPrivateCar.getEndServiceTime()))); |
| | | Elements driver_french = document.getElementsByClass("driver_french"); |
| | | for (int i = 0; i < driver_french.size(); i++) { |
| | | Element element = driver_french.get(i); |
| | | element.text(driver.getFirstName() + "." + driver.getLastName()); |
| | | } |
| | | Element cp_french = document.getElementById("cp_french"); |
| | | cp_french.text("Plaque d’immatriculation:" + car.getCarLicensePlate()); |
| | | cp_french.text("Plaque: GS " + car.getCarLicensePlate()); |
| | | Element pf_french = document.getElementById("pf_french"); |
| | | pf_french.text("Évaluation des pilotes: " + aDouble); |
| | | pf_french.text("Note du chauffeur: " + aDouble); |
| | | Element lc_french = document.getElementById("lc_french"); |
| | | lc_french.text("Kilométrage: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes"); |
| | | lc_french.text("Distance: " + aDouble1 + "km / " + orderPrivateCar.getDuration() + "minutes"); |
| | | Element start_time_french = document.getElementById("start_time_french"); |
| | | start_time_french.text(sdf2.format(orderPrivateCar.getTravelTime())); |
| | | Element start_address_french = document.getElementById("start_address_french"); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> maps = orderPrivateCarMapper.queryMyOrderList(uid, pageNum, size); |
| | | for(Map<String, Object> map : maps){ |
| | | String orderTime = map.get("orderTime").toString(); |
| | | map.put("orderTime", DateUtil.conversionFormat(language, orderTime)); |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat1(language, time)); |
| | | Integer orderId = Integer.valueOf(String.valueOf(map.get("orderId"))); |
| | | Integer state = Integer.valueOf(String.valueOf(map.get("state"))); |
| | | if(state == 11){ |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, Double endMoney, Integer uid) throws Exception { |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, Double endMoney, Integer uid) throws Exception { |
| | | startTime = dateUtil.getStartOrEndDate(startTime, "start"); |
| | | endTime = dateUtil.getStartOrEndDate(endTime, "end"); |
| | | return orderPrivateCarMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | List<Map<String, Object>> list = orderPrivateCarMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public Map<String, Object> queryOrderInfo(Integer orderId) throws Exception { |
| | | public Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception { |
| | | Map<String, Object> map = orderPrivateCarMapper.queryOrderInfo(orderId); |
| | | String travelTime = map.get("travelTime").toString(); |
| | | map.put("travelTime", DateUtil.conversionFormat1(language, travelTime)); |
| | | Integer state = Integer.valueOf(String.valueOf(map.get("state"))); |
| | | if(null != map.get("reassignNotice") && Integer.valueOf(String.valueOf(map.get("reassignNotice"))) == 2){//改派完成,重新获取了新的司机数据,开始修改数据防止继续调用 |
| | | OrderPrivateCar orderPrivateCar = this.selectById(orderId); |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer uid) throws Exception { |
| | | return orderPrivateCarMapper.queryMyTravelRecord(uid); |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid) throws Exception { |
| | | List<Map<String, Object>> list = orderPrivateCarMapper.queryMyTravelRecord(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryRedEnvelope(Integer uid) throws Exception { |
| | | return orderPrivateCarMapper.queryRedEnvelope(uid); |
| | | public List<Map<String, Object>> queryRedEnvelope(Integer language, Integer uid) throws Exception { |
| | | List<Map<String, Object>> list = orderPrivateCarMapper.queryRedEnvelope(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | /** |
| | |
| | | d.couponType as dcouponType, |
| | | e.couponType as ecouponType, |
| | | DATE_FORMAT(a.startTime, '%Y-%m-%d') as startTime, |
| | | DATE_FORMAT(a.endTime, '%Y-%m-%-d') as endTime, |
| | | DATE_FORMAT(a.endTime, '%Y-%m-%d') as endTime, |
| | | a.effective as beffective, |
| | | a.effective as ceffective, |
| | | a.effective as deffective, |
| | |
| | | a.couponId as couponId, |
| | | a.totalNum as totalNum, |
| | | DATE_FORMAT(a.startTime, '%Y-%m-%d') as startTime, |
| | | DATE_FORMAT(a.endTime, '%Y-%m-%-d') as endTime, |
| | | DATE_FORMAT(a.endTime, '%Y-%m-%d') as endTime, |
| | | a.enable as enable, |
| | | a.effective as effective, |
| | | c.money as money, |
| | |
| | | a.totalNum as totalNum, |
| | | a.laveNum as laveNum, |
| | | DATE_FORMAT(a.startTime, '%Y-%m-%d') as startTime, |
| | | DATE_FORMAT(a.endTime, '%Y-%m-%-d') as endTime, |
| | | DATE_FORMAT(a.endTime, '%Y-%m-%d') as endTime, |
| | | a.`enable` as `enable`, |
| | | b.money as money, |
| | | b.fullMoney as fullMoney, |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryCancel(Integer uid, Integer isPay) throws Exception; |
| | | List<Map<String, Object>> queryCancel(Integer language, Integer uid, Integer isPay) throws Exception; |
| | | } |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryOrderEvaluate(Integer driverId, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryOrderEvaluate(Integer language, Integer driverId, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> query(Double money, Integer companyId) throws Exception; |
| | | List<Map<String, Object>> query(Integer language, Double money, Integer companyId) throws Exception; |
| | | } |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> query(Integer companyId) throws Exception; |
| | | List<Map<String, Object>> query(Integer language, Integer companyId) throws Exception; |
| | | |
| | | } |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryCoupon(Integer uid, Integer companyId, Integer state, Integer couponUseType, Double money, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryCoupon(Integer language, Integer uid, Integer companyId, Integer state, Integer couponUseType, Double money, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyCoupons(Integer state, Integer pageNum, Integer size, Integer uid) throws Exception; |
| | | List<Map<String, Object>> queryMyCoupons(Integer language, Integer state, Integer pageNum, Integer size, Integer uid) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | |
| | | |
| | | |
| | | ResultUtil<LoginWarpper> wxIsLogin( String jscode) throws Exception; |
| | | ResultUtil<LoginWarpper> wxIsLogin(Integer language, String jscode) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | Map<String, Object> queryUserInfo(Integer uid) throws Exception; |
| | | Map<String, Object> queryUserInfo(Integer language, Integer uid) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | Map<String, Object> queryUser(String phone) throws Exception; |
| | | Map<String, Object> queryUser(Integer language, String phone) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | if(ToolUtil.isNotEmpty(content)){ |
| | | if(content.length() > 200){ |
| | | language = userInfoService.queryLanguage(uid, language); |
| | | return ResultUtil.error(language == 1 ? "反馈内容过长" : language == 2 ? "Feedback is too long" : "Les commentaires sont trop longs"); |
| | | return ResultUtil.error(language == 1 ? "反馈内容过长" : language == 2 ? "Feedback-content is overlong." : "Le contenu de l’avis est trop long."); |
| | | } |
| | | List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null); |
| | | for(SensitiveWords s : sensitiveWords){ |
| | |
| | | import com.stylefeng.guns.modular.system.dao.OrderCancelMapper; |
| | | import com.stylefeng.guns.modular.system.model.OrderCancel; |
| | | import com.stylefeng.guns.modular.system.service.IOrderCancelService; |
| | | import com.stylefeng.guns.modular.system.util.DateUtil; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Isolation; |
| | | import org.springframework.transaction.annotation.Propagation; |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryCancel(Integer uid, Integer isPay) throws Exception { |
| | | return orderCancelMapper.queryCancel(uid, isPay); |
| | | public List<Map<String, Object>> queryCancel(Integer language, Integer uid, Integer isPay) throws Exception { |
| | | List<Map<String, Object>> list = orderCancelMapper.queryCancel(uid, isPay); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | } |
| | |
| | | import com.stylefeng.guns.modular.system.model.SensitiveWords; |
| | | import com.stylefeng.guns.modular.system.service.IOrderEvaluateService; |
| | | import com.stylefeng.guns.modular.system.service.ISystemNoticeService; |
| | | import com.stylefeng.guns.modular.system.util.DateUtil; |
| | | import com.stylefeng.guns.modular.system.util.ResultUtil; |
| | | import com.stylefeng.guns.modular.taxi.model.OrderTaxi; |
| | | import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService; |
| | |
| | | public ResultUtil saveData(Integer orderId, Integer orderType, Integer fraction, String content, Integer language) throws Exception { |
| | | if(ToolUtil.isNotEmpty(content)){ |
| | | if(null != content && content.length() > 500){ |
| | | return ResultUtil.error(language == 1 ? "评价内容过长" : language == 2 ? "The evaluation is too long" : "Contenu trop long de l’évaluation"); |
| | | return ResultUtil.error(language == 1 ? "评价内容过长" : language == 2 ? "Rating-content is overlong." : "Le contenu de l’évaluation est trop long."); |
| | | } |
| | | List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null); |
| | | for(SensitiveWords s : sensitiveWords){ |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryOrderEvaluate(Integer driverId, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryOrderEvaluate(Integer language, Integer driverId, Integer pageNum, Integer size) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | return orderEvaluateMapper.queryOrderEvaluate(driverId, pageNum, size); |
| | | List<Map<String, Object>> list = orderEvaluateMapper.queryOrderEvaluate(driverId, pageNum, size); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | if(ToolUtil.isNotEmpty(content)){ |
| | | if(content.length() > 200){ |
| | | language = userInfoService.queryLanguage(uid, language); |
| | | return ResultUtil.error(language == 1 ? "留言内容过长" : language == 2 ? "Message is too long" : "Le message est trop long"); |
| | | return ResultUtil.error(language == 1 ? "留言内容过长" : language == 2 ? "Message-content is overlong." : "Le contenu du message est trop long."); |
| | | } |
| | | List<SensitiveWords> sensitiveWords = sensitiveWordsMapper.selectList(null); |
| | | for(SensitiveWords s : sensitiveWords){ |
| | |
| | | language = 2; |
| | | } |
| | | if(null == reverseGeocode){ |
| | | return ResultUtil.error(language == 1 ? "获取地址信息失败" : language == 2 ? "Failed to get address information" : "Impossible d'obtenir les informations d'adresse"); |
| | | return ResultUtil.error(language == 1 ? "获取地址信息失败" : language == 2 ? "Failed to obtain address" : "Impossible d’obtenir l’adresse"); |
| | | } |
| | | AddressComponentsVo[] addressComponentsVos = reverseGeocode.getAddressComponentsVos(); |
| | | String[] city = new String[addressComponentsVos.length]; |
| | |
| | | } |
| | | Company query = companyCityService.query(city); |
| | | if(null == query){ |
| | | return ResultUtil.error(language == 1 ? "起点暂无企业提供服务" : language == 2 ? "The starting point has no enterprises to provide services" : "Le point de départ n'a pas d'entreprises pour fournir des services", new ArrayList<>()); |
| | | return ResultUtil.error(language == 1 ? "起点暂无企业提供服务" : language == 2 ? "No service yet at the starting point" : "Pas encore de service au point de départ", new ArrayList<>()); |
| | | } |
| | | Double slnt = Double.valueOf(startLonLat.split(",")[0]); |
| | | Double slat = Double.valueOf(startLonLat.split(",")[1]); |
| | |
| | | Double elat = Double.valueOf(endLonLat.split(",")[1]); |
| | | DistancematrixVo distancematrix = GoogleMapUtil.getDistancematrix(slat, slnt, elat, elnt); |
| | | if(null == distancematrix){ |
| | | return ResultUtil.error(language == 1 ? "获取预估距离出错" : language == 2 ? "Error getting estimated distance" : "Erreur lors de l'obtention de la distance estimée", new ArrayList<>()); |
| | | return ResultUtil.error(language == 1 ? "获取预估距离出错" : language == 2 ? "Obtaining-estimated-distance error" : "Erreur d’obtention de la distance estimée", new ArrayList<>()); |
| | | }else if(distancematrix.getDistance() == 0){ |
| | | return ResultUtil.error(language == 1 ? "未获取到有效的距离" : language == 2 ? "A valid distance was not obtained" : "La distance effective n’est pas acquise", new ArrayList<>()); |
| | | return ResultUtil.error(language == 1 ? "未获取到有效的距离" : language == 2 ? "Not obtaining available distance" : "Ne pas obtenir la distance disponible", new ArrayList<>()); |
| | | } |
| | | long distance1 = distancematrix.getDistance();//距离(米) |
| | | double distance1_ = Double.valueOf(distance1).doubleValue(); |
| | |
| | | |
| | | List<ServerCarModelWarpper> price = this.getPrice(query.getId(), distance1_, duration_, 0, 1); |
| | | if(price.size() == 0){ |
| | | return ResultUtil.error(language == 1 ? "未获取到可服务的车型" : language == 2 ? "No serviceable model available" : "Aucun modèle réparable disponible", new ArrayList<>()); |
| | | return ResultUtil.error(language == 1 ? "未获取到可服务的车型" : language == 2 ? "Not obtaining available vehicle-type" : "Ne pas obtenir le type de véhicule disponible", new ArrayList<>()); |
| | | } |
| | | return ResultUtil.success(price); |
| | | } |
| | |
| | | import com.stylefeng.guns.modular.system.dao.TNoticesMapper; |
| | | import com.stylefeng.guns.modular.system.model.SystemNotice; |
| | | import com.stylefeng.guns.modular.system.service.ISystemNoticeService; |
| | | import com.stylefeng.guns.modular.system.util.DateUtil; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | if(type == 2){//系统消息 |
| | | list = systemNoticeMapper.queryList(type, pageNum, size, uid); |
| | | for(Map<String, Object> map : list){ |
| | | map.put("title", language == 1 ? "系统提示" : language == 2 ? "System prompt" : "Rappel du système"); |
| | | map.put("title", language == 1 ? "系统提示" : language == 2 ? "Message" : "Rappel du système"); |
| | | systemNoticeMapper.readSystemNotice(Integer.valueOf(String.valueOf(map.get("id"))), uid); |
| | | } |
| | | } |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | |
| | | return list; |
| | | } |
| | | |
| | |
| | | import com.stylefeng.guns.modular.system.dao.UserActivityBalanceMapper; |
| | | import com.stylefeng.guns.modular.system.model.UserActivityBalance; |
| | | import com.stylefeng.guns.modular.system.service.IUserActivityBalanceService; |
| | | import com.stylefeng.guns.modular.system.util.DateUtil; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> query(Double money, Integer companyId) throws Exception { |
| | | return userActivityBalanceMapper.query(money, companyId); |
| | | public List<Map<String, Object>> query(Integer language, Double money, Integer companyId) throws Exception { |
| | | List<Map<String, Object>> query = userActivityBalanceMapper.query(money, companyId); |
| | | for (Map<String, Object> map : query) { |
| | | String startTime = map.get("startTime").toString(); |
| | | map.put("startTime", DateUtil.conversionFormat(language, startTime)); |
| | | String endTime = map.get("endTime").toString(); |
| | | map.put("endTime", DateUtil.conversionFormat(language, endTime)); |
| | | } |
| | | return query; |
| | | } |
| | | } |
| | |
| | | import com.stylefeng.guns.modular.system.dao.UserActivityRegisteredMapper; |
| | | import com.stylefeng.guns.modular.system.model.UserActivityRegistered; |
| | | import com.stylefeng.guns.modular.system.service.IUserActivityRegisteredService; |
| | | import com.stylefeng.guns.modular.system.util.DateUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> query(Integer companyId) throws Exception { |
| | | return userActivityRegisteredMapper.query(companyId); |
| | | public List<Map<String, Object>> query(Integer language, Integer companyId) throws Exception { |
| | | List<Map<String, Object>> query = userActivityRegisteredMapper.query(companyId); |
| | | for (Map<String, Object> map : query) { |
| | | String startTime = map.get("startTime").toString(); |
| | | map.put("startTime", DateUtil.conversionFormat(language, startTime)); |
| | | String endTime = map.get("endTime").toString(); |
| | | map.put("endTime", DateUtil.conversionFormat(language, endTime)); |
| | | } |
| | | return query; |
| | | } |
| | | } |
| | |
| | | import com.stylefeng.guns.modular.system.model.UserInfo; |
| | | import com.stylefeng.guns.modular.system.service.IUserCouponRecordService; |
| | | import com.stylefeng.guns.modular.system.service.IUserInfoService; |
| | | import com.stylefeng.guns.modular.system.util.DateUtil; |
| | | import com.stylefeng.guns.modular.system.util.ResultUtil; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryCoupon(Integer uid, Integer companyId, Integer state, Integer couponUseType, Double money, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryCoupon(Integer language, Integer uid, Integer companyId, Integer state, Integer couponUseType, Double money, Integer pageNum, Integer size) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | return userCouponRecordMapper.queryCoupon(uid, companyId, state, couponUseType, money, pageNum, size); |
| | | List<Map<String, Object>> list = userCouponRecordMapper.queryCoupon(uid, companyId, state, couponUseType, money, pageNum, size); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryMyCoupons(Integer state, Integer pageNum, Integer size, Integer uid) throws Exception { |
| | | public List<Map<String, Object>> queryMyCoupons(Integer language, Integer state, Integer pageNum, Integer size, Integer uid) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | return userCouponRecordMapper.queryMyCoupons(state, pageNum, size, uid); |
| | | List<Map<String, Object>> list = userCouponRecordMapper.queryMyCoupons(state, pageNum, size, uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | /** |
| | |
| | | UserCouponRecord userCouponRecord = userCouponRecordMapper.selectById(id); |
| | | if(userCouponRecord.getUserId().compareTo(uid) != 0){ |
| | | language = userInfoService.queryLanguage(uid, language); |
| | | return ResultUtil.error(language == 1 ? "您不能删除此优惠券" : language == 2 ? "You cannot delete this coupon" : "Vous ne pouvez pas supprimer ce coupon"); |
| | | return ResultUtil.error(language == 1 ? "您不能删除此优惠券" : language == 2 ? "You cannot cancel the coupon." : "Vous ne pouvez pas annuler le coupon."); |
| | | } |
| | | userCouponRecordMapper.deleteById(id); |
| | | return ResultUtil.success(); |
| | |
| | | UserCouponRecord userCouponRecord = userCouponRecordMapper.selectById(id); |
| | | language = userInfoService.queryLanguage(uid, language); |
| | | if(userCouponRecord.getUserId().compareTo(uid) != 0){ |
| | | return ResultUtil.error(language == 1 ? "您不能赠送此优惠券" : language == 2 ? "You cannot gift this coupon" : "Vous ne pouvez pas offrir ce coupon"); |
| | | return ResultUtil.error(language == 1 ? "您不能赠送此优惠券" : language == 2 ? "You cannot gift the coupon." : "Vous ne pouvez pas offrir le coupon."); |
| | | } |
| | | if(userCouponRecord.getState() != 1){ |
| | | return ResultUtil.error(language == 1 ? "优惠券已无法使用" : language == 2 ? "Coupon no longer available" : "Le coupon n'est plus disponible"); |
| | | return ResultUtil.error(language == 1 ? "优惠券已无法使用" : language == 2 ? "The coupon is no more available." : "Le coupon n’est plus disponible."); |
| | | } |
| | | userCouponRecord.setUserId(userId); |
| | | userCouponRecordMapper.updateById(userCouponRecord); |
| | |
| | | Integer userType, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide"); |
| | | } |
| | | |
| | | UserInfo userInfo = userInfoMapper.queryByPhone(phone); |
| | |
| | | Double lavePrice = Double.valueOf(map.get("lavePrice").toString()); |
| | | String startTime = map.get("startTime").toString(); |
| | | String endTime = map.get("endTime").toString(); |
| | | map.put("startTime", DateUtil.conversionFormat(language, startTime)); |
| | | map.put("endTime", DateUtil.conversionFormat(language, endTime)); |
| | | int num = 0; |
| | | for(int i = Integer.valueOf(String.valueOf(map.get("totalNum"))); i > 0; i--){ |
| | | //判断当前优惠券金额是否大于可发放剩余总金额 |
| | |
| | | } |
| | | } |
| | | if(userInfo.getState() == 2){ |
| | | return ResultUtil.error("账号被冻结"); |
| | | return ResultUtil.error(language == 1 ? "账号被冻结" : language == 2 ? "Account is frozen" : "Le compte est gelé"); |
| | | } |
| | | |
| | | //调用单点登录的逻辑 |
| | |
| | | return ResultUtil.error(language == 1 ? "账号无效" : language == 2 ? "Invalid account" : "Compte non valide"); |
| | | } |
| | | if(userInfo.getState() == 2){ |
| | | return ResultUtil.error(language == 1 ? "账号被冻结" : language == 2 ? "Account is frozen." : "Le compte est gelé"); |
| | | return ResultUtil.error(language == 1 ? "账号被冻结" : language == 2 ? "Account is frozen" : "Le compte est gelé"); |
| | | } |
| | | if(!ShiroKit.md5(password, salt).equals(userInfo.getPassWord())){ |
| | | return ResultUtil.error(language == 1 ? "密码错误" : language == 2 ? "Password error" : "Mot de passe incorrect"); |
| | | return ResultUtil.error(language == 1 ? "密码错误" : language == 2 ? "Wrong password" : "Mot de passe erroné"); |
| | | } |
| | | |
| | | //调用单点登录的逻辑 |
| | |
| | | String phone=null; |
| | | if(type == 2){//小程序 |
| | | if(ToolUtil.isEmpty(jscode)){ |
| | | return ResultUtil.error("微信登录请求失败,请重试"); |
| | | return ResultUtil.error(language == 1 ? "微信登录请求失败,请重试" : language == 2 ? "WeChat login request failed, please try again." : "La demande de connexion WeChat a échoué, veuillez réessayer."); |
| | | } |
| | | Map<String, String> map = weChatUtil.code2Session(jscode); |
| | | openid = map.get("openid"); |
| | |
| | | |
| | | } |
| | | if(userInfo.getState() == 2){ |
| | | return ResultUtil.error("账号被冻结"); |
| | | return ResultUtil.error(language == 1 ? "账号被冻结" : language == 2 ? "Account is frozen" : "Le compte est gelé"); |
| | | } |
| | | |
| | | //调用单点登录的逻辑 |
| | |
| | | return ResultUtil.success(loginWarpper); |
| | | } |
| | | @Override |
| | | public ResultUtil<LoginWarpper> wxIsLogin(String jscode) throws Exception { |
| | | public ResultUtil<LoginWarpper> wxIsLogin(Integer language, String jscode) throws Exception { |
| | | UserInfo userInfo = null; |
| | | String phone=null; |
| | | if(ToolUtil.isEmpty(jscode)){ |
| | | return ResultUtil.error("微信登录请求失败,请重试"); |
| | | return ResultUtil.error(language == 1 ? "微信登录请求失败,请重试" : language == 2 ? "WeChat login request failed, please try again." : "La demande de connexion WeChat a échoué, veuillez réessayer."); |
| | | } |
| | | Map<String, String> map = weChatUtil.code2Session(jscode); |
| | | String openid = map.get("openid"); |
| | | String unionid = map.get("unionid"); |
| | | userInfo = userInfoMapper.queryByOpenid2(openid); |
| | | if(null==userInfo){ |
| | | return ResultUtil.getResult(2000,"微信登录请求失败,请重试"); |
| | | return ResultUtil.getResult(2000,language == 1 ? "微信登录请求失败,请重试" : language == 2 ? "WeChat login request failed, please try again." : "La demande de connexion WeChat a échoué, veuillez réessayer."); |
| | | } |
| | | |
| | | |
| | | if(userInfo.getState() == 2){ |
| | | return ResultUtil.error("账号被冻结"); |
| | | return ResultUtil.error(language == 1 ? "账号被冻结" : language == 2 ? "Account is frozen" : "Le compte est gelé"); |
| | | } |
| | | |
| | | //调用单点登录的逻辑 |
| | |
| | | } |
| | | |
| | | if(userInfo.getState() == 2){ |
| | | return ResultUtil.error("账号被冻结"); |
| | | return ResultUtil.error(language == 1 ? "账号被冻结" : language == 2 ? "Account is frozen" : "Le compte est gelé"); |
| | | } |
| | | |
| | | //调用单点登录的逻辑 |
| | |
| | | public ResultUtil forgetPassword(String phone, String code, String password, Integer language) throws Exception { |
| | | UserInfo userInfo = this.queryByPhone(phone); |
| | | if(null == userInfo){ |
| | | return ResultUtil.error(language == 1 ? "手机号码未注册" : language == 2 ? "Cell phone number is not registered" : "Numéro de téléphone portable non enregistré"); |
| | | return ResultUtil.error(language == 1 ? "手机号码未注册" : language == 2 ? "Mobile phone number was not registered." : "Le numéro de téléphone portable n’a pas été enregistré."); |
| | | } |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | | b = this.checkCaptcha(userInfo.getEmail(), code); |
| | | } |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide"); |
| | | } |
| | | if(userInfo.getState() == 2){ |
| | | return ResultUtil.error(language == 1 ? "账号已被冻结" : language == 2 ? "The account has been frozen" : "Le compte a été gelé"); |
| | |
| | | public ResultUtil bindingPhone(Integer uid, String phoneOperator, String phone, String code, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide"); |
| | | } |
| | | UserInfo userInfo = this.selectById(uid); |
| | | UserInfo userInfo1 = userInfoMapper.queryByPhone(phone); |
| | |
| | | public ResultUtil bindingEmail(Integer uid, Integer type, String email, String code, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(email, code); |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide"); |
| | | } |
| | | UserInfo userInfo = this.selectById(uid); |
| | | UserInfo userInfo1 = userInfoMapper.queryByEmail(email); |
| | | if(null != userInfo1 && uid.compareTo(userInfo1.getId()) != 0){ |
| | | return ResultUtil.error(language == 1 ? "邮箱已被使用" : language == 2 ? "The mailbox is in use" : "La boîte mail a déjà été utilisée"); |
| | | return ResultUtil.error(language == 1 ? "邮箱已被使用" : language == 2 ? "E-mail address is already in use." : "L’adresse e-mail est déjà utilisée."); |
| | | } |
| | | |
| | | // if(null != userInfo1){ |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public Map<String, Object> queryUserInfo(Integer uid) throws Exception { |
| | | return userInfoMapper.queryUserInfo(uid, null); |
| | | public Map<String, Object> queryUserInfo(Integer language, Integer uid) throws Exception { |
| | | Map<String, Object> map = userInfoMapper.queryUserInfo(uid, null); |
| | | String birthday = map.get("birthday").toString(); |
| | | map.put("birthday", DateUtil.conversionFormat(language, birthday)); |
| | | return map; |
| | | } |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public Map<String, Object> queryUser(String phone) throws Exception { |
| | | return userInfoMapper.queryUserInfo(null, phone); |
| | | public Map<String, Object> queryUser(Integer language, String phone) throws Exception { |
| | | Map<String, Object> map = userInfoMapper.queryUserInfo(null, phone); |
| | | String birthday = map.get("birthday").toString(); |
| | | map.put("birthday", DateUtil.conversionFormat(language, birthday)); |
| | | return map; |
| | | } |
| | | |
| | | |
| | |
| | | public ResultUtil depositBalance(Integer payType, String bankCardId, Double money, Integer uid, Integer type, Integer language) throws Exception { |
| | | UserInfo userInfo = userInfoMapper.selectById(uid); |
| | | if(money.compareTo(0D) <= 0){ |
| | | return ResultUtil.error("支付金额必须大于0元", ""); |
| | | return ResultUtil.error(language == 1 ? "支付金额必须大于0元" : language == 2 ? "Payment amount must be greater than zero." : "Le montant du paiement doit être supérieur à zéro.", ""); |
| | | } |
| | | if(payType == 1){//手机支付 |
| | | Integer integer = paymentRecordService.saveData(2, uid, 1, null, null, 1, money, "", 1);//添加预支付数据 |
| | |
| | | public ResultUtil updatePhone(String code, String phoneOperator, String phone, Integer uid, Integer language) throws Exception { |
| | | boolean b = this.checkCaptcha(phone, code); |
| | | if(!b){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide"); |
| | | } |
| | | UserInfo userInfo = this.selectById(uid); |
| | | UserInfo userInfo1 = userInfoMapper.queryByPhone(phone); |
| | | if(null != userInfo1){ |
| | | return ResultUtil.error(language == 1 ? "手机号已被注册" : language == 2 ? "The phone number has been registered" : "Le numéro de téléphone a été enregistré"); |
| | | return ResultUtil.error(language == 1 ? "手机号已被注册" : language == 2 ? "Mobile phone number has been registered." : "Le numéro de téléphone portable a été enregistré."); |
| | | } |
| | | userInfo.setPhoneOperator(phoneOperator); |
| | | userInfo.setPhone(phone); |
| | |
| | | if(null != email){ |
| | | String value = redisUtil.getValue(email); |
| | | if(ToolUtil.isEmpty(value) || code.equals(value)){ |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid captcha" : "Code de vérification invalide"); |
| | | return ResultUtil.error(language == 1 ? "验证码无效" : language == 2 ? "Invalid CAPTCHA" : "CAPTCHA non valide"); |
| | | } |
| | | userInfo.setEmail(email); |
| | | } |
| | |
| | | * @throws Exception |
| | | */ |
| | | public synchronized void addCoupon(Integer userId, Double money, Integer companyId, Integer paymentRecordId, Integer language) throws Exception{ |
| | | List<Map<String, Object>> query = userActivityBalanceService.query(money, companyId); |
| | | List<Map<String, Object>> query = userActivityBalanceService.query(language, money, companyId); |
| | | List<UserCouponRecord> list = new ArrayList<>(); |
| | | for(Map<String, Object> map : query){ |
| | | //添加通用优惠券 |
| | |
| | | */ |
| | | private synchronized void addCoupon(UserInfo userInfo, Integer language) throws Exception{ |
| | | //添加优惠券 |
| | | List<Map<String, Object>> list = userActivityRegisteredService.query(userInfo.getCompanyId()); |
| | | List<Map<String, Object>> list = userActivityRegisteredService.query(language, userInfo.getCompanyId()); |
| | | int num = 0; |
| | | for(Map<String, Object> map : list){ |
| | | if(null != map){ |
| | |
| | | public ResultUtil withdrawal(Double money, Integer uid, String remark, Integer language) throws Exception { |
| | | language = userInfoService.queryLanguage(uid, language); |
| | | if(money.compareTo(0D) <= 0){ |
| | | return ResultUtil.error(language == 1 ? "提现金额必须大于0" : language == 2 ? "Withdrawal amount must be greater than 0" : "Le montant du retrait doit être supérieur à 0"); |
| | | return ResultUtil.error(language == 1 ? "提现金额必须大于0" : language == 2 ? "Withdrawal amount must be greater than zero." : "Le montant du retrait doit être supérieur à zéro."); |
| | | } |
| | | UserInfo userInfo = userInfoService.selectById(uid); |
| | | if(null == userInfo.getBalance()){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | if(userInfo.getBalance().compareTo(money) < 0){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | |
| | | Withdrawal withdrawal = new Withdrawal(); |
| | |
| | | map.put("endTime", end); |
| | | return map; |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 多语言时间日期格式转换 |
| | | * @param language 语言编号 |
| | | * @param datetime 标准格式化时间 yyyy-MM-dd |
| | | * @return |
| | | */ |
| | | public static String conversionFormat(Integer language, String datetime){ |
| | | String time = ""; |
| | | String date = datetime; |
| | | int index = datetime.indexOf(" "); |
| | | if(index != -1){ |
| | | time = datetime.substring(datetime.indexOf(" ") + 1); |
| | | date = datetime.substring(0, datetime.indexOf(" ")); |
| | | } |
| | | String[] split = date.split("-"); |
| | | switch (language){ |
| | | case 2: |
| | | split[1] = englishMonth(Integer.valueOf(split[1])); |
| | | datetime = split[1] + " " + split[2] + ", " + split[0]; |
| | | if(index != -1){ |
| | | datetime += " " + time; |
| | | } |
| | | break; |
| | | case 3: |
| | | split[1] = frenchMonth(Integer.valueOf(split[1])); |
| | | datetime = split[2] + " " + split[1] + " " + split[0]; |
| | | if(index != -1){ |
| | | datetime += " " + time; |
| | | } |
| | | break; |
| | | } |
| | | return datetime; |
| | | } |
| | | |
| | | |
| | | public static String conversionFormat1(Integer language, String datetime){ |
| | | String time = ""; |
| | | String date = datetime; |
| | | int index = datetime.indexOf(" "); |
| | | if(index != -1){ |
| | | time = datetime.substring(datetime.indexOf(" ") + 1); |
| | | date = datetime.substring(0, datetime.indexOf(" ")); |
| | | } |
| | | String[] split = date.split("-"); |
| | | switch (language){ |
| | | case 2: |
| | | split[1] = englishMonth(Integer.valueOf(split[0])); |
| | | datetime = split[0] + " " + split[1]; |
| | | if(index != -1){ |
| | | datetime += " " + time; |
| | | } |
| | | break; |
| | | case 3: |
| | | split[1] = frenchMonth(Integer.valueOf(split[0])); |
| | | datetime = split[1] + " " + split[0]; |
| | | if(index != -1){ |
| | | datetime += " " + time; |
| | | } |
| | | break; |
| | | } |
| | | return datetime; |
| | | } |
| | | |
| | | |
| | | |
| | | public static String frenchMonth(Integer month){ |
| | | String m = ""; |
| | | switch (month){ |
| | | case 1: |
| | | m = "Janvier"; |
| | | break; |
| | | case 2: |
| | | m = "Février"; |
| | | break; |
| | | case 3: |
| | | m = "Mars"; |
| | | break; |
| | | case 4: |
| | | m = "Avril"; |
| | | break; |
| | | case 5: |
| | | m = "Mai"; |
| | | break; |
| | | case 6: |
| | | m = "Juin"; |
| | | break; |
| | | case 7: |
| | | m = "Juillet"; |
| | | break; |
| | | case 8: |
| | | m = "Août"; |
| | | break; |
| | | case 9: |
| | | m = "Septembre"; |
| | | break; |
| | | case 10: |
| | | m = "Octobre"; |
| | | break; |
| | | case 11: |
| | | m = "Novembre"; |
| | | break; |
| | | case 12: |
| | | m = "Décembre"; |
| | | break; |
| | | default: |
| | | m = ""; |
| | | break; |
| | | } |
| | | return m; |
| | | } |
| | | |
| | | |
| | | |
| | | public static String englishMonth(Integer month){ |
| | | String m = ""; |
| | | switch (month){ |
| | | case 1: |
| | | m = "January"; |
| | | break; |
| | | case 2: |
| | | m = "February"; |
| | | break; |
| | | case 3: |
| | | m = "March"; |
| | | break; |
| | | case 4: |
| | | m = "April"; |
| | | break; |
| | | case 5: |
| | | m = "May"; |
| | | break; |
| | | case 6: |
| | | m = "June"; |
| | | break; |
| | | case 7: |
| | | m = "July"; |
| | | break; |
| | | case 8: |
| | | m = "August"; |
| | | break; |
| | | case 9: |
| | | m = "September"; |
| | | break; |
| | | case 10: |
| | | m = "October"; |
| | | break; |
| | | case 11: |
| | | m = "November"; |
| | | break; |
| | | case 12: |
| | | m = "December"; |
| | | break; |
| | | default: |
| | | m = ""; |
| | | break; |
| | | } |
| | | return m; |
| | | } |
| | | } |
| | |
| | | */ |
| | | public class TinggPayUtil { |
| | | |
| | | private static String accessKey = "KxjPP444jEE7K88E7juej4PKqqzKq7qKjKj84q744q9zj4Ej4zK47uj4KKj4"; |
| | | private static String accessKey = "8rc1gTV9n91Tc1Sy9oVWry99fgrgrVV8concf9onWooWSg9TVW8nSgo98g88"; |
| | | |
| | | private static String ivKey = "qsffKsCOJJdhSBCQ"; |
| | | private static String ivKey = "ABp0pqpHMteEJM2N"; |
| | | |
| | | private static String secretKey = "9jjz4Ex74P8ue4qK"; |
| | | private static String secretKey = "rf8Vo1n9yTSW98cg"; |
| | | |
| | | |
| | | /** |
| | |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); |
| | | String countryCode="GHA";//收取付款的国家的3位ISO代码 |
| | | String currencyCode = "GHS";//3位ISO代码的货币,商家正在开发票。 |
| | | String serviceCode="IGOGHANA";//服务代码 |
| | | String serviceCode="I-GO_TECHNOLOGIES_LI";//服务代码 |
| | | String dueDate = sdf.format(new Date(System.currentTimeMillis() + 1800000));//到期时间 |
| | | String languageCode="EN"; |
| | | String paymentOptionCode = "";//支付选项码 |
| | |
| | | |
| | | public static void main(String[] ages){ |
| | | CheckoutRequest checkoutRequest = new CheckoutRequest(); |
| | | checkoutRequest.setMsisdn(Long.valueOf("2030376339310")); |
| | | checkoutRequest.setMsisdn(Long.valueOf("233244915521")); |
| | | checkoutRequest.setCustomerEmail("393733352@qq.com"); |
| | | checkoutRequest.setAccountNumber("2030376339310"); |
| | | checkoutRequest.setCustomerFirstName("ZHONGSHI"); |
| | | checkoutRequest.setCustomerLastName("HUANG"); |
| | | checkoutRequest.setAccountNumber("233244915521"); |
| | | checkoutRequest.setCustomerFirstName("GOU"); |
| | | checkoutRequest.setCustomerLastName("XIONG"); |
| | | checkoutRequest.setRequestAmount(1.00D); |
| | | checkoutRequest.setMerchantTransactionId("00025"); |
| | | checkoutRequest.setMerchantTransactionId("00030"); |
| | | checkoutRequest.setRequestDescription("payment test"); |
| | | checkoutRequest.setCallbackUrl("https://10pz685243.zicp.fun/base/IGO/wxCancelUserBalance"); |
| | | checkoutRequest.setPendingRedirectUrl("https://www.baidu.com"); |
| | |
| | | select |
| | | id as orderId, |
| | | DATE_FORMAT(insertTime, '%Y-%m-%d %H:%i') as orderTime, |
| | | DATE_FORMAT(travelTime, '%m月%d日 %H:%i') as time, |
| | | DATE_FORMAT(travelTime, '%m-%d %H:%i') as time, |
| | | startAddress as startAddress, |
| | | endAddress as endAddress, |
| | | driverId as driverId, |
| | |
| | | a.type as type, |
| | | a.state as state, |
| | | DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime, |
| | | DATE_FORMAT(a.travelTime, '%m月%d日 %H:%i') as travelTime, |
| | | DATE_FORMAT(a.travelTime, '%m-%d %H:%i') as travelTime, |
| | | DATE_FORMAT(a.arriveTime, '%Y-%m-%d %H:%i:%s') as arriveTime, |
| | | a.startLon as startLon, |
| | | a.startLat as startLat, |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer uid) throws Exception; |
| | | List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryRedEnvelope(Integer uid) throws Exception; |
| | | List<Map<String, Object>> queryRedEnvelope(Integer language, Integer uid) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | * @return |
| | | * @throws Exception |
| | | */ |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, |
| | | List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, |
| | | Double endMoney, Integer uid) throws Exception; |
| | | |
| | | |
| | |
| | | * @param orderId |
| | | * @return |
| | | */ |
| | | Map<String, Object> queryOrderInfo(Integer orderId) throws Exception; |
| | | Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception; |
| | | |
| | | |
| | | /** |
| | |
| | | ResultUtil resultUtil = ResultUtil.success(""); |
| | | |
| | | if(null == orderTaxi){ |
| | | return ResultUtil.error((language == 1 ? "订单信息有误" : language == 2 ? "Incorrect order information" : "Informations de commande incorrectes"), ""); |
| | | return ResultUtil.error((language == 1 ? "订单信息有误" : language == 2 ? "Order-information error" : "Erreur d’information de commande"), ""); |
| | | } |
| | | if(orderTaxi.getState() != 12){ |
| | | return ResultUtil.error((language == 1 ? "订单取消失败" : language == 2 ? "Order cancellation failure" : "Annulation de commande échouée"), ""); |
| | | return ResultUtil.error((language == 1 ? "订单取消失败" : language == 2 ? "Failed to cancel order" : "Échec de l’annulation de la commande"), ""); |
| | | } |
| | | OrderCancel orderCancel = null; |
| | | if(null == cancleId){ |
| | |
| | | } |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() != null && userInfo.getBalance() < query.getMoney()){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(query.getMoney())).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryCoupon(Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryCoupon(Integer language, Integer orderId, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | OrderTaxi orderTaxi = this.selectById(orderId); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(uid, orderTaxi.getCompanyId(), 1, 2, orderTaxi.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(uid, orderTaxi.getCompanyId(), 1, 0, orderTaxi.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list = userCouponRecordService.queryCoupon(language, uid, orderTaxi.getCompanyId(), 1, 2, orderTaxi.getOrderMoney(), pageNum, size); |
| | | List<Map<String, Object>> list1 = userCouponRecordService.queryCoupon(language, uid, orderTaxi.getCompanyId(), 1, 0, orderTaxi.getOrderMoney(), pageNum, size); |
| | | list.addAll(list1); |
| | | return list; |
| | | } |
| | |
| | | } |
| | | if(payType == 3){//余额支付 |
| | | if(userInfo.getBalance() == null || userInfo.getBalance() < orderMoney){ |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient account balance" : "Solde de compte insuffisant"); |
| | | return ResultUtil.error(language == 1 ? "账户余额不足" : language == 2 ? "Insufficient balance" : "Solde insuffisant"); |
| | | } |
| | | |
| | | userInfo.setBalance(new BigDecimal(userInfo.getBalance()).subtract(new BigDecimal(orderMoney)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryMyOrderList(Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | public List<Map<String, Object>> queryMyOrderList(Integer language, Integer uid, Integer pageNum, Integer size) throws Exception { |
| | | pageNum = (pageNum - 1) * size; |
| | | List<Map<String, Object>> maps = orderTaxiMapper.queryMyOrderList(uid, pageNum, size); |
| | | for(Map<String, Object> map : maps){ |
| | | if(Integer.valueOf(String.valueOf(map.get("state"))) == 11){ |
| | | map.put("state", map.get("oldState")); |
| | | } |
| | | String orderTime = map.get("orderTime").toString(); |
| | | String time = map.get("time").toString(); |
| | | map.put("orderTime", DateUtil.conversionFormat(language, orderTime)); |
| | | map.put("time", DateUtil.conversionFormat1(language, time)); |
| | | } |
| | | return maps; |
| | | } |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer uid) throws Exception { |
| | | return orderTaxiMapper.queryMyTravelRecord(uid); |
| | | public List<Map<String, Object>> queryMyTravelRecord(Integer language, Integer uid) throws Exception { |
| | | List<Map<String, Object>> list = orderTaxiMapper.queryMyTravelRecord(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryRedEnvelope(Integer uid) throws Exception { |
| | | return orderTaxiMapper.queryRedEnvelope(uid); |
| | | public List<Map<String, Object>> queryRedEnvelope(Integer language, Integer uid) throws Exception { |
| | | List<Map<String, Object>> list = orderTaxiMapper.queryRedEnvelope(uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | * @throws Exception |
| | | */ |
| | | @Override |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer type, Date startTime, Date endTime, Double startMoney, |
| | | public List<Map<String, Object>> queryInvoiceOrder(Integer language, Integer type, Date startTime, Date endTime, Double startMoney, |
| | | Double endMoney, Integer uid) throws Exception { |
| | | startTime = dateUtil.getStartOrEndDate(startTime, "start"); |
| | | endTime = dateUtil.getStartOrEndDate(endTime, "end"); |
| | | return orderTaxiMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | List<Map<String, Object>> list = orderTaxiMapper.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid); |
| | | for (Map<String, Object> map : list) { |
| | | String time = map.get("time").toString(); |
| | | map.put("time", DateUtil.conversionFormat(language, time)); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | | |
| | |
| | | * @return |
| | | */ |
| | | @Override |
| | | public Map<String, Object> queryOrderInfo(Integer orderId) throws Exception{ |
| | | public Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception{ |
| | | Map<String, Object> map = orderTaxiMapper.queryOrderInfo(orderId); |
| | | if(null != map && null != map.get("reassignNotice") && Integer.valueOf(String.valueOf(map.get("reassignNotice"))) == 2){//改派完成,重新获取了新的司机数据,开始修改数据防止继续调用 |
| | | OrderTaxi orderTaxi = this.selectById(orderId); |
| | |
| | | String driverId = redisUtil.getValue("DEVICE_" + map.get("driverId")); |
| | | map.put("device", ToolUtil.isNotEmpty(driverId) ? 2 : 1); |
| | | map.put("orderType", 2); |
| | | |
| | | String insertTime = map.get("insertTime").toString(); |
| | | map.put("insertTime", DateUtil.conversionFormat(language, insertTime)); |
| | | String travelTime = map.get("travelTime").toString(); |
| | | map.put("travelTime", DateUtil.conversionFormat1(language, travelTime)); |
| | | String arriveTime = map.get("arriveTime").toString(); |
| | | map.put("arriveTime", DateUtil.conversionFormat(language, arriveTime)); |
| | | return map; |
| | | } |
| | | |