Browse Source

1:对批量上架增加香港和大陆的最大最小交期字段。

yujia 8 years ago
parent
commit
9e471e8624

+ 121 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/model/Goods.java

@@ -396,6 +396,55 @@ public class Goods implements Serializable {
 	@Column(name = "go_b2cmindelivery")
 	private Short b2cMinDelivery;
 
+	/**
+	 * 用户自己填写的大陆最大交期
+	 */
+	@Column(name = "go_selfdeliverydemaxtime")
+	private Short selfMaxDeliveryDemTime;
+
+	/**
+	 * 用户自己填写大陆的最小交期
+	 */
+	@Column(name = "go_selfdeliverydemintime")
+	private Short selfMinDeliveryDemTime;
+
+	/**
+	 * 用户自己香港填写的最大交期
+	 */
+	@Column(name = "go_selfdeliveryhkmaxtime")
+	private Short selfMaxDeliveryhkTime;
+
+	/**
+	 * 用户自己香港填写的最小交期
+	 */
+	@Column(name = "go_selfdeliveryhkmintime")
+	private Short selfMinxDeliveryhkTime;
+
+	/**
+	 * 商城送货到大陆最长交期
+	 */
+	@Column(name = "go_deliverydemaxtime")
+	private Short b2cMaxDeliveryDemTime;
+
+	/**
+	 * 商城送货到大陆最短交期
+	 */
+	@Column(name = "go_deliverydemintime")
+	private Short b2cMinDeliveryDemTime;
+
+
+	/**
+	 * 商城送货到香港最长交期
+	 */
+	@Column(name = "go_deliveryhkmaxtime")
+	private Short b2cMaxDeliveryHKTime;
+
+	/**
+	 * 商城送货到香港最小交期
+	 */
+	@Column(name = "go_deliveryhkmintime")
+	private Short b2cMinDeliveryHKTime;
+
 	/**
 	 * 产品主键
 	 */
@@ -797,6 +846,42 @@ public class Goods implements Serializable {
 		return this;
 	}
 
+	public Short getSelfMaxDeliveryDemTime() {
+		return selfMaxDeliveryDemTime;
+	}
+
+	public Goods setSelfMaxDeliveryDemTime(Short selfMaxDeliveryDemTime) {
+		this.selfMaxDeliveryDemTime = selfMaxDeliveryDemTime;
+		return this;
+	}
+
+	public Short getSelfMinDeliveryDemTime() {
+		return selfMinDeliveryDemTime;
+	}
+
+	public Goods setSelfMinDeliveryDemTime(Short selfMinDeliveryDemTime) {
+		this.selfMinDeliveryDemTime = selfMinDeliveryDemTime;
+		return this;
+	}
+
+	public Short getSelfMaxDeliveryhkTime() {
+		return selfMaxDeliveryhkTime;
+	}
+
+	public Goods setSelfMaxDeliveryhkTime(Short selfMaxDeliveryhkTime) {
+		this.selfMaxDeliveryhkTime = selfMaxDeliveryhkTime;
+		return this;
+	}
+
+	public Short getSelfMinxDeliveryhkTime() {
+		return selfMinxDeliveryhkTime;
+	}
+
+	public Goods setSelfMinxDeliveryhkTime(Short selfMinxDeliveryhkTime) {
+		this.selfMinxDeliveryhkTime = selfMinxDeliveryhkTime;
+		return this;
+	}
+
 	public Short getMaxDelivery() {
 		return maxDelivery;
 	}
@@ -1252,4 +1337,40 @@ public class Goods implements Serializable {
 		}
 		return true;
 	}
