修改了pda
This commit is contained in:
Binary file not shown.
@@ -145,6 +145,11 @@
|
||||
序列号集
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.BackRecord.SaveBackRecordDetailsRequest.TwoSerialNumbers">
|
||||
<summary>
|
||||
第二个序列号集
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.BackRecord.SaveBackRecordDetailsRequest.Remark">
|
||||
<summary>
|
||||
备注
|
||||
@@ -746,6 +751,11 @@
|
||||
序列号
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.ChangeBoxRecord.SaveChangeBoxRecordDetailsRequest.TwoSerialNumbers">
|
||||
<summary>
|
||||
第二个序列号
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:WMS.Web.Core.Dto.EnumStatusResponse">
|
||||
<summary>
|
||||
所有枚举信息
|
||||
@@ -6135,6 +6145,11 @@
|
||||
序列号集
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.TwoSerialNumbers">
|
||||
<summary>
|
||||
第二个序列号集
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.OutStock.SaveOutStockDetailsRequest.BoxLength">
|
||||
<summary>
|
||||
箱长
|
||||
@@ -6896,6 +6911,11 @@
|
||||
序列号
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.TwoSerialNumbers">
|
||||
<summary>
|
||||
第二个序列号
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Core.Dto.TakeStock.SaveTakeStockRequest.Remark">
|
||||
<summary>
|
||||
备注
|
||||
|
||||
@@ -113,6 +113,11 @@
|
||||
序列号集
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Domain.Entitys.BackRecordDetails.TwoSerialNumbers">
|
||||
<summary>
|
||||
序列号集
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:WMS.Web.Domain.Entitys.BackRecordDetails.Remark">
|
||||
<summary>
|
||||
备注
|
||||
|
||||
@@ -39,6 +39,13 @@ namespace WMS.Web.Core.Dto.BackRecord
|
||||
/// </summary>
|
||||
[Required(ErrorMessage = "序列号不能为空")]
|
||||
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 第二个序列号集
|
||||
/// </summary>
|
||||
//[Required(ErrorMessage = "序列号不能为空")]
|
||||
public List<string> TwoSerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
|
||||
@@ -75,5 +75,11 @@ namespace WMS.Web.Core.Dto.ChangeBoxRecord
|
||||
/// 序列号
|
||||
/// </summary>
|
||||
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 第二个序列号
|
||||
/// </summary>
|
||||
public List<string> TwoSerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,6 +53,11 @@ namespace WMS.Web.Core.Dto.OutStock
|
||||
/// 序列号集
|
||||
/// </summary>
|
||||
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||
/// <summary>
|
||||
/// 第二个序列号集
|
||||
/// </summary>
|
||||
public List<string> TwoSerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 箱长
|
||||
///</summary>
|
||||
|
||||
@@ -64,6 +64,11 @@ namespace WMS.Web.Core.Dto.TakeStock
|
||||
/// 序列号
|
||||
/// </summary>
|
||||
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||
/// <summary>
|
||||
/// 第二个序列号
|
||||
/// </summary>
|
||||
public List<string> TwoSerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
|
||||
@@ -40,6 +40,12 @@ namespace WMS.Web.Domain.Entitys
|
||||
/// 序列号集
|
||||
/// </summary>
|
||||
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||
/// <summary>
|
||||
/// 序列号集
|
||||
/// </summary>
|
||||
[NotMapped]
|
||||
public List<string> TwoSerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
/// <summary>
|
||||
/// 备注
|
||||
/// </summary>
|
||||
|
||||
@@ -66,13 +66,20 @@ namespace WMS.Web.Domain.Entitys
|
||||
public List<BoxDetails> Details { get; set; } = new List<BoxDetails>();
|
||||
|
||||
//移出
|
||||
public Result Out(List<(string MaterialNumber, decimal Qty, List<string> SerialNumbers)> list)
|
||||
public Result Out(List<(string MaterialNumber, decimal Qty, List<string> SerialNumbers)> list,string isNotCount)
|
||||
{
|
||||
foreach (var l in list)
|
||||
{
|
||||
|
||||
var d = this.Details.FirstOrDefault(f => f.MaterialNumber == l.MaterialNumber);
|
||||
if (d == null) return Result.ReFailure(ResultCodes.BoxMateriaNoData);
|
||||
d.Qty = d.Qty - l.Qty;
|
||||
if(isNotCount == "1")
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
d.Qty = d.Qty - l.Qty;
|
||||
}
|
||||
if (d.Qty <= 0) this.Details.Remove(d);
|
||||
//foreach (var s in l.SerialNumbers) d.SerialNumbers.Remove(s);
|
||||
}
|
||||
@@ -80,7 +87,7 @@ namespace WMS.Web.Domain.Entitys
|
||||
}
|
||||
|
||||
//移入
|
||||
public Result In(List<(string MaterialNumber, decimal Qty, List<string> SerialNumbers)> list)
|
||||
public Result In(List<(string MaterialNumber, decimal Qty, List<string> SerialNumbers)> list,string isNotCount)
|
||||
{
|
||||
foreach (var l in list)
|
||||
{
|
||||
@@ -95,7 +102,13 @@ namespace WMS.Web.Domain.Entitys
|
||||
});
|
||||
continue;
|
||||
}
|
||||
d.Qty = d.Qty + l.Qty;
|
||||
if (isNotCount == "1")
|
||||
{
|
||||
}
|
||||
else
|
||||
{
|
||||
d.Qty = d.Qty + l.Qty;
|
||||
}
|
||||
//d.SerialNumbers.AddRange(l.SerialNumbers);
|
||||
}
|
||||
return Result.ReSuccess();
|
||||
|
||||
@@ -34,6 +34,13 @@ namespace WMS.Web.Domain.Entitys
|
||||
/// </summary>
|
||||
[Column("SerialNumbers")]
|
||||
public List<string> SerialNumbers { get; set; } = new List<string>();
|
||||
///// <summary>
|
||||
///// 第二个序列号
|
||||
///// </summary>
|
||||
//[Column("TwoSerialNumbers")]
|
||||
//public List<string> TwoSerialNumbers { get; set; } = new List<string>();
|
||||
|
||||
|
||||
///// <summary>
|
||||
///// 仓位
|
||||
/////</summary>
|
||||
|
||||
@@ -97,6 +97,8 @@ namespace WMS.Web.Domain.Services
|
||||
var destIds_boxs = await _boxInventoryRepositories.GetList(destIds);
|
||||
|
||||
var serialNumbers = dto.SelectMany(s => s.Details).SelectMany(s => s.SerialNumbers).ToList();
|
||||
var TwoserialNumbers = dto.SelectMany(s => s.Details).SelectMany(s => s.TwoSerialNumbers).ToList();
|
||||
serialNumbers.AddRange(TwoserialNumbers);
|
||||
var serialNumberList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
||||
foreach (var d in dto)
|
||||
{
|
||||
@@ -145,14 +147,17 @@ namespace WMS.Web.Domain.Services
|
||||
if (destBoxs.Count() != destIds.Count()) return Result.ReFailure(ResultCodes.BoxNoData);
|
||||
foreach (var d in dto)
|
||||
{
|
||||
|
||||
var l = d.Details.Select(s => (s.MaterialNumber, s.Qty, s.SerialNumbers)).ToList();
|
||||
var l2 = d.Details.Select(s => (s.MaterialNumber, s.Qty, s.TwoSerialNumbers)).ToList();
|
||||
var srcBox = srcBoxs.FirstOrDefault(f => f.Id == d.SrcBoxId);
|
||||
var destBox = destBoxs.FirstOrDefault(f => f.Id == d.DestBoxId);
|
||||
//原箱移出
|
||||
Result res;
|
||||
if (srcBox != null)
|
||||
{
|
||||
res = srcBox.Out(l);
|
||||
res = srcBox.Out(l,"0");
|
||||
res = srcBox.Out(l2,"1");
|
||||
if (!res.IsSuccess) return res;
|
||||
}
|
||||
if (srcBox != null)
|
||||
@@ -160,11 +165,35 @@ namespace WMS.Web.Domain.Services
|
||||
//目标箱移入
|
||||
if (!isAddBox)
|
||||
{
|
||||
res = destBox.In(l);
|
||||
res = destBox.In(l, "0");
|
||||
res = destBox.In(l2, "1");
|
||||
if (!res.IsSuccess) return res;
|
||||
if (destBox != null)
|
||||
boxList.Add(destBox);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// //var srcBox2 = srcBoxs.FirstOrDefault(f => f.Id == d.SrcBoxId);
|
||||
//// var destBox2 = destBoxs.FirstOrDefault(f => f.Id == d.DestBoxId);
|
||||
// //原箱移出
|
||||
// Result res2;
|
||||
// if (srcBox != null)
|
||||
// {
|
||||
// res2 = srcBox.Out(l2);
|
||||
// if (!res2.IsSuccess) return res2;
|
||||
// }
|
||||
// if (srcBox != null)
|
||||
// boxList.Add(srcBox);
|
||||
// //目标箱移入
|
||||
// if (!isAddBox)
|
||||
// {
|
||||
// res = destBox.In(l);
|
||||
// if (!res.IsSuccess) return res;
|
||||
// if (destBox != null)
|
||||
// boxList.Add(destBox);
|
||||
// }
|
||||
|
||||
}
|
||||
|
||||
List<ChangeBoxRecord> list = new List<ChangeBoxRecord>();
|
||||
@@ -180,6 +209,7 @@ namespace WMS.Web.Domain.Services
|
||||
foreach (var d in dt.Details)
|
||||
{
|
||||
ChangeBoxRecord entity = new ChangeBoxRecord();
|
||||
d.SerialNumbers.AddRange(d.TwoSerialNumbers);
|
||||
entity.Create(loginInfo.UserInfo.StaffId, d.Qty, d.MaterialNumber, d.SerialNumbers, dt.SrcBoxId, dt.DestBoxId);
|
||||
//entity.SrcSubStockId = boxi?.SubStockId ?? 0;//原乡仓位需要去拉一下库存获取
|
||||
if (subStock_s != null)
|
||||
|
||||
@@ -600,17 +600,27 @@ namespace WMS.Web.Domain.Services
|
||||
var current_box_mat_serNums = current_box_serNums.Where(t => t.MaterialNumber == x.MaterialNumber).Select(t => t.SerialNumber).ToList();
|
||||
x.SerialNumbers.AddRange(current_box_mat_serNums);
|
||||
}
|
||||
if (x.TwoSerialNumbers != null)
|
||||
{
|
||||
x.SerialNumbers.AddRange(x.TwoSerialNumbers);
|
||||
}
|
||||
//if (x.TwoSerialNumbers != null)
|
||||
//{
|
||||
// x.SerialNumbers.AddRange(x.TwoSerialNumbers);
|
||||
//}
|
||||
|
||||
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
entity.Details.ForEach(x =>
|
||||
{
|
||||
if (x.TwoSerialNumbers != null)
|
||||
{
|
||||
x.SerialNumbers.AddRange(x.TwoSerialNumbers);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
//5.1保存入库单信息
|
||||
entity = await _inStockRepositories.Add(entity, isTransaction);
|
||||
//5.1保存入库单信息
|
||||
entity = await _inStockRepositories.Add(entity, isTransaction);
|
||||
if (entity == null)
|
||||
return Result.ReFailure(ResultCodes.DateWriteError);
|
||||
|
||||
|
||||
@@ -188,6 +188,7 @@ namespace WMS.Web.Domain.Services
|
||||
|
||||
outd.Qty = qty;
|
||||
outd.SerialNumbers.AddRange(dtoDetails.SelectMany(s => s.SerialNumbers));
|
||||
outd.SerialNumbers.AddRange(dtoDetails.SelectMany(s => s.TwoSerialNumbers));
|
||||
entity.Details.Add(outd);
|
||||
}
|
||||
entity.Create(loginInfo.UserInfo.StaffId, outStockTask, dto.Method);
|
||||
|
||||
@@ -327,7 +327,7 @@ namespace WMS.Web.Domain.Services
|
||||
//serialNumbers.AddRange(twoserialNumbers);
|
||||
////add by yzh
|
||||
var entityList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
||||
var TwoentityList = await _serialNumbersRepositories.GetEntityList(TwoserialNumbers);
|
||||
// var TwoentityList = await _serialNumbersRepositories.GetEntityList(TwoserialNumbers);
|
||||
var boxIds = inStock.Details.Select(s => s.BoxId).ToList();
|
||||
var boxList = await _boxRepositories.GetEntityList(boxIds);
|
||||
var userName = _singleDataService.GetSingleData(SingleAction.Staffs, loginInfo.UserInfo.CompanyId, loginInfo.UserInfo.StaffId);
|
||||
@@ -338,11 +338,11 @@ namespace WMS.Web.Domain.Services
|
||||
bool isRollback = false;
|
||||
bool isSuccess = true;
|
||||
List<SerialNumberOperate> sList = new List<SerialNumberOperate>();
|
||||
// boxId = 0;
|
||||
var boxId = 0;
|
||||
|
||||
foreach (var entity in entityList)
|
||||
{
|
||||
int boxId = inStock.Details.FirstOrDefault(s => s.SerialNumbers.Contains(entity.SerialNumber))?.BoxId ?? 0;
|
||||
boxId = inStock.Details.FirstOrDefault(s => s.SerialNumbers.Contains(entity.SerialNumber))?.BoxId ?? 0;
|
||||
var box = boxList.FirstOrDefault(f => f.Id == boxId);
|
||||
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);
|
||||
@@ -372,7 +372,7 @@ namespace WMS.Web.Domain.Services
|
||||
//{
|
||||
// foreach (var entity in TwoentityList)
|
||||
// {
|
||||
// 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 instockDetail = inStock.Details.FirstOrDefault(f => f.MaterialNumber == entity.MaterialNumber);
|
||||
// var subStock = _singleDataService.GetSingleData(SingleAction.SubStocksJoinOrgCode, loginInfo.UserInfo.CompanyId, inStock.SubStockCode + inStock.StockCode + inStock.OrgCode);
|
||||
@@ -429,6 +429,8 @@ namespace WMS.Web.Domain.Services
|
||||
{
|
||||
//获取序列号信息
|
||||
var serialNumbers = backRecord.Details.SelectMany(s => s.SerialNumbers).ToList();
|
||||
var TwoserialNumbers = backRecord.Details.SelectMany(s => s.TwoSerialNumbers).ToList();
|
||||
serialNumbers.AddRange(TwoserialNumbers);
|
||||
var entityList = await _serialNumbersRepositories.GetEntityList(serialNumbers);
|
||||
var boxIds = backRecord.Details.Select(s => s.BoxId).ToList();
|
||||
var boxList = await _boxRepositories.GetEntityList(boxIds);
|
||||
@@ -442,7 +444,7 @@ namespace WMS.Web.Domain.Services
|
||||
List<SerialNumberOperate> sList = new List<SerialNumberOperate>();
|
||||
foreach (var entity in entityList)
|
||||
{
|
||||
var detail = backRecord.Details.FirstOrDefault(w => w.SerialNumbers.Contains(entity.SerialNumber));
|
||||
var detail = backRecord.Details.FirstOrDefault(w => w.SerialNumbers.Contains(entity.SerialNumber)||w.TwoSerialNumbers.Contains(entity.SerialNumber));
|
||||
if (detail == null) continue;
|
||||
var box = boxList.FirstOrDefault(f => f.Id == detail.BoxId);
|
||||
if (box == null) continue;
|
||||
|
||||
@@ -386,12 +386,14 @@ namespace WMS.Web.Domain.Services
|
||||
{
|
||||
List<SerialNumbersBoxInventoryDto> list = new List<SerialNumbersBoxInventoryDto>();
|
||||
var sNs = dto.SelectMany(s => s.SerialNumbers).ToList();
|
||||
//var TwosNs = dto.SelectMany(s => s.TwoSerialNumbers).ToList();
|
||||
//sNs.AddRange(TwosNs);
|
||||
var entityList = await _serialNumberRepositories.GetEntityList(sNs);
|
||||
foreach (var s in sNs)
|
||||
{
|
||||
var entity = entityList.FirstOrDefault(f => f.SerialNumber.Equals(s));
|
||||
if (entity == null) continue;
|
||||
var d = dto.FirstOrDefault(f => f.SerialNumbers.Contains(s));
|
||||
var d = dto.FirstOrDefault(f => f.SerialNumbers.Contains(s));
|
||||
if (d.BoxId != entity.BoxId)
|
||||
{
|
||||
list.Add(new SerialNumbersBoxInventoryDto()
|
||||
@@ -402,6 +404,29 @@ namespace WMS.Web.Domain.Services
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
var TwosNs = dto.SelectMany(s => s.TwoSerialNumbers).ToList();
|
||||
var TwoentityList = await _serialNumberRepositories.GetEntityList(TwosNs);
|
||||
foreach (var s in TwosNs)
|
||||
{
|
||||
var entity = entityList.FirstOrDefault(f => f.TwoSerialNumber.Contains(s));
|
||||
if (entity == null) continue;
|
||||
var d = dto.FirstOrDefault(f => f.TwoSerialNumbers.Contains(s));
|
||||
if (d.BoxId != entity.BoxId)
|
||||
{
|
||||
list.Add(new SerialNumbersBoxInventoryDto()
|
||||
{
|
||||
BoxId = entity.BoxId,
|
||||
MaterialNumber = d.MaterialNumber,
|
||||
SerialNumber = s
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
return list;
|
||||
}
|
||||
/// <summary>
|
||||
|
||||
Reference in New Issue
Block a user