Browse Source

新建个人产品库搜索

hejq 8 years ago
parent
commit
2e37eb1c24

+ 6 - 1
search-api-b2b/src/main/java/com/uas/search/b2b/service/SearchService.java

@@ -251,7 +251,12 @@ public interface SearchService {
 		/**
 		 * 供应商绩效考核
 		 */
-		VENDORPERFORMANCEASSESS("VENDORPERFORMANCEASSESS");
+		VENDORPERFORMANCEASSESS("VENDORPERFORMANCEASSESS"),
+
+        /**
+         * 个人产品库
+         */
+        PRODUCT$USERS("PRODUCT$USERS");
 		// TODO
 
 		private Table_name(String phrase) {

+ 2 - 0
search-console-b2b/src/main/java/com/uas/search/console/b2b/util/ClassAndTableNameUtils.java

@@ -86,6 +86,7 @@ public class ClassAndTableNameUtils {
 		entityClasses.add(PurchaseApBillOutSimpleInfo.class);
 		entityClasses.add(SaleTenderQuestionSimpleInfo.class);
 		entityClasses.add(VendorPerformanceAssessSimpleInfo.class);
+        entityClasses.add(ProductUsersSimpleInfo.class);
 		// TODO 其他表
 
 		// entityClasses和entityDaoClasses对于表的添加顺序必须一致
@@ -135,6 +136,7 @@ public class ClassAndTableNameUtils {
 		entityDaoClasses.add(PurchaseApBillOutSimpleInfoDao.class);
 		entityDaoClasses.add(SaleTenderQuestionSimpleInfoDao.class);
 		entityDaoClasses.add(VendorPerformanceAssessSimpleInfoDao.class);
+        entityDaoClasses.add(ProductUsersSimpleInfoDao.class);
 		// TODO 其他表的Dao
 	}
 

+ 25 - 2
search-console-b2b/src/main/java/com/uas/search/console/b2b/util/DocumentToObjectUtils.java

@@ -124,7 +124,9 @@ public class DocumentToObjectUtils {
 			return (T) toSaleTenderQuestionSimpleInfo(document);
 		} else if (clazz == VendorPerformanceAssessSimpleInfo.class) {
 			return (T) toVendorPerformanceAssessSimpleInfo(document);
-		}
+		} else if (clazz == ProductUsersSimpleInfo.class) {
+            return (T) toProductUsersSimpleInfo(document);
+        }
 
 		// TODO 其他表
 		else {
@@ -132,7 +134,28 @@ public class DocumentToObjectUtils {
 		}
 	}
 
-	private static KindSimpleInfo toKindSimpleInfo(Document document) {
+    /**
+     * 用户个人产品表
+     *
+     * @author hejq
+     * @param document
+     * @return
+     */
+    private static ProductUsersSimpleInfo toProductUsersSimpleInfo(Document document) {
+	    if(document == null) {
+	        return null;
+        }
+        Table_name tableName = ClassAndTableNameUtils.toTableName(ProductUsersSimpleInfo.class);
+        ProductUsersSimpleInfo productUsersSimpleInfo = new ProductUsersSimpleInfo();
+        productUsersSimpleInfo.setId(
+                Long.valueOf(document.get(ClassAndTableNameUtils.combineField(tableName, ProductUsersSimpleInfo.ID_FIELD))));
+        productUsersSimpleInfo.setProduct(JSONObject.parseObject(
+                document.get( ClassAndTableNameUtils.combineField(tableName, ProductUsersSimpleInfo.PRODUCT_FIELD)),
+                ProductSimpleInfo.class));
+        return productUsersSimpleInfo;
+    }
+
+    private static KindSimpleInfo toKindSimpleInfo(Document document) {
 		if (document == null) {
 			return null;
 		}

+ 31 - 2
search-console-b2b/src/main/java/com/uas/search/console/b2b/util/ObjectToDocumentUtils.java

@@ -128,7 +128,9 @@ public class ObjectToDocumentUtils {
 			return toDocument((SaleTenderQuestionSimpleInfo) object);
 		} else if (object instanceof VendorPerformanceAssessSimpleInfo) {
 			return toDocument((VendorPerformanceAssessSimpleInfo) object);
-		}
+		} else if (object instanceof ProductUsersSimpleInfo) {
+            return toDocument((ProductUsersSimpleInfo) object);
+        }
 		// TODO 其他表
 		else {
 			throw new SearchException("不支持将以下类型转换为Document:" + object.getClass().getName());
@@ -2365,7 +2367,7 @@ public class ObjectToDocumentUtils {
 	/**
 	 * 将SaleTenderQuestionSimpleInfo转换为Document
 	 *
-	 * @param saleTender
+	 * @param saleTenderQuestionSimpleInfo
 	 * @return
 	 */
 	public static Document toDocument(SaleTenderQuestionSimpleInfo saleTenderQuestionSimpleInfo) {
@@ -3218,4 +3220,31 @@ public class ObjectToDocumentUtils {
 				vpaSimpleInfo.getVpaApplydate().getTime()));
 		return document;
 	}
+
+    /**
+     * 将ProductUsersSimpleInfo转换成Document
+     *
+     * @author hejq
+     * @param productUsersSimpleInfo
+     * @return
+     */
+    public static Document toDocument(ProductUsersSimpleInfo productUsersSimpleInfo) {
+        if (productUsersSimpleInfo == null || productUsersSimpleInfo.getId() == null) {
+            return null;
+        }
+        Table_name tableName = ClassAndTableNameUtils.toTableName(ProductUsersSimpleInfo.class);
+        Document document = new Document();
+        document.add(new StringField(ClassAndTableNameUtils.combineField(tableName, ProductUsersSimpleInfo.ID_FIELD),
+                String.valueOf(productUsersSimpleInfo.getId()), Store.YES));
+        if (null != productUsersSimpleInfo.getProduct()) {
+            document.add(new TextField(ClassAndTableNameUtils.combineField(tableName, ProductUsersSimpleInfo.PRODUCT_FIELD),
+                    JSON.toJSONString(productUsersSimpleInfo.getProduct()), Store.YES));
+        }
+
+        // 排序字段
+        document.add(new NumericDocValuesField(ClassAndTableNameUtils.combineField(tableName, ProductUsersSimpleInfo.ID_FIELD),
+                productUsersSimpleInfo.getId()));
+        return document;
+    }
+
 }