Browse Source

新增采购供应商单联想词

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@7906 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
hejq 9 years ago
parent
commit
599e5a83f3

+ 56 - 5
src/main/java/com/uas/platform/b2b/search/SearchController.java

@@ -1,16 +1,43 @@
 package com.uas.platform.b2b.search;
 
-import com.uas.platform.b2b.model.*;
-import com.uas.search.b2b.model.PageParams;
-import com.uas.search.b2b.model.SPage;
+import java.util.List;
+import java.util.Map;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import java.util.List;
-import java.util.Map;
+import com.uas.platform.b2b.model.Component;
+import com.uas.platform.b2b.model.DeputyOrder;
+import com.uas.platform.b2b.model.Enterprise;
+import com.uas.platform.b2b.model.MakeAccept;
+import com.uas.platform.b2b.model.MakeOrder;
+import com.uas.platform.b2b.model.MakeOrderChangeItem;
+import com.uas.platform.b2b.model.MakeReturn;
+import com.uas.platform.b2b.model.Product;
+import com.uas.platform.b2b.model.PurchaseAccept;
+import com.uas.platform.b2b.model.PurchaseApBill;
+import com.uas.platform.b2b.model.PurchaseApCheck;
+import com.uas.platform.b2b.model.PurchaseBadIn;
+import com.uas.platform.b2b.model.PurchaseBadOut;
+import com.uas.platform.b2b.model.PurchaseForecastAll;
+import com.uas.platform.b2b.model.PurchaseInquiryItem;
+import com.uas.platform.b2b.model.PurchaseMRB;
+import com.uas.platform.b2b.model.PurchaseNotice;
+import com.uas.platform.b2b.model.PurchaseOrderAll;
+import com.uas.platform.b2b.model.PurchaseOrderChange;
+import com.uas.platform.b2b.model.PurchaseProofingApproval;
+import com.uas.platform.b2b.model.PurchaseProofingItem;
+import com.uas.platform.b2b.model.PurchaseProofingSend;
+import com.uas.platform.b2b.model.PurchaseReturn;
+import com.uas.platform.b2b.model.SaleARCheck;
+import com.uas.platform.b2b.model.SaleQuotationAll;
+import com.uas.platform.b2b.model.SaleSendAll;
+import com.uas.platform.b2b.model.Vendor;
+import com.uas.search.b2b.model.PageParams;
+import com.uas.search.b2b.model.SPage;
 
 /**
  * 搜索请求
@@ -326,6 +353,30 @@ public class SearchController {
 		return searchService.getComponentByCode(code);
 	}
 
+	/**
+	 * 供应商联想词,返回供应商信息
+	 * 
+	 * @param keyword
+	 * @return
+	 */
+	@RequestMapping(value = "/getVendorByenName", method = RequestMethod.GET)
+	@ResponseBody
+	public Vendor getVendorByKeyword(String enName) {
+		return searchService.getVendorByEnname(enName);
+	}
+
+	/**
+	 * 供应商联想词
+	 * 
+	 * @param keyword
+	 * @return
+	 */
+	@RequestMapping(value = "/similarVendors", method = RequestMethod.GET)
+	@ResponseBody
+	public List<Map<String, Object>> getSimilarVendors(String keyword) {
+		return searchService.getSimilarVendors(keyword);
+	}
+
 //    /**
 //     * 根据输入获取联想词(类目)
 //     *

+ 12 - 3
src/main/java/com/uas/platform/b2b/search/SearchService.java

@@ -1,5 +1,8 @@
 package com.uas.platform.b2b.search;
 
+import java.util.List;
+import java.util.Map;
+
 import com.uas.platform.b2b.model.Component;
 import com.uas.platform.b2b.model.DeputyOrder;
 import com.uas.platform.b2b.model.Enterprise;
@@ -37,9 +40,6 @@ import com.uas.platform.b2b.model.Vendor;
 import com.uas.search.b2b.model.PageParams;
 import com.uas.search.b2b.model.SPage;
 
