Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
2023-09-08 16:48:48 +08:00
4 changed files with 23 additions and 6 deletions

View File

@@ -123,4 +123,8 @@ public partial class BasLocation : BaseEntity<string>
/// 列
/// </summary>
public int loc_column { get; set; }
/// <summary>
/// 是否超配(1不超配 2超配)
/// </summary>
public string is_overmatch { get; set; }
}

View File

@@ -48,7 +48,7 @@ namespace Tnb.WarehouseMgr
[Route("api/[area]/[controller]/[action]")]
public class BaseWareHouseService : IOverideVisualDevService, IDynamicApiController, ITransient
{
private static Lazy<Dictionary<string, IWHStorageService>> _stroageMap;
private static Lazy<Dictionary<string, IWHStorageService>> _stroageMapLazy;
public OverideVisualDevFunc OverideFuncs { get; } = new OverideVisualDevFunc();
private readonly ChannelWriter<NotifyMessage> _channelWriter;
@@ -59,7 +59,7 @@ namespace Tnb.WarehouseMgr
static BaseWareHouseService()
{
_stroageMap = new Lazy<Dictionary<string, IWHStorageService>>(() =>
_stroageMapLazy = new Lazy<Dictionary<string, IWHStorageService>>(() =>
{
Dictionary<string, IWHStorageService> map = new(StringComparer.OrdinalIgnoreCase);
var serviceTypes = App.EffectiveTypes.Where(u => u.IsClass && !u.IsInterface && !u.IsAbstract && typeof(IWHStorageService).IsAssignableFrom(u)).ToList();
@@ -140,9 +140,9 @@ namespace Tnb.WarehouseMgr
[NonAction]
protected async Task DoUpdate(WareHouseUpInput input)
{
if (_stroageMap.Value.ContainsKey(input.loginType))
if (_stroageMapLazy.Value.ContainsKey(input.loginType))
{
await _stroageMap.Value[input.loginType].Do(input);
await _stroageMapLazy.Value[input.loginType].Do(input);
}
}
[NonAction]

View File

@@ -96,7 +96,20 @@ namespace Tnb.WarehouseMgr
x.modify_id = null;
x.modify_time = null;
});
row = await _db.Insertable(carrys).ExecuteCommandAsync();
if (carrys.Count > 1000)
{
await _db.Fastest<WmsCarryH>().BulkCopyAsync(carrys);
}
else if (carrys.Count > 400)
{
_db.Utilities.PageEach(carrys, 100, async pageList => {
await _db.Insertable(pageList).ExecuteCommandAsync();
});
}
else
{
row = await _db.Insertable(carrys).ExecuteCommandAsync();
}
}
catch (Exception ex)
{

View File

@@ -800,7 +800,7 @@ namespace JNPF.VisualDev
var overideSvc = OverideVisualDevManager.GetOrDefault(modelId);
if (overideSvc != null && overideSvc.OverideFuncs.ImportDataAsync != null)
{
await overideSvc.OverideFuncs.ImportDataAsync(list);
result = await overideSvc.OverideFuncs.ImportDataAsync(list);
}
else
{