Parcourir la source

fix:1增加支付截至时间2.公众号订单列表返回剩余支付时间。

wrj il y a 1 an
Parent
commit
7d1c31c000

+ 9 - 3
nightFragrance-massage/src/main/java/com/ylx/massage/domain/TAddress.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableLogic;
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
 
 import java.io.Serializable;
 import java.util.Date;
@@ -18,6 +19,7 @@ import java.util.Date;
  */
 @SuppressWarnings("serial")
 @ApiModel(value = "TAddress", description = "地址管理")
+@Data
 public class TAddress extends Model<TAddress> {
     //主键
     @ApiModelProperty("主键")
@@ -40,12 +42,16 @@ public class TAddress extends Model<TAddress> {
     //纬度
     @ApiModelProperty("纬度")
     private Double latitude;
-    //地址类型1:默认地址
-    @ApiModelProperty("地址类型1:默认地址")
-    private Integer type;
     //详细地址
     @ApiModelProperty("详细地址")
     private String address;
+
+    @ApiModelProperty("地址name")
+    private String name;
+
+    //地址类型1:默认地址
+    @ApiModelProperty("地址类型1:默认地址")
+    private Integer type;
     //创建时间
     @ApiModelProperty("创建时间")
     private Date createTime;

+ 8 - 0
nightFragrance-massage/src/main/java/com/ylx/massage/domain/TJs.java

@@ -228,6 +228,14 @@ public class TJs implements Serializable {
     @ApiModelProperty("创建时间")
     private LocalDateTime dtCreateTime;
 
+    @TableField("name")
+    @ApiModelProperty("地址详细")
+    private String name;
+
+    @TableField("address")
+    @ApiModelProperty("创建时间")
+    private String address;
+
     @ApiModelProperty("是否删除0否1是")
     @TableLogic
     private Integer isDelete;

+ 18 - 1
nightFragrance-massage/src/main/java/com/ylx/massage/domain/TOrder.java

@@ -85,6 +85,19 @@ public class TOrder implements Serializable {
     @ApiModelProperty("用户openid")
     private String cOpenId;
 
+    //经度
+    @ApiModelProperty("经度")
+    private Double longitude;
+    //纬度
+    @ApiModelProperty("纬度")
+    private Double latitude;
+    //详细地址
+    @ApiModelProperty("详细地址")
+    private String address;
+
+    @ApiModelProperty("地址name")
+    private String name;
+
     /**
      * 领取优惠卷id
      */
@@ -155,7 +168,7 @@ public class TOrder implements Serializable {
      * 时间
      */
     @TableField("c_time")
-    @ApiModelProperty("时间")
+    @ApiModelProperty("支付截止时间")
     private String cTime;
 
     /**
@@ -180,6 +193,10 @@ public class TOrder implements Serializable {
     @ApiModelProperty("技师信息")
     private TJs js;
 
+    @TableField(exist = false)
+    @ApiModelProperty("剩余支付时间(秒)")
+    private Long remainingTime;
+
     @TableField(exist = false)
     @ApiModelProperty("用户信息")
     private TWxUser wxUser;

+ 11 - 11
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TJsServiceImpl.java

@@ -79,14 +79,14 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
         if (StringUtils.isBlank(js.getcPhone())) {
             throw new ServiceException("手机号不能为空");
         }
-        if (StringUtils.isBlank(js.getcAddress())) {
+        if (StringUtils.isBlank(js.getName())) {
             throw new ServiceException("地址不能为空");
         }
-        log.info("js:{}", js);
-        JSONObject jsonObject = new JSONObject(js.getcAddress());
-        Object latitude = jsonObject.get("latitude");
-        Object longitude = jsonObject.get("longitude");
-        locationUtil.geoAdd(js.getcOpenId(), Double.parseDouble(longitude.toString()), Double.parseDouble(latitude.toString()));
+//        log.info("js:{}", js);
+//        JSONObject jsonObject = new JSONObject(js.getcAddress());
+//        Object latitude = jsonObject.get("latitude");
+//        Object longitude = jsonObject.get("longitude");
+        locationUtil.geoAdd(js.getcOpenId(), Double.parseDouble(js.getLongitude().toString()), Double.parseDouble(js.getLatitude().toString()));
     }
 
 
@@ -118,13 +118,13 @@ public class TJsServiceImpl extends ServiceImpl<TJsMapper, TJs> implements TJsSe
         if (StringUtils.isBlank(js.getcOpenId())) {
             throw new ServiceException("技师OpenID不能为空");
         }
-        if (StringUtils.isBlank(js.getcAddress())) {
+        if (StringUtils.isBlank(js.getName())) {
             throw new ServiceException("地址不能为空");
         }
-        JSONObject jsonObject = new JSONObject(js.getcAddress());
-        Object latitude = jsonObject.get("latitude");
-        Object longitude = jsonObject.get("longitude");
-        locationUtil.geoAdd(js.getcOpenId(), Double.parseDouble(longitude.toString()), Double.parseDouble(latitude.toString()));
+//        JSONObject jsonObject = new JSONObject(js.getcAddress());
+//        Object latitude = jsonObject.get("latitude");
+//        Object longitude = jsonObject.get("longitude");
+        locationUtil.geoAdd(js.getcOpenId(), Double.parseDouble(js.getLongitude().toString()), Double.parseDouble(js.getLatitude().toString()));
         LambdaQueryWrapper<TJs> objectLambdaQueryWrapper = new LambdaQueryWrapper<>();
         objectLambdaQueryWrapper.eq(TJs::getcOpenId, js.getcOpenId());
         return this.update(js, objectLambdaQueryWrapper);

+ 11 - 1
nightFragrance-massage/src/main/java/com/ylx/massage/service/impl/TOrderServiceImpl.java

@@ -160,7 +160,8 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
         order.setOrderNo(generator.generateNextOrderNumber(OrderNumberGenerator.KEY_PREFIX_ORDER));
         order.setnStatus(OrderStatusEnum.WAIT_PAY.getCode());
         order.setDtCreateTime(LocalDateTime.now());
-
+        Date date = DateTimeUtils.addMinute(new Date(), 10);
+        order.setcTime(DateTimeUtils.formatDate(date, "yyyy-MM-dd HH:mm:ss"));
         save(order);
         return order;
     }
@@ -514,6 +515,15 @@ public class TOrderServiceImpl extends ServiceImpl<TOrderMapper, TOrder> impleme
             ArrayList<TOrder> orders = Lists.newArrayList();
             orderPage.getRecords().forEach(order -> {
                 order.setStatusName(OrderStatusEnum.getDescByCode(order.getnStatus()));
+                if(StringUtils.isEmpty(order.getcTime())){
+                    order.setRemainingTime(0L);
+                }
+                if(StringUtils.isNotBlank(order.getcTime()) && DateTimeUtils.dateStringToStamp(order.getcTime()) > DateTimeUtils.dateToStamp(new Date())){
+                    order.setRemainingTime((DateTimeUtils.dateStringToStamp(order.getcTime()) - DateTimeUtils.dateToStamp(new Date()))/1000);
+                }
+                if(StringUtils.isNotBlank(order.getcTime()) && DateTimeUtils.dateStringToStamp(order.getcTime()) < DateTimeUtils.dateToStamp(new Date())){
+                    order.setRemainingTime(0L);
+                }
                 orders.add(order);
             });
             orderPage.setRecords(orders);

+ 1 - 1
nightFragrance-massage/src/main/java/com/ylx/massage/task/massageTask.java

@@ -46,7 +46,7 @@ public class massageTask {
         LambdaQueryWrapper<TOrder> objectLambdaQueryWrapper = new LambdaQueryWrapper<>();
         objectLambdaQueryWrapper.eq(TOrder::getnStatus, OrderStatusEnum.WAIT_PAY.getCode()).
                 le(TOrder::getDtCreateTime, nowDate).
-                orderByAsc(TOrder::getcTime);
+                orderByAsc(TOrder::getDtCreateTime);
 
         Page<TOrder> page = new Page<>();
         page.setSize(MassageConstants.TWO_HUNDRED);

+ 2 - 0
nightFragrance-massage/src/main/resources/mapper/massage/TJsMapper.xml

@@ -33,6 +33,8 @@
         <result column="n_b1" property="nB1"/>
         <result column="n_b2" property="nB2"/>
         <result column="n_b3" property="nB3"/>
+        <result column="name" property="name"/>
+        <result column="address" property="address"/>
         <result column="dt_create_time" property="dtCreateTime"/>
         <result column="nNumber" property="number"/>
 

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

@@ -25,6 +25,10 @@
         <result column="c_phone" property="cPhone"/>
         <result column="c_note" property="cNote"/>
         <result column="c_time" property="cTime"/>
+        <result column="name" property="name"/>
+        <result column="address" property="address"/>
+        <result column="longitude" property="longitude"/>
+        <result column="latitude" property="latitude"/>
         <result column="c_tj_open_id" property="cTjOpenId"/>
         <result column="dt_create_time" property="dtCreateTime"/>
         <association property="js" javaType="com.ylx.massage.domain.TJs">
@@ -76,6 +80,10 @@
                t_order.c_phone,
                t_order.c_note,
                t_order.c_time,
+               t_order.name,
+               t_order.latitude,
+               t_order.longitude,
+               t_order.address,
                t_order.c_tj_open_id,
                t_order.dt_create_time,
                t_js.c_open_id        as jsc_open_id,