Browse Source

【新增采购管理】

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@4839 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
aof 9 years ago
parent
commit
48d13f3f9e

+ 130 - 1
src/main/java/com/uas/platform/b2b/controller/SaleOrderController.java

@@ -154,7 +154,7 @@ public class SaleOrderController {
 		}
 		return purchaseOrderService.findTodoByPageInfo(info, filter);
 	}
-
+	
 	/**
 	 * 作为卖家,收到的采购订单(含明细)(已回复)
 	 * 
@@ -431,4 +431,133 @@ public class SaleOrderController {
 		logger.log("客户采购单", "导出Excel列表", "导出待交货Excel列表");
 		return modelAndView;
 	}
+	
+	/**
+	 * 作为买家,收到的采购订单(含明细)
+	 * 
+	 * @param params
+	 * @return
+	 */
+	@RequestMapping(value = "/items/purc", method = RequestMethod.GET)
+	@ResponseBody
+	public Page<PurchaseOrderAll> getAllPurcOrderItems(PageParams params, String searchFilter) {
+		PageInfo info = new PageInfo(params);
+		logger.log("平台采购单", "查看收到的采购订单列表(包括采购明细)(全部)");
+		// 我作为买家,把我的企业ID作为供应商ID传入
+		info.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
+		SearchFilter filter = FlexJsonUtils.fromJson(searchFilter, SearchFilter.class);
+		// 判断当前用户是否被客户分配
+		SearchFilter filter2 = userService.distribute();
+		if (filter2 != null) {
+			if (filter2.getDistribute() == null) {
+				return null;
+			} else {
+				filter.setDistribute(filter2.getDistribute());
+			}
+		}
+		return purchaseOrderService.findAllDetailByPageInfo(info, filter);
+	}
+	
+	
+	/**
+	 * 作为买家(常见是有UAS系统的,万利达这种),发出的采购订单(含明细)(待回复)
+	 * 
+	 * @param params
+	 * @return
+	 */
+	@RequestMapping(value = "/items/purc", params = RequestState.TODO, method = RequestMethod.GET)
+	@ResponseBody
+	public Page<PurchaseOrderTodo> getTodoPurcOrderItems(PageParams params, String searchFilter) {
+		logger.log("平台采购单", "查看发出的采购订单列表(包括采购明细)(待回复)");
+		PageInfo info = new PageInfo(params);
+		// 我作为买家,把我的企业ID作为供应商ID传入
+		info.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
+		SearchFilter filter = FlexJsonUtils.fromJson(searchFilter, SearchFilter.class);
+		// 判断当前用户是否被客户分配
+		SearchFilter filter2 = userService.distribute();
+		if (filter2 != null) {
+			if (filter2.getDistribute() == null) {
+				return null;
+			} else {
+				filter.setDistribute(filter2.getDistribute());
+			}
+		}
+		return purchaseOrderService.findTodoByPageInfo(info, filter);
+	}
+	
+	/**
+	 * 作为买家(常见是有UAS系统的,万利达这种),发出的采购订单(含明细)(已回复)
+	 * 
+	 * @param params
+	 * @return
+	 */
+	@RequestMapping(value = "/items/purc", params = RequestState.DONE, method = RequestMethod.GET)
+	@ResponseBody
+	public Page<PurchaseOrderDone> getDonePurcOrderItems(PageParams params, String searchFilter) {
+		logger.log("平台采购单", "查看收到的采购订单列表(包括采购明细)(已回复)");
+		PageInfo info = new PageInfo(params);
+		// 我作为买家,把我的企业ID作为供应商ID传入
+		info.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
+		SearchFilter filter = FlexJsonUtils.fromJson(searchFilter, SearchFilter.class);
+		// 判断当前用户是否被客户分配
+		SearchFilter filter2 = userService.distribute();
+		if (filter2 != null) {
+			if (filter2.getDistribute() == null) {
+				return null;
+			} else {
+				filter.setDistribute(filter2.getDistribute());
+			}
+		}
+		return purchaseOrderService.findDoneByPageInfo(info, filter);
+	}
+
+	/**
+	 * 作为卖家,收到的采购订单(含明细)(已结案)
+	 * 
+	 * @param params
+	 * @return
+	 */
+	@RequestMapping(value = "/items/purc", params = RequestState.END, method = RequestMethod.GET)
+	@ResponseBody
+	public Page<PurchaseOrderEnd> getEndPurcOrderItems(PageParams params, String searchFilter) {
+		logger.log("平台采购单", "查看收到的采购订单列表(包括采购明细)(已结案)");
+		PageInfo info = new PageInfo(params);
+		// 我作为买家,把我的企业ID作为供应商ID传入
+		info.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
+		SearchFilter filter = FlexJsonUtils.fromJson(searchFilter, SearchFilter.class);
+		// 判断当前用户是否被客户分配
+		SearchFilter filter2 = userService.distribute();
+		if (filter2 != null) {
+			if (filter2.getDistribute() == null) {
+				return null;
+			} else {
+				filter.setDistribute(filter2.getDistribute());
+			}
+		}
+		return purchaseOrderService.findEndByPageInfo(info, filter);
+	}
+
+	/**
+	 * @param params
+	 * @param searchFilter
+	 *  获取待发货的订单
+	 */
+	@RequestMapping(value = "/items/purc", params = RequestState.WAITING, method = RequestMethod.GET)
+	@ResponseBody
+	public Page<PurchaseOrderWaiting> getWaitingPurcOrderItems(PageParams params, String searchFilter) {
+		logger.log("平台采购单", "查看收到的采购订单列表(包括采购明细)(待交货)");
+		PageInfo info = new PageInfo(params);
+		info.filter("enUU", SystemSession.getUser().getEnterprise().getUu());
+		SearchFilter filter = FlexJsonUtils.fromJson(searchFilter, SearchFilter.class);
+		// 判断当前用户是否被客户分配
+		SearchFilter filter2 = userService.distribute();
+		if (filter2 != null) {
+			if (filter2.getDistribute() == null) {
+				return null;
+			} else {
+				filter.setDistribute(filter2.getDistribute());
+			}
+		}
+		return purchaseOrderService.findWaitingByPageInfo(info, filter);
+	}
 }

