wrj 9 сар өмнө
parent
commit
b4107e865e

+ 0 - 1
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/TCommentController.java

@@ -18,7 +18,6 @@ import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
-import java.time.LocalDateTime;
 import java.util.List;
 
 

+ 22 - 0
nightFragrance-admin/src/main/java/com/ylx/web/controller/massage/TOrderController.java

@@ -22,8 +22,10 @@ import org.springframework.web.bind.annotation.RestController;
 
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.time.LocalDateTime;
 import java.util.List;
+import java.util.Optional;
 
 /**
  * 订单表 前端控制器
@@ -152,6 +154,23 @@ public class TOrderController {
         }
     }
 
+    @Log(title = "出发", businessType = BusinessType.UPDATE)
+    @ApiOperation("出发")
+    @RequestMapping(value = "wx/depart", method = RequestMethod.POST)
+    public R depart(@RequestBody TOrder order) {
+        try {
+            orderService.depart(order);
+            return R.ok();
+        } catch (ServiceException s) {
+            log.error(s.toString());
+            return R.fail(s.getMessage());
+        } catch (Exception e) {
+            StackTraceElement stackTraceElement= e.getStackTrace()[0];
+            log.error("系统出错,错误信息:"+ e +" at "+stackTraceElement.getClassName()+"."+stackTraceElement.getMethodName()+":"+stackTraceElement.getLineNumber());
+            return R.fail("系统异常");
+        }
+    }
+
     @Log(title = "到达订单位置", businessType = BusinessType.UPDATE)
     @ApiOperation("到达订单位置")
     @RequestMapping(value = "wx/reach", method = RequestMethod.POST)
@@ -161,6 +180,9 @@ public class TOrderController {
             wrapper.eq(TOrder::getcId,order.getcId()).eq(TOrder::getnStatus,OrderStatusEnum.RECEIVED_ORDER.getCode());
             order.setnStatus(OrderStatusEnum.ARRIVED.getCode());
             order.setReachTime(LocalDateTime.now());
+            order.setArrivalLatitude(Optional.ofNullable(order.getArrivalLatitude()).orElse(BigDecimal.ZERO));
+            order.setArrivalLongitude(Optional.ofNullable(order.getArrivalLongitude()).orElse(BigDecimal.ZERO));
+            order.setArrivalPhoto(Optional.ofNullable(order.getArrivalPhoto()).orElse(StringUtils.EMPTY));
             return R.ok(orderService.update(order,wrapper));
         } catch (ServiceException s) {
             log.error(s.toString());

+ 83 - 2
nightFragrance-massage/src/main/java/com/ylx/massage/domain/TOrder.java

@@ -10,10 +10,10 @@ import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.*;
 import lombok.experimental.Accessors;
-
 import java.io.Serializable;
 import java.math.BigDecimal;
 import java.time.LocalDateTime;
+import java.util.Date;
 
 /**
  * <p>
@@ -91,6 +91,27 @@ public class TOrder implements Serializable {
     //纬度
     @ApiModelProperty("纬度")
     private Double latitude;
+
+    //经度
+    @ApiModelProperty("出发经度")
+    private BigDecimal departLongitude;
+    //纬度
+    @ApiModelProperty("出发纬度")
+    private BigDecimal departLatitude;
+
+    //经度
+    @ApiModelProperty("到达经度")
+    private BigDecimal arrivalLongitude;
+    //纬度
+    @ApiModelProperty("到达纬度")
+    private BigDecimal arrivalLatitude;
+
+    @ApiModelProperty("到达照片")
+    private String arrivalPhoto;
+
+    @ApiModelProperty("出发时间")
+    private Date departTime;
+
     //详细地址
     @ApiModelProperty("详细地址")
     private String address;
@@ -145,7 +166,7 @@ public class TOrder implements Serializable {
      * 订单状态	订单状态 待接单 0 已接单 1 已到达 2 服务中 3 待评价(已完成) 4 待付款 -1 已取消 -2 已拒绝 -3 已完成(已评价)5
      */
     @TableField("n_status")
