Просмотр исходного кода

提供接口,uas端禁用物料时调用接口同步禁用b2b平台的此物料

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@10755 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
huangct 8 лет назад
Родитель
Сommit
8419cc5aa5

+ 4 - 0
src/main/java/com/uas/platform/b2b/controller/ProductController.java

@@ -1,6 +1,7 @@
 package com.uas.platform.b2b.controller;
 
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
 
 import org.springframework.beans.factory.annotation.Autowired;
@@ -65,6 +66,9 @@ public class ProductController {
 		if (custUU != null && custUU != 0) {
 			pageParams.getFilters().put("pr_enuu", custUU);
 			pageParams.getFilters().put("pr_issale", Constant.YES);
+			HashMap<String, Object> map = new HashMap<>();
+			map.put("pr_b2benabled", Constant.YES);
+			pageParams.setNotEqualFilters(map);
 			List<Sort> sortList = new ArrayList<>();
 			sortList.add(new Sort("pr_id", false, Type.LONG, new Long(1)));
 			pageParams.getFilters().put(SearchConstants.SORT_KEY, sortList);

+ 10 - 4
src/main/java/com/uas/platform/b2b/dao/ProductDao.java

@@ -3,11 +3,9 @@ package com.uas.platform.b2b.dao;
 import java.util.List;
 
 import javax.persistence.QueryHint;
+import javax.transaction.Transactional;
 
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
-import org.springframework.data.jpa.repository.Query;
-import org.springframework.data.jpa.repository.QueryHints;
+import org.springframework.data.jpa.repository.*;
 import org.springframework.data.jpa.repository.query.Procedure;
 import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
@@ -231,4 +229,12 @@ public interface ProductDao extends JpaSpecificationExecutor<Product>, JpaReposi
 	 */
 	List<Product> findByEnUUAndPcmpcodeAndPbrand(Long enuu, String pcmpcoe, String brand);
 
+	/**
+	 * 通过企业uu和物料编号禁用物料
+	 *
+	 */
+	@Transactional
+	@Modifying
+	@Query("update Product p set p.b2benabled = :b2benabled where p.enUU = :enUU and p.code = :code")
+	public int updateB2bEnabled(@Param("enUU") Long enUU, @Param("code") String code, @Param("b2benabled") Short b2benabled);
 }

+ 27 - 13
src/main/java/com/uas/platform/b2b/erp/controller/ProdController.java

@@ -1,26 +1,26 @@
 package com.uas.platform.b2b.erp.controller;
 
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.commons.collections.CollectionUtils;
-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.RequestParam;
-import org.springframework.web.bind.annotation.ResponseBody;
-
 import com.uas.platform.b2b.erp.model.Prod;
 import com.uas.platform.b2b.erp.service.ProdService;
 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.core.logging.BufferedLoggerManager;
+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.stereotype.Controller;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 对ERP的数据接口<br>
@@ -106,4 +106,18 @@ public class ProdController {
 	public void refreshDownloadstatus(@RequestParam("data") String data) throws UnsupportedEncodingException {
 		productService.onProductDownSuccess(URLDecoder.decode(data, "UTF-8").split(","));
 	}
+
+	/**
+	 * UAS端禁用物料时调用此接口使B2B也禁用此物料
+	 * 通过物料编码(code)
+	 *
+	 * @param data
+	 */
+	@RequestMapping(value = "/updateB2bEnabled", method = RequestMethod.GET)
+	@ResponseBody
+	public int updateB2bEnabled(@RequestParam("data") String data) throws UnsupportedEncodingException {
+		String code = URLDecoder.decode(data, "UTF-8");
+		Short b2benabled = Constant.YES;
+		return productService.updateB2bEnabled(code, b2benabled);
+	}
 }

+ 78 - 20
src/main/java/com/uas/platform/b2b/model/Product.java

@@ -1,29 +1,15 @@
 package com.uas.platform.b2b.model;
 
-import java.util.Date;
-import java.util.Set;
-
-import javax.persistence.Cacheable;
-import javax.persistence.CascadeType;
-import javax.persistence.Column;
-import javax.persistence.Entity;
-import javax.persistence.FetchType;
-import javax.persistence.GeneratedValue;
-import javax.persistence.GenerationType;
-import javax.persistence.Id;
-import javax.persistence.JoinColumn;
-import javax.persistence.OneToMany;
-import javax.persistence.OneToOne;
-import javax.persistence.SequenceGenerator;
-import javax.persistence.Table;
-
-import org.hibernate.annotations.Cache;
-import org.hibernate.annotations.CacheConcurrencyStrategy;
-
 import com.uas.platform.core.persistence.EnterpriseUU;
 import com.uas.platform.core.persistence.Logger;
 import com.uas.platform.core.persistence.StatusColumn;
 import com.uas.platform.core.persistence.UserUU;
+import org.hibernate.annotations.Cache;
+import org.hibernate.annotations.CacheConcurrencyStrategy;
+
+import javax.persistence.*;
+import java.util.Date;
+import java.util.Set;
 
 /**
  * 商品信息
@@ -312,12 +298,45 @@ public class Product {
 	@Column(name = "pr_b2cenabled")
 	private Short b2cenabled;
 
+	/**
+	 * uas与b2b可用状态;<br>
+	 * 1 已禁用 <br>
+	 * 0 可用状态,未禁用
+	 */
+	@Column(name = "pr_b2benabled")
+	private Short b2benabled;
+
 	/**
 	 * 匹配成标准的日期
 	 */
 	@Column(name = "pr_tostandard")
 	private Date tostandard;
 
+	/**
+	 * 编码版本号
+	 */
+	@Column(name = "pr_goodsnover")
+	private String goodsnover;
+
+	/**
+	 * 税收分类编码
+	 */
+	@Column(name = "pr_goodstaxno")
+	private String goodstaxno;
+
+	/**
+	 * 是否享受优惠政策
+	 */
+	@Column(name = "pr_taxpre")
+	private String taxpre;
+
+	/**
+	 * 享受优惠政策内容
+	 */
+	@Column(name = "pr_taxprecon")
+	private String taxprecon;
+
+
 	public Product() {
 	}
 
@@ -662,6 +681,14 @@ public class Product {
 		this.b2cenabled = b2cenabled;
 	}
 
+	public Short getB2benabled() {
+		return b2benabled;
+	}
+
+	public void setB2benabled(Short b2benabled) {
+		this.b2benabled = b2benabled;
+	}
+
 	public Date getTostandard() {
 		return tostandard;
 	}
@@ -670,4 +697,35 @@ public class Product {
 		this.tostandard = tostandard;
 	}
 
+	public String getGoodsnover() {
+		return goodsnover;
+	}
+
+	public void setGoodsnover(String goodsnover) {
+		this.goodsnover = goodsnover;
+	}
+
+	public String getGoodstaxno() {
+		return goodstaxno;
+	}
+
+	public void setGoodstaxno(String goodstaxno) {
+		this.goodstaxno = goodstaxno;
+	}
+
+	public String getTaxpre() {
+		return taxpre;
+	}
+
+	public void setTaxpre(String taxpre) {
+		this.taxpre = taxpre;
+	}
+
+	public String getTaxprecon() {
+		return taxprecon;
+	}
+
+	public void setTaxprecon(String taxprecon) {
+		this.taxprecon = taxprecon;
+	}
 }

