Browse Source

隐藏一键匹配按钮;修改B2B和App获取客户询价单待报价和已失效接口方法。

dongbw 8 years ago
parent
commit
237749bf32

+ 19 - 17
src/main/java/com/uas/platform/b2b/controller/PurcProductController.java

@@ -1,25 +1,10 @@
 package com.uas.platform.b2b.controller;
 package com.uas.platform.b2b.controller;
 
 
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-
 import com.alibaba.fastjson.JSONObject;
 import com.alibaba.fastjson.JSONObject;
-import com.uas.platform.b2b.service.BaseInfoService;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Sort.Direction;
-import org.springframework.ui.ModelMap;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.servlet.ModelAndView;
-
 import com.uas.platform.b2b.model.FileUpload;
 import com.uas.platform.b2b.model.FileUpload;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.search.SearchService;
+import com.uas.platform.b2b.service.BaseInfoService;
 import com.uas.platform.b2b.service.ProductService;
 import com.uas.platform.b2b.service.ProductService;
 import com.uas.platform.b2b.service.PurcProductService;
 import com.uas.platform.b2b.service.PurcProductService;
 import com.uas.platform.b2b.support.JxlsExcelView;
 import com.uas.platform.b2b.support.JxlsExcelView;
@@ -35,8 +20,25 @@ import com.uas.search.b2b.model.SPage;
 import com.uas.search.b2b.model.Sort;
 import com.uas.search.b2b.model.Sort;
 import com.uas.search.b2b.model.Sort.Type;
 import com.uas.search.b2b.model.Sort.Type;
 import com.uas.search.b2b.util.SearchConstants;
 import com.uas.search.b2b.util.SearchConstants;
+import org.apache.poi.hssf.usermodel.HSSFWorkbook;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Sort.Direction;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.servlet.ModelAndView;
 
 
-import static org.springframework.data.jpa.domain.AbstractPersistable_.id;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
 
 
 /**
 /**
  * 采购物料
  * 采购物料

+ 4 - 7
src/main/java/com/uas/platform/b2b/controller/SaleInquiryController.java

@@ -194,11 +194,10 @@ public class SaleInquiryController {
 		}
 		}
 		if (filter != null && !CollectionUtils.isEmpty(filter.getDistribute())) {
 		if (filter != null && !CollectionUtils.isEmpty(filter.getDistribute())) {
 			List<Object> list = new ArrayList<>();
 			List<Object> list = new ArrayList<>();
-			for (Object object : filter.getDistribute()) {
-				list.add(object);
-			}
+			list.addAll(filter.getDistribute());
 			pageParams.getFilters().put("id_inid", new MultiValue(list, true));
 			pageParams.getFilters().put("id_inid", new MultiValue(list, true));
 		}
 		}
+		pageParams.getFilters().put("id_decidestatus", Status.UNAUDIT.value());
 		pageParams.getFilters().put("id_status", Status.REPLIED.value());
 		pageParams.getFilters().put("id_status", Status.REPLIED.value());
 		HashMap<String, Object> map = new HashMap<>();
 		HashMap<String, Object> map = new HashMap<>();
 		map.put("id_invalid", Constant.YES);
 		map.put("id_invalid", Constant.YES);
@@ -389,7 +388,7 @@ public class SaleInquiryController {
 		if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
 		if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
 			filter.setDistribute(distribute.getDistribute());
 			filter.setDistribute(distribute.getDistribute());
 		}
 		}
-		return purchaseInquiryService.findByPageInfo(pageInfo, null, filter);
+		return purchaseInquiryService.findTodoByPageInfo(pageInfo, null, filter);
 	}
 	}
 
 
 	/**
 	/**
@@ -455,9 +454,7 @@ public class SaleInquiryController {
 	public SPage<PurchaseInquiryItem> getPurchaseInquiriesInvalid(PageParams params, String searchFilter) {
 	public SPage<PurchaseInquiryItem> getPurchaseInquiriesInvalid(PageParams params, String searchFilter) {
 		logger.log("客户询价单", "查看收到的客户询价单列表(已失效)");
 		logger.log("客户询价单", "查看收到的客户询价单列表(已失效)");
 		PageInfo pageInfo = new PageInfo(params);
 		PageInfo pageInfo = new PageInfo(params);
-		pageInfo.filter("overdue", Constant.YES);
 		pageInfo.filter("vendUU", SystemSession.getUser().getEnterprise().getUu());
 		pageInfo.filter("vendUU", SystemSession.getUser().getEnterprise().getUu());
-		pageInfo.filter("invalid", Constant.YES);
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter filter = JSONObject.parseObject(searchFilter, SearchFilter.class);
 		SearchFilter distribute = userService.distribute();
 		SearchFilter distribute = userService.distribute();
 		if (distribute != null && distribute.getDistribute() == null) {
 		if (distribute != null && distribute.getDistribute() == null) {
@@ -466,7 +463,7 @@ public class SaleInquiryController {
 		if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
 		if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
 			filter.setDistribute(distribute.getDistribute());
 			filter.setDistribute(distribute.getDistribute());
 		}
 		}
-		return purchaseInquiryService.findByPageInfo(pageInfo, null, filter);
+		return purchaseInquiryService.findInvalidByPageInfo(pageInfo, null, filter);
 	}
 	}
 
 
 	/**
 	/**

+ 100 - 107
src/main/java/com/uas/platform/b2b/erp/controller/ProdController.java

@@ -1,16 +1,10 @@
 package com.uas.platform.b2b.erp.controller;
 package com.uas.platform.b2b.erp.controller;
 
 
-import com.uas.platform.b2b.erp.model.Prod;
-import com.uas.platform.b2b.erp.model.ProductSaler;
 import com.uas.platform.b2b.erp.service.ProdService;
 import com.uas.platform.b2b.erp.service.ProdService;
 import com.uas.platform.b2b.erp.support.ErpBufferedLogger;
 import com.uas.platform.b2b.erp.support.ErpBufferedLogger;
-import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.service.ProductService;
 import com.uas.platform.b2b.service.ProductService;
 import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.logging.BufferedLoggerManager;
 import com.uas.platform.core.model.Constant;
 import com.uas.platform.core.model.Constant;
-import com.uas.platform.core.model.Status;
-import com.uas.platform.core.util.serializer.FlexJsonUtils;
-import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -20,15 +14,13 @@ import org.springframework.web.bind.annotation.ResponseBody;
 
 
 import java.io.UnsupportedEncodingException;
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
 import java.net.URLDecoder;
-import java.util.ArrayList;
-import java.util.List;
 
 
 /**
 /**
  * 对ERP的数据接口<br>
  * 对ERP的数据接口<br>
  * 产品处理
  * 产品处理
  * 
  * 
  * @author yingp
  * @author yingp
- * 
+ * @since 2018年1月24日 09:25:28 --UAS物料传输相关,调用产品传输公共服务接口,这里的方法除了禁用,其他都弃用 dongbw
  */
  */
 @Controller
 @Controller
 @RequestMapping("/erp/product")
 @RequestMapping("/erp/product")