-import java.util.List;
-import java.util.Map;
-
 /**
  * 搜索接口
  * 
@@ -346,4 +346,13 @@ public interface SearchService {
 
 //	List<String> getSimilarKinds(String keyword);
 
+	/**
+	 * 供应商关键词
+	 * 
+	 * @param code
+	 * @return
+	 */
+	Vendor getVendorByEnname(String keyword);
+
+	List<Map<String, Object>> getSimilarVendors(String keyword);
 }

+ 118 - 15
src/main/java/com/uas/platform/b2b/search/SearchServiceImpl.java

@@ -1,27 +1,103 @@
 package com.uas.platform.b2b.search;
 
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
+
 import com.alibaba.fastjson.JSONObject;
-import com.uas.platform.b2b.dao.*;
-import com.uas.platform.b2b.model.*;
+import com.uas.platform.b2b.dao.BrandDao;
+import com.uas.platform.b2b.dao.ComponentDao;
+import com.uas.platform.b2b.dao.DeputyOrderDao;
+import com.uas.platform.b2b.dao.EnterpriseDao;
+import com.uas.platform.b2b.dao.MakeAcceptDao;
+import com.uas.platform.b2b.dao.MakeOrderChangeItemDao;
+import com.uas.platform.b2b.dao.MakeOrderDao;
+import com.uas.platform.b2b.dao.MakeReturnDao;
+import com.uas.platform.b2b.dao.PagingReleaseDetailDao;
+import com.uas.platform.b2b.dao.ProductDao;
+import com.uas.platform.b2b.dao.PurchaseAcceptDao;
+import com.uas.platform.b2b.dao.PurchaseApBillDao;
+import com.uas.platform.b2b.dao.PurchaseApCheckDao;
+import com.uas.platform.b2b.dao.PurchaseBadInDao;
+import com.uas.platform.b2b.dao.PurchaseBadOutDao;
+import com.uas.platform.b2b.dao.PurchaseForecastAllDao;
+import com.uas.platform.b2b.dao.PurchaseInquiryItemDao;
+import com.uas.platform.b2b.dao.PurchaseInquiryMouldDao;
+import com.uas.platform.b2b.dao.PurchaseMRBDao;
+import com.uas.platform.b2b.dao.PurchaseNoticeDao;
+import com.uas.platform.b2b.dao.PurchaseOrderAllDao;
+import com.uas.platform.b2b.dao.PurchaseOrderChangeDao;
+import com.uas.platform.b2b.dao.PurchaseOrderDoneDao;
+import com.uas.platform.b2b.dao.PurchaseOrderEndDao;
+import com.uas.platform.b2b.dao.PurchaseOrderTodoDao;
+import com.uas.platform.b2b.dao.PurchaseOrderWaitingDao;
+import com.uas.platform.b2b.dao.PurchaseProofingApprovalDao;
+import com.uas.platform.b2b.dao.PurchaseProofingItemDao;
+import com.uas.platform.b2b.dao.PurchaseProofingSendDao;
+import com.uas.platform.b2b.dao.PurchaseReturnDao;
+import com.uas.platform.b2b.dao.PurchaseTenderDao;
+import com.uas.platform.b2b.dao.SaleARCheckDao;
+import com.uas.platform.b2b.dao.SaleQuotationAllDao;
+import com.uas.platform.b2b.dao.SaleSendAllDao;
+import com.uas.platform.b2b.dao.VendorDao;
+import com.uas.platform.b2b.model.Brand;
+import com.uas.platform.b2b.model.Component;
+import com.uas.platform.b2b.model.DeputyOrder;
+import com.uas.platform.b2b.model.Enterprise;
+import com.uas.platform.b2b.model.MakeAccept;
+import com.uas.platform.b2b.model.MakeOrder;
+import com.uas.platform.b2b.model.MakeOrderChangeItem;
+import com.uas.platform.b2b.model.MakeReturn;
+import com.uas.platform.b2b.model.PagingReleaseDetail;
+import com.uas.platform.b2b.model.Product;
+import com.uas.platform.b2b.model.PurchaseAccept;
+import com.uas.platform.b2b.model.PurchaseApBill;
+import com.uas.platform.b2b.model.PurchaseApCheck;
+import com.uas.platform.b2b.model.PurchaseBadIn;
+import com.uas.platform.b2b.model.PurchaseBadOut;
+import com.uas.platform.b2b.model.PurchaseForecastAll;
+import com.uas.platform.b2b.model.PurchaseInquiryItem;
+import com.uas.platform.b2b.model.PurchaseInquiryMould;
+import com.uas.platform.b2b.model.PurchaseMRB;
+import com.uas.platform.b2b.model.PurchaseNotice;
+import com.uas.platform.b2b.model.PurchaseOrderAll;
+import com.uas.platform.b2b.model.PurchaseOrderChange;
+import com.uas.platform.b2b.model.PurchaseOrderDone;
+import com.uas.platform.b2b.model.PurchaseOrderEnd;
+import com.uas.platform.b2b.model.PurchaseOrderTodo;
+import com.uas.platform.b2b.model.PurchaseOrderWaiting;
+import com.uas.platform.b2b.model.PurchaseProofingApproval;
+import com.uas.platform.b2b.model.PurchaseProofingItem;
+import com.uas.platform.b2b.model.PurchaseProofingSend;
+import com.uas.platform.b2b.model.PurchaseReturn;
+import com.uas.platform.b2b.model.PurchaseTender;
+import com.uas.platform.b2b.model.SaleARCheck;
+import com.uas.platform.b2b.model.SaleQuotationAll;
+import com.uas.platform.b2b.model.SaleSendAll;
+import com.uas.platform.b2b.model.Vendor;
+import com.uas.platform.b2b.support.SystemSession;
 import com.uas.platform.core.persistence.criteria.PredicateFactory;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.search.b2b.model.PageParams;
 import com.uas.search.b2b.model.SPage;
 import com.uas.search.b2b.service.SearchService.Table_name;
 import com.uas.search.b2b.util.SearchConstants;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.jpa.domain.Specification;
