Browse Source

后台产品管理验收反馈处理

hulh 8 years ago
parent
commit
c9131bc347

+ 15 - 1
src/main/java/com/uas/platform/b2c/prod/commodity/model/Goods.java

@@ -288,6 +288,12 @@ public class Goods implements Serializable {
 	@Transient
 	@Transient
 	private Integer restDays;
 	private Integer restDays;
 
 
+	/**
+	 * 冻结数
+	 */
+	@Transient
+	private Integer frozen;
+
 	/**
 	/**
 	 * 包装:托盘、管装、卷带
 	 * 包装:托盘、管装、卷带
 	 */
 	 */
@@ -920,7 +926,15 @@ public class Goods implements Serializable {
 		return this;
 		return this;
 	}
 	}
 
 
-    public String getBranduuid() {
+	public Integer getFrozen() {
+		return frozen;
+	}
+
+	public void setFrozen(Integer frozen) {
+		this.frozen = frozen;
+	}
+
+	public String getBranduuid() {
         return branduuid;
         return branduuid;
     }
     }
 
 

+ 26 - 0
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/GoodsServiceImpl.java

@@ -3573,6 +3573,12 @@ public class GoodsServiceImpl implements GoodsService {
                 goods.setSelfSale("自营");
                 goods.setSelfSale("自营");
             }
             }
         }
         }
+        if (goods.getUuid() != null) {
+            Component component = componentDao.findByUuid(goods.getUuid());
+            if (component != null) {
+                goods.setAttach(component.getAttach());
+            }
+        }
         return goods;
         return goods;
     }
     }
 
 
@@ -3645,10 +3651,30 @@ public class GoodsServiceImpl implements GoodsService {
             } else {
             } else {
                 goods.setSelfSale(StringConstant.SALE_SELF);
                 goods.setSelfSale(StringConstant.SALE_SELF);
             }
             }
+            goods.setFrozen(getFrozenCount(goods.getBatchCode()));
         }
         }
 		return page;
 		return page;
 	}
 	}
 
 
+    /**
+     * 获取未发货前订单的库存数
+     * @param batchCode
+     * @return
+     */
+    private int getFrozenCount(String batchCode) {
+        String statusStr = OrderStatus.TOBEPAID.getCodes() + SplitChar.HYPHEN + OrderStatus.TOBEDELIVER.getCodes();
+        List<Integer> statusList = new ArrayList<>();
+        for (String str : statusStr.split(SplitChar.HYPHEN)) {
+            statusList.add(Integer.valueOf(str));
+        }
+        List<OrderDetail> detailList = orderDetailDao.findByBatchInStatus(batchCode, statusList);
+        int stock = 0;
+        for (OrderDetail detail : detailList) {
+            stock += detail.getNumber();
+        }
+        return stock;
+    }
+
 	private void convertPageInfo(PageInfo info, GoodsFilter goodsFilter) {
 	private void convertPageInfo(PageInfo info, GoodsFilter goodsFilter) {
 		if (!StringUtils.isEmpty(goodsFilter.getCode())) {
 		if (!StringUtils.isEmpty(goodsFilter.getCode())) {
 			info.filter("code", goodsFilter.getCode());
 			info.filter("code", goodsFilter.getCode());

+ 10 - 0
src/main/java/com/uas/platform/b2c/trade/order/dao/OrderDetailDao.java

@@ -26,6 +26,16 @@ public interface OrderDetailDao extends JpaSpecificationExecutor<OrderDetail>, J
 	 */
 	 */
 	List<OrderDetail> findByBatchCode(String batchCode);
 	List<OrderDetail> findByBatchCode(String batchCode);
 
 
+	/**
+	 * 根据batchCode返回指定状态的订单明细
+	 *
+	 * @param batchCode
+	 * @param statusList
+	 * @return
+	 */
+	@Query(value = "select d from OrderDetail d where d.batchCode =:batchCode and d.status in :statusList")
+	List<OrderDetail> findByBatchInStatus(@Param("batchCode") String batchCode, @Param("statusList") List<Integer> statusList);
+
 	/**
 	/**
 	 * 根据订单明细号查找订单明细
 	 * 根据订单明细号查找订单明细
 	 *
 	 *

+ 2 - 2
src/main/webapp/resources/view/admin/product/productManage.html

@@ -81,7 +81,7 @@
                     <div class="form-group form-group-sm">
                     <div class="form-group form-group-sm">
                         <label class="control-label">
                         <label class="control-label">
                             品牌:
                             品牌:
-                            <input type="text" placeholder="品牌中英文名称" class="form-control width140">
+                            <input type="text" placeholder="品牌中英文名称" class="form-control width140" ng-model="goodsFilter.brand">
                         </label>
                         </label>
                     </div>
                     </div>
                     <div class="form-group form-group-sm">
                     <div class="form-group form-group-sm">
@@ -251,7 +251,7 @@
                        <span ng-bind="'-'">锁库数</span>
                        <span ng-bind="'-'">锁库数</span>
                    </td>
                    </td>
                    <td ng-if="titleInShow['冻结数量']">
                    <td ng-if="titleInShow['冻结数量']">
-                       <span ng-bind="list.reserve || '-'">冻结数量</span>
+                       <span ng-bind="list.frozen">冻结数量</span>
                    </td>
                    </td>
                    <td ng-if="titleInShow['库存总数']">
                    <td ng-if="titleInShow['库存总数']">
                        <span ng-bind="list.reserve || '-'">库存总数</span>
                        <span ng-bind="list.reserve || '-'">库存总数</span>

+ 2 - 2
src/main/webapp/resources/view/admin/product/productManageDetail.html

@@ -38,8 +38,8 @@
                             <p>单位:<span ng-bind="goods.unit"></span></p>
                             <p>单位:<span ng-bind="goods.unit"></span></p>
                             <p>生产日期:<span ng-bind="goods.produceDate"></span></p>
                             <p>生产日期:<span ng-bind="goods.produceDate"></span></p>
                             <p>规格书:
                             <p>规格书:
-                                <a ng-if="goods.uuid">点击查看</a>
-                                <span ng-if="!goods.uuid">无</span>
+                                <a ng-if="goods.attach" target="_blank" href="{{goods.attach}}">点击查看</a>
+                                <span ng-if="!goods.attach">无</span>
                             </p>
                             </p>
                             <p>平台SKU编码:<span ng-bind="goods.batchCode"></span></p>
                             <p>平台SKU编码:<span ng-bind="goods.batchCode"></span></p>
                         </div>
                         </div>