@@ -42,71 +34,6 @@ public class ProdController {
 
 
 	private final static ErpBufferedLogger logger = BufferedLoggerManager.getLogger(ErpBufferedLogger.class);
 	private final static ErpBufferedLogger logger = BufferedLoggerManager.getLogger(ErpBufferedLogger.class);
 
 
-	/**
-	 * 将ERP的产品资料写到平台
-	 * 
-	 * @param data
-	 * @return
-	 * @throws UnsupportedEncodingException
-	 */
-	@RequestMapping(method = RequestMethod.POST)
-	@ResponseBody
-	public void saveProducts(@RequestParam("data") String data) throws UnsupportedEncodingException {
-		String jsonStr = URLDecoder.decode(data, "UTF-8");
-		List<Prod> prods = FlexJsonUtils.fromJsonArray(jsonStr, Prod.class);
-		productService.save(prodService.convertProduct(prods));
-		logger.log("物料资料", "上传物料资料", prods.size());
-	}
-
-	/**
-	 * 定时任务更新物料信息
-	 * 
-	 * @param data
-	 * @return
-	 * @throws UnsupportedEncodingException
-	 */
-	@RequestMapping(value = "/cycleupdate", method = RequestMethod.POST)
-	@ResponseBody
-	public void updateProducts(@RequestParam("data") String data) throws UnsupportedEncodingException {
-		String jsonStr = URLDecoder.decode(data, "UTF-8");
-		List<Prod> prods = FlexJsonUtils.fromJsonArray(jsonStr, Prod.class);
-		productService.save(prodService.convertProduct(prods));
-		logger.log("物料资料", "定时任务更新物料资料", prods.size());
-	}
-	
-	/**
-	 * 将平台更新的ERP的物料数据回传回ERP
-	 * 
-	 * @return
-	 */
-	@RequestMapping(value = "/backtouas", method = RequestMethod.GET)
-	@ResponseBody
-	public List<Prod> getProds() {
-		List<Prod> prods = new ArrayList<Prod>();
-		List<Product> products = productService.findBySourceAppAndDownloadstatus("ERP", Status.NOT_UPLOAD.value());
-		if (!CollectionUtils.isEmpty(products)) {
-			for (Product product : products) {
-				Prod prod = new Prod();
-				prod.setPr_uuid(product.getCmpUuId());
-				prod.setPr_id(product.getSourceId());
-				prod.setB2b_id(product.getId());
-				prods.add(prod);
-			}
-		}
-		return prods;
-	}
-
-	/**
-	 * 更新下载成功的状态
-	 * 
-	 * @param data
-	 * @throws UnsupportedEncodingException
-	 */
-	@RequestMapping(value = "/refreshDownloadstatus", method = RequestMethod.POST)
-	@ResponseBody
-	public void refreshDownloadstatus(@RequestParam("data") String data) throws UnsupportedEncodingException {
-		productService.onProductDownSuccess(URLDecoder.decode(data, "UTF-8").split(","));
-	}
 
 
 	/**
 	/**
 	 * UAS端禁用物料时调用此接口使B2B也禁用此物料
 	 * UAS端禁用物料时调用此接口使B2B也禁用此物料
@@ -122,37 +49,103 @@ public class ProdController {
 		return productService.updateB2bEnabled(code, b2bDisabled);
 		return productService.updateB2bEnabled(code, b2bDisabled);
 	}
 	}
 
 
-	/**
-	 * ERP个人物料同步到平台
-	 *
-	 * @author hejq
-	 * @date 2018-01-12 19:11
-	 * @param data
-	 * @throws UnsupportedEncodingException
-	 */
-	@RequestMapping(value = "/produser", method = RequestMethod.POST)
-	@ResponseBody
-	public void updateProdSaler(@RequestParam("data") String data) throws UnsupportedEncodingException {
-		String jsonStr = URLDecoder.decode(data, "UTF-8");
-        List<ProductSaler> productSalers = FlexJsonUtils.fromJsonArray(jsonStr, ProductSaler.class);
-        productService.updateProdSaler(productSalers);
-        logger.log("物料资料", "上传个人物料资料", productSalers.size());
-	}
-
-    /**
-     * ERP个人物料删除同步状态到平台
-     *
-     * @author hejq
-     * @date 2018-01-12 19:11
-     * @param data
-     * @throws UnsupportedEncodingException
-     */
-    @RequestMapping(value = "/produser/quit", method = RequestMethod.POST)
-    @ResponseBody
-    public void uploadProductSalerForCancel(@RequestParam("data") String data) throws UnsupportedEncodingException {
-        String jsonStr = URLDecoder.decode(data, "UTF-8");
-        List<ProductSaler> productSalers = FlexJsonUtils.fromJsonArray(jsonStr, ProductSaler.class);
-        productService.quitProdSaler(productSalers);
-        logger.log("物料资料", "ERP取消个人物料同步到平台", productSalers.size());
-    }
+//	/**
+//	 * 将ERP的产品资料写到平台
+//	 *
+//	 * @param data
+//	 * @return
+//	 * @throws UnsupportedEncodingException
+//	 */
+//	@RequestMapping(method = RequestMethod.POST)
+//	@ResponseBody
+//	public void saveProducts(@RequestParam("data") String data) throws UnsupportedEncodingException {
+//		String jsonStr = URLDecoder.decode(data, "UTF-8");
+//		List<Prod> prods = FlexJsonUtils.fromJsonArray(jsonStr, Prod.class);
+//		productService.save(prodService.convertProduct(prods));
+//		logger.log("物料资料", "上传物料资料", prods.size());
+//	}
+//
+//	/**
+//	 * 定时任务更新物料信息
+//	 *
+//	 * @param data
+//	 * @return
+//	 * @throws UnsupportedEncodingException
+//	 */
+//	@RequestMapping(value = "/cycleupdate", method = RequestMethod.POST)
+//	@ResponseBody
+//	public void updateProducts(@RequestParam("data") String data) throws UnsupportedEncodingException {
+//		String jsonStr = URLDecoder.decode(data, "UTF-8");
+//		List<Prod> prods = FlexJsonUtils.fromJsonArray(jsonStr, Prod.class);
+//		productService.save(prodService.convertProduct(prods));
+//		logger.log("物料资料", "定时任务更新物料资料", prods.size());
+//	}
+//
+//	/**
+//	 * 将平台更新的ERP的物料数据回传回ERP
+//	 *
+//	 * @return
+//	 */
+//	@RequestMapping(value = "/backtouas", method = RequestMethod.GET)
+//	@ResponseBody
+//	public List<Prod> getProds() {
+//		List<Prod> prods = new ArrayList<Prod>();
+//		List<Product> products = productService.findBySourceAppAndDownloadstatus("ERP", Status.NOT_UPLOAD.value());
+//		if (!CollectionUtils.isEmpty(products)) {
+//			for (Product product : products) {
+//				Prod prod = new Prod();
+//				prod.setPr_uuid(product.getCmpUuId());
+//				prod.setPr_id(product.getSourceId());
+//				prod.setB2b_id(product.getId());
+//				prods.add(prod);
+//			}
+//		}
+//		return prods;
+//	}
+//
+//	/**
+//	 * 更新下载成功的状态
+//	 *
+//	 * @param data
+//	 * @throws UnsupportedEncodingException
+//	 */
+//	@RequestMapping(value = "/refreshDownloadstatus", method = RequestMethod.POST)
+//	@ResponseBody
+//	public void refreshDownloadstatus(@RequestParam("data") String data) throws UnsupportedEncodingException {
+//		productService.onProductDownSuccess(URLDecoder.decode(data, "UTF-8").split(","));
+//	}
+//
+//	/**
+//	 * ERP个人物料同步到平台
+//	 *
+//	 * @author hejq
+//	 * @date 2018-01-12 19:11
+//	 * @param data
+//	 * @throws UnsupportedEncodingException
+//	 */
+//	@RequestMapping(value = "/produser", method = RequestMethod.POST)
+//	@ResponseBody
+//	public void updateProdSaler(@RequestParam("data") String data) throws UnsupportedEncodingException {
+//		String jsonStr = URLDecoder.decode(data, "UTF-8");
+//        List<ProductSaler> productSalers = FlexJsonUtils.fromJsonArray(jsonStr, ProductSaler.class);
+//        productService.updateProdSaler(productSalers);
+//        logger.log("物料资料", "上传个人物料资料", productSalers.size());
+//	}
+//
+//    /**
+//     * ERP个人物料删除同步状态到平台
+//     *
+//     * @author hejq
+//     * @date 2018-01-12 19:11
+//     * @param data
+//     * @throws UnsupportedEncodingException
+//     */
+//    @RequestMapping(value = "/produser/quit", method = RequestMethod.POST)
+//    @ResponseBody
+//    public void uploadProductSalerForCancel(@RequestParam("data") String data) throws UnsupportedEncodingException {
+//        String jsonStr = URLDecoder.decode(data, "UTF-8");
+//        List<ProductSaler> productSalers = FlexJsonUtils.fromJsonArray(jsonStr, ProductSaler.class);
+//        productService.quitProdSaler(productSalers);
+//        logger.log("物料资料", "ERP取消个人物料同步到平台", productSalers.size());
+//    }
 }
 }

