Browse Source

采购订单回复数量不考虑超数

huangct 8 years ago
parent
commit
fd3f2ed9bf

+ 1 - 1
src/main/java/com/uas/platform/b2b/dao/PurchaseOrderItemDao.java

@@ -32,7 +32,7 @@ public interface PurchaseOrderItemDao extends JpaSpecificationExecutor<PurchaseO
 	 * @param statusCode
 	 * @return
 	 */
-	@Query("select count(d) from PurchaseOrderItem d where d.order.id = :orderId and d.replyQty = d.qty")
+	@Query("select count(d) from PurchaseOrderItem d where d.order.id = :orderId and d.replyQty >= d.qty")
 	public int getCountByReply(@Param("orderId") long orderId);
 	
 	/**

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

@@ -291,13 +291,13 @@ public class PurchaseOrderServiceImpl implements PurchaseOrderService {
 		Double replyQty = item.getReplyQty();
 		replyQty = replyQty == null ? 0 : replyQty;
 		item.setReplyQty(replyQty + reply.getQty());
-		if (item.getReplyQty() > item.getQty()) {
+		/*if (item.getReplyQty() > item.getQty()) {
 			if (isB2b) {
 				throw new IllegalOperatorException("回复的数量合计超过了订单数量");
 			} else {
 				return null;
 			}
-		}
+		}*/
 		if (item.getReplyQty() < 0)
 			throw new IllegalOperatorException("回复的数量合计不能为负数");
 		reply.setOrderItem(item);

+ 5 - 1
src/main/webapp/resources/js/index/app.js

@@ -3068,7 +3068,7 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
         
         $scope.onReplyClick = function (item, inverse) {
             if (item.reply) {
-                if (!item.reply.qty || item.reply.qty < 0 || item.reply.qty > item.qty) {
+                if (!item.reply.qty || item.reply.qty < 0 /*|| item.reply.qty > item.qty*/) {
                     toaster.pop('warning', '提示', '请填写有效的回复数量!');
                     return;
                 }
@@ -3207,6 +3207,10 @@ define(['toaster', 'charts', 'ngTable', 'common/services', 'common/directives',
                 var sum = 0;
                 angular.forEach($scope.order.orderItems, function (item) {
                     sum += item.qty * item.price;
+                    //获取最新回复数
+                    PurcOrderItem.getLatestReplyQty({orderItemId: item.id}, null, function (map) {
+                        item.latestReplyQty = map.latestReplyQty;
+                    });
                 });
                 $scope.order.total = sum;
                 if ($scope.order.display == 1) {//未查看的设为已查看

+ 2 - 2
src/main/webapp/resources/tpl/index/sale/order.html

@@ -444,7 +444,7 @@
 				<div class="text-num" ng-bind="::item.qty"></div>
 				<div class="text-muted" ng-bind="::item.product.unit"></div>
 				<div style="margin: 0 auto" ng-if="item.$editing">
-					<input type="number" ng-model="item.reply.qty" min="0" max="{{item.qty}}"
+					<input type="number" ng-model="item.reply.qty" min="0"
 						ng-init="item.reply.qty=item.qty-item.replyQty"
 						class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
 				</div>
@@ -541,7 +541,7 @@
 						</div>
 						<br>
 						<div class="text-left">
-							<a ng-if="(item.replyQty || 0) < item.qty" ng-click="onReplyClick(item);setOrdersRead(order.id)" class="text-inverse">
+							<a ng-click="onReplyClick(item);setOrdersRead(order.id)" class="text-inverse">
 								<i class="fa fa-arrow-up"></i> 确认回复
 							</a>
 							<br>

+ 4 - 3
src/main/webapp/resources/tpl/index/sale/order_detail.html

@@ -128,7 +128,7 @@
 						<td class="text-center" width="110">
 							<div class="text-num" ><span ng-bind="::item.qty"></span></div>
 							<div style="margin-top: 20px" ng-if="item.$editing">
-								<input type="text" ng-model="item.reply.qty" min="0" max="{{item.qty}}"
+								<input type="text" ng-model="item.reply.qty" min="0"
 									ng-init="item.reply.qty=item.qty-item.replyQty"
 									class="form-control input-xs" placeholder="0~{{item.qty-item.replyQty}}">
 							</div>
@@ -161,13 +161,14 @@
 							<div ng-show="!item.$editing">
 								<div ng-if="!item.replyQty" class="text-muted text-center">未回复</div>
 								<div ng-if="item.replyQty > 0 && item.replyQty < item.qty">
-									<div class="progress progress-sm">
+									<!--<div class="progress progress-sm">
 										<div class="progress-bar progress-bar-success"
 											ng-style="{'width': 100*item.replyQty/item.qty + '%'}">
 											<span class="sr-only"></span>
 										</div>
 									</div>
-									已回复 <span class="text-default">{{::item.replyQty}}</span> / <span>{{::item.qty}}</span>
+									已回复 <span class="text-default">{{::item.replyQty}}</span> / <span>{{::item.qty}}</span>-->
+									已回复 <span class="text-default">{{::item.latestReplyQty}}</span>
 								</div>
 								<div ng-if="item.replyQty > 0" class="dropdown"
 									ng-class="{'text-center': item.replyQty>=item.qty}">