Browse Source

add sort field: go_mindelivery, go_update_date

sunyj 8 years ago
parent
commit
4e4d2c47af

+ 2 - 0
mall-search/src/main/java/com/uas/search/constant/SearchConstants.java

@@ -124,6 +124,8 @@ public class SearchConstants {
 	public static final String GOODS_GO_MINPRICERMB_FIELD = "go_minpricermb";
 	public static final String GOODS_GO_MINPRICEUSD_FIELD = "go_minpriceusd";
     public static final String GOODS_GO_VISIT_COUNT_FIELD = "go_visit_count";
+    public static final String GOODS_GO_MINDELIVERY_FIELD = "go_mindelivery";
+    public static final String GOODS_GO_UPDATE_DATE_FIELD = "go_update_date";
 	public static final String GOODS_CRNAME_FIELD = "cr_name";
 	public static final String GOODS_ST_UUID_FIELD = "st_uuid";
 	public static final String GOODS_ST_TYPE_FIELD = "st_type";

+ 46 - 15
mall-search/src/main/java/com/uas/search/model/TradeGoods.java

@@ -5,6 +5,7 @@ import javax.persistence.Entity;
 import javax.persistence.Id;
 import javax.persistence.Table;
 import java.io.Serializable;
+import java.util.Date;
 
 /**
  * 批次简要信息,只用于索引的创建与查询
@@ -81,6 +82,18 @@ public class TradeGoods implements Serializable {
 	@Column(name = "go_visit_count")
 	private Long visitCount;
 
+    /**
+     * 最短交期
+     */
+    @Column(name = "go_mindelivery")
+    private Long minDelivery;
+
+    /**
+     * 最新修改时间
+     */
+    @Column(name = "go_update_date")
+    private Date updateDate;
+
 	public Long getId() {
 		return id;
 	}
@@ -161,19 +174,37 @@ public class TradeGoods implements Serializable {
 		this.visitCount = visitCount;
 	}
 
-	@Override
-	public String toString() {
-		return "TradeGoods{" +
-				"id=" + id +
-				", reserve=" + reserve +
-				", status=" + status +
-				", minPriceRMB=" + minPriceRMB +
-				", minPriceUSD=" + minPriceUSD +
-				", crName='" + crName + '\'' +
-				", storeId='" + storeId + '\'' +
-				", cmpUuid='" + cmpUuid + '\'' +
-				", productId=" + productId +
-				", visitCount=" + visitCount +
-				'}';
-	}
+    public Long getMinDelivery() {
+        return minDelivery;
+    }
+
+    public void setMinDelivery(Long minDelivery) {
+        this.minDelivery = minDelivery;
+    }
+
+    public Date getUpdateDate() {
+        return updateDate;
+    }
+
+    public void setUpdateDate(Date updateDate) {
+        this.updateDate = updateDate;
+    }
+
+    @Override
+    public String toString() {
+        return "TradeGoods{" +
+                "id=" + id +
+                ", reserve=" + reserve +
+                ", status=" + status +
+                ", minPriceRMB=" + minPriceRMB +
+                ", minPriceUSD=" + minPriceUSD +
+                ", crName='" + crName + '\'' +
+                ", storeId='" + storeId + '\'' +
+                ", cmpUuid='" + cmpUuid + '\'' +
+                ", productId=" + productId +
+                ", visitCount=" + visitCount +
+                ", minDelivery=" + minDelivery +
+                ", updateDate=" + updateDate +
+                '}';
+    }
 }

+ 6 - 0
mall-search/src/main/java/com/uas/search/util/DocumentToObjectUtils.java

@@ -196,6 +196,12 @@ public class DocumentToObjectUtils {
 		}
         if (!StringUtils.isEmpty(document.get(SearchConstants.GOODS_GO_VISIT_COUNT_FIELD))) {
             tradeGoods.setVisitCount(Long.valueOf(document.get(SearchConstants.GOODS_GO_VISIT_COUNT_FIELD)));
+        }
+        if (!StringUtils.isEmpty(document.get(SearchConstants.GOODS_GO_UPDATE_DATE_FIELD))) {
+            tradeGoods.setUpdateDate(new Date(Long.valueOf(document.get(SearchConstants.GOODS_GO_UPDATE_DATE_FIELD))));
+        }
+        if (!StringUtils.isEmpty(document.get(SearchConstants.GOODS_GO_MINDELIVERY_FIELD))) {
+            tradeGoods.setMinDelivery(Long.valueOf(document.get(SearchConstants.GOODS_GO_MINDELIVERY_FIELD)));
         }
 		goods.setTradeGoods(tradeGoods);
 

+ 8 - 0
mall-search/src/main/java/com/uas/search/util/ObjectToDocumentUtils.java

@@ -268,6 +268,14 @@ public class ObjectToDocumentUtils {
             if (tradeGoods.getVisitCount() != null) {
                 document.add(new DoubleDocValuesField(SearchConstants.GOODS_GO_VISIT_COUNT_FIELD, tradeGoods.getVisitCount()));
                 document.add(new LongField(SearchConstants.GOODS_GO_VISIT_COUNT_FIELD, tradeGoods.getVisitCount(), Store.YES));
+            }
+            if (tradeGoods.getUpdateDate() != null) {
+                document.add(new DoubleDocValuesField(SearchConstants.GOODS_GO_UPDATE_DATE_FIELD, tradeGoods.getUpdateDate().getTime()));
+                document.add(new LongField(SearchConstants.GOODS_GO_UPDATE_DATE_FIELD, tradeGoods.getUpdateDate().getTime(), Store.YES));
+            }
+            if (tradeGoods.getMinDelivery() != null) {
+                document.add(new DoubleDocValuesField(SearchConstants.GOODS_GO_MINDELIVERY_FIELD, tradeGoods.getMinDelivery()));
+                document.add(new LongField(SearchConstants.GOODS_GO_MINDELIVERY_FIELD, tradeGoods.getMinDelivery(), Store.YES));
             }
 		}