+ 27 - 2
src/main/java/com/uas/platform/b2b/mobile/controller/AppInquiryController.java

@@ -16,6 +16,7 @@ import com.uas.platform.core.model.Status;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.platform.core.web.bind.RequestState;
 import com.uas.platform.core.web.bind.RequestState;
 import com.uas.search.b2b.model.MultiValue;
 import com.uas.search.b2b.model.MultiValue;
+import com.uas.search.b2b.model.SPage;
 import com.uas.search.b2b.model.Sort;
 import com.uas.search.b2b.model.Sort;
 import com.uas.search.b2b.util.SearchConstants;
 import com.uas.search.b2b.util.SearchConstants;
 import org.apache.axis.utils.StringUtils;
 import org.apache.axis.utils.StringUtils;
@@ -93,9 +94,11 @@ public class AppInquiryController {
             PageInfo pageInfo = new PageInfo(page, size);
             PageInfo pageInfo = new PageInfo(page, size);
             pageInfo.filter("vendUU", SystemSession.getUser().getEnterprise().getUu());
             pageInfo.filter("vendUU", SystemSession.getUser().getEnterprise().getUu());
             org.springframework.data.domain.Sort.Order statusOrder = new org.springframework.data.domain.Sort.Order(org.springframework.data.domain.Sort.Direction.ASC, "status");
             org.springframework.data.domain.Sort.Order statusOrder = new org.springframework.data.domain.Sort.Order(org.springframework.data.domain.Sort.Direction.ASC, "status");
+            org.springframework.data.domain.Sort.Order endDateOrder = new org.springframework.data.domain.Sort.Order(org.springframework.data.domain.Sort.Direction.DESC, "date");
             org.springframework.data.domain.Sort.Order idOrder = new org.springframework.data.domain.Sort.Order(org.springframework.data.domain.Sort.Direction.DESC, "id");
             org.springframework.data.domain.Sort.Order idOrder = new org.springframework.data.domain.Sort.Order(org.springframework.data.domain.Sort.Direction.DESC, "id");
             List<org.springframework.data.domain.Sort.Order> orders = new ArrayList<>();
             List<org.springframework.data.domain.Sort.Order> orders = new ArrayList<>();
             orders.add(statusOrder);
             orders.add(statusOrder);
+            orders.add(endDateOrder);
             orders.add(idOrder);
             orders.add(idOrder);
             pageInfo.setSort(new org.springframework.data.domain.Sort(orders));
             pageInfo.setSort(new org.springframework.data.domain.Sort(orders));
             SearchFilter filter = new SearchFilter();
             SearchFilter filter = new SearchFilter();
@@ -156,7 +159,7 @@ public class AppInquiryController {
             if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
             if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
                 filter.setDistribute(distribute.getDistribute());
                 filter.setDistribute(distribute.getDistribute());
             }
             }