+ 2 - 0
src/main/java/com/uas/platform/b2b/controller/SnapshotController.java

@@ -128,6 +128,8 @@ public class SnapshotController {
 		modelMap.put("apBillAll", purchaseApBillService.getAllCount());
 		modelMap.put("arCheckAll", saleARCheckService.getAllCount());
 		modelMap.put("arCheckToConfirm", saleARCheckService.getCountByenUUAndStatus());
+		//采购
+		modelMap.put("purc", purchaseOrderService.getPurcByenUUAdnStatus(SystemSession.getUser().getEnterprise().getUu()));
 		return modelMap;
 	}
 

+ 11 - 0
src/main/java/com/uas/platform/b2b/dao/PurchaseOrderDao.java

@@ -31,5 +31,16 @@ public interface PurchaseOrderDao extends JpaSpecificationExecutor<PurchaseOrder
 	 */
 	@Query("select count(o) from PurchaseOrder o where o.vendUU = :vendUU and o.status = :status")
 	public int getCountByVendUUAndStatus(@Param("vendUU") long vendUU, @Param("status") short status);
+	
+	/**
+	 * 按采购单的供应商企业UU来统计条数
+	 * 
+	 * @param vendUU
+	 * @param status
+	 * @return
+	 */
+	@Query("select count(o) from PurchaseOrder o where o.enUU = :enUU")
+	public long getPurcCounByEnUU(@Param("enUU") long enUU);
+	
 
 }

+ 17 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderAll.java

@@ -17,6 +17,7 @@ import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.SequenceGenerator;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 /**
  * 平台里面,以供应商的角度来查看采购订单 <br>
@@ -175,6 +176,12 @@ public class PurchaseOrderAll {
 	 */
 	@Column(name = "pu_receivecode")
 	private String receiveCode;