+ 6 - 0
src/main/java/com/uas/platform/b2b/service/ProductService.java

@@ -177,4 +177,10 @@ public interface ProductService {
 	void setReadByOrder(String category, Long[] sourceId);
 
 	List<Object[]> getProductCount(String category);
+
+	/**
+	 * 禁用物料
+	 * @param code
+	 */
+	public int updateB2bEnabled(String code, Short b2benabled);
 }

+ 23 - 29
src/main/java/com/uas/platform/b2b/service/impl/ProductServiceImpl.java

@@ -1,36 +1,9 @@
 package com.uas.platform.b2b.service.impl;
 
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-import javax.persistence.criteria.CriteriaBuilder;
-import javax.persistence.criteria.CriteriaQuery;
-import javax.persistence.criteria.Predicate;
-import javax.persistence.criteria.Root;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.Page;
-import org.springframework.data.jpa.domain.Specification;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.ui.ModelMap;
-import org.springframework.util.CollectionUtils;
-import org.springframework.util.StringUtils;
-
 import com.uas.platform.b2b.core.util.ContextUtils;
-import com.uas.platform.b2b.dao.CommonDao;
-import com.uas.platform.b2b.dao.ComponentDao;
-import com.uas.platform.b2b.dao.ProductDao;
-import com.uas.platform.b2b.dao.ProductMatchResultDao;
-import com.uas.platform.b2b.dao.ProductStoreStatusDao;
-import com.uas.platform.b2b.dao.UserOrderDao;
+import com.uas.platform.b2b.dao.*;
 import com.uas.platform.b2b.event.ProductSaveEvent;
-import com.uas.platform.b2b.model.Component;
-import com.uas.platform.b2b.model.Product;
-import com.uas.platform.b2b.model.ProductMatchResult;
-import com.uas.platform.b2b.model.ProductStoreStatus;
-import com.uas.platform.b2b.model.UpdateType;
+import com.uas.platform.b2b.model.*;
 import com.uas.platform.b2b.search.SearchService;
 import com.uas.platform.b2b.service.ProductService;
 import com.uas.platform.b2b.support.SystemSession;
@@ -42,6 +15,22 @@ import com.uas.platform.core.model.PageInfo;
 import com.uas.platform.core.model.Status;
 import com.uas.platform.core.persistence.criteria.PredicateUtils;
 import com.uas.search.b2b.model.SPage;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.ui.ModelMap;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
 
 @Service
 public class ProductServiceImpl implements ProductService {
@@ -487,4 +476,9 @@ public class ProductServiceImpl implements ProductService {
         }
 		userOrderDao.setReadStatus(SystemSession.getUser().getEnterprise().getUu(), SystemSession.getUser().getUserUU(), "products", category, (short) Status.READ.value(), temp);
 	}
+
+	@Override
+	public int updateB2bEnabled(String code, Short b2benabled) {
+		return productDao.updateB2bEnabled(SystemSession.getUser().getEnterprise().getUu(), code, b2benabled);
+	}
 }