-import org.springframework.stereotype.Service;
-import org.springframework.util.CollectionUtils;
-
-import javax.persistence.criteria.CriteriaBuilder;
-import javax.persistence.criteria.CriteriaQuery;
-import javax.persistence.criteria.Predicate;
-import javax.persistence.criteria.Root;
-import java.lang.reflect.Field;
-import java.util.*;
-import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * 搜索实现
@@ -725,4 +801,31 @@ public class SearchServiceImpl implements com.uas.platform.b2b.search.SearchServ
 		}
 	}
 
+	@Override
+	public Vendor getVendorByEnname(String enName) {
+		return vendorDao.findByCustAndVendName(SystemSession.getUser().getEnterprise().getUu(), enName);
+	}
+
+	@Override
+	public List<Map<String, Object>> getSimilarVendors(String keyword) {
+		SPage<String> codePages = searchService.similar(keyword, Table_name.SEC$ENTERPRISES, SIMILAR_NUM, "en_name");
+		List<Vendor> contents = new ArrayList<Vendor>();
+		for (String code : codePages.getContent()) {
+			Vendor vendor = vendorDao.findByCustAndVendName(SystemSession.getUser().getEnterprise().getUu(), code);
+			contents.add(vendor);
+		}
+		List<Map<String, Object>> vendors = new ArrayList<Map<String, Object>>();
+		for (Vendor vendor : contents) {
+			Map<String, Object> temp = new HashMap<>();
+			if (vendor != null) {
+				temp.put("id", vendor.getId());
+				temp.put("venduu", vendor.getVendEnUU());
+				temp.put("vendName", vendor.getVendorEnterprise().getEnName());
+				temp.put("vendshortname", vendor.getVendorEnterprise().getEnShortname());
+				vendors.add(temp);
+			}
+		}
+		return vendors;
+	}
+
 }