-    @ApiModelProperty("订单状态 待接单 0 已接单 1 已到达 2 服务中 3 待评价(已完成4 待付款 -1 已取消 -2 已拒绝 -3 已完成(已评价)5")
+    @ApiModelProperty("订单状态 待接单0  已接单1  已到达2  服务中3  待评价(已完成4  待付款-1  已取消-2  已拒绝-3  已完成(已评价)5   已出发6")
     private Integer nStatus;
 
     /**
@@ -240,6 +261,66 @@ public class TOrder implements Serializable {
         return cOpenId;
     }
 
+    public void setDepartLongitude(BigDecimal departLongitude)
+    {
+        this.departLongitude = departLongitude;
+    }
+
+    public BigDecimal getDepartLongitude()
+    {
+        return departLongitude;
+    }
+
+    public void setArrivalLongitude(BigDecimal arrivalLongitude)
+    {
+        this.arrivalLongitude = arrivalLongitude;
+    }
+
+    public BigDecimal getArrivalLongitude()
+    {
+        return arrivalLongitude;
+    }
+
+    public void setArrivalPhoto(String arrivalPhoto)
+    {
+        this.arrivalPhoto = arrivalPhoto;
+    }
+
+    public String getArrivalPhoto()
+    {
+        return arrivalPhoto;
+    }
+
+    public void setDepartTime(Date departTime)
+    {
+        this.departTime = departTime;
+    }
+
+    public Date getDepartTime()
+    {
+        return departTime;
+    }
+
+    public void setDepartLatitude(BigDecimal departLatitude)
+    {
+        this.departLatitude = departLatitude;
+    }
+
+    public BigDecimal getDepartLatitude()
+    {
+        return departLatitude;
+    }
+
+    public void setArrivalLatitude(BigDecimal arrivalLatitude)
+    {
+        this.arrivalLatitude = arrivalLatitude;
+    }
+
+    public BigDecimal getArrivalLatitude()
+    {
+        return arrivalLatitude;
+    }
+
     public void setcOpenId(String cOpenId) {
         this.cOpenId = cOpenId;
     }

+ 1 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/enums/OrderStatusEnum.java

@@ -20,6 +20,7 @@ public enum OrderStatusEnum {
     //进行中(待接单,已接单,已到达,服务中)
     WAIT_JD(0, "待接单"),
     RECEIVED_ORDER(1, "已接单"),
+    DEPART(6, "已出发"),
     ARRIVED(2, "已到达"),
     SERVICE(3, "服务中"),
     WAIT_EVALUATE(4, "待评价"),

+ 2 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/TOrderService.java

@@ -55,4 +55,6 @@ public interface TOrderService extends IService<TOrder> {
     void payNotifyOrder(String outTradeNo);
 
     Object updateAddressById(TOrder borrow);
+
+    Object depart(TOrder order);
 }

+ 14 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TOrderServiceImpl.java

@@ -243,6 +243,20 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
         return order;
     }
 
+    @Override
+    public Object depart(TOrder order) {
+
+        LambdaQueryWrapper<TOrder> wrapper = new LambdaQueryWrapper<>();
+
+        wrapper.eq(TOrder::getcId,order.getcId()).eq(TOrder::getnStatus,OrderStatusEnum.RECEIVED_ORDER.getCode());
+        order.setnStatus(OrderStatusEnum.DEPART.getCode());
+        order.setReachTime(LocalDateTime.now());
+        order.setDepartTime(new Date());
+        order.setDepartLatitude(Optional.ofNullable(order.getDepartLatitude()).orElse(BigDecimal.ZERO));
+        order.setDepartLongitude(Optional.ofNullable(order.getDepartLongitude()).orElse(BigDecimal.ZERO));
+        return this.update(order,wrapper);
+    }
+
 
     /**
      * 支付订单

+ 6 - 0
nightFragrance-massage/src/main/resources/mapper/massage/TOrderMapper.xml

@@ -29,6 +29,12 @@
         <result column="address" property="address"/>
         <result column="longitude" property="longitude"/>
         <result column="latitude" property="latitude"/>
+        <result column="arrival_longitude" property="arrivalLongitude"/>
+        <result column="arrival_latitude" property="arrivalLatitude"/>
+        <result column="depart_longitude" property="departLongitude"/>
+        <result column="depart_latitude" property="departLatitude"/>
+        <result column="arrival_photo" property="arrivalPhoto"/>
+        <result column="depart_time" property="departTime"/>
         <result column="c_tj_open_id" property="cTjOpenId"/>
         <result column="dt_create_time" property="dtCreateTime"/>
         <result column="acceptance_time" property="acceptanceTime"/>