-            return toPage(purchaseInquiryService.findAllByPageInfo(pageInfo, null, filter));
+            return toPage(purchaseInquiryService.findTodoByPageInfo(pageInfo, null, filter));
         }
         }
     }
     }
 
 
@@ -236,6 +239,7 @@ public class AppInquiryController {
                 pageParams.getFilters().put("id_inid", new MultiValue(list, true));
                 pageParams.getFilters().put("id_inid", new MultiValue(list, true));
             }
             }
             pageParams.getFilters().put("id_status", Status.REPLIED.value());
             pageParams.getFilters().put("id_status", Status.REPLIED.value());
+            pageParams.getFilters().put("id_decidestatus", Status.UNAUDIT.value());
             HashMap<String, Object> map = new HashMap<>();
             HashMap<String, Object> map = new HashMap<>();
             map.put("id_invalid", Constant.YES);
             map.put("id_invalid", Constant.YES);
             pageParams.setNotEqualFilters(map);
             pageParams.setNotEqualFilters(map);
@@ -305,7 +309,7 @@ public class AppInquiryController {
             if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
             if (distribute != null && !CollectionUtils.isEmpty(distribute.getDistribute())) {
                 filter.setDistribute(distribute.getDistribute());
                 filter.setDistribute(distribute.getDistribute());
             }
             }
