|
@@ -1788,7 +1788,6 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
warehouseBills.setfDateChanged(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()) + Math.random() * 100);
|
|
|
warehouseBills.setfBillstatus(fBillstatus);
|
|
|
warehouseBills.setfReviewDate(reviewDate);
|
|
|
- i = tWarehouseBillsMapper.insertTWarehousebills(warehouseBills);
|
|
|
if (CollectionUtils.isNotEmpty(warehousebillsfeesList)) {
|
|
|
for (TWarehousebillsfees warehousebillsfees : warehousebillsfeesList) {
|
|
|
AjaxResult ajaxResult = this.goodsAttribute(warehousebillsfees, billsType);
|
|
@@ -1817,7 +1816,11 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
if (tWhgenleg == null) {
|
|
|
saveOrUpdate = this.anPinInstalTWhgenleg(warehouseBills, warehousebillsfees, loginUser.getUser());
|
|
|
} else {
|
|
|
- saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
+ tWhgenleg.setfGrossweightblc(tWhgenleg.getfGrossweightblc().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfVolumnd(tWhgenleg.getfVolumnd().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfGrossweightd(tWhgenleg.getfVolumnd().add(warehousebillsfees.getfAmount()));
|
|
|
+ saveOrUpdate = tWhgenlegMapper.updateTWhgenleg(tWhgenleg);
|
|
|
+// saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
}
|
|
|
}
|
|
|
if ("CK".equals(billsType)) {
|
|
@@ -1829,11 +1832,41 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
} else if (tWhgenleg.getfId() != null && tWhgenleg.getfGrossweightblc().compareTo(warehousebillsfees.getfQty()) < 0) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");
|
|
|
+ /*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ List<String> date = new ArrayList<>();
|
|
|
+ date.add(sdf.format(warehouseBills.getfBsdate()));
|
|
|
+ date.add(sdf.format(warehouseBills.getfBsdate()));
|
|
|
+ TWarehouseBills tWarehouseBills = new TWarehouseBills();
|
|
|
+ tWarehouseBills.settimeInterval(date);
|
|
|
+ tWarehouseBills.setfCorpid(warehouseBills.getfCorpid());
|
|
|
+ tWarehouseBills.setfWarehouseid(warehouseBills.getfWarehouseid());
|
|
|
+ tWarehouseBills.setFeeName(warehousebillsfees.getfFeeid() + "");
|
|
|
+ tWarehouseBills.setfFeeType(warehousebillsfees.getfFeeType());
|
|
|
+ List<InventoryLedgerExcel> list = this.selectInventoryLedger(tWarehouseBills);
|
|
|
+ if (list.size() > 0) {
|
|
|
+ if (list.get(0).getfAfterQty().compareTo(warehousebillsfees.getfQty()) <= 0){
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");
|
|
|
+ }else{
|
|
|
+ BigDecimal fAfterQty = tWhgenleg.getfVolumnd().subtract(list.get(0).getfAfterQty()).subtract(warehousebillsfees.getfQty());
|
|
|
+ tWhgenleg.setfNetweightc(fAfterQty);
|
|
|
+ tWhgenlegMapper.updateTWhgenleg(tWhgenleg);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");
|
|
|
+ }*/
|
|
|
+ } else {
|
|
|
+ tWhgenleg.setfGrossweightblc(tWhgenleg.getfGrossweightblc().subtract(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfNetweightc(tWhgenleg.getfNetweightc().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfGrossweightc(tWhgenleg.getfGrossweightc().add(warehousebillsfees.getfAmount()));
|
|
|
+ saveOrUpdate = tWhgenlegMapper.updateTWhgenleg(tWhgenleg);
|
|
|
+// saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
}
|
|
|
- saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ i = tWarehouseBillsMapper.insertTWarehousebills(warehouseBills);
|
|
|
fPid = warehouseBills.getfId();
|
|
|
} else {
|
|
|
fPid = warehouseBills.getfId();
|
|
@@ -1854,7 +1887,6 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
warehouseBills.setUpdateTime(DateUtils.getNowDate());
|
|
|
warehouseBills.setUpdateBy(SecurityUtils.getUsername());
|
|
|
warehouseBills.setfDateChanged(new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()) + Math.random() * 100);
|
|
|
- i = tWarehouseBillsMapper.updateTWarehousebills(warehouseBills);
|
|
|
//i = tWarehousebillsfeesMapper.deleteByFPid(warehouseBills.getfId());
|
|
|
if (CollectionUtils.isNotEmpty(warehousebillsfeesList)) {
|
|
|
for (TWarehousebillsfees warehousebillsfees : warehousebillsfeesList) {
|
|
@@ -1895,7 +1927,11 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
if (tWhgenleg == null) {
|
|
|
saveOrUpdate = this.anPinInstalTWhgenleg(warehouseBills, warehousebillsfees, loginUser.getUser());
|
|
|
} else {
|
|
|
- saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
+ tWhgenleg.setfGrossweightblc(tWhgenleg.getfGrossweightblc().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfVolumnd(tWhgenleg.getfVolumnd().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfGrossweightd(tWhgenleg.getfVolumnd().add(warehousebillsfees.getfAmount()));
|
|
|
+ saveOrUpdate = tWhgenlegMapper.updateTWhgenleg(tWhgenleg);
|
|
|
+// saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
}
|
|
|
}
|
|
|
if ("CK".equals(billsType)) {
|
|
@@ -1907,11 +1943,43 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
} else if (tWhgenleg.getfId() != null && tWhgenleg.getfGrossweightblc().compareTo(warehousebillsfees.getfQty()) < 0) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");
|
|
|
+ /*SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
|
+ List<String> date = new ArrayList<>();
|
|
|
+ date.add(sdf.format(warehouseBills.getfBsdate()));
|
|
|
+ date.add(sdf.format(warehouseBills.getfBsdate()));
|
|
|
+ TWarehouseBills tWarehouseBills1 = new TWarehouseBills();
|
|
|
+ tWarehouseBills1.settimeInterval(date);
|
|
|
+ tWarehouseBills1.setfCorpid(warehouseBills.getfCorpid());
|
|
|
+ tWarehouseBills1.setfWarehouseid(warehouseBills.getfWarehouseid());
|
|
|
+ tWarehouseBills1.setFeeName(warehousebillsfees.getfFeeid() + "");
|
|
|
+ tWarehouseBills1.setfBillstatus(fBillstatus);
|
|
|
+ List<InventoryLedgerExcel> list = this.selectInventoryLedger(tWarehouseBills1);
|
|
|
+ if (list.size() > 0) {
|
|
|
+ if (list.get(0).getfAfterQty().compareTo(warehousebillsfees.getfQty()) <= 0){
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");
|
|
|
+ }else{
|
|
|
+ BigDecimal fAfterQty = tWhgenleg.getfVolumnd().subtract(list.get(0).getfAfterQty()).subtract(warehousebillsfees.getfQty());
|
|
|
+ tWhgenleg.setfNetweightc(fAfterQty);
|
|
|
+ tWhgenlegMapper.updateTWhgenleg(tWhgenleg);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");
|
|
|
+ }
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error(tFees.getfName() + "出库数量大于库存数,现有库存数量为" + tWhgenleg.getfGrossweightblc() + ",库存不足");*/
|
|
|
+ } else {
|
|
|
+ tWhgenleg.setfGrossweightblc(tWhgenleg.getfGrossweightblc().subtract(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfNetweightc(tWhgenleg.getfNetweightc().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg.setfGrossweightc(tWhgenleg.getfGrossweightc().add(warehousebillsfees.getfAmount()));
|
|
|
+ saveOrUpdate = tWhgenlegMapper.updateTWhgenleg(tWhgenleg);
|
|
|
+// saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
}
|
|
|
- saveOrUpdate = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+ i = tWarehouseBillsMapper.updateTWarehousebills(warehouseBills);
|
|
|
}
|
|
|
if ("RK".equals(billsType) || "CK".equals(billsType)) {
|
|
|
if (saveOrUpdate == null || saveOrUpdate < 1) {
|
|
@@ -2185,7 +2253,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- @Transactional
|
|
|
+ @Transactional(rollbackFor = Exception.class)
|
|
|
public AjaxResult cannibalize(TWarehouseBills tWarehouseBills, LoginUser loginUser) {
|
|
|
String billType = null;//业务类型
|
|
|
Long billStatus = null;//状态
|
|
@@ -4327,21 +4395,36 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
if (CollectionUtils.isNotEmpty(tWarehousebillsfeesList)) {
|
|
|
for (TWarehousebillsfees warehousebillsfees : tWarehousebillsfeesList) {
|
|
|
TWhgenleg tWhgenleg = this.anPinQueryTWhgenleg(tWarehousebills, warehousebillsfees);
|
|
|
+ TWhgenleg tWhgenleg1 = new TWhgenleg();
|
|
|
if (tWhgenleg == null) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error("库存不足");
|
|
|
}
|
|
|
- if (billsType.equals("RKRevoke") && tWhgenleg.getfGrossweightblc().compareTo(warehousebillsfees.getfQty()) < 0) {
|
|
|
- TFees tFees = tFeesMapper.selectTFeesById(warehousebillsfees.getfFeeid());
|
|
|
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return AjaxResult.error("库存不足,当前" + tFees.getfName() + "可撤销库存为:" + tWhgenleg.getfGrossweightblc());
|
|
|
+ if (billsType.equals("RKRevoke")) {
|
|
|
+ if (tWhgenleg.getfGrossweightblc().compareTo(warehousebillsfees.getfQty()) < 0){
|
|
|
+ TFees tFees = tFeesMapper.selectTFeesById(warehousebillsfees.getfFeeid());
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("库存不足,当前" + tFees.getfName() + "可撤销库存为:" + tWhgenleg.getfGrossweightblc());
|
|
|
+ }else{
|
|
|
+ tWhgenleg1.setfGrossweightblc(tWhgenleg.getfGrossweightblc().subtract(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg1.setfVolumnd(tWhgenleg.getfVolumnd().subtract(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg1.setfGrossweightd(tWhgenleg.getfGrossweightd().subtract(warehousebillsfees.getfAmount()));
|
|
|
+ }
|
|
|
}
|
|
|
- if (billsType.equals("CKRevoke") && tWhgenleg.getfNetweightc().compareTo(warehousebillsfees.getfQty()) < 0) {
|
|
|
- TFees tFees = tFeesMapper.selectTFeesById(warehousebillsfees.getfFeeid());
|
|
|
- TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return AjaxResult.error("库存不足,当前" + tFees.getfName() + "可撤销库存为:" + tWhgenleg.getfNetweightc());
|
|
|
+ if (billsType.equals("CKRevoke")) {
|
|
|
+ if (tWhgenleg.getfNetweightc().compareTo(warehousebillsfees.getfQty()) < 0){
|
|
|
+ TFees tFees = tFeesMapper.selectTFeesById(warehousebillsfees.getfFeeid());
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("库存不足,当前" + tFees.getfName() + "可撤销库存为:" + tWhgenleg.getfNetweightc());
|
|
|
+ }else{
|
|
|
+ tWhgenleg1.setfGrossweightblc(tWhgenleg.getfGrossweightblc().add(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg1.setfNetweightc(tWhgenleg.getfNetweightc().subtract(warehousebillsfees.getfQty()));
|
|
|
+ tWhgenleg1.setfGrossweightc(tWhgenleg.getfGrossweightc().subtract(warehousebillsfees.getfAmount()));
|
|
|
+ }
|
|
|
}
|
|
|
- int updateTWhgenlegData = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
+ tWhgenleg1.setfId(tWhgenleg.getfId());
|
|
|
+ int updateTWhgenlegData = tWhgenlegMapper.updateTWhgenleg(tWhgenleg1);
|
|
|
+// int updateTWhgenlegData = this.anPinUpdateTWhgenlegData(warehousebillsfees, tWhgenleg.getfId(), billsType);
|
|
|
if (updateTWhgenlegData < 1) {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error("撤销失败,撤销库存总账失败!");
|
|
@@ -4774,6 +4857,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
tWhgenleg.setfVolumnd(warehousebillsitems.getfQty());
|
|
|
// 入库金额
|
|
|
tWhgenleg.setfGrossweightd(warehousebillsitems.getfAmount());
|
|
|
+ // 结余
|
|
|
+ tWhgenleg.setfGrossweightblc(warehousebillsitems.getfQty());
|
|
|
//出库数
|
|
|
tWhgenleg.setfNetweightc(new BigDecimal(0.00));
|
|
|
//出库金额
|