mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2025-11-09 02:44:44 +08:00
fix: 修复入库订单更新异常
This commit is contained in:
@@ -76,19 +76,19 @@ namespace OpenAuth.App
|
|||||||
SugarClient.Ado.BeginTran();
|
SugarClient.Ado.BeginTran();
|
||||||
if (request.WmsInboundOrderDtblReqs != null && request.WmsInboundOrderDtblReqs.Any())
|
if (request.WmsInboundOrderDtblReqs != null && request.WmsInboundOrderDtblReqs.Any())
|
||||||
{
|
{
|
||||||
//id为空的添加
|
//请求的id不在数据库的记录,需要删除
|
||||||
foreach (var detail in request.WmsInboundOrderDtblReqs.Where(u => string.IsNullOrEmpty(u.Id)))
|
|
||||||
{
|
|
||||||
detail.OrderId = request.Id;
|
|
||||||
_wmsInboundOrderDtblApp.Add(detail);
|
|
||||||
}
|
|
||||||
//id比数据库少的,删除
|
|
||||||
var containids = request.WmsInboundOrderDtblReqs.Select(u => u.Id)
|
var containids = request.WmsInboundOrderDtblReqs.Select(u => u.Id)
|
||||||
.Where(u => !string.IsNullOrEmpty(u)).ToList();
|
.Where(u => !string.IsNullOrEmpty(u)).ToList();
|
||||||
if (containids.Any())
|
if (containids.Any())
|
||||||
{
|
{
|
||||||
SugarClient.Deleteable<WmsInboundOrderDtbl>(u => (!containids.Contains(u.Id)) && u.OrderId == request.Id).ExecuteCommand();
|
SugarClient.Deleteable<WmsInboundOrderDtbl>(u => (!containids.Contains(u.Id)) && u.OrderId == request.Id).ExecuteCommand();
|
||||||
}
|
}
|
||||||
|
//id为空的添加
|
||||||
|
foreach (var detail in request.WmsInboundOrderDtblReqs.Where(u => string.IsNullOrEmpty(u.Id)))
|
||||||
|
{
|
||||||
|
detail.OrderId = request.Id;
|
||||||
|
_wmsInboundOrderDtblApp.Add(detail);
|
||||||
|
}
|
||||||
//更新id相同的
|
//更新id相同的
|
||||||
foreach (var detail in request.WmsInboundOrderDtblReqs.Where(u => !string.IsNullOrEmpty(u.Id)))
|
foreach (var detail in request.WmsInboundOrderDtblReqs.Where(u => !string.IsNullOrEmpty(u.Id)))
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -85,12 +85,6 @@ SugarClient.Ado.BeginTran();
|
|||||||
// 更新从表中的字段
|
// 更新从表中的字段
|
||||||
if (obj.SubTableReqs != null && obj.SubTableReqs.Any())
|
if (obj.SubTableReqs != null && obj.SubTableReqs.Any())
|
||||||
{
|
{
|
||||||
//id为空时添加
|
|
||||||
foreach (var detail in obj.SubTableReqs.Where(u => string.IsNullOrEmpty(u.Id)))
|
|
||||||
{
|
|
||||||
_subTableApp.Add(detail);
|
|
||||||
}
|
|
||||||
|
|
||||||
//id比数据库少的,删除
|
//id比数据库少的,删除
|
||||||
var containids = obj.SubTableReqs.Select(u => u.Id)
|
var containids = obj.SubTableReqs.Select(u => u.Id)
|
||||||
.Where(u => !string.IsNullOrEmpty(u)).ToList();
|
.Where(u => !string.IsNullOrEmpty(u)).ToList();
|
||||||
@@ -99,6 +93,12 @@ if (obj.SubTableReqs != null && obj.SubTableReqs.Any())
|
|||||||
SugarClient.Deleteable<SubTable>(u => !containids.Contains(u.Id) && u.MainTableId == obj.Id).ExecuteCommand();
|
SugarClient.Deleteable<SubTable>(u => !containids.Contains(u.Id) && u.MainTableId == obj.Id).ExecuteCommand();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//id为空时添加
|
||||||
|
foreach (var detail in obj.SubTableReqs.Where(u => string.IsNullOrEmpty(u.Id)))
|
||||||
|
{
|
||||||
|
_subTableApp.Add(detail);
|
||||||
|
}
|
||||||
|
|
||||||
//更新id相同的
|
//更新id相同的
|
||||||
foreach (var detail in obj.SubTableReqs.Where(u => !string.IsNullOrEmpty(u.Id)))
|
foreach (var detail in obj.SubTableReqs.Where(u => !string.IsNullOrEmpty(u.Id)))
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user