Merge branch 'v1.0.5' of https://codeup.aliyun.com/62ce7bca487c500c27f70a79/OPS/WMS-Api into v1.0.5
This commit is contained in:
@@ -92,6 +92,11 @@ namespace WMS.Web.Domain.Entitys
|
|||||||
///</summary>
|
///</summary>
|
||||||
[Column("CustomerId")]
|
[Column("CustomerId")]
|
||||||
public int CustomerId { get; set; } = 0;
|
public int CustomerId { get; set; } = 0;
|
||||||
|
/// <summary>
|
||||||
|
/// 是否出库
|
||||||
|
///</summary>
|
||||||
|
[Column("IsOutStock")]
|
||||||
|
public bool? IsOutStock { get; set; } = false;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 操作(绑定箱信息)
|
/// 操作(绑定箱信息)
|
||||||
@@ -126,6 +131,8 @@ namespace WMS.Web.Domain.Entitys
|
|||||||
this.CustomerId = outStock.ReceiptCustomerId;
|
this.CustomerId = outStock.ReceiptCustomerId;
|
||||||
this.OutStockTime = DateTime.Now;
|
this.OutStockTime = DateTime.Now;
|
||||||
}
|
}
|
||||||
|
//标识出库
|
||||||
|
this.IsOutStock = true;
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 入库
|
/// 入库
|
||||||
|
|||||||
@@ -81,5 +81,10 @@ namespace WMS.Web.Domain.Entitys
|
|||||||
///</summary>
|
///</summary>
|
||||||
[Column("CustomerId")]
|
[Column("CustomerId")]
|
||||||
public int CustomerId { get; set; } = 0;
|
public int CustomerId { get; set; } = 0;
|
||||||
|
/// <summary>
|
||||||
|
/// 是否出库
|
||||||
|
///</summary>
|
||||||
|
[Column("IsOutStock")]
|
||||||
|
public bool? IsOutStock { get; set; } = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -145,7 +145,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
};
|
};
|
||||||
if (moveBoxRecord.Type == MoveBoxType.Up)
|
if (moveBoxRecord.Type == MoveBoxType.Up)
|
||||||
{
|
{
|
||||||
var srcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, moveBoxRecord.DestSubStockCode+ moveBoxRecord.StockCode+ moveBoxRecord.OrgCode);
|
var srcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, moveBoxRecord.DestSubStockCode + moveBoxRecord.StockCode + moveBoxRecord.OrgCode);
|
||||||
op.Remark += "\r\n" + "仓位:" + srcSubStock;
|
op.Remark += "\r\n" + "仓位:" + srcSubStock;
|
||||||
}
|
}
|
||||||
sList.Add(op);
|
sList.Add(op);
|
||||||
@@ -180,6 +180,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
var serialNumbers = outStock.Details.SelectMany(s => s.SerialNumbers).ToList();
|
var serialNumbers = outStock.Details.SelectMany(s => s.SerialNumbers).ToList();
|
||||||
var entityList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
var entityList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
||||||
var boxIds = entityList.Select(s => s.BoxId).ToList();
|
var boxIds = entityList.Select(s => s.BoxId).ToList();
|
||||||
|
boxIds.AddRange(outStock.Details.SelectMany(s => s.BoxsDetails).Select(s => s.BoxId));
|
||||||
var boxList = await _boxRepositories.GetEntityList(boxIds);
|
var boxList = await _boxRepositories.GetEntityList(boxIds);
|
||||||
var userName = _singleDataService.GetSingleData(SingleAction.Staffs, loginInfo.UserInfo.CompanyId, loginInfo.UserInfo.StaffId);
|
var userName = _singleDataService.GetSingleData(SingleAction.Staffs, loginInfo.UserInfo.CompanyId, loginInfo.UserInfo.StaffId);
|
||||||
|
|
||||||
@@ -191,7 +192,8 @@ namespace WMS.Web.Domain.Services
|
|||||||
List<SerialNumberOperate> sList = new List<SerialNumberOperate>();
|
List<SerialNumberOperate> sList = new List<SerialNumberOperate>();
|
||||||
foreach (var entity in entityList)
|
foreach (var entity in entityList)
|
||||||
{
|
{
|
||||||
var box = boxList.FirstOrDefault(f => f.Id == entity.BoxId);
|
var boxId = outStock.Details.SelectMany(s => s.BoxsDetails).FirstOrDefault(w => w.SerialNumbers.Contains(entity.SerialNumber))?.BoxId ?? 0;
|
||||||
|
var box = boxList.FirstOrDefault(f => f.Id == boxId);
|
||||||
var outstockDetail = outStock.Details.FirstOrDefault(f => f.MaterialNumber == entity.MaterialNumber);
|
var outstockDetail = outStock.Details.FirstOrDefault(f => f.MaterialNumber == entity.MaterialNumber);
|
||||||
if (outstockDetail == null) continue;
|
if (outstockDetail == null) continue;
|
||||||
//修改序列号和箱绑定关系
|
//修改序列号和箱绑定关系
|
||||||
@@ -202,8 +204,8 @@ namespace WMS.Web.Domain.Services
|
|||||||
{
|
{
|
||||||
MaterialNumber = entity.MaterialNumber,
|
MaterialNumber = entity.MaterialNumber,
|
||||||
SerialNumber = entity.SerialNumber,
|
SerialNumber = entity.SerialNumber,
|
||||||
OrgId = box.OrgId,
|
OrgId = box?.OrgId ?? 0,
|
||||||
SupplierId = box.SupplierId,
|
SupplierId = box?.SupplierId ?? 0,
|
||||||
OperateTime = DateTime.Now,
|
OperateTime = DateTime.Now,
|
||||||
OperateType = OutStockTypeConvert(outStock.Type),
|
OperateType = OutStockTypeConvert(outStock.Type),
|
||||||
OperateUser = userName,
|
OperateUser = userName,
|
||||||
@@ -322,7 +324,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
var boxId = inStock.Details.FirstOrDefault(s => s.SerialNumbers.Contains(entity.SerialNumber))?.BoxId ?? 0;
|
var boxId = inStock.Details.FirstOrDefault(s => s.SerialNumbers.Contains(entity.SerialNumber))?.BoxId ?? 0;
|
||||||
var box = boxList.FirstOrDefault(f => f.Id == boxId);
|
var box = boxList.FirstOrDefault(f => f.Id == boxId);
|
||||||
var instockDetail = inStock.Details.FirstOrDefault(f => f.MaterialNumber == entity.MaterialNumber);
|
var instockDetail = inStock.Details.FirstOrDefault(f => f.MaterialNumber == entity.MaterialNumber);
|
||||||
var subStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, inStock.SubStockCode+ inStock.StockCode+ inStock.OrgCode);
|
var subStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, inStock.SubStockCode + inStock.StockCode + inStock.OrgCode);
|
||||||
//修改序列号和箱绑定关系
|
//修改序列号和箱绑定关系
|
||||||
entity.InStock(instockDetail.SourceBillNo, inStock.Type);
|
entity.InStock(instockDetail.SourceBillNo, inStock.Type);
|
||||||
entity.Bind(boxId, box?.CompleteCartonTime ?? DateTime.Now);
|
entity.Bind(boxId, box?.CompleteCartonTime ?? DateTime.Now);
|
||||||
@@ -391,7 +393,10 @@ namespace WMS.Web.Domain.Services
|
|||||||
//if (backRecord.Type == BackRecordType.InstockOff)
|
//if (backRecord.Type == BackRecordType.InstockOff)
|
||||||
// entity.UnBind();
|
// entity.UnBind();
|
||||||
if (backRecord.Type == BackRecordType.OutstockOn)
|
if (backRecord.Type == BackRecordType.OutstockOn)
|
||||||
|
{
|
||||||
entity.Bind(detail.BoxId, box.CompleteCartonTime);
|
entity.Bind(detail.BoxId, box.CompleteCartonTime);
|
||||||
|
entity.IsOutStock = false;//标识出库状态
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//记录序列号操作日志
|
//记录序列号操作日志
|
||||||
@@ -411,7 +416,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
if (backRecord.Type == BackRecordType.OutstockOn)
|
if (backRecord.Type == BackRecordType.OutstockOn)
|
||||||
{
|
{
|
||||||
var subStockId = backRecord?.SubStockCode ?? "";
|
var subStockId = backRecord?.SubStockCode ?? "";
|
||||||
var srcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, backRecord?.SubStockCode ?? ""+ backRecord?.StockCode ?? ""+ backRecord?.OrgCode ?? "");
|
var srcSubStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, backRecord?.SubStockCode ?? "" + backRecord?.StockCode ?? "" + backRecord?.OrgCode ?? "");
|
||||||
op.Remark += "\r\n" + "仓位:" + srcSubStock;
|
op.Remark += "\r\n" + "仓位:" + srcSubStock;
|
||||||
}
|
}
|
||||||
sList.Add(op);
|
sList.Add(op);
|
||||||
@@ -445,7 +450,7 @@ namespace WMS.Web.Domain.Services
|
|||||||
{
|
{
|
||||||
var serialNumbers = takeStocks.SelectMany(s => s.Details).SelectMany(s => s.SerialNumbers).ToList();
|
var serialNumbers = takeStocks.SelectMany(s => s.Details).SelectMany(s => s.SerialNumbers).ToList();
|
||||||
var entityList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
var entityList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
||||||
var boxIds = takeStocks.SelectMany(s=>s.Details).Select(s => s.BoxId).ToList();
|
var boxIds = takeStocks.SelectMany(s => s.Details).Select(s => s.BoxId).ToList();
|
||||||
var boxList = await _boxRepositories.GetEntityList(boxIds);
|
var boxList = await _boxRepositories.GetEntityList(boxIds);
|
||||||
|
|
||||||
List<Box> box_New_List = new List<Box>();
|
List<Box> box_New_List = new List<Box>();
|
||||||
|
|||||||
@@ -248,7 +248,7 @@ namespace WMS.Web.Repositories
|
|||||||
.SelectMany(x => x.boxInventory.DefaultIfEmpty(), (p, boxInventory) => new { p.serial, boxInventory })
|
.SelectMany(x => x.boxInventory.DefaultIfEmpty(), (p, boxInventory) => new { p.serial, boxInventory })
|
||||||
.GroupJoin(_context.Box, s => s.serial.BoxId, box => box.Id, (s, box) => new { s.serial, s.boxInventory, box })
|
.GroupJoin(_context.Box, s => s.serial.BoxId, box => box.Id, (s, box) => new { s.serial, s.boxInventory, box })
|
||||||
.SelectMany(x => x.box.DefaultIfEmpty(), (p, box) => new { p.serial, p.boxInventory, box })
|
.SelectMany(x => x.box.DefaultIfEmpty(), (p, box) => new { p.serial, p.boxInventory, box })
|
||||||
.FirstOrDefaultAsync(w => serialNumber.Equals(w.serial.SerialNumber));
|
.FirstOrDefaultAsync(w => serialNumber.Equals(w.serial.SerialNumber) && w.serial.IsOutStock != true);
|
||||||
if (entity == null || entity.serial == null)
|
if (entity == null || entity.serial == null)
|
||||||
{
|
{
|
||||||
if (IsOps)
|
if (IsOps)
|
||||||
@@ -289,13 +289,13 @@ namespace WMS.Web.Repositories
|
|||||||
//.SelectMany(x => x.boxInventory.DefaultIfEmpty(), (p, boxInventory) => new { p.serial, boxInventory })
|
//.SelectMany(x => x.boxInventory.DefaultIfEmpty(), (p, boxInventory) => new { p.serial, boxInventory })
|
||||||
//.GroupJoin(_context.Box, s => s.serial.BoxId, box => box.Id, (s, box) => new { s.serial, s.boxInventory, box })
|
//.GroupJoin(_context.Box, s => s.serial.BoxId, box => box.Id, (s, box) => new { s.serial, s.boxInventory, box })
|
||||||
//.SelectMany(x => x.box.DefaultIfEmpty(), (p, box) => new { p.serial, p.boxInventory, box })
|
//.SelectMany(x => x.box.DefaultIfEmpty(), (p, box) => new { p.serial, p.boxInventory, box })
|
||||||
.FirstOrDefaultAsync(w => serialNumber.Equals(w.SerialNumber));
|
.FirstOrDefaultAsync(w => serialNumber.Equals(w.SerialNumber) && w.IsOutStock != true);
|
||||||
if (entity == null) return null;
|
if (entity == null) return null;
|
||||||
response.IsOldOps = true;
|
response.IsOldOps = true;
|
||||||
response.IsBoxInventory = true;//如果是老ops序列号 默认有库存
|
response.IsBoxInventory = true;//如果是老ops序列号 默认有库存
|
||||||
response.BoxId = 0;
|
response.BoxId = 0;
|
||||||
response.BoxBillNo = "";
|
response.BoxBillNo = "";
|
||||||
response.SubStockCode = "";
|
response.SubStockCode = "";
|
||||||
response.SerialNumber = entity.SerialNumber;
|
response.SerialNumber = entity.SerialNumber;
|
||||||
response.MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, entity.MaterialNumber);
|
response.MaterialName = _erpBasicDataExtendService.GetMaterialName(materials, entity.MaterialNumber);
|
||||||
response.MaterialNumber = entity.MaterialNumber;
|
response.MaterialNumber = entity.MaterialNumber;
|
||||||
|
|||||||
Reference in New Issue
Block a user