diff --git a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 index c808c192..91fc6696 100644 Binary files a/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 and b/.vs/WMS.Web/DesignTimeBuild/.dtbcache.v2 differ diff --git a/src/WMS.Web.Api/Controllers/SysConfigController.cs b/src/WMS.Web.Api/Controllers/SysConfigController.cs index 8a5003ec..1fcf9347 100644 --- a/src/WMS.Web.Api/Controllers/SysConfigController.cs +++ b/src/WMS.Web.Api/Controllers/SysConfigController.cs @@ -341,15 +341,18 @@ namespace WMS.Web.Api.Controllers /// 获取仓位:模糊名称 /// /// 仓位名称模糊匹配 + /// 仓库编码 /// [HttpGet] [Route("GetSubUcStockByName")] - public async Task>> GetSubUcStockByName([FromQuery] string name) + public async Task>> GetSubUcStockByName([FromQuery] string name, [FromQuery] string stockCode=null) { var loginInfo = _loginService.GetLoginInfo(this.HttpContext.Request.Headers["Authorization"]); if (loginInfo == null || loginInfo.UserInfo == null) return Result>.ReFailure(ResultCodes.Token_Invalid_Error); var r = await _basicsRepositories.GetSubUcStockAsync(ManagementSystemCode.GLXT0004.ToString(), name, loginInfo.UserInfo.CompanyId); + if (!string.IsNullOrEmpty(stockCode)) + r = r.Where(w => w.StockCode == stockCode).ToList(); return Result>.ReSuccess(r); } /// @@ -496,7 +499,7 @@ namespace WMS.Web.Api.Controllers return Result.ReFailure(ResultCodes.Token_Invalid_Error); _logger.LogInformation($"请求序列号信息:{serialNumber} 组织:{orgCode}"); - var res = await _serialNumbersRepositories.GetSerialNumber(serialNumber, orgCode); + var res = await _serialNumbersRepositories.GetSerialNumber(serialNumber, orgCode,IsOps); if (res == null) return Result.ReFailure(ResultCodes.MateriaNoData); _logger.LogInformation($"请求序列号信息结果:{res.MaterialNumber}"); diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml index dcc243e3..3a574846 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Api.xml @@ -626,11 +626,12 @@ 客户名 - + 获取仓位:模糊名称 仓位名称模糊匹配 + 仓库编码 diff --git a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml index 60927436..c8859122 100644 --- a/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml +++ b/src/WMS.Web.Api/wwwroot/WMS.Web.Core.xml @@ -4374,6 +4374,11 @@ 物料规格型号 + + + 是否是老Ops条码 + + 物料对应的仓位有哪些 diff --git a/src/WMS.Web.Core/Dto/MaterialResponse.cs b/src/WMS.Web.Core/Dto/MaterialResponse.cs index cad119d3..a53991c5 100644 --- a/src/WMS.Web.Core/Dto/MaterialResponse.cs +++ b/src/WMS.Web.Core/Dto/MaterialResponse.cs @@ -45,5 +45,9 @@ namespace WMS.Web.Core.Dto /// 物料规格型号 /// public string Specifications { get; set; } + /// + /// 是否是老Ops条码 + /// + public bool IsOldOps { get; set; } = false; } } diff --git a/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs b/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs index 23cda365..7268b2c5 100644 --- a/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs +++ b/src/WMS.Web.Repositories/Configuration/RepositoryDbContext.cs @@ -389,13 +389,22 @@ namespace WMS.Web.Repositories.Configuration ent.ToTable("t_wms_subscribe_notification"); ent.HasKey(x => x.Id); + var valueComparer = new ValueComparer>( + (c1, c2) => c1.SequenceEqual(c2), + c => c.Aggregate(0, (a, v) => HashCode.Combine(a, v.GetHashCode())), + c => c.ToList()); + ent.Property(f => f.Telephones).HasConversion( v => JsonConvert.SerializeObject(v), - v => JsonConvert.DeserializeObject>(v)); + v => JsonConvert.DeserializeObject>(v)) + .Metadata + .SetValueComparer(valueComparer); ent.Property(f => f.Emails).HasConversion( v => JsonConvert.SerializeObject(v), - v => JsonConvert.DeserializeObject>(v)); + v => JsonConvert.DeserializeObject>(v)) + .Metadata + .SetValueComparer(valueComparer); ; }); base.OnModelCreating(builder); diff --git a/src/WMS.Web.Repositories/SerialNumbersRepositories.cs b/src/WMS.Web.Repositories/SerialNumbersRepositories.cs index 8403dfe3..6f409f92 100644 --- a/src/WMS.Web.Repositories/SerialNumbersRepositories.cs +++ b/src/WMS.Web.Repositories/SerialNumbersRepositories.cs @@ -256,6 +256,7 @@ namespace WMS.Web.Repositories else return null; } + response.IsOldOps = false; response.BoxId = entity.serial.BoxId; response.BoxBillNo = entity?.box?.BoxBillNo ?? ""; response.SubStockCode = entity?.boxInventory?.SubStockCode ?? ""; @@ -290,6 +291,7 @@ namespace WMS.Web.Repositories .SelectMany(x => x.box.DefaultIfEmpty(), (p, box) => new { p.serial, p.boxInventory, box }) .FirstOrDefaultAsync(w => serialNumber.Equals(w.serial.SerialNumber)); if (entity == null || entity.serial == null) return null; + response.IsOldOps = true; response.BoxId = entity.serial.BoxId; response.BoxBillNo = entity?.box?.BoxBillNo ?? ""; response.SubStockCode = entity?.boxInventory?.SubStockCode ?? ""; diff --git a/src/WMS.Web.Repositories/SubscribeNotificationRepositories.cs b/src/WMS.Web.Repositories/SubscribeNotificationRepositories.cs index 0667b906..2bb1f155 100644 --- a/src/WMS.Web.Repositories/SubscribeNotificationRepositories.cs +++ b/src/WMS.Web.Repositories/SubscribeNotificationRepositories.cs @@ -143,14 +143,14 @@ namespace WMS.Web.Repositories { if (ids == null) { - return await _context.SubscribeNotification + return await _context.SubscribeNotification.Where(w => w.IsDelete != true) .AsNoTracking().ToListAsync(); } else { return await _context.SubscribeNotification .AsNoTracking() - .Where(w => ids.Contains(w.Id)) + .Where(w => ids.Contains(w.Id) && w.IsDelete != true) .ToListAsync(); } }