+	
+	/**
+	 * 供应商名称
+	 */
+	@Transient
+	private String enName;
 
 	public Long getId() {
 		return id;
@@ -368,4 +375,14 @@ public class PurchaseOrderAll {
 	public void setReceiveCode(String receiveCode) {
 		this.receiveCode = receiveCode;
 	}
+
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+	
+	
 }

+ 17 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderDone.java

@@ -14,6 +14,7 @@ import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 import org.hibernate.annotations.Where;
 
@@ -181,6 +182,12 @@ public class PurchaseOrderDone {
 	 */
 	@Column(name = "pu_receivecode")
 	private String receiveCode;
+	
+	/**
+	 * 供应商名称
+	 */
+	@Transient
+	private String enName;
 
 	public Long getId() {
 		return id;
@@ -382,4 +389,14 @@ public class PurchaseOrderDone {
 	public void setReceiveCode(String receiveCode) {
 		this.receiveCode = receiveCode;
 	}
+
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+	
+	
 }

+ 17 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderEnd.java

@@ -14,6 +14,7 @@ import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 import org.hibernate.annotations.Where;
 
@@ -181,6 +182,12 @@ public class PurchaseOrderEnd {
 	 */
 	@Column(name = "pu_receivecode")
 	private String receiveCode;
+	
+	/**
+	 * 供应商名称
+	 */
+	@Transient
+	private String enName;
 
 	public Long getId() {
 		return id;
@@ -382,4 +389,14 @@ public class PurchaseOrderEnd {
 	public void setReceiveCode(String receiveCode) {
 		this.receiveCode = receiveCode;
 	}
+
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+	
+	
 }

+ 16 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderTodo.java

@@ -14,6 +14,7 @@ import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 import org.hibernate.annotations.Where;
 
@@ -176,6 +177,12 @@ public class PurchaseOrderTodo {
 	@Column(name = "pu_receivecode")
 	private String receiveCode;
 	
+	/**
+	 * 供应商UU
+	 */
+	@Transient
+	private String enName;
+	
 
 	public Long getId() {
 		return id;
@@ -369,4 +376,13 @@ public class PurchaseOrderTodo {
 	public void setReceiveCode(String receiveCode) {
 		this.receiveCode = receiveCode;
 	}
+
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+	
 }

+ 17 - 0
src/main/java/com/uas/platform/b2b/model/PurchaseOrderWaiting.java

@@ -14,6 +14,7 @@ import javax.persistence.OneToMany;
 import javax.persistence.OneToOne;
 import javax.persistence.OrderBy;
 import javax.persistence.Table;
+import javax.persistence.Transient;
 
 import org.hibernate.annotations.Where;
 
@@ -93,6 +94,12 @@ public class PurchaseOrderWaiting {
 	 */
 	@Column(name = "pu_venduu")
 	private Long vendUU;
+	
+	/**
+	 * 供应商名称
+	 */
+	@Transient
+	private String enName;
 
 	/**
 	 * 供应商联系人UU
@@ -367,4 +374,14 @@ public class PurchaseOrderWaiting {
 	public void setReceiveCode(String receiveCode) {
 		this.receiveCode = receiveCode;
 	}
+
+	public String getEnName() {
+		return enName;
+	}
+
+	public void setEnName(String enName) {
+		this.enName = enName;
+	}
+	
+	
 }

+ 7 - 0
src/main/java/com/uas/platform/b2b/service/PurchaseOrderService.java

@@ -226,4 +226,11 @@ public interface PurchaseOrderService {
 	 */
 	public Long getAllCount();
 	
+	/**
+	 * 返回企业下的采购订单(UAS用户在平台查询)
+	 * @return
+	 */
+	public long getPurcByenUUAdnStatus(Long uu);
+
+	
 }

+ 40 - 5
src/main/java/com/uas/platform/b2b/service/impl/PurchaseOrderServiceImpl.java

@@ -164,9 +164,15 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 						return query.where(predicates).getRestriction();
 					}
 				}, pageInfo);
+		List<PurchaseOrderAll> orders = pageOrders.getContent();
+		for (PurchaseOrderAll order : orders) {
+			Enterprise enter = enterpriseDao.findEnterpriseByUu(order.getVendUU());
+			if(enter != null) {
+				order.setEnName(enter.getEnName());
+			}
+		}
 		// 明细包含关键词
 		if (filter != null) {
-			List<PurchaseOrderAll> orders = pageOrders.getContent();
 			if (!CollectionUtils.isEmpty(orders)) {
 				for (PurchaseOrderAll order : orders) {
 					if (!CollectionUtils.isEmpty(order.getOrderItems())) {
@@ -431,9 +437,15 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 								.getRestriction();
 					}
 				}, pageInfo);
+		List<PurchaseOrderTodo> orders = pageOrders.getContent();
+		for (PurchaseOrderTodo order : orders) {
+			Enterprise enter = enterpriseDao.findEnterpriseByUu(order.getVendUU());
+			if(enter != null) {
+				order.setEnName(enter.getEnName());
+			}
+		}
 		// 明细包含关键词
 		if (filter != null && StringUtils.hasText(filter.getKeyword())) {
-			List<PurchaseOrderTodo> orders = pageOrders.getContent();
 			if (!CollectionUtils.isEmpty(orders)) {
 				for (PurchaseOrderTodo order : orders) {
 					if (!CollectionUtils.isEmpty(order.getOrderItems())) {
@@ -480,9 +492,15 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 								.getRestriction();
 					}
 				}, pageInfo);
+		List<PurchaseOrderDone> orders = pageOrders.getContent();
+		for (PurchaseOrderDone order : orders) {
+			Enterprise enter = enterpriseDao.findEnterpriseByUu(order.getVendUU());
+			if(enter != null) {
+				order.setEnName(enter.getEnName());
+			}
+		}
 		// 明细包含关键词
 		if (filter != null && StringUtils.hasText(filter.getKeyword())) {
-			List<PurchaseOrderDone> orders = pageOrders.getContent();
 			if (!CollectionUtils.isEmpty(orders)) {
 				for (PurchaseOrderDone order : orders) {
 					if (!CollectionUtils.isEmpty(order.getOrderItems())) {
@@ -529,9 +547,15 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 								.getRestriction();
 					}
 				}, pageInfo);
+		List<PurchaseOrderEnd> orders = pageOrders.getContent();
+		for (PurchaseOrderEnd order : orders) {
+			Enterprise enter = enterpriseDao.findEnterpriseByUu(order.getVendUU());
+			if(enter != null) {
+				order.setEnName(enter.getEnName());
+			}
+		}
 		// 明细包含关键词
 		if (filter != null && StringUtils.hasText(filter.getKeyword())) {
-			List<PurchaseOrderEnd> orders = pageOrders.getContent();
 			if (!CollectionUtils.isEmpty(orders)) {
 				for (PurchaseOrderEnd order : orders) {
 					if (!CollectionUtils.isEmpty(order.getOrderItems())) {
@@ -579,9 +603,15 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 								.getRestriction();
 					}
 				}, pageInfo);
+		List<PurchaseOrderWaiting> orders = pageOrders.getContent();
+		for (PurchaseOrderWaiting order : orders) {
+			Enterprise enter = enterpriseDao.findEnterpriseByUu(order.getVendUU());
+			if(enter != null) {
+				order.setEnName(enter.getEnName());
+			}
+		}
 		// 明细包含关键词
 		if (filter != null && StringUtils.hasText(filter.getKeyword())) {
-			List<PurchaseOrderWaiting> orders = pageOrders.getContent();
 			if (!CollectionUtils.isEmpty(orders)) {
 				for (PurchaseOrderWaiting order : orders) {
 					if (!CollectionUtils.isEmpty(order.getOrderItems())) {
@@ -636,4 +666,9 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 		return purchaseOrderAllItemDao.findOrderItemCountByEnUU(uu);
 	}
 
+	@Override
+	public long getPurcByenUUAdnStatus(Long uu) {
+		return purchaseOrderDao.getPurcCounByEnUU(uu);
+	}
+
 }