From 8d7dbd6d2c0775d45043474c1525ad827b4cd3bd Mon Sep 17 00:00:00 2001 From: liujie <liujie> Date: 星期四, 31 八月 2023 11:59:55 +0800 Subject: [PATCH] 用户端代码 49码头 --- src/main/java/com/stylefeng/guns/modular/system/controller/OrderController.java | 128 ++++++++++++++++++++++++++++++++++++------ 1 files changed, 108 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/stylefeng/guns/modular/system/controller/OrderController.java b/src/main/java/com/stylefeng/guns/modular/system/controller/OrderController.java index c72b4de..18330db 100644 --- a/src/main/java/com/stylefeng/guns/modular/system/controller/OrderController.java +++ b/src/main/java/com/stylefeng/guns/modular/system/controller/OrderController.java @@ -3,10 +3,13 @@ import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.plugins.Page; +import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.enums.FacilityCodeEnum; import com.stylefeng.guns.modular.system.model.*; import com.stylefeng.guns.modular.system.service.*; -import com.stylefeng.guns.modular.system.utils.TerminalInterfaceAcquisitionUtil; +import com.stylefeng.guns.modular.system.utils.PortUtil.FortyNineUtil; +import com.stylefeng.guns.modular.system.utils.PortUtil.SCACEnum; +import com.stylefeng.guns.modular.system.utils.PortUtil.TerminalInterfaceAcquisitionUtil; import com.stylefeng.guns.modular.system.utils.tips.ErrorTip; import com.stylefeng.guns.modular.system.utils.tips.SuccessTip; import com.stylefeng.guns.modular.system.warpper.TerminaleDataWarpper; @@ -24,10 +27,7 @@ import java.math.BigDecimal; import java.net.FileNameMap; import java.net.URLConnection; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Objects; +import java.util.*; @Controller @Api(tags = "订单") @@ -259,10 +259,21 @@ @GetMapping(value = "/getOrderInfo") @ResponseBody public Object getOrderInfo( Long orderId) { - OrderInfo orderInfo = orderService.getOrderInfo(orderId); + HashMap<String, Object> orderInfo = orderService.getOrderInfo(orderId); return new SuccessTip(orderInfo); } - + @ApiOperation(value = "根据zipcode获取用户地址",notes="根据zipcode获取用户地址") + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(name = "zipcode", value = "zipcode", required = true, dataType = "String"), + @ApiImplicitParam(name = "id", value = "id", required = true, dataType = "Integer"), + }) + @GetMapping(value = "/getAddressByCode") + @ResponseBody + public Object getAddressByCode( String zipcode,Integer id) { + List<TUserAddress> addresses = addressService.selectList(new EntityWrapper<TUserAddress>().eq("user_id", id).eq("zip_code", zipcode).eq("remove",0)); + return new SuccessTip(addresses); + } @ApiOperation(value = "订单详情--修改reference numbers",notes="订单详情--修改reference numbers") @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), @@ -291,6 +302,7 @@ ArrayList<OrderDriverInfo> orderDriverInfos = new ArrayList<>(); ArrayList<Integer> driverIds = new ArrayList<>(); TOrder tOrder = orderService.selectById(orderId); + TPort tPort = portService.selectById(tOrder.getPort()); // 第一个开始司机id Integer sDriverid = tOrder.getsDriverid(); if(sDriverid!=null){ @@ -309,18 +321,61 @@ if(driverIdOne!=null){ driverIds.add(driverIdOne); } - List<TTransportation> tTransportations = tTransportationService.selectList(new EntityWrapper<TTransportation>().eq("order_id", orderId).in("driver_id", driverIds)); - TerminaleDataWarpper terminalStatus = TerminalInterfaceAcquisitionUtil.getTerminalStatus("WFHU5080179", FacilityCodeEnum.USLAX.getMsg()); + TGoods tGoods = goodsService.selectOne(new EntityWrapper<TGoods>().eq("order_id", tOrder.getId())); + List<TTransportation> tTransportations = tTransportationService.selectList(new EntityWrapper<TTransportation>().eq("order_id", orderId).in("driver_id", driverIds).orderBy("type")); + TerminaleDataWarpper terminalStatus=new TerminaleDataWarpper(); + try { + if("LBCT".equals(tPort.getName()) || "APM".equals(tPort.getName())){ + terminalStatus = TerminalInterfaceAcquisitionUtil.getTerminalStatus(tPort.getName(),tGoods.getContainerNumber(), FacilityCodeEnum.USLAX.getMsg()); + }else { + // 去查是否存了containerid + if(ToolUtil.isNotEmpty(tGoods.getShipmentId()) && !"0".equals(tGoods.getShipmentId())){ + terminalStatus = FortyNineUtil.getContainerNo(tGoods.getShipmentId(), tGoods.getContainerNumber()); + }else { + + String shippingLine = tGoods.getShippingLine(); + SCACEnum scacEnum = SCACEnum.fromCode(shippingLine); + String s; + if(ToolUtil.isEmpty(tGoods.getTrackingId()) || "0".equals(tGoods.getTrackingId())){ + s = FortyNineUtil.trackingRequest(tGoods.getBillNumber(), scacEnum.getDesc()); + if(ToolUtil.isEmpty(s)){ + s = FortyNineUtil.trackingList(tGoods.getBillNumber()); + } + tGoods.setTrackingId(s); + goodsService.updateById(tGoods); + }else { + s = tGoods.getTrackingId(); + } + String shipmentId = FortyNineUtil.getShipmentId(s); + if(ToolUtil.isNotEmpty(shipmentId)){ + tGoods.setShipmentId(shipmentId); + goodsService.updateById(tGoods); + }else { + tGoods.setShipmentId("0"); + tGoods.setTrackingId("0"); + goodsService.updateById(tGoods); + } + terminalStatus = FortyNineUtil.getContainerNo(shipmentId, tGoods.getContainerNumber()); + } + } + }catch (Exception e){ + e.printStackTrace(); + terminalStatus =new TerminaleDataWarpper(); + } for (TTransportation tDriver : tTransportations) { OrderDriverInfo orderDriverInfo = new OrderDriverInfo(); orderDriverInfo.setId(tDriver.getId()); - if(tDriver.getId().equals(sDriverIdOne)&&tDriver.getType()==2){ + orderDriverInfo.setDriverId(tDriver.getDriverId()); + if(tDriver.getDriverId().equals(sDriverIdOne)&&tDriver.getType()==1){ orderDriverInfo.setPickUp(tDriver.getPickDate()); } - if(tDriver.getId().equals(driverid) &&tDriver.getType()==3){ + if(tDriver.getDriverId().equals(sDriverIdOne)&&tDriver.getType()==2){ + orderDriverInfo.setPickUp(tDriver.getPickDate()); + } + if(tDriver.getDriverId().equals(driverid) &&tDriver.getType()==3){ orderDriverInfo.setEmptyDate(tDriver.getEmptyDate()); } - if(tDriver.getId().equals(driverIdOne) &&tDriver.getType()==4){ + if(tDriver.getDriverId().equals(driverIdOne) &&tDriver.getType()==4){ orderDriverInfo.setReturnDate(tDriver.getReturnDate()); } orderDriverInfo.setContactEmail(tDriver.getEmail()); @@ -346,6 +401,7 @@ transportInfo.setCTF(terminalStatus.getCtf()); transportInfo.setClosedArea(terminalStatus.getClosedArea()); transportInfo.setLFD(terminalStatus.getLfd()); + transportInfo.setAvailable(terminalStatus.getAvailability()); transportInfo.setList(orderDriverInfos); Integer examSite = tOrder.getExamSite(); @@ -359,6 +415,23 @@ } return new SuccessTip(transportInfo); } + + + @ApiOperation(value = "获取订单司机位置",notes="获取订单司机位置") + @ApiImplicitParams({ + @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), + @ApiImplicitParam(name = "orderId", value = "orderId", required = true, dataType = "Long"), + @ApiImplicitParam(name = "lon", value = "lon", required = true, dataType = "String"), + @ApiImplicitParam(name = "lat", value = "lat", required = true, dataType = "String"), + }) + @GetMapping(value = "/getLonLat") + @ResponseBody + public Object getLonLat(Long orderId){ + // 通过司机id获取订单 + List<Map<String,Object>> orders = orderService.getLonLat(orderId); + return new SuccessTip(orders); + } + @ApiOperation(value = "获取费用明细",notes="获取费用明细") @ApiImplicitParams({ @@ -498,7 +571,6 @@ return new ErrorTip(500,"ERROR"); } - @ApiOperation(value = "卡车公司--修改安排司机(单个)",notes="卡车公司--修改安排司机(单个)") @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), @@ -512,18 +584,19 @@ // 找出这个订单 TOrder tOrder = orderService.selectById(orderId); TTransportation list = companySelectDriverSingleDto.getList(); - Integer type = companySelectDriverSingleDto.getType(); + list.setOrderId(companySelectDriverSingleDto.getOrderId()); + Integer type = companySelectDriverSingleDto.getList().getType(); if(type==1){ - tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.getsDriverid())); + tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.getsDriverid()).eq("type",1)); tOrder.setsDriverid(list.getDriverId()); }else if(type==2){ - tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.getsDriverIdOne())); + tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.getsDriverIdOne()).eq("type",2)); tOrder.setsDriverIdOne(list.getDriverId()); }else if(type==3){ - tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.geteDriverid())); + tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.geteDriverid()).eq("type",3)); tOrder.seteDriverid(list.getDriverId()); }else { - tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.geteDriverIdOne())); + tTransportationService.delete(new EntityWrapper<TTransportation>().eq("order_id",orderId).eq("driver_id",tOrder.geteDriverIdOne()).eq("type",4)); tOrder.seteDriverIdOne(list.getDriverId()); } tTransportationService.insert(list); @@ -536,7 +609,6 @@ } return new ErrorTip(500,"ERROR"); } - @Resource private TYardService yardService; @@ -638,6 +710,9 @@ return new SuccessTip(page); } + + + @ApiOperation(value = "获取订单文件",notes="获取订单文件") @ApiImplicitParams({ @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9....."), @@ -662,7 +737,20 @@ } record.setType(type); } - orderFilePage.setRecords(records); + TOrder tOrder = orderService.selectById(orderId); + if("9".equals(tOrder.getStatus()) || "18".equals(tOrder.getStatus())){ + ArrayList<TOrderFile> tOrderFiles = new ArrayList<>(); + TOrderFile tOrderFile = new TOrderFile(); + tOrderFile.setName("Bill of lading.pdf"); + tOrderFile.setId(0); + tOrderFile.setType("file"); + tOrderFiles.add(tOrderFile); + tOrderFiles.addAll(records); + orderFilePage.setRecords(tOrderFiles); + }else { + + orderFilePage.setRecords(records); + } return new SuccessTip(orderFilePage); } -- Gitblit v1.7.1