Authored by mali

鉴定视频生成的时候 通过查询订单来判断鉴定结果

@@ -31,7 +31,7 @@ public class AppraiseOrder implements Serializable { @@ -31,7 +31,7 @@ public class AppraiseOrder implements Serializable {
31 31
32 private BigDecimal shipFee; 32 private BigDecimal shipFee;
33 33
34 - private Byte status; 34 + private Integer status;
35 35
36 private Integer createTime; 36 private Integer createTime;
37 37
@@ -149,11 +149,11 @@ public class AppraiseOrder implements Serializable { @@ -149,11 +149,11 @@ public class AppraiseOrder implements Serializable {
149 this.attributes = attributes; 149 this.attributes = attributes;
150 } 150 }
151 151
152 - public Byte getStatus() { 152 + public Integer getStatus() {
153 return status; 153 return status;
154 } 154 }
155 155
156 - public void setStatus(Byte status) { 156 + public void setStatus(Integer status) {
157 this.status = status; 157 this.status = status;
158 } 158 }
159 159
@@ -47,6 +47,16 @@ public class QiniuLiveRecord { @@ -47,6 +47,16 @@ public class QiniuLiveRecord {
47 47
48 private Integer orderType; // 订单类型 0 买家订单, 1 鉴定服务 48 private Integer orderType; // 订单类型 0 买家订单, 1 鉴定服务
49 49
  50 + private Integer appraiseResult; // 鉴定结果 1 代表真 0 代表假 2 无法鉴定 3瑕疵 -1 还未有结果
  51 +
  52 + public Integer getAppraiseResult() {
  53 + return appraiseResult;
  54 + }
  55 +
  56 + public void setAppraiseResult(Integer appraiseResult) {
  57 + this.appraiseResult = appraiseResult;
  58 + }
  59 +
50 public Integer getOrderType() { 60 public Integer getOrderType() {
51 return orderType; 61 return orderType;
52 } 62 }
1 package com.yoho.ufo.order.service.event; 1 package com.yoho.ufo.order.service.event;
2 2
3 import com.google.common.collect.Lists; 3 import com.google.common.collect.Lists;
4 -import com.yoho.order.dal.BuyerOrderGoodsMapper;  
5 -import com.yoho.order.dal.LiveRecordTimeMapper;  
6 -import com.yoho.order.dal.QiniuLiveRecordMapper;  
7 -import com.yoho.order.dal.SellerOrderGoodsMapper; 4 +import com.yoho.order.dal.*;
8 import com.yoho.order.model.*; 5 import com.yoho.order.model.*;
9 import com.yoho.ufo.exception.PlatformException; 6 import com.yoho.ufo.exception.PlatformException;
10 import com.yoho.ufo.order.service.impl.AppraiseOrderGoodsService; 7 import com.yoho.ufo.order.service.impl.AppraiseOrderGoodsService;
11 import com.yoho.ufo.order.service.impl.UfoLiveService; 8 import com.yoho.ufo.order.service.impl.UfoLiveService;
12 import com.yoho.ufo.util.DateUtil; 9 import com.yoho.ufo.util.DateUtil;
  10 +import com.yohobuy.ufo.model.order.common.AppraiseOrderStatus;
  11 +import com.yohobuy.ufo.model.order.constants.AppraiseResultEnum;
13 import com.yohobuy.ufo.model.order.req.OrderTypeEnum; 12 import com.yohobuy.ufo.model.order.req.OrderTypeEnum;
14 import org.apache.commons.collections.CollectionUtils; 13 import org.apache.commons.collections.CollectionUtils;
15 import org.slf4j.Logger; 14 import org.slf4j.Logger;
@@ -19,6 +18,7 @@ import org.springframework.context.ApplicationListener; @@ -19,6 +18,7 @@ import org.springframework.context.ApplicationListener;
19 import org.springframework.stereotype.Component; 18 import org.springframework.stereotype.Component;
20 19
21 import java.util.List; 20 import java.util.List;
  21 +import java.util.Optional;
22 22
23 /** 23 /**
24 * Created by li.ma on 2018/12/18. 24 * Created by li.ma on 2018/12/18.
@@ -48,6 +48,9 @@ public class LiveEventsListener implements ApplicationListener<QiniuLiveRecordEv @@ -48,6 +48,9 @@ public class LiveEventsListener implements ApplicationListener<QiniuLiveRecordEv
48 @Autowired 48 @Autowired
49 private AppraiseOrderGoodsService appraiseOrderGoodsService; 49 private AppraiseOrderGoodsService appraiseOrderGoodsService;
50 50
  51 + @Autowired
  52 + private AppraiseOrderMapper appraiseOrderMapper;
  53 +
51 /** 54 /**
52 * seller_order_code = #{sellerOrderCode,jdbcType=BIGINT}, 55 * seller_order_code = #{sellerOrderCode,jdbcType=BIGINT},
53 update_time = #{updateTime,jdbcType=INTEGER}, 56 update_time = #{updateTime,jdbcType=INTEGER},
@@ -97,11 +100,15 @@ public class LiveEventsListener implements ApplicationListener<QiniuLiveRecordEv @@ -97,11 +100,15 @@ public class LiveEventsListener implements ApplicationListener<QiniuLiveRecordEv
97 SellerOrderGoods sellerOrderGoods = sellerOrderGoodses.get(0); 100 SellerOrderGoods sellerOrderGoods = sellerOrderGoodses.get(0);
98 record.setStorageId(sellerOrderGoods.getStorageId()); 101 record.setStorageId(sellerOrderGoods.getStorageId());
99 record.setProductId(sellerOrderGoods.getProductId()); 102 record.setProductId(sellerOrderGoods.getProductId());
100 - } else { 103 + } else { // 鉴定订单
101 record.setStorageId(0); 104 record.setStorageId(0);
102 105
103 AppraiseOrderGoods appraiseOrderGoods = appraiseOrderGoodsService.selectByOrderCode(record.getOrderCode()); 106 AppraiseOrderGoods appraiseOrderGoods = appraiseOrderGoodsService.selectByOrderCode(record.getOrderCode());
104 record.setProductId(null == appraiseOrderGoods ? 0 : appraiseOrderGoods.getProductId()); 107 record.setProductId(null == appraiseOrderGoods ? 0 : appraiseOrderGoods.getProductId());
  108 +
  109 +
  110 + AppraiseOrder appraiseOrder = appraiseOrderMapper.selectByOrderCode(String.valueOf(record.getOrderCode()));
  111 + record.setAppraiseResult(getAppraiseResult(appraiseOrder));
105 } 112 }
106 113
107 record.setSellerOrderCode(0L); 114 record.setSellerOrderCode(0L);
@@ -111,6 +118,16 @@ public class LiveEventsListener implements ApplicationListener<QiniuLiveRecordEv @@ -111,6 +118,16 @@ public class LiveEventsListener implements ApplicationListener<QiniuLiveRecordEv
111 qiniuLiveRecordMapper.updateProductByOrderCode(record); 118 qiniuLiveRecordMapper.updateProductByOrderCode(record);
112 } 119 }
113 120
  121 + // 根据鉴定订单的状态判断 当前订单鉴定的是真还是假,还是无法鉴定
  122 + private Integer getAppraiseResult(AppraiseOrder appraiseOrder) {
  123 + return Optional.ofNullable(appraiseOrder)
  124 + .map(AppraiseOrder::getStatus)
  125 + .map(AppraiseOrderStatus::getByCode)
  126 + .map(AppraiseOrderStatus::getAppraiseResultEnum)
  127 + .map(AppraiseResultEnum::getCode)
  128 + .orElse(AppraiseResultEnum.RESULT_UNKNOWN.getCode());
  129 + }
  130 +
114 private QiniuLiveRecord convertQiNiuLiveRecord(BuyerOrderReq record) { 131 private QiniuLiveRecord convertQiNiuLiveRecord(BuyerOrderReq record) {
115 QiniuLiveRecord result = new QiniuLiveRecord(); 132 QiniuLiveRecord result = new QiniuLiveRecord();
116 133