| 
					
				 | 
			
			
				@@ -628,7 +628,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if ("SJRK".equals(billsType)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     if ("1".equals(warehouseBills.getfChargetype())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                        wbItem.setfChargedate(wbItem.getfOriginalbilldate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        wbItem.setfChargedate(wbItem.getfBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     } else if ("0".equals(warehouseBills.getfChargetype())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         Date fchargedate = tWarehousebillsitemsMapper.getFchargedate(fPid); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         if (fchargedate != null){ 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -641,7 +641,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     wbItem.setfMblno(warehouseBills.getfMblno());// 入库更新库存前执行update更新明细的提单号等于主表的提单号 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 if (null != wbItem.getfId()) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-                    wbItem.setUpdateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    wbItem.setUpdateTime(wbItem.getfBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     wbItem.setUpdateBy(loginUser.getUser().getUserName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                     tWarehousebillsitemsMapper.updateTWarehousebillsitems(wbItem); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                 } else { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2898,17 +2898,32 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         warehouseBills.setfDateChanged(timestamp.toString() + (int) (Math.random() * 900) + 100); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 查询最新明细表 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         TWarehousebillsitems warehousebillsitems = tWarehousebillsitemsMapper.selectTWarehousebillsitemsById(tWarehousebillsitems.getfId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String billsType = warehousebillsitems.getfBilltype(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if ("SJRK".equals(billsType)  && "0".equals(warehouseBills.getfChargetype()) && tWarehousebillsitems.getBsdate() != null ){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            boolean fchargedate = this.getFchargedate(warehousebillsitems.getfPid(), tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (fchargedate == false){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return AjaxResult.error("入库日期不能小于最小仓储费计算日期"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Date time = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (StringUtils.isNotEmpty(warehouseBills.getfChargetype()) && "0".equals(warehouseBills.getfChargetype())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             time = tWarehousebillsitemsMapper.selecMinBsDateByFPid(tWarehousebillsitems.getfPid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tWarehousebillsitems.getBsdate() !=null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tWarehousebillsitems.setfBsdate(tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         }else if (StringUtils.isNotEmpty(warehouseBills.getfChargetype()) && "1".equals(warehouseBills.getfChargetype())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            time = warehousebillsitems.getfBsdate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tWarehousebillsitems.getBsdate()!= null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                time = tWarehousebillsitems.getBsdate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tWarehousebillsitems.setfBsdate(tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                time = warehousebillsitems.getfBsdate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tWarehousebillsitems.setfChargedate(time);//仓储费计算日期 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (StringUtils.isNull(warehousebillsitems) || warehousebillsitems.getfBillstatus() != 30L) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return AjaxResult.error("请确认是该明细数据是否存在,或该明细数据状态异常"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        String billsType = warehousebillsitems.getfBilltype(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         TGoods goods = tGoodsMapper.selectTGoodsById(warehousebillsitems.getfGoodsid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if ("1".equals(goods.getIfCntrno()) && StringUtils.isNull(warehousebillsitems.getfCntrno())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return AjaxResult.error("仓库明细第未找到箱号"); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -2969,7 +2984,11 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWarehousebillsitems.setfBillstatus(40L); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWarehousebillsitems.setUpdateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWarehousebillsitems.setfPid(warehouseBills.getfId()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            tWarehousebillsitems.setfBsdate(warehouseBills.getfBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tWarehousebillsitems.getBsdate() != null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tWarehousebillsitems.setfBsdate(tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tWarehousebillsitems.setfBsdate(warehouseBills.getfBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWarehousebillsitems.setfBillno(warehouseBills.getfBillno()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWarehousebillsitems.setUpdateBy(loginUser.getUser().getUserName()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             tWarehousebillsitems.setfSerialNumber(warehousebillsitems.getfSerialNumber()); 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -3044,6 +3063,30 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (warehousebillsitems.getfBillstatus() > 20L) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return AjaxResult.error("该仓库明细状态异常,请确认状态信息"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        TWarehouseBills bills = tWarehouseBillsMapper.selectTWarehousebillsById(warehousebillsitems.getfPid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (tWarehousebillsitems.getBsdate() != null  && "0".equals(bills.getfChargetype())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            boolean fchargedate = this.getFchargedate(warehousebillsitems.getfPid(), tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (fchargedate == false){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                return AjaxResult.error("入库日期不能小于最小仓储费计算日期"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date time = new Date(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (StringUtils.isNotEmpty(bills.getfChargetype()) && "0".equals(bills.getfChargetype())) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            time = tWarehousebillsitemsMapper.selecMinBsDateByFPid(tWarehousebillsitems.getfPid()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            tWarehousebillsitems.setfChargedate(time); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tWarehousebillsitems.getBsdate() != null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tWarehousebillsitems.setfBsdate(tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }else if (StringUtils.isNotEmpty(bills.getfChargetype()) && "1".equals(bills.getfChargetype())){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (tWarehousebillsitems.getBsdate()!= null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                time = tWarehousebillsitems.getBsdate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                tWarehousebillsitems.setfBsdate(tWarehousebillsitems.getBsdate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                time = warehousebillsitems.getfBsdate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            tWarehousebillsitems.setfChargedate(time); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tWarehousebillsitems.setfBillstatus(30L); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tWarehousebillsitems.setUpdateTime(new Date()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         tWarehousebillsitems.setUpdateBy(SecurityUtils.getUsername()); 
			 |