🍄🟫默认第一个流水号从Min开始,而不是Min+1
This commit is contained in:
parent
c92881a1ef
commit
ba0e8e6c5a
@ -80,7 +80,7 @@ public class SysSerialService : IDynamicApiController, ITransient
|
|||||||
|
|
||||||
var entity = input.Adapt<SysSerial>();
|
var entity = input.Adapt<SysSerial>();
|
||||||
entity.Expy = DateTime.Now;
|
entity.Expy = DateTime.Now;
|
||||||
entity.Seq = 1;
|
entity.Seq = entity.Min - 1;
|
||||||
return await _sysSerialRep.InsertAsync(entity) ? entity.Id : default;
|
return await _sysSerialRep.InsertAsync(entity) ? entity.Id : default;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -99,7 +99,17 @@ public class SysSerialService : IDynamicApiController, ITransient
|
|||||||
if (await _sysSerialRep.IsAnyAsync(u => u.Type == input.Type && u.TenantId == _userManager.TenantId && input.Id != seq.Id)) throw Oops.Oh(ErrorCodeEnum.D1006);
|
if (await _sysSerialRep.IsAnyAsync(u => u.Type == input.Type && u.TenantId == _userManager.TenantId && input.Id != seq.Id)) throw Oops.Oh(ErrorCodeEnum.D1006);
|
||||||
|
|
||||||
var entity = input.Adapt<SysSerial>();
|
var entity = input.Adapt<SysSerial>();
|
||||||
await _sysSerialRep.AsUpdateable(entity).IgnoreColumns(u => new { u.Expy, u.Seq }).ExecuteCommandAsync();
|
// 原来的数据
|
||||||
|
var original = await _sysSerialRep.GetFirstAsync(u => u.Id == input.Id);
|
||||||
|
// 最小值发生变化,并且当最小值比当前流水号大时
|
||||||
|
var seqChange = false;
|
||||||
|
if (original.Min != entity.Min && entity.Min - 1 > original.Seq)
|
||||||
|
{
|
||||||
|
// 使下个流水号为更新后的最小值
|
||||||
|
entity.Seq = entity.Min - 1;
|
||||||
|
seqChange = true;
|
||||||
|
}
|
||||||
|
await _sysSerialRep.AsUpdateable(entity).IgnoreColumns(u => new { u.Expy }).IgnoreColumnsIF(seqChange == false, u => new { u.Seq }).ExecuteCommandAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -178,7 +188,7 @@ public class SysSerialService : IDynamicApiController, ITransient
|
|||||||
return FormatSeqNo(new()
|
return FormatSeqNo(new()
|
||||||
{
|
{
|
||||||
Formater = input.Formater,
|
Formater = input.Formater,
|
||||||
Seq = input.Seq,
|
Seq = input.Seq + 1,
|
||||||
Max = input.Max,
|
Max = input.Max,
|
||||||
}, DateTime.Now);
|
}, DateTime.Now);
|
||||||
}
|
}
|
||||||
@ -262,7 +272,7 @@ public class SysSerialService : IDynamicApiController, ITransient
|
|||||||
if (nowDate.Date != seq.Expy.Date)
|
if (nowDate.Date != seq.Expy.Date)
|
||||||
{
|
{
|
||||||
seq.Expy = nowDate.Date;
|
seq.Expy = nowDate.Date;
|
||||||
seq.Seq = seq.Min;
|
seq.Seq = seq.Min - 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -270,7 +280,7 @@ public class SysSerialService : IDynamicApiController, ITransient
|
|||||||
if (nowDate.Month != seq.Expy.Month || nowDate.Year != seq.Expy.Year)
|
if (nowDate.Month != seq.Expy.Month || nowDate.Year != seq.Expy.Year)
|
||||||
{
|
{
|
||||||
seq.Expy = nowDate.Date;
|
seq.Expy = nowDate.Date;
|
||||||
seq.Seq = seq.Min;
|
seq.Seq = seq.Min - 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -278,7 +288,7 @@ public class SysSerialService : IDynamicApiController, ITransient
|
|||||||
if (nowDate.Year != seq.Expy.Year)
|
if (nowDate.Year != seq.Expy.Year)
|
||||||
{
|
{
|
||||||
seq.Expy = nowDate.Date;
|
seq.Expy = nowDate.Date;
|
||||||
seq.Seq = seq.Min;
|
seq.Seq = seq.Min - 1;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user