给单据的保存和查询相关接口增加其它入库和其它出库的关联逻辑
This commit is contained in:
@@ -470,14 +470,18 @@ public class DepotHeadService {
|
|||||||
depotItemMapperEx.batchDeleteDepotItemByDepotHeadIds(new Long[]{depotHead.getId()});
|
depotItemMapperEx.batchDeleteDepotItemByDepotHeadIds(new Long[]{depotHead.getId()});
|
||||||
//删除单据主表信息
|
//删除单据主表信息
|
||||||
batchDeleteDepotHeadByIds(depotHead.getId().toString());
|
batchDeleteDepotHeadByIds(depotHead.getId().toString());
|
||||||
//将关联的单据置为审核状态-针对采购入库、销售出库和盘点复盘
|
//将关联的单据置为审核状态-针对采购入库、销售出库、盘点复盘、其它入库、其它出库
|
||||||
if(StringUtil.isNotEmpty(depotHead.getLinkNumber())){
|
if(StringUtil.isNotEmpty(depotHead.getLinkNumber())){
|
||||||
if((BusinessConstants.DEPOTHEAD_TYPE_IN.equals(depotHead.getType()) &&
|
if((BusinessConstants.DEPOTHEAD_TYPE_IN.equals(depotHead.getType()) &&
|
||||||
BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType()))
|
BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType()))
|
||||||
|| (BusinessConstants.DEPOTHEAD_TYPE_OUT.equals(depotHead.getType()) &&
|
|| (BusinessConstants.DEPOTHEAD_TYPE_OUT.equals(depotHead.getType()) &&
|
||||||
BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType()))
|
BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType()))
|
||||||
|| (BusinessConstants.DEPOTHEAD_TYPE_OTHER.equals(depotHead.getType()) &&
|
|| (BusinessConstants.DEPOTHEAD_TYPE_OTHER.equals(depotHead.getType()) &&
|
||||||
BusinessConstants.SUB_TYPE_REPLAY.equals(depotHead.getSubType()))) {
|
BusinessConstants.SUB_TYPE_REPLAY.equals(depotHead.getSubType()))
|
||||||
|
|| (BusinessConstants.DEPOTHEAD_TYPE_IN.equals(depotHead.getType()) &&
|
||||||
|
BusinessConstants.SUB_TYPE_OTHER.equals(depotHead.getSubType()))
|
||||||
|
|| (BusinessConstants.DEPOTHEAD_TYPE_OUT.equals(depotHead.getType()) &&
|
||||||
|
BusinessConstants.SUB_TYPE_OTHER.equals(depotHead.getSubType()))) {
|
||||||
String status = BusinessConstants.BILLS_STATUS_AUDIT;
|
String status = BusinessConstants.BILLS_STATUS_AUDIT;
|
||||||
//查询除当前单据之外的关联单据列表
|
//查询除当前单据之外的关联单据列表
|
||||||
List<DepotHead> exceptCurrentList = getListByLinkNumberExceptCurrent(depotHead.getLinkNumber(), depotHead.getNumber(), depotHead.getType());
|
List<DepotHead> exceptCurrentList = getListByLinkNumberExceptCurrent(depotHead.getLinkNumber(), depotHead.getNumber(), depotHead.getType());
|
||||||
@@ -1500,10 +1504,8 @@ public class DepotHeadService {
|
|||||||
materialParam, depotArray, offset, rows);
|
materialParam, depotArray, offset, rows);
|
||||||
if (null != list) {
|
if (null != list) {
|
||||||
List<Long> idList = new ArrayList<>();
|
List<Long> idList = new ArrayList<>();
|
||||||
List<String> numberList = new ArrayList<>();
|
|
||||||
for (DepotHeadVo4List dh : list) {
|
for (DepotHeadVo4List dh : list) {
|
||||||
idList.add(dh.getId());
|
idList.add(dh.getId());
|
||||||
numberList.add(dh.getNumber());
|
|
||||||
}
|
}
|
||||||
//通过批量查询去构造map
|
//通过批量查询去构造map
|
||||||
Map<Long,String> materialsListMap = findMaterialsListMapByHeaderIdList(idList);
|
Map<Long,String> materialsListMap = findMaterialsListMapByHeaderIdList(idList);
|
||||||
|
|||||||
@@ -641,10 +641,11 @@ public class DepotItemService {
|
|||||||
//更新商品的价格
|
//更新商品的价格
|
||||||
updateMaterialExtendPrice(materialExtend.getId(), depotHead.getSubType(), rowObj);
|
updateMaterialExtendPrice(materialExtend.getId(), depotHead.getSubType(), rowObj);
|
||||||
}
|
}
|
||||||
//如果关联单据号非空则更新订单的状态,单据类型:采购入库单或销售出库单或盘点复盘单
|
//如果关联单据号非空则更新订单的状态,单据类型:采购入库单、销售出库单、盘点复盘单、其它入库单、其它出库单
|
||||||
if(BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType())
|
if(BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType())
|
||||||
|| BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType())
|
|| BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType())
|
||||||
|| BusinessConstants.SUB_TYPE_REPLAY.equals(depotHead.getSubType())) {
|
|| BusinessConstants.SUB_TYPE_REPLAY.equals(depotHead.getSubType())
|
||||||
|
|| BusinessConstants.SUB_TYPE_OTHER.equals(depotHead.getSubType())) {
|
||||||
if(StringUtil.isNotEmpty(depotHead.getLinkNumber())) {
|
if(StringUtil.isNotEmpty(depotHead.getLinkNumber())) {
|
||||||
//单据状态:是否全部完成 2-全部完成 3-部分完成(针对订单的分批出入库)
|
//单据状态:是否全部完成 2-全部完成 3-部分完成(针对订单的分批出入库)
|
||||||
String billStatus = getBillStatusByParam(depotHead);
|
String billStatus = getBillStatusByParam(depotHead);
|
||||||
@@ -1037,6 +1038,14 @@ public class DepotItemService {
|
|||||||
if(BusinessConstants.SUB_TYPE_SALES_ORDER.equals(depotHead.getSubType())) {
|
if(BusinessConstants.SUB_TYPE_SALES_ORDER.equals(depotHead.getSubType())) {
|
||||||
goToType = BusinessConstants.SUB_TYPE_PURCHASE_ORDER;
|
goToType = BusinessConstants.SUB_TYPE_PURCHASE_ORDER;
|
||||||
}
|
}
|
||||||
|
} else if("other".equals(linkType)) {
|
||||||
|
//采购入库、采购退货、销售出库、销售退货都转其它入库
|
||||||
|
if(BusinessConstants.SUB_TYPE_PURCHASE.equals(depotHead.getSubType())
|
||||||
|
|| BusinessConstants.SUB_TYPE_PURCHASE_RETURN.equals(depotHead.getSubType())
|
||||||
|
|| BusinessConstants.SUB_TYPE_SALES.equals(depotHead.getSubType())
|
||||||
|
|| BusinessConstants.SUB_TYPE_SALES_RETURN.equals(depotHead.getSubType())) {
|
||||||
|
goToType = BusinessConstants.SUB_TYPE_OTHER;
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
//采购订单转采购入库
|
//采购订单转采购入库
|
||||||
if(BusinessConstants.SUB_TYPE_PURCHASE_ORDER.equals(depotHead.getSubType())) {
|
if(BusinessConstants.SUB_TYPE_PURCHASE_ORDER.equals(depotHead.getSubType())) {
|
||||||
|
|||||||
Reference in New Issue
Block a user