-            return toPage(purchaseInquiryService.findAllByPageInfo(pageInfo, keyword, filter));
+            return toPage(purchaseInquiryService.findInvalidByPageInfo(pageInfo, keyword, filter));
         }
         }
     }
     }
 
 
@@ -539,4 +543,25 @@ public class AppInquiryController {
         result.setSize(page.getSize());
         result.setSize(page.getSize());
         return result;
         return result;
     }
     }
+
+    /**
+     * page信息转换
+     *
+     * @param page
+     *            直接从数据库获取的page数据
+     * @return 合并后的结果
+    */
+    private <T> Page<T> toPage(SPage<T> page) {
+        if (page.getContent() == null) {
+            return null;
+        }
+        Page<T> result = new Page<>();
+        result.setContent(page.getContent());
+        result.setFirst(page.isFirst());
+        result.setLast(page.isLast());
+        result.setTotalElements(page.getTotalElement());
+        result.setNumber(page.getPage());
+        result.setSize(page.getSize());
+        return result;
+    }
 }
 }

+ 8 - 7
src/main/java/com/uas/platform/b2b/ps/ProductUtils.java

@@ -2,7 +2,6 @@ package com.uas.platform.b2b.ps;
 
 
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSON;
 import com.uas.platform.b2b.model.Product;
 import com.uas.platform.b2b.model.Product;
-import com.uas.platform.b2b.model.ProductMatchResult;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil;
 import com.uas.platform.core.util.HttpUtil.Response;
 import com.uas.platform.core.util.HttpUtil.Response;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
 import com.uas.platform.core.util.serializer.FlexJsonUtils;
@@ -162,15 +161,17 @@ public class ProductUtils {
     }
     }
 
 
     /**
     /**
-     *
-     * @param results  匹配结果List
+     * 匹配所选物料
+     * @param enUU  企业UU
+     * @param idList 需要匹配的物料id List
      */
      */
-    public static void saveProductMatchResults(List<ProductMatchResult> results) throws Exception {
+    public static void matchChoose(Long enUU, List<Long > idList) throws Exception {
         HashMap<String, Object> params = new HashMap<>();
         HashMap<String, Object> params = new HashMap<>();
-        params.put("data", FlexJsonUtils.toJsonDeep(results));
-        Response res = HttpUtil.sendPostRequest(PRODUCT_PUBLIC_SERVICE_DEV_URL + "/product/matchResult/save", params);
+        params.put("enUU", enUU);
+        params.put("idList", idList);
+        Response res = HttpUtil.sendPostRequest(PRODUCT_PUBLIC_SERVICE_DEV_URL + "/product/match/selected", params);
         if (HttpStatus.OK.value() != res.getStatusCode()) {
         if (HttpStatus.OK.value() != res.getStatusCode()) {
-            throw new RuntimeException("保存匹配结果失败");
+            throw new RuntimeException("匹配所选失败");
         }
         }
     }
     }
 }
 }

+ 18 - 0
src/main/java/com/uas/platform/b2b/service/PurchaseInquiryService.java

@@ -288,4 +288,22 @@ public interface PurchaseInquiryService {
 	 * @return
 	 * @return
 	 */
 	 */
 	PurchaseInquiryItem getInquiryItemByItemId(Long itemId);
 	PurchaseInquiryItem getInquiryItemByItemId(Long itemId);
+
+	/**
+	 * 不使用关键词搜索时,从数据库直接获取已失效询价单列表
+	 * @param pageInfo 页面参数
+	 * @param keyword 关键词
+	 * @param filter 搜索过滤条件
+	 * @return
+	 */
+    SPage<PurchaseInquiryItem> findInvalidByPageInfo(PageInfo pageInfo, String  keyword, SearchFilter filter);
+
+    /**
+     * 不使用关键词搜索时,从数据库直接获取待报价询价单列表
+     * @param pageInfo 页面参数
+     * @param keyword 关键词
+     * @param filter 搜索过滤条件
+     * @return
+     */
+    SPage<PurchaseInquiryItem> findTodoByPageInfo(PageInfo pageInfo, String keyword, SearchFilter filter);
 }
 }

+ 1 - 0
src/main/java/com/uas/platform/b2b/service/impl/BaseInfoServiceImpl.java

@@ -837,6 +837,7 @@ public class BaseInfoServiceImpl implements BaseInfoService {
 			enter.setProdsale(Constant.YES);
 			enter.setProdsale(Constant.YES);
 		}
 		}
 		enterpriseDao.save(enter);
 		enterpriseDao.save(enter);
