记得上下班打卡 | git大法好,push需谨慎

Commit 16b61116 authored by 胡佳晨's avatar 胡佳晨

提交商铺订单列表 订单详情 [未测试]

parent 28872b8d
package com.liquidnet.service.goblin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@ApiModel
@Data
public class GoblinStoreOrderListSkuVo implements Cloneable {
@ApiModelProperty(value = "skuId")
private String orderSkuId;
@ApiModelProperty(value = "skuId")
private String skuId;
@ApiModelProperty(value = "sku名称")
private String skuName;
@ApiModelProperty(value = "款式")
private String skuSpecs;
@ApiModelProperty(value = "图片")
private String skuImage;
@ApiModelProperty(value = " 数量")
private Integer num;
@ApiModelProperty(value = " 价格")
private BigDecimal skuPriceActual;
//todo 胡佳晨 缺券相关 活动相关
private static final GoblinStoreOrderListSkuVo obj = new GoblinStoreOrderListSkuVo();
public static GoblinStoreOrderListSkuVo getNew() {
try {
return (GoblinStoreOrderListSkuVo) obj.clone();
} catch (CloneNotSupportedException e) {
return new GoblinStoreOrderListSkuVo();
}
}
}
...@@ -8,6 +8,7 @@ import lombok.Data; ...@@ -8,6 +8,7 @@ import lombok.Data;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List;
@ApiModel @ApiModel
@Data @Data
...@@ -17,7 +18,8 @@ public class GoblinStoreOrderListVo implements Cloneable { ...@@ -17,7 +18,8 @@ public class GoblinStoreOrderListVo implements Cloneable {
@ApiModelProperty(value = "订单号") @ApiModelProperty(value = "订单号")
private String orderCode; private String orderCode;
@ApiModelProperty(value = "下单时间") @ApiModelProperty(value = "下单时间")
private String createdAt; @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime createdAt;
@ApiModelProperty(value = "下单方式") @ApiModelProperty(value = "下单方式")
private String payType; private String payType;
@ApiModelProperty(value = " 收货人姓名") @ApiModelProperty(value = " 收货人姓名")
...@@ -30,8 +32,19 @@ public class GoblinStoreOrderListVo implements Cloneable { ...@@ -30,8 +32,19 @@ public class GoblinStoreOrderListVo implements Cloneable {
private String expressAddress; private String expressAddress;
@ApiModelProperty(value = " 付款金额") @ApiModelProperty(value = " 付款金额")
private BigDecimal priceActual; private BigDecimal priceActual;
@ApiModelProperty(value = " 快递费")
private BigDecimal priceExpress;
@ApiModelProperty(value = " 订单状态") @ApiModelProperty(value = " 订单状态")
private Integer status; private Integer status;
@ApiModelProperty(value = " 付款时间")
@JsonFormat(shape = JsonFormat.Shape.STRING, pattern = DateUtil.DATE_FULL_STR)
private LocalDateTime payTime;
@ApiModelProperty(value = " 物流公司姓名")
private String logisticsCompany;
//todo 胡佳晨 缺发货时间
@ApiModelProperty(value = " sku相关")
private List<GoblinStoreOrderListSkuVo> storeOrderListSkuVoList;
private static final GoblinStoreOrderListVo obj = new GoblinStoreOrderListVo(); private static final GoblinStoreOrderListVo obj = new GoblinStoreOrderListVo();
......
...@@ -17,4 +17,7 @@ public interface IGoblinStoreOrderService { ...@@ -17,4 +17,7 @@ public interface IGoblinStoreOrderService {
String expressContacts, String expressContacts,
String phone, String phone,
Integer status); Integer status);
ResponseDto<GoblinStoreOrderListVo> orderDetails(String orderId);
} }
package com.liquidnet.service.goblin.controller.manage; package com.liquidnet.service.goblin.controller.manage;
import com.github.pagehelper.PageInfo;
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.github.xiaoymin.knife4j.annotations.ApiSupport; import com.github.xiaoymin.knife4j.annotations.ApiSupport;
import com.liquidnet.commons.lang.util.CurrentUtil; import com.liquidnet.commons.lang.util.CurrentUtil;
...@@ -7,6 +8,7 @@ import com.liquidnet.service.base.ResponseDto; ...@@ -7,6 +8,7 @@ import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinStoreMgtInfoVo; import com.liquidnet.service.goblin.dto.manage.vo.GoblinStoreMgtInfoVo;
import com.liquidnet.service.goblin.dto.manage.vo.GoblinStoreMgtThumbVo; import com.liquidnet.service.goblin.dto.manage.vo.GoblinStoreMgtThumbVo;
import com.liquidnet.service.goblin.dto.vo.GoblinStoreInfoVo; import com.liquidnet.service.goblin.dto.vo.GoblinStoreInfoVo;
import com.liquidnet.service.goblin.dto.vo.GoblinStoreOrderListVo;
import com.liquidnet.service.goblin.service.manage.IGoblinStoreOrderService; import com.liquidnet.service.goblin.service.manage.IGoblinStoreOrderService;
import com.liquidnet.service.goblin.util.GoblinRedisUtils; import com.liquidnet.service.goblin.util.GoblinRedisUtils;
import com.liquidnet.service.goblin.util.ObjectUtil; import com.liquidnet.service.goblin.util.ObjectUtil;
...@@ -50,15 +52,24 @@ public class GoblinStoreOrderController { ...@@ -50,15 +52,24 @@ public class GoblinStoreOrderController {
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "status", value = "订单状态[0-代付款|2-待发货|3-已发货|4-已完成]"), @ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "status", value = "订单状态[0-代付款|2-待发货|3-已发货|4-已完成]"),
}) })
@GetMapping(value = "list") @GetMapping(value = "list")
public ResponseDto<GoblinStoreMgtInfoVo> orderList(@RequestParam(value = "page", required = true) @Valid Integer page, public ResponseDto<PageInfo<GoblinStoreOrderListVo>> orderList(@RequestParam(value = "page", required = true) @Valid Integer page,
@RequestParam(value = "orderCode", required = false) @Valid String orderCode, @RequestParam(value = "orderCode", required = false) String orderCode,
@RequestParam(value = "type", required = false) @Valid Integer type, @RequestParam(value = "type", required = false) Integer type,
@RequestParam(value = "cst", required = false) @Valid String cst, @RequestParam(value = "cst", required = false) String cst,
@RequestParam(value = "cet", required = false) @Valid String cet, @RequestParam(value = "cet", required = false) String cet,
@RequestParam(value = "expressContacts", required = false) @Valid String expressContacts, @RequestParam(value = "expressContacts", required = false) String expressContacts,
@RequestParam(value = "phone", required = false) @Valid String phone, @RequestParam(value = "phone", required = false) String phone,
@RequestParam(value = "status", required = false) @Valid Integer status) { @RequestParam(value = "status", required = false) Integer status) {
return goblinStoreOrderService.orderList(page, orderCode, type, cst, cet, expressContacts, phone, status); return goblinStoreOrderService.orderList(page, orderCode, type, cst, cet, expressContacts, phone, status);
} }
@ApiOperation(value = "订单详情")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = false, dataType = "String", name = "orderId", value = "订单id"),
})
@GetMapping(value = "details")
public ResponseDto<GoblinStoreOrderListVo> orderList(@RequestParam(value = "orderId", required = true) @Valid String orderId) {
return goblinStoreOrderService.orderDetails(orderId);
}
} }
...@@ -40,7 +40,7 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService { ...@@ -40,7 +40,7 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService {
List<GoblinStoreOrderVo> voList = (List<GoblinStoreOrderVo>) map.get("data"); List<GoblinStoreOrderVo> voList = (List<GoblinStoreOrderVo>) map.get("data");
for (GoblinStoreOrderVo item : voList) { for (GoblinStoreOrderVo item : voList) {
GoblinStoreOrderListVo vo = GoblinStoreOrderListVo.getNew(); GoblinStoreOrderListVo vo = GoblinStoreOrderListVo.getNew();
vo.setCreatedAt(item.getCreatedAt().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); vo.setCreatedAt(item.getCreatedAt());
vo.setExpressAddressDetail(item.getOrderAttrVo().getExpressAddressDetail()); vo.setExpressAddressDetail(item.getOrderAttrVo().getExpressAddressDetail());
vo.setExpressContacts(item.getOrderAttrVo().getExpressContacts()); vo.setExpressContacts(item.getOrderAttrVo().getExpressContacts());
vo.setExpressPhone(item.getOrderAttrVo().getExpressPhone()); vo.setExpressPhone(item.getOrderAttrVo().getExpressPhone());
...@@ -50,12 +50,59 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService { ...@@ -50,12 +50,59 @@ public class GoblinStoreOrderServiceImpl implements IGoblinStoreOrderService {
vo.setPayType(item.getPayType()); vo.setPayType(item.getPayType());
vo.setPriceActual(item.getPriceActual()); vo.setPriceActual(item.getPriceActual());
vo.setStatus(item.getStatus()); vo.setStatus(item.getStatus());
List<GoblinStoreOrderListSkuVo> orderListSkuVos = ObjectUtil.getGoblinStoreOrderListSkuVoArrayList();
for (String skuId : item.getOrderSkuVoIds()) { for (String skuId : item.getOrderSkuVoIds()) {
GoblinOrderSkuVo orderSkuVo = redisUtils.getGoblinOrderSkuVo(skuId); GoblinOrderSkuVo orderSkuVo = redisUtils.getGoblinOrderSkuVo(skuId);
GoblinStoreOrderListSkuVo itemSkuVo = GoblinStoreOrderListSkuVo.getNew();
itemSkuVo.setNum(orderSkuVo.getNum());
itemSkuVo.setOrderSkuId(orderSkuVo.getOrderSkuId());
itemSkuVo.setSkuId(orderSkuVo.getSkuId());
itemSkuVo.setSkuName(orderSkuVo.getSkuName());
itemSkuVo.setSkuPriceActual(orderSkuVo.getSkuPriceActual());
itemSkuVo.setSkuSpecs(orderSkuVo.getSkuSpecs());
orderListSkuVos.add(itemSkuVo);
} }
vo.setStoreOrderListSkuVoList(orderListSkuVos);
} }
PageInfo<GoblinStoreOrderListVo> pageInfo = new PageInfo(listVos); PageInfo<GoblinStoreOrderListVo> pageInfo = new PageInfo(listVos);
pageInfo.setTotal(total); pageInfo.setTotal(total);
return ResponseDto.success(pageInfo); return ResponseDto.success(pageInfo);
} }
@Override
public ResponseDto<GoblinStoreOrderListVo> orderDetails(String orderId) {
String uid = CurrentUtil.getCurrentUid();
GoblinStoreInfoVo storeInfoVo = redisUtils.getStoreInfoVoByUid(uid);
if (storeInfoVo == null) {
return ResponseDto.failure("无法查看");
}
GoblinStoreOrderVo orderVo = redisUtils.getGoblinOrder(orderId);
GoblinStoreOrderListVo vo = GoblinStoreOrderListVo.getNew();
vo.setCreatedAt(orderVo.getCreatedAt());
vo.setExpressAddressDetail(orderVo.getOrderAttrVo().getExpressAddressDetail());
vo.setExpressContacts(orderVo.getOrderAttrVo().getExpressContacts());
vo.setExpressPhone(orderVo.getOrderAttrVo().getExpressPhone());
vo.setOrderCode(orderVo.getOrderCode());
vo.setExpressAddress(orderVo.getOrderAttrVo().getExpressAddress());
vo.setOrderId(orderVo.getOrderId());
vo.setPayType(orderVo.getPayType());
vo.setPriceActual(orderVo.getPriceActual());
vo.setStatus(orderVo.getStatus());
vo.setPayTime(orderVo.getPayTime());
vo.setLogisticsCompany(orderVo.getLogisticsCompany());
List<GoblinStoreOrderListSkuVo> orderListSkuVos = ObjectUtil.getGoblinStoreOrderListSkuVoArrayList();
for (String skuId : orderVo.getOrderSkuVoIds()) {
GoblinOrderSkuVo orderSkuVo = redisUtils.getGoblinOrderSkuVo(skuId);
GoblinStoreOrderListSkuVo itemSkuVo = GoblinStoreOrderListSkuVo.getNew();
itemSkuVo.setNum(orderSkuVo.getNum());
itemSkuVo.setOrderSkuId(orderSkuVo.getOrderSkuId());
itemSkuVo.setSkuId(orderSkuVo.getSkuId());
itemSkuVo.setSkuName(orderSkuVo.getSkuName());
itemSkuVo.setSkuPriceActual(orderSkuVo.getSkuPriceActual());
itemSkuVo.setSkuSpecs(orderSkuVo.getSkuSpecs());
orderListSkuVos.add(itemSkuVo);
}
vo.setStoreOrderListSkuVoList(orderListSkuVos);
return ResponseDto.success(vo);
}
} }
...@@ -45,6 +45,7 @@ public class ObjectUtil { ...@@ -45,6 +45,7 @@ public class ObjectUtil {
private static final ArrayList<GoblinStoreOrderVo> goblinStoreOrderVoArrayList = new ArrayList<>(); private static final ArrayList<GoblinStoreOrderVo> goblinStoreOrderVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinZhengzaiPushVo> goblinZhengzaiPushVoArrayList = new ArrayList<>(); private static final ArrayList<GoblinZhengzaiPushVo> goblinZhengzaiPushVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinStoreOrderListVo> goblinStoreOrderListVoArrayList = new ArrayList<>(); private static final ArrayList<GoblinStoreOrderListVo> goblinStoreOrderListVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinStoreOrderListSkuVo> goblinStoreOrderListSkuVoArrayList = new ArrayList<>();
private static final BasicDBObject basicDBObject = new BasicDBObject(); private static final BasicDBObject basicDBObject = new BasicDBObject();
...@@ -52,6 +53,10 @@ public class ObjectUtil { ...@@ -52,6 +53,10 @@ public class ObjectUtil {
return goblinStoreMgtGoodsVoPagedResult.clone(); return goblinStoreMgtGoodsVoPagedResult.clone();
} }
public static ArrayList<GoblinStoreOrderListSkuVo> getGoblinStoreOrderListSkuVoArrayList() {
return (ArrayList<GoblinStoreOrderListSkuVo>) goblinStoreOrderListSkuVoArrayList.clone();
}
public static ArrayList<GoblinStoreOrderListVo> getGoblinStoreOrderListVoArrayList() { public static ArrayList<GoblinStoreOrderListVo> getGoblinStoreOrderListVoArrayList() {
return (ArrayList<GoblinStoreOrderListVo>) goblinStoreOrderListVoArrayList.clone(); return (ArrayList<GoblinStoreOrderListVo>) goblinStoreOrderListVoArrayList.clone();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment