|
@@ -314,13 +314,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
@Transactional
|
|
|
public int instalTWhgenleg(TWarehouseBills warehouseBills, TWarehousebillsitems warehousebillsitems, SysUser user) {
|
|
|
TWhgenleg tWhgenleg = new TWhgenleg();
|
|
|
- if ("SJRK".equals(warehouseBills.getfBilltype()) || "HQZY".equals(warehouseBills.getfBilltype())) {
|
|
|
+ if ("SJRK".equals(warehouseBills.getfBilltype())) {
|
|
|
tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfBsdate());
|
|
|
}
|
|
|
if ("HQZY".equals(warehouseBills.getfBilltype()) || "CKDB".equals(warehouseBills.getfBilltype())) {
|
|
|
+ tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfOriginalbilldate());
|
|
|
if ("CKDB".equals(warehouseBills.getfBilltype())) {
|
|
|
tWhgenleg.setfCorpid(warehouseBills.getfCorpid());
|
|
|
- tWhgenleg.setfOriginalbilldate(warehousebillsitems.getfOriginalbilldate());
|
|
|
} else {
|
|
|
// 客户
|
|
|
tWhgenleg.setfCorpid(warehouseBills.getfTocorpid());
|
|
@@ -449,7 +449,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
// 添加主表 业务单号
|
|
|
wbItem.setfBillno(warehouseBills.getfBillno());
|
|
|
if (!warehouseStatus) {
|
|
|
- wbItem.setfMblno(warehouseBills.getfMblno());
|
|
|
+// wbItem.setfMblno(warehouseBills.getfMblno());
|
|
|
wbItem.setfBillstatus(1L);
|
|
|
} else {
|
|
|
wbItem.setfBillstatus(10L);
|
|
@@ -1215,10 +1215,19 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
map.put("error", "单号:" + item.get("fBillno") + ",业务日期:" + item.get("fBsdate") + "未找到库存总账的计费单位,请确认");
|
|
|
return map;
|
|
|
}
|
|
|
- long fGoodsid = Long.parseLong((String) item.get("fTypeid"));
|
|
|
+ long fInventoryDays = 0L;
|
|
|
long fCorpid = warehouseBills.getfCorpid();
|
|
|
+ String fBilltype = (String) item.get("fBilltype");
|
|
|
+ long fGoodsid = Long.parseLong((String) item.get("fTypeid"));
|
|
|
+ long fId = Long.valueOf(String.valueOf(item.get("fId"))).longValue();
|
|
|
+ // 要计费天数
|
|
|
long dateDay = DateUtils.getDateDay(warehouseBills.getfBillingDeadline(), (Date) item.get("fChargedate"));
|
|
|
- long fInventoryDays = DateUtils.getDateDay(warehouseBills.getfBillingDeadline(), (Date) item.get("fOriginalbilldate"));
|
|
|
+ // 累计计费天数
|
|
|
+ if ("KCZZ".equals(fBilltype)) {
|
|
|
+ fInventoryDays = DateUtils.getDateDay((Date) item.get("fChargedate"), (Date) item.get("fOriginalbilldate"));
|
|
|
+ } else {
|
|
|
+ fInventoryDays = Long.valueOf(String.valueOf(item.get("fBillingDays")));
|
|
|
+ }
|
|
|
Long dictLabel = Long.valueOf(String.valueOf(item.get("fBillingway")));
|
|
|
BigDecimal fQty = acquiredQuantity(item, dictLabel);
|
|
|
if (fQty.equals(BigDecimal.ZERO)) {
|
|
@@ -1231,9 +1240,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
map.put("error", "单号:" + item.get("fBillno") + ",业务日期:" + item.get("fBsdate") + "未找到仓储费协议,请确认");
|
|
|
return map;
|
|
|
}
|
|
|
- String fBilltype = (String) item.get("fBilltype");
|
|
|
+
|
|
|
String remark = objectMap.get("remark").toString();
|
|
|
- long fId = Long.valueOf(String.valueOf(item.get("fId"))).longValue();
|
|
|
feeId = Long.valueOf(String.valueOf(objectMap.get("feeId"))).longValue();
|
|
|
BigDecimal amt = (BigDecimal) objectMap.get("amt");
|
|
|
map.put("feeId", feeId);
|
|
@@ -1661,6 +1669,13 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
}
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * 撤销入库
|
|
|
+ * @param fId
|
|
|
+ * @param loginUser
|
|
|
+ * @param billsType
|
|
|
+ * @return
|
|
|
+ */
|
|
|
@Override
|
|
|
public AjaxResult revokeTWarehousebillsById(Long fId, LoginUser loginUser, String billsType) {
|
|
|
// 查询 仓库主表信息、库存明细信息
|
|
@@ -1668,7 +1683,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
// 修改主表信息
|
|
|
tWarehousebills.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
tWarehousebills.setUpdateTime(new Date());
|
|
|
- tWarehousebills.setfBillstatus(3L); //撤销状态
|
|
|
+ tWarehousebills.setfBillstatus(2L); //撤销状态
|
|
|
+ tWarehousebills.setfItemsStatus(1L); //撤销状态
|
|
|
tWarehouseBillsMapper.updateTWarehousebills(tWarehousebills);
|
|
|
// 查询库存明细从表数据
|
|
|
TWarehousebillsitems tWarehousebillsitems = new TWarehousebillsitems();
|
|
@@ -1687,6 +1703,7 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error("第" + i + "行撤销数大于库存结余数");
|
|
|
}
|
|
|
+ wb.setfBillstatus(10L);
|
|
|
} else if ("SJCKRevoke".equals(billsType)) { // 撤销出库
|
|
|
if (StringUtils.isNotNull(tWhgenle)) { // 非空
|
|
|
updateTWhgenlegData(wb, tWhgenle.getfId(), billsType);
|
|
@@ -1694,25 +1711,27 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
return AjaxResult.error("第" + i + "行未查询到库存信息");
|
|
|
}
|
|
|
+ wb.setfBillstatus(10L);
|
|
|
} else if ("CKDBRevoke".equals(billsType)) { // 调拨 撤销
|
|
|
- Long fCorpid = tWarehousebills.getfCorpid();// 原货权方
|
|
|
- Long fTocorpid = tWarehousebills.getfTocorpid(); // 新货权方
|
|
|
+ Long warehouselocid = wb.getfWarehouselocid();// 原货仓库
|
|
|
+ Long transferWarehouselocid = wb.getfTransferWarehouselocid(); // 新仓库
|
|
|
// 1、新货权方撤销入库
|
|
|
// 查询库存总账
|
|
|
- tWarehousebills.setfCorpid(fTocorpid);
|
|
|
+ wb.setfWarehouselocid(transferWarehouselocid);
|
|
|
TWhgenleg tWhgenle1 = queryTWhgenleg(tWarehousebills, wb);
|
|
|
if (StringUtils.isNotNull(tWhgenle1) && (wb.getfQty() <= tWhgenle1.getfQtyblc())) {
|
|
|
updateTWhgenlegData(wb, tWhgenle1.getfId(), "SJRKRevoke");
|
|
|
} else {
|
|
|
TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
- return AjaxResult.error("第" + i + "行撤销数大于库存结余数");
|
|
|
+ return AjaxResult.error("第" + i + "行撤销数大于库存结余数") ;
|
|
|
}
|
|
|
// 2、原货权方撤销出库
|
|
|
// 查询库存总账
|
|
|
- tWarehousebills.setfCorpid(fCorpid);
|
|
|
+ wb.setfWarehouselocid(warehouselocid);
|
|
|
TWhgenleg tWhgenle2 = queryTWhgenleg(tWarehousebills, wb);
|
|
|
updateTWhgenlegData(wb, tWhgenle2.getfId(), "SJCKRevoke");
|
|
|
- } else if ("HQZYRevoke".equals(billsType)) { // 货转撤销 HQZYRevoke
|
|
|
+ wb.setfBillstatus(1L);
|
|
|
+ } else if ("HQZYRevoke".equals(billsType)) { // 货转撤销
|
|
|
Long fCorpid = tWarehousebills.getfCorpid();// 原货权方
|
|
|
Long fTocorpid = tWarehousebills.getfTocorpid(); // 新货权方
|
|
|
// 1、新货权方撤销入库
|
|
@@ -1730,8 +1749,27 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
tWarehousebills.setfCorpid(fCorpid);
|
|
|
TWhgenleg tWhgenle2 = queryTWhgenleg(tWarehousebills, wb);
|
|
|
updateTWhgenlegData(wb, tWhgenle2.getfId(), "SJCKRevoke");
|
|
|
+ wb.setfBillstatus(1L);
|
|
|
}
|
|
|
i++;
|
|
|
+ wb.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
+ wb.setUpdateTime(new Date());
|
|
|
+ if (tWarehousebillsitemsMapper.updateTWarehousebillsitems(wb) <= 0) {
|
|
|
+ TransactionAspectSupport.currentTransactionStatus().setRollbackOnly();
|
|
|
+ return AjaxResult.error("新增库存明细失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ TWarehousebillsfees warehousebillsfees = new TWarehousebillsfees();
|
|
|
+ warehousebillsfees.setfPid(fId);
|
|
|
+ List<TWarehousebillsfees> billsFees = tWarehousebillsfeesMapper.selectTWarehousebillsfeesList(warehousebillsfees);
|
|
|
+ // 收款明细添加
|
|
|
+ if (billsFees.size() != 0) {
|
|
|
+ for (TWarehousebillsfees wbDr : billsFees) {
|
|
|
+ wbDr.setfBillstatus(1L);
|
|
|
+ wbDr.setUpdateBy(loginUser.getUser().getUserName());
|
|
|
+ wbDr.setUpdateTime(new Date());
|
|
|
+ tWarehousebillsfeesMapper.insertTWarehousebillsfees(wbDr);
|
|
|
}
|
|
|
}
|
|
|
return AjaxResult.success();
|
|
@@ -1757,7 +1795,8 @@ public class TWarehouseBillsServiceImpl implements ITWarehouseBillsService {
|
|
|
return AjaxResult.error("未找到入账信息");
|
|
|
}
|
|
|
TWarehouseBills tWarehousebills = JSONArray.parseObject(warehouseBills, TWarehouseBills.class);
|
|
|
- tWarehousebills.setfItemsStatus(1L);
|
|
|
+ tWarehousebills.setfItemsStatus(2L);
|
|
|
+ tWarehousebills.setfItemsStatus(1L); //撤销状态
|
|
|
tWarehouseBillsMapper.updateTWarehousebills(tWarehousebills);
|
|
|
tEnclosureMapper.deleteByFPid(tWarehousebills.getfId());
|
|
|
tWarehousebillsfeesMapper.deleteByFPid(tWarehousebills.getfId());
|