| 
					
				 | 
			
			
				@@ -26,6 +26,7 @@ import com.ruoyi.warehouseBusiness.service.ITWarehouseBillsService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import org.springframework.transaction.annotation.Transactional; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.transaction.interceptor.TransactionAspectSupport; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.math.BigDecimal; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -359,6 +360,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (tWarehousebillsitems != null && !"2".equals(warehouseBills.getfBillstatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             JSONArray warehouseJSON = JSONArray.parseArray(tWarehousebillsitems); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             List<TWarehousebillsitems> warehousebillsitemsList = JSONObject.parseArray(warehouseJSON.toJSONString(), TWarehousebillsitems.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            int i=1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             for (TWarehousebillsitems wbItem : warehousebillsitemsList) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 // 查询总账是否存在 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 TWhgenleg tWhgenle = queryTWhgenleg(warehouseBills, wbItem); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -372,23 +374,27 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else if ("SJCK".equals(billsType)) { // 出库 查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (StringUtils.isNull(tWhgenle)) { // 为空 提示没有库存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        return AjaxResult.error("库存为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        return AjaxResult.error("库存明细第"+i+"行库存为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else { // 非空修改库存总账 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if ("6".equals(warehouseBills.getfBillstatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             //  库存 <  出库件数  提示库存不足 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             if (tWhgenle.getfQtyblc() < wbItem.getfQty()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                return AjaxResult.error("库存不足"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                return AjaxResult.error("库存明细第"+i+"行库存不足"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             updateTWhgenlegData(wbItem, tWhgenle.getfId(), billsType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else if ("CKDB".equals(billsType)) { // 调拨查询 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (StringUtils.isNull(tWhgenle)) { // 为空 提示没有库存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        return AjaxResult.error("库存为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        return AjaxResult.error("库存明细第"+i+"行库存为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else { // 非空修改库存总账 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if ("6".equals(warehouseBills.getfBillstatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             if (tWhgenle.getfQtyblc() < wbItem.getfQty()) {  //  1、  库存 <  调拨件数  提示库存不足 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                return AjaxResult.error("库存不足"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                return AjaxResult.error("库存明细第"+i+"行库存不足"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } else {  // 2、 库存足够 先 进行出库操作 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 updateTWhgenlegData(wbItem, tWhgenle.getfId(), "SJCK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -406,11 +412,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 }  else if ("HQZY".equals(billsType)) { // 货转 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if (StringUtils.isNull(tWhgenle)) { // 为空 提示没有库存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        return AjaxResult.error("库存为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        return AjaxResult.error("库存明细第"+i+"行库存为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else { // 非空修改库存总账 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if ("6".equals(warehouseBills.getfBillstatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             if (tWhgenle.getfQtyblc() < wbItem.getfQty()) {  //  1、  库存 <  调拨件数  提示库存不足 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                return AjaxResult.error("库存不足"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                return AjaxResult.error("库存明细第"+i+"行库存不足"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } else {  // 2、 库存足够 先 进行出库操作 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 updateTWhgenlegData(wbItem, tWhgenle.getfId(), "SJCK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -421,12 +429,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 instalTWhgenleg(warehouseBills, wbItem, loginUser.getUser()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } else { // 4、 存在 进行跟新库存 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 if ("6".equals(warehouseBills.getfBillstatus())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                                    updateTWhgenlegData(wbItem, tWhgenle.getfId(), "SJRK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                                    updateTWhgenlegData(wbItem, tWhgenle1.getfId(), "SJRK"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                i++; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 库存明细添加 
			 |