+
+	public Short getB2cMaxDeliveryDemTime() {
+		return b2cMaxDeliveryDemTime;
+	}
+
+	public Goods setB2cMaxDeliveryDemTime(Short b2cMaxDeliveryDemTime) {
+		this.b2cMaxDeliveryDemTime = b2cMaxDeliveryDemTime;
+		return this;
+	}
+
+	public Short getB2cMinDeliveryDemTime() {
+		return b2cMinDeliveryDemTime;
+	}
+
+	public Goods setB2cMinDeliveryDemTime(Short b2cMinDeliveryDemTime) {
+		this.b2cMinDeliveryDemTime = b2cMinDeliveryDemTime;
+		return this;
+	}
+
+	public Short getB2cMaxDeliveryHKTime() {
+		return b2cMaxDeliveryHKTime;
+	}
+
+	public Goods setB2cMaxDeliveryHKTime(Short b2cMaxDeliveryHKTime) {
+		this.b2cMaxDeliveryHKTime = b2cMaxDeliveryHKTime;
+		return this;
+	}
+
+	public Short getB2cMinDeliveryHKTime() {
+		return b2cMinDeliveryHKTime;
+	}
+
+	public Goods setB2cMinDeliveryHKTime(Short b2cMinDeliveryHKTime) {
+		this.b2cMinDeliveryHKTime = b2cMinDeliveryHKTime;
+		return this;
+	}
 }

+ 68 - 4
src/main/java/com/uas/platform/b2c/prod/commodity/model/ReleaseProductByBatch.java

@@ -163,6 +163,30 @@ public class ReleaseProductByBatch implements Serializable {
 	@Column(name = "go_b2cmindelivery")
 	private Short b2cMinDelivery;
 
+	/**
+	 * 用户填写的大陆最长交期
+	 */
+	@Column(name = "rel_maxdeliverydemtime")
+	private Short maxdeliveryDemTime;
+
+	/**
+	 * 用户填写的大陆最短交期
+	 */
+	@Column(name = "rel_mindeliverydemtime")
+	private Short mindeliveryDemTime;
+
+	/**
+	 * 用户填写的香港最短交期
+	 */
+	@Column(name = "rel_mindeliveryhktime")
+	private Short mindeliveryHKTime;
+
+	/**
+	 * 用户填写的香港最长交期
+	 */
+	@Column(name = "rel_maxdeliveryhktime")
+	private Short maxdeliveryHKTime;
+
 	/**
 	 * 备注
 	 */
@@ -975,10 +999,10 @@ public class ReleaseProductByBatch implements Serializable {
 		goods.setCreatedDate(new Date());
 		goods.setUpdateDate(new Date());
 		// 交货周期 暂未做最长与最短
-//		goods.setB2cDeliveryDemMaxTime(releaseProductByBatch.getMaxdeliveryDemTime());
-//		goods.setB2cDeliveryDemMinTime(releaseProductByBatch.getMindeliveryDemTime());
-//		goods.setB2cDeliveryHKMaxTime(releaseProductByBatch.getMaxdeliveryHKTime());
-//		goods.setB2cDeliveryHKMinTime(releaseProductByBatch.getMindeliveryHKTime());
+		goods.setSelfMaxDeliveryDemTime(releaseProductByBatch.getMaxdeliveryDemTime());
+		goods.setSelfMinDeliveryDemTime(releaseProductByBatch.getMindeliveryDemTime());
+		goods.setSelfMaxDeliveryhkTime(releaseProductByBatch.getMaxdeliveryHKTime());
+		goods.setSelfMinxDeliveryhkTime(releaseProductByBatch.getMindeliveryHKTime());
 		goods.setProduceDate(releaseProductByBatch.getProductDate());
 		goods.setPublisherUU(releaseProductByBatch.getPublisherUu());
 		goods.setPublisherName(releaseProductByBatch.getPublisherName());
@@ -1034,4 +1058,44 @@ public class ReleaseProductByBatch implements Serializable {
 		this.branduuid = branduuid;
 		return this;
 	}
+
+	public static long getSerialVersionUID() {
+		return serialVersionUID;
+	}
+
+	public Short getMaxdeliveryDemTime() {
+		return maxdeliveryDemTime;
+	}
+
+	public ReleaseProductByBatch setMaxdeliveryDemTime(Short maxdeliveryDemTime) {
+		this.maxdeliveryDemTime = maxdeliveryDemTime;
+		return this;
+	}
+
+	public Short getMindeliveryDemTime() {
+		return mindeliveryDemTime;
+	}
+
+	public ReleaseProductByBatch setMindeliveryDemTime(Short mindeliveryDemTime) {
+		this.mindeliveryDemTime = mindeliveryDemTime;
+		return this;
+	}
+
+	public Short getMindeliveryHKTime() {
+		return mindeliveryHKTime;
+	}
+
+	public ReleaseProductByBatch setMindeliveryHKTime(Short mindeliveryHKTime) {
+		this.mindeliveryHKTime = mindeliveryHKTime;
+		return this;
+	}
+
+	public Short getMaxdeliveryHKTime() {
+		return maxdeliveryHKTime;
+	}
+
+	public ReleaseProductByBatch setMaxdeliveryHKTime(Short maxdeliveryHKTime) {
+		this.maxdeliveryHKTime = maxdeliveryHKTime;
+		return this;
+	}
 }

+ 63 - 67
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/ReleaseProductByBatchServiceImpl.java

@@ -271,89 +271,85 @@ public class ReleaseProductByBatchServiceImpl implements ReleaseProductByBatchSe
 					}
 
 					//交期时间