+		// TODO 这里之后要修改为只调用公共服务方法,B2B数据从公共服务同步
 		productDao.switchProductByEnuuAndTypeAndStatus(SystemSession.getUser().getEnterprise().getUu(), switchtype,
 		productDao.switchProductByEnuuAndTypeAndStatus(SystemSession.getUser().getEnterprise().getUu(), switchtype,
 				switchstatus);
 				switchstatus);
 		ProductUtils.switchProductByEnuuAndTypeAndStatus(SystemSession.getUser().getEnterprise().getUu(), switchtype,
 		ProductUtils.switchProductByEnuuAndTypeAndStatus(SystemSession.getUser().getEnterprise().getUu(), switchtype,

+ 12 - 32
src/main/java/com/uas/platform/b2b/service/impl/ProductServiceImpl.java

@@ -111,11 +111,12 @@ public class ProductServiceImpl implements ProductService {
 
 
 	@Override
 	@Override
 	public void unlock(Long id) {
 	public void unlock(Long id) {
+	    // TODO 这里之后要修改为只调用公共服务方法,B2B数据从公共服务同步
 		try {
 		try {
             Product prod = productDao.findOne(id);
             Product prod = productDao.findOne(id);
             prod.setIsSale(Constant.YES);
             prod.setIsSale(Constant.YES);
+            ProductUtils.switchProduct(id, "sale", (int) Constant.YES);
             productDao.save(prod);
             productDao.save(prod);
-			ProductUtils.switchProduct(id, "sale", (int) Constant.YES);
 		} catch (Exception e) {
 		} catch (Exception e) {
 			e.printStackTrace();
 			e.printStackTrace();
 		}
 		}
@@ -124,11 +125,12 @@ public class ProductServiceImpl implements ProductService {
 
 
 	@Override
 	@Override
 	public void lock(Long id) {
 	public void lock(Long id) {
+        // TODO 这里之后要修改为只调用公共服务方法,B2B数据从公共服务同步
 		try {
 		try {
             Product prod = productDao.findOne(id);
             Product prod = productDao.findOne(id);
             prod.setIsSale(Constant.YES);
             prod.setIsSale(Constant.YES);
-            productDao.save(prod);
             ProductUtils.switchProduct(id, "sale", (int) Constant.NO);
             ProductUtils.switchProduct(id, "sale", (int) Constant.NO);
+            productDao.save(prod);
 		} catch (Exception e) {
 		} catch (Exception e) {
 			e.printStackTrace();
 			e.printStackTrace();
 		}
 		}
@@ -136,11 +138,12 @@ public class ProductServiceImpl implements ProductService {
 
 
 	@Override
 	@Override
 	public void unlockPurc(Long id) {
 	public void unlockPurc(Long id) {
+        // TODO 这里之后要修改为只调用公共服务方法,B2B数据从公共服务同步
 		try {
 		try {
 			Product prod = productDao.findOne(id);
 			Product prod = productDao.findOne(id);
 			prod.setIsPurchase(Constant.YES);
 			prod.setIsPurchase(Constant.YES);
-			productDao.save(prod);
             ProductUtils.switchProduct(id, "purc", (int) Constant.YES);
             ProductUtils.switchProduct(id, "purc", (int) Constant.YES);
+            productDao.save(prod);
 		} catch (Exception e) {
 		} catch (Exception e) {
 			e.printStackTrace();
 			e.printStackTrace();
 		}
 		}
@@ -148,11 +151,12 @@ public class ProductServiceImpl implements ProductService {
 
 
 	@Override
 	@Override
 	public void lockPurc(Long id) {
 	public void lockPurc(Long id) {
+        // TODO 这里之后要修改为只调用公共服务方法,B2B数据从公共服务同步
 		try {
 		try {
 			Product prod = productDao.findOne(id);
 			Product prod = productDao.findOne(id);
 			prod.setIsPurchase(Constant.NO);
 			prod.setIsPurchase(Constant.NO);
-			productDao.save(prod);
             ProductUtils.switchProduct(id, "purc", (int) Constant.NO);
             ProductUtils.switchProduct(id, "purc", (int) Constant.NO);
+            productDao.save(prod);
 		} catch (Exception e) {
 		} catch (Exception e) {
 			e.printStackTrace();
 			e.printStackTrace();
 		}
 		}
@@ -385,34 +389,10 @@ public class ProductServiceImpl implements ProductService {
 
 
 	@Override
 	@Override
 	public List<ProductMatchResult> matchaone(Long id) throws Exception {
 	public List<ProductMatchResult> matchaone(Long id) throws Exception {
-		List<ProductMatchResult> results = productMatchResultDao.findByPrid(id);
-		if (CollectionUtils.isEmpty(results)) {// 如果还没有匹配过,再次进行匹配
-			Product prod = productDao.findOne(id);
-			if (prod != null) {
-				List<Component> components = componentService.findByCode(prod.getCmpCode());
-				short i = 1;
-				results = new ArrayList<ProductMatchResult>();
-				if (!CollectionUtils.isEmpty(components)) {
-					for (Component cmp : components) {
-						ProductMatchResult re = new ProductMatchResult();
-						re.setBrandcn(cmp.getBrand().getNameCn());
-						re.setBranden(cmp.getBrand().getNameEn());
-						re.setBrid(cmp.getBrandid());
-						re.setCmpcode(cmp.getCode());
-						re.setCmpid(cmp.getId());
-						re.setKindcn(cmp.getKind().getNameCn());
-						re.setKinden(cmp.getKind().getNameEn());
-						re.setKindid(cmp.getKindid());
-						re.setNumber(i);
-						re.setPrid(id);
-						re.setUuid(cmp.getUuid());
-						results.add(re);
-					}
-					ProductUtils.saveProductMatchResults(results);
-				}
-			}
-		}
-		return results;
+		List<Long> ids = new ArrayList<>();
+		ids.add(id);
+		ProductUtils.matchChoose(SystemSession.getUser().getEnterprise().getUu(), ids);
+		return null;
 	}
 	}
 
 
 	@Override
 	@Override

+ 52 - 2
src/main/java/com/uas/platform/b2b/service/impl/PurchaseInquiryServiceImpl.java

@@ -492,7 +492,57 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 		}
 		}
 	}
 	}
 
 
+	/**
+	 * 不使用关键词搜索时,从数据库直接获取已失效询价单列表
+	 *
+	 * @param pageInfo 页面参数
+	 * @param keyword  关键词
+	 * @param filter   搜索过滤条件
+	 * @return
+	 */
 	@Override
 	@Override
+	public SPage<PurchaseInquiryItem> findInvalidByPageInfo(PageInfo pageInfo, String keyword, SearchFilter filter) {
+		Date date = new Date();
+		Calendar now = Calendar.getInstance();
+		now.setTime(date);
+		// 判断时间设置为23:59:59 ,截止报价日期当天也可报价
+		now.set(Calendar.HOUR_OF_DAY, 23);
+		now.set(Calendar.MINUTE, 59);
+		now.set(Calendar.SECOND, 59);
+		// 增加已失效过滤条件
+		pageInfo.expression(PredicateUtils.or(
+				// 状态为314 已作废
+				PredicateUtils.eq("status", Status.DISABLED.value(), false),
+				// invalid 为1,已过客户报价有效截止日期
+				PredicateUtils.eq("invalid", Constant.YES, true),
+				// 未回复且客户系统已提交(this.status == 200 && null != this.getInquiry().getCheck() && this.getInquiry().getCheck() == 1)
+				PredicateUtils.and(PredicateUtils.eq("status", Status.NOT_REPLY.value(), false),
+						PredicateUtils.or(PredicateUtils.isNull("inquiry.check"),
+								PredicateUtils.eq("inquiry.check", Constant.YES, false))),
+				// 未回复但是已过报价截止日期
+				PredicateUtils.and(PredicateUtils.eq("status", Status.NOT_REPLY.value(), false),
+						PredicateUtils.lte("inquiry.endDate", now.getTime(), false))
+
+		));
+		return findByPageInfo(pageInfo, keyword, filter);
+	}
+
+    /**
+     * 不使用关键词搜索时,从数据库直接获取待报价询价单列表
+     *
+     * @param pageInfo 页面参数
+     * @param keyword  关键词
+     * @param filter   搜索过滤条件
+     * @return
+     */
+    @Override
+    public SPage<PurchaseInquiryItem> findTodoByPageInfo(PageInfo pageInfo, String keyword, SearchFilter filter) {
+        // 提交状态不为1
+        pageInfo.expression(PredicateUtils.or(PredicateUtils.isNull("inquiry.check"), PredicateUtils.eq("inquiry.check", Constant.NO, false)));
+        return findByPageInfo(pageInfo, keyword, filter);
+    }
+
+    @Override
 	public SPage<PurchaseInquiryItem> findByPageInfo(final PageInfo pageInfo, final String keyword,
 	public SPage<PurchaseInquiryItem> findByPageInfo(final PageInfo pageInfo, final String keyword,
 			final SearchFilter filter) {
 			final SearchFilter filter) {
 		SPage<PurchaseInquiryItem> items = new SPage<PurchaseInquiryItem>();
 		SPage<PurchaseInquiryItem> items = new SPage<PurchaseInquiryItem>();
@@ -703,7 +753,7 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 			List<PurchaseInquiry> inquiries = purchaseInquiryDao.findByEnUUAndSourceId(SystemSession.getUser().getEnterprise().getUu(), sourceId);
 			List<PurchaseInquiry> inquiries = purchaseInquiryDao.findByEnUUAndSourceId(SystemSession.getUser().getEnterprise().getUu(), sourceId);
 			if (!CollectionUtils.isEmpty(inquiries)) {
 			if (!CollectionUtils.isEmpty(inquiries)) {
 				for (PurchaseInquiryItem inquiryItem : inquiries.get(0).getInquiryItems()) {
 				for (PurchaseInquiryItem inquiryItem : inquiries.get(0).getInquiryItems()) {
-					inquiryItem.setOverdue(Constant.YES);  // 修改此字段触发索引
+					inquiryItem.setErpstatus(Constant.NO);  // 修改此字段触发索引
 					saveItems.add(inquiryItem);
 					saveItems.add(inquiryItem);
 				}
 				}
 			}
 			}
@@ -724,7 +774,7 @@ public class PurchaseInquiryServiceImpl implements PurchaseInquiryService {
 				inquiry.setCheck(Constant.NO);  // 反提交
 				inquiry.setCheck(Constant.NO);  // 反提交
 				saveInquiries.add(inquiry);
 				saveInquiries.add(inquiry);
 				for (PurchaseInquiryItem inquiryItem : inquiry.getInquiryItems()) {
 				for (PurchaseInquiryItem inquiryItem : inquiry.getInquiryItems()) {
-					inquiryItem.setOverdue(Constant.NO);  // 修改此字段触发索引
+					inquiryItem.setErpstatus(Constant.YES);  // 修改此字段触发索引
 					saveItems.add(inquiryItem);
 					saveItems.add(inquiryItem);
 				}
 				}
 			}
 			}

+ 3 - 3
src/main/webapp/resources/tpl/index/approvalFlow/prodList.html

@@ -208,9 +208,9 @@
 							<button type="button" class="btn btn-default btn-line"
 							<button type="button" class="btn btn-default btn-line"
 									ng-class="{'btn-info':active=='nonstandard'}" ng-click="setActive('nonstandard')">非标准</button>
 									ng-class="{'btn-info':active=='nonstandard'}" ng-click="setActive('nonstandard')">非标准</button>
 						</div>
 						</div>
-                        <div class="btn-group btn-group-sm">
-                            <button id="match" type="button" class="btn btn-default btn-line" ng-click="matchall()">一键匹配</button>
-                        </div>
+                        <!--<div class="btn-group btn-group-sm">-->
+                            <!--<button id="match" type="button" class="btn btn-default btn-line" ng-click="matchall()">一键匹配</button>-->
+                        <!--</div>-->
 					</div>
 					</div>
 				</div>
 				</div>
 			</div>
 			</div>

+ 3 - 3
src/main/webapp/resources/tpl/index/baseInfo/prodList.html

@@ -238,9 +238,9 @@ width: 80px;
 							<button type="button" class="btn btn-default btn-line"
 							<button type="button" class="btn btn-default btn-line"
 									ng-class="{'btn-info':active=='nonstandard'}" ng-click="setActive('nonstandard')">非标准</button>
 									ng-class="{'btn-info':active=='nonstandard'}" ng-click="setActive('nonstandard')">非标准</button>
 						</div>
 						</div>
-                        <div class="btn-group btn-group-sm">
-                            <button id="match" type="button" class="btn btn-default btn-line" ng-click="matchall()">一键匹配</button>
-                        </div>
+                        <!--<div class="btn-group btn-group-sm">-->
+                            <!--<button id="match" type="button" class="btn btn-default btn-line" ng-click="matchall()">一键匹配</button>-->
+                        <!--</div>-->
 					</div>
 					</div>
 				</div>
 				</div>
 			</div>
 			</div>

+ 3 - 3
src/main/webapp/resources/tpl/index/purc/prodList.html

@@ -209,9 +209,9 @@
 							<button type="button" class="btn btn-default btn-line"
 							<button type="button" class="btn btn-default btn-line"
 									ng-class="{'btn-info':active=='nonstandard'}" ng-click="setActive('nonstandard')">非标准</button>
 									ng-class="{'btn-info':active=='nonstandard'}" ng-click="setActive('nonstandard')">非标准</button>
 						</div>
 						</div>
-                        <div class="btn-group btn-group-sm">
-                            <button id="match" type="button" class="btn btn-default btn-line" ng-click="matchall()">一键匹配</button>
-                        </div>
+                        <!--<div class="btn-group btn-group-sm">-->
+                            <!--<button id="match" type="button" class="btn btn-default btn-line" ng-click="matchall()">一键匹配</button>-->
+                        <!--</div>-->
 					</div>
 					</div>
 				</div>
 				</div>
 			</div>
 			</div>

+ 1 - 1
src/main/webapp/resources/tpl/index/sale/inquiry.html

@@ -313,7 +313,7 @@
 					<span
 					<span
 							ng-bind="::inquiryItem.inquiry.enterprise.enName"></span>
 							ng-bind="::inquiryItem.inquiry.enterprise.enName"></span>
 					<span>流水号:<a title="查看详情"
 					<span>流水号:<a title="查看详情"
-						class="text-num order-detail" ng-bind="::inquiryItem.inquiry.code" ui-sref="sale.inquiry_detail({id:inquiryItem.id})" target="_self"
+						class="text-num order-detail" ng-bind="::inquiryItem.inquiry.code" ui-sref="sale.inquiry_detail({id:inquiryItem.inquiry.id})" target="_self"
 						ng-click="setOrdersRead(inquiryItem.id)"></a>
 						ng-click="setOrdersRead(inquiryItem.id)"></a>
 					</span>
 					</span>
 				</div>
 				</div>