-					if(releaseProductByBatch.getCurrency() != null) {
+//					if(releaseProductByBatch.getCurrency() != null) {
+//						Object deliveryCellValue = readWorkBookCell(row.getCell(13), Cell.CELL_TYPE_STRING, r, 13);
+//						if (!StringUtils.isEmpty(deliveryCellValue)) {
+//							Short[] delivers = splitDeliveryString(deliveryCellValue.toString());
+//							if (delivers != null) {
+//								releaseProductByBatch.setB2cMinDelivery(delivers[0]);
+//								releaseProductByBatch.setB2cMaxDelivery(delivers[1]);
+//
+//								Boolean aBoolean = deliveryTimeBetween(releaseProductByBatch.getB2cMaxDelivery(), (short) 0, (short) 9);
+//								if(!aBoolean) {
+//									releaseProductByBatch.addErrmsg("14:交期的不在(0,9]天");
+//								}
+//								Boolean bBoolean = deliveryTimeBetween(releaseProductByBatch.getB2cMinDelivery(), (short) 0, (short) 9);
+//								if(!bBoolean) {
+//									releaseProductByBatch.addErrmsg("14:交期的不在(0,9]天");
+//								}
+//							}
+//						}
+//					}
+
+					// 大陆交期
+					if(releaseProductByBatch.getCurrency() != null && releaseProductByBatch.getCurrency().contains("RMB")) {
 						Object deliveryCellValue = readWorkBookCell(row.getCell(13), Cell.CELL_TYPE_STRING, r, 13);
 						if (!StringUtils.isEmpty(deliveryCellValue)) {
 							Short[] delivers = splitDeliveryString(deliveryCellValue.toString());
 							if (delivers != null) {
-								releaseProductByBatch.setB2cMinDelivery(delivers[0]);
-								releaseProductByBatch.setB2cMaxDelivery(delivers[1]);
+								releaseProductByBatch.setMindeliveryDemTime(delivers[0]);
+								releaseProductByBatch.setMaxdeliveryDemTime(delivers[1]);
 
-								Boolean aBoolean = deliveryTimeBetween(releaseProductByBatch.getB2cMaxDelivery(), (short) 0, (short) 9);
+								Boolean aBoolean = deliveryTimeBetween(releaseProductByBatch.getMaxdeliveryDemTime(), (short) 0, (short) 9);
 								if(!aBoolean) {
-									releaseProductByBatch.addErrmsg("14:交期的不在(0,9]天");
+									releaseProductByBatch.addErrmsg("14:大陆交期的不在(0,9]天");
 								}
-								Boolean bBoolean = deliveryTimeBetween(releaseProductByBatch.getB2cMinDelivery(), (short) 0, (short) 9);
+								Boolean bBoolean = deliveryTimeBetween(releaseProductByBatch.getMindeliveryDemTime(), (short) 0, (short) 9);
 								if(!bBoolean) {
-									releaseProductByBatch.addErrmsg("14:交期的不在(0,9]天");
+									releaseProductByBatch.addErrmsg("14:大陆交期的不在(0,9]天");
 								}
 							}
 						}
 					}
 
-//					// 大陆交期
-//					if(releaseProductByBatch.getCurrency() != null && releaseProductByBatch.getCurrency().contains("RMB")) {
-//						Object deliveryCellValue = readWorkBookCell(row.getCell(13), Cell.CELL_TYPE_STRING, r, 13);
-//						if (!StringUtils.isEmpty(deliveryCellValue)) {
-//							Short[] delivers = splitDeliveryString(deliveryCellValue.toString());
-//							if (delivers != null) {
-//								releaseProductByBatch.setMindeliveryDemTime(delivers[0]);
-//								releaseProductByBatch.setMaxdeliveryDemTime(delivers[1]);
-//
-//								Boolean aBoolean = deliveryTimeBetween(releaseProductByBatch.getMaxdeliveryDemTime(), (short) 0, (short) 9);
-//								if(!aBoolean) {
-//									releaseProductByBatch.addErrmsg("14:大陆交期的不在(0,9]天");
-//								}
-//								Boolean bBoolean = deliveryTimeBetween(releaseProductByBatch.getMindeliveryDemTime(), (short) 0, (short) 9);
-//								if(!bBoolean) {
-//									releaseProductByBatch.addErrmsg("14:大陆交期的不在(0,9]天");
-//								}
-//							}
-//						}
-//					}
-//
-//					// 香港交期
-//					if(releaseProductByBatch.getCurrency() != null && releaseProductByBatch.getCurrency().contains("USD")) {
-//						Object deliveryhkCellValue = readWorkBookCell(row.getCell(14), Cell.CELL_TYPE_STRING, r, 14);
-//						if (!StringUtils.isEmpty(deliveryhkCellValue)) {
-//							Short[] deliverys = splitDeliveryString(deliveryhkCellValue.toString());
-//							if (deliverys != null) {
-//								releaseProductByBatch.setMindeliveryHKTime(deliverys[0]);
-//								releaseProductByBatch.setMaxdeliveryHKTime(deliverys[1]);
-//
-//								Boolean aBoolean = deliveryTimeBetween(releaseProductByBatch.getMindeliveryHKTime(), (short) 0, (short) 9);
-//								if(!aBoolean) {
-//									releaseProductByBatch.addErrmsg("15:香港交期的不在(0,9]天");
-//								}
-//								Boolean bBoolean = deliveryTimeBetween(releaseProductByBatch.getMaxdeliveryHKTime(), (short) 0, (short) 9);
-//								if(!bBoolean) {
-//									releaseProductByBatch.addErrmsg("15:香港交期的不在(0,9]天");
-//								}
-//							}
-//						}
-//					}
+					// 香港交期
+					if(releaseProductByBatch.getCurrency() != null && releaseProductByBatch.getCurrency().contains("USD")) {
+						Object deliveryhkCellValue = readWorkBookCell(row.getCell(14), Cell.CELL_TYPE_STRING, r, 14);
+						if (!StringUtils.isEmpty(deliveryhkCellValue)) {
+							Short[] deliverys = splitDeliveryString(deliveryhkCellValue.toString());
+							if (deliverys != null) {
+								releaseProductByBatch.setMindeliveryHKTime(deliverys[0]);
+								releaseProductByBatch.setMaxdeliveryHKTime(deliverys[1]);
 
-					if (releaseProductByBatch.getB2cMaxDelivery() == null) {
-						releaseProductByBatch.addErrmsg("14-15:您必须填写交期时间");
+								Boolean aBoolean = deliveryTimeBetween(releaseProductByBatch.getMindeliveryHKTime(), (short) 0, (short) 9);
+								if(!aBoolean) {
+									releaseProductByBatch.addErrmsg("15:香港交期的不在(0,9]天");
+								}
+								Boolean bBoolean = deliveryTimeBetween(releaseProductByBatch.getMaxdeliveryHKTime(), (short) 0, (short) 9);
+								if(!bBoolean) {
+									releaseProductByBatch.addErrmsg("15:香港交期的不在(0,9]天");
+								}
+							}
+						}
 					}
 
-//					if("RMB-USD".equals(releaseProductByBatch.getCurrency())) {
-//						if(releaseProductByBatch.getMaxdeliveryDemTime() == null ||  releaseProductByBatch.getMaxdeliveryHKTime() == null) {
-//							releaseProductByBatch.addErrmsg("14-15:您上架的币别是人民币和美金,所以香港和大陆的交期都需要填写");
-//						}
-//					}else if("RMB".equals(releaseProductByBatch.getCurrency())) {
-//						if(releaseProductByBatch.getMaxdeliveryDemTime() == null) {
-//							releaseProductByBatch.addErrmsg("14-15:您上架的币别是人民币,所以大陆交期需要填写");
-//						}
-//					}else if("USD".equals(releaseProductByBatch.getCurrency())) {
-//						if(releaseProductByBatch.getMaxdeliveryHKTime() == null) {
-//							releaseProductByBatch.addErrmsg("14-15:您上架的币别是美金,所以香港交期需要填写");
-//						}
-//					}else {
-//						if(releaseProductByBatch.getMaxdeliveryHKTime() == null && releaseProductByBatch.getMaxdeliveryHKTime() == null) {
-//							releaseProductByBatch.addErrmsg("14-15:您必须要填写一个类型的交期");
-//						}
-//					}
+					if("RMB-USD".equals(releaseProductByBatch.getCurrency())) {
+						if(releaseProductByBatch.getMaxdeliveryDemTime() == null ||  releaseProductByBatch.getMaxdeliveryHKTime() == null) {
+							releaseProductByBatch.addErrmsg("14-15:您上架的币别是人民币和美金,所以香港和大陆的交期都需要填写");
+						}
+					}else if("RMB".equals(releaseProductByBatch.getCurrency())) {
+						if(releaseProductByBatch.getMaxdeliveryDemTime() == null) {
+							releaseProductByBatch.addErrmsg("14-15:您上架的币别是人民币,所以大陆交期需要填写");
+						}
+					}else if("USD".equals(releaseProductByBatch.getCurrency())) {
+						if(releaseProductByBatch.getMaxdeliveryHKTime() == null) {
+							releaseProductByBatch.addErrmsg("14-15:您上架的币别是美金,所以香港交期需要填写");
+						}
+					}else {
+						if(releaseProductByBatch.getMaxdeliveryHKTime() == null && releaseProductByBatch.getMaxdeliveryHKTime() == null) {
+							releaseProductByBatch.addErrmsg("14-15:您必须要填写一个类型的交期");
+						}
+					}
 
 					// 分段数量
 					List<GoodsQtyPrice> prices = new ArrayList<GoodsQtyPrice>();

+ 59 - 23
src/main/java/com/uas/platform/b2c/prod/product/component/modal/ComponentGoods.java

@@ -223,29 +223,29 @@ public class ComponentGoods implements Serializable {
 	@Column(name = "go_update_date")
 	private Date updateDate;
 	
-//	/**
-//	 * 货到香港交期最短
-//	 */
-//	@Column(name = "go_b2cdeliveryhkmintime")
-//	private Short b2cDeliveryHKMinTime;
-//
-//	/**
-//	 * 货到香港交期最长
-//	 */
-//	@Column(name = "go_b2cdeliveryhkmaxtime")
-//	private Short b2cDeliveryHKMaxTime;
-//
-//	/**
-//	 * 货到大陆交期最短
-//	 */
-//	@Column(name = "go_b2cdeliverydemintime")
-//	private Short b2cDeliveryDemMinTime;
-//
-//	/**
-//	 * 货到大陆交期最长
-//	 */
-//	@Column(name = "go_b2cdeliverydemaxtime")
-//	private Short b2cDeliveryDemMaxTime;
+	/**
+	 * 货到香港交期最短
+	 */
+	@Column(name = "go_b2cdeliveryhkmintime")
+	private Short b2cDeliveryHKMinTime;
+
+	/**
+	 * 货到香港交期最长
+	 */
+	@Column(name = "go_b2cdeliveryhkmaxtime")
+	private Short b2cDeliveryHKMaxTime;
+
+	/**
+	 * 货到大陆交期最短
+	 */
+	@Column(name = "go_b2cdeliverydemintime")
+	private Short b2cDeliveryDemMinTime;
+
+	/**
+	 * 货到大陆交期最长
+	 */
+	@Column(name = "go_b2cdeliverydemaxtime")
+	private Short b2cDeliveryDemMaxTime;
 
 	/**
 	 * 商城最长交期
@@ -618,4 +618,40 @@ public class ComponentGoods implements Serializable {
 	public void setStoreName(String storeName) {
 		this.storeName = storeName;
 	}
+
+	public Short getB2cDeliveryHKMinTime() {
+		return b2cDeliveryHKMinTime;
+	}
+
+	public ComponentGoods setB2cDeliveryHKMinTime(Short b2cDeliveryHKMinTime) {
+		this.b2cDeliveryHKMinTime = b2cDeliveryHKMinTime;
+		return this;
+	}
+
+	public Short getB2cDeliveryHKMaxTime() {
+		return b2cDeliveryHKMaxTime;
+	}
+
+	public ComponentGoods setB2cDeliveryHKMaxTime(Short b2cDeliveryHKMaxTime) {
+		this.b2cDeliveryHKMaxTime = b2cDeliveryHKMaxTime;
+		return this;
+	}
+
+	public Short getB2cDeliveryDemMinTime() {
+		return b2cDeliveryDemMinTime;
+	}
+
+	public ComponentGoods setB2cDeliveryDemMinTime(Short b2cDeliveryDemMinTime) {
+		this.b2cDeliveryDemMinTime = b2cDeliveryDemMinTime;
+		return this;
+	}
+
+	public Short getB2cDeliveryDemMaxTime() {
+		return b2cDeliveryDemMaxTime;
+	}
+
+	public ComponentGoods setB2cDeliveryDemMaxTime(Short b2cDeliveryDemMaxTime) {
+		this.b2cDeliveryDemMaxTime = b2cDeliveryDemMaxTime;
+		return this;
+	}
 }

+ 4 - 4
src/main/java/com/uas/platform/b2c/trade/order/model/OrderDetail.java

@@ -849,6 +849,9 @@ public class OrderDetail extends Document implements Serializable{
 			this.number = goods.getMinBuyQty();
 			return ;
 		}
+		if(this.minPackQty == null) {
+			this.minPackQty = goods.getMinPackQty();
+		}
 		double times = NumberUtil.div(this.number, this.minPackQty);
 		double qty1 = NumberUtil.mul(times, goods.getMinPackQty());
 		if(NumberUtil.compare(qty1, goods.getMinBuyQty()) <= 0) {
@@ -856,10 +859,7 @@ public class OrderDetail extends Document implements Serializable{
 		}else if(NumberUtil.compare(qty1, goods.getReserve()) <= 0) {
 			this.number = qty1;
 		}else {
-			while (NumberUtil.compare(qty1, goods.getReserve()) > 0) {
-				qty1 -= goods.getMinPackQty();
-			}
-			this.number = qty1;
+			this.number = NumberUtil.sub(goods.getReserve(), goods.getReserve() % goods.getMinPackQty());
 		}
 	}
 

+ 2 - 2
src/main/webapp/resources/view/vendor/forstore/vendor_upload.html

@@ -290,9 +290,9 @@
         <div class="wanted_list01">
             <div class="tab" ng-if="$$productOn.leadIn == 'bathOn'" ng-class="{'active': leadIn == 'bathOn'}" ng-controller="batchPutOnCtrl">
                 <div class="load_next">
-                    <p>第一步,下载Excle模板<i class="icon-angle-up"></i></p>
+                    <p>第一步,下载Excel模板<i class="icon-angle-up"></i></p>
                     <div class="add_category">
-                        <div>下载库存Excle模板,在模板上编辑商品信息,<a ng-click="showImg()" style="color: #e64040">查看表格示例</a></div>
+                        <div>下载库存Excel模板,在模板上编辑商品信息,<a ng-click="showImg()" style="color: #e64040">查看表格示例</a></div>
                         <div id="image-box" style="display: none;">
                             <div class="x-close-wrap" title="关闭">
                                 <a href="javascript:void(0);">×</a>