Browse Source

缴库明细添加仓储

dev_DY_CC
lvzb 1 year ago
parent
commit
025ff859ce
  1. 40
      be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml
  2. 13
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedIssueJobController.cs
  3. 12
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedReceiptJobController.cs
  4. 15
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/ProductReceiptNoteController.cs
  5. 9
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/IProductReceiptNoteDetailAppService.cs
  6. 25
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/ProductReceiptNoteDetailPermissions.cs
  7. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Permissions/StorePermissionDefinitionProvider.cs
  8. 36
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductReceiptNotes/ProductReceiptNoteDetailAppService.cs
  9. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/ProductReceiptNotes/IProductReceiptNoteDetailRepository.cs
  10. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/IStoreDbContext.cs
  11. 10
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Notes/ProductReceiptNotes/ProductReceiptNoteDetailEfCoreRepository.cs
  12. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContext.cs
  13. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreEntityFrameworkCoreModule.cs

40
be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml

@ -771,6 +771,46 @@
最后修改时间 最后修改时间
</summary> </summary>
</member> </member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteDetailExchangeDto.ToLocationErpCode">
<summary>
目标ERP库位
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteDetailExchangeDto.FromLocationErpCode">
<summary>
来源ERP库位
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteDetailExchangeDto.Qty">
<summary>
数量
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteDetailExchangeDto.ItemCode">
<summary>
物品代码
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteExchangeDto.Number">
<summary>
发料记录号
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteExchangeDto.ActiveDate">
<summary>
生效日期
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteExchangeDto.Worker">
<summary>
操作员
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.AssembleIssueNoteExchangeDto.Detail">
<summary>
明细
</summary>
</member>
<member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.IssueNoteDetailExchangeDto.ToLocationErpCode"> <member name="P:Win_in.Sfs.Wms.DataExchange.WMS.PCK.IssueNoteDetailExchangeDto.ToLocationErpCode">
<summary> <summary>
目标ERP库位 目标ERP库位

13
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedIssueJobController.cs

@ -10,6 +10,7 @@ using Win_in.Sfs.Shared.Domain.Shared;
using System.Text.Json; using System.Text.Json;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
using Volo.Abp; using Volo.Abp;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Store;
namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs; namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs;
@ -51,14 +52,15 @@ public class UnplannedIssueJobController : AbpController
/// <param name="isToday"></param> /// <param name="isToday"></param>
/// <returns></returns> /// <returns></returns>
[HttpGet("list")] [HttpGet("list")]
public virtual async Task<PagedResultDto<UnplannedIssueJobDTO>> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday) public virtual async Task<PagedResultDto<UnplannedIssueJobDTO>> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday, EnumUnplannedIssueType enumUnplannedIssueType)
{ {
var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false); //var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false);
var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes); //var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes);
var status = new List<int>() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing }; var status = new List<int>() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing };
var jsonStatus = JsonSerializer.Serialize(status); var jsonStatus = JsonSerializer.Serialize(status);
var issueType = new List<int>() { (int)enumUnplannedIssueType };
var jsonIssueType = JsonSerializer.Serialize(issueType);
var request = new SfsJobRequestInputBase var request = new SfsJobRequestInputBase
{ {
MaxResultCount = pageSize, MaxResultCount = pageSize,
@ -68,7 +70,7 @@ public class UnplannedIssueJobController : AbpController
{ {
Filters = new List<Filter> Filters = new List<Filter>
{ {
// new(nameof(UnplannedIssueJobDTO.WorkGroupCode),jsonWlgCodes,"In"), new(nameof(UnplannedIssueJobDTO.UnplannedIssueType),jsonIssueType,"In"),
new(nameof(UnplannedIssueJobDTO.JobStatus),jsonStatus,"In") new(nameof(UnplannedIssueJobDTO.JobStatus),jsonStatus,"In")
} }
} }
@ -81,7 +83,6 @@ public class UnplannedIssueJobController : AbpController
{ {
request.Sorting = $"{nameof(UnplannedIssueJobDTO.CreationTime)} ASC"; request.Sorting = $"{nameof(UnplannedIssueJobDTO.CreationTime)} ASC";
} }
var list = await _unplannedIssueJobAppService.GetPagedListByFilterAsync(request, true).ConfigureAwait(false); var list = await _unplannedIssueJobAppService.GetPagedListByFilterAsync(request, true).ConfigureAwait(false);
return list; return list;
} }

12
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedReceiptJobController.cs

@ -10,6 +10,7 @@ using Win_in.Sfs.Shared.Domain.Shared;
using System.Text.Json; using System.Text.Json;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
using Volo.Abp; using Volo.Abp;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Store;
namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs; namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs;
@ -50,14 +51,15 @@ public class UnplannedReceiptJobController : AbpController
/// <param name="isToday"></param> /// <param name="isToday"></param>
/// <returns></returns> /// <returns></returns>
[HttpGet("list")] [HttpGet("list")]
public virtual async Task<PagedResultDto<UnplannedReceiptJobDTO>> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday) public virtual async Task<PagedResultDto<UnplannedReceiptJobDTO>> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday, EnumUnplannedReceiptType enumUnplannedReceiptType)
{ {
var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false); //var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false);
var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes); //var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes);
var status = new List<int>() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing }; var status = new List<int>() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing };
var receiptType = new List<int>() { (int)enumUnplannedReceiptType };
var jsonStatus = JsonSerializer.Serialize(status); var jsonStatus = JsonSerializer.Serialize(status);
var jsonreceiptType = JsonSerializer.Serialize(receiptType);
var request = new SfsJobRequestInputBase var request = new SfsJobRequestInputBase
{ {
MaxResultCount = pageSize, MaxResultCount = pageSize,
@ -67,7 +69,7 @@ public class UnplannedReceiptJobController : AbpController
{ {
Filters = new List<Filter> Filters = new List<Filter>
{ {
// new(nameof(UnplannedReceiptJobDTO.WorkGroupCode),jsonWlgCodes,"In"), new(nameof(UnplannedReceiptJobDTO.UnplannedReceiptType),jsonreceiptType,"In"),
new(nameof(UnplannedReceiptJobDTO.JobStatus),jsonStatus,"In") new(nameof(UnplannedReceiptJobDTO.JobStatus),jsonStatus,"In")
} }
} }

15
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/ProductReceiptNoteController.cs

@ -14,14 +14,15 @@ namespace Win_in.Sfs.Wms.Pda.Controllers.Stores;
public class ProductReceiptNoteController : AbpController public class ProductReceiptNoteController : AbpController
{ {
private readonly IProductReceiptNoteAppService _productReceiptNoteAppService; private readonly IProductReceiptNoteAppService _productReceiptNoteAppService;
private readonly IProductReceiptNoteDetailAppService _productReceiptNoteDetailAppService;
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>
/// <param name="productReceiptNoteAppService"></param> /// <param name="productReceiptNoteAppService"></param>
public ProductReceiptNoteController(IProductReceiptNoteAppService productReceiptNoteAppService) public ProductReceiptNoteController(IProductReceiptNoteAppService productReceiptNoteAppService, IProductReceiptNoteDetailAppService productReceiptNoteDetailAppService)
{ {
_productReceiptNoteAppService = productReceiptNoteAppService; _productReceiptNoteAppService = productReceiptNoteAppService;
_productReceiptNoteDetailAppService = productReceiptNoteDetailAppService;
} }
/// <summary> /// <summary>
@ -34,5 +35,15 @@ public class ProductReceiptNoteController : AbpController
{ {
await _productReceiptNoteAppService.CreateAsync(input).ConfigureAwait(false); await _productReceiptNoteAppService.CreateAsync(input).ConfigureAwait(false);
} }
/// <summary>
/// 单件码获取方法
/// </summary>
/// <param name="mesBarCode"></param>
/// <returns></returns>
[HttpPost("get-itemcode-by-mesbarcode")]
public virtual async Task<ProductReceiptNoteDetailDTO> GetItemCodeByMesBarCode(string mesBarCode)
{
return await _productReceiptNoteDetailAppService.GetItemCodeByMesBarCode(mesBarCode).ConfigureAwait(false);
}
} }

9
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/IProductReceiptNoteDetailAppService.cs

@ -0,0 +1,9 @@
using System.Threading.Tasks;
using Volo.Abp.Application.Services;
using Win_in.Sfs.Wms.Store.Application.Contracts;
namespace Win_in.Sfs.Wms.Store.Application.Contracts;
public interface IProductReceiptNoteDetailAppService : ISfsStoreAppServiceBase<ProductReceiptNoteDetailDTO, SfsStoreRequestInputBase, ProductReceiptNoteDetailInput>
{
Task<ProductReceiptNoteDetailDTO> GetItemCodeByMesBarCode(string mesBarCode);
}

25
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/ProductReceiptNoteDetailPermissions.cs

@ -0,0 +1,25 @@
using Volo.Abp.Authorization.Permissions;
using Win_in.Sfs.Wms.Store.Domain;
namespace Win_in.Sfs.Wms.Store.Application.Contracts;
public static class ProductReceiptNoteDetailPermissions
{
public const string Default = StorePermissions.GroupName + "." + nameof(ProductReceiptNoteDetail);
public const string Create = Default + "." + StorePermissions.CreateStr;
public const string Update = Default + "." + StorePermissions.UpdateStr;
public const string Delete = Default + "." + StorePermissions.DeleteStr;
//线边完工收货记录
public const string WipProductReceiptNoteDetail = StorePermissions.GroupName + "." + nameof(WipProductReceiptNoteDetail);
public static void AddProductReceiptNoteDetailPermission(this PermissionGroupDefinition permissionGroup)
{
var productReceiptNotePermission = permissionGroup.AddPermission(Default, StorePermissionDefinitionProvider.L(nameof(ProductReceiptNoteDetail)));
productReceiptNotePermission.AddChild(Create, StorePermissionDefinitionProvider.L(StorePermissions.CreateStr));
productReceiptNotePermission.AddChild(Update, StorePermissionDefinitionProvider.L(StorePermissions.UpdateStr));
productReceiptNotePermission.AddChild(Delete, StorePermissionDefinitionProvider.L(StorePermissions.DeleteStr));
permissionGroup.AddPermission(WipProductReceiptNoteDetail, StorePermissionDefinitionProvider.L(nameof(WipProductReceiptNoteDetail)));
}
}

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Permissions/StorePermissionDefinitionProvider.cs

@ -17,6 +17,7 @@ public class StorePermissionDefinitionProvider : PermissionDefinitionProvider
storeGroup.AddProductionPlanPermission(); storeGroup.AddProductionPlanPermission();
storeGroup.AddPreparationPlanPermission(); storeGroup.AddPreparationPlanPermission();
storeGroup.AddProductReceiptNotePermission(); storeGroup.AddProductReceiptNotePermission();
storeGroup.AddProductReceiptNoteDetailPermission();
storeGroup.AddOfflineSettlementNotePermission(); storeGroup.AddOfflineSettlementNotePermission();
storeGroup.AddBackFlushNotePermission(); storeGroup.AddBackFlushNotePermission();
storeGroup.AddWorkOrderPermission(); storeGroup.AddWorkOrderPermission();

36
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductReceiptNotes/ProductReceiptNoteDetailAppService.cs

@ -0,0 +1,36 @@
using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp.Application.Dtos;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
using Volo.Abp.Application.Services;
using Microsoft.AspNetCore.Authorization;
using Win_in.Sfs.Wms.Store.Domain.Shared;
using Win_in.Sfs.Wms.Store.Application;
using Volo.Abp.Domain.Repositories;
namespace Win_in.Sfs.Wms.Store.Notes.ProductReceiptNotes;
[Authorize]
[Route($"{StoreConsts.RootPath}product-receipt-note-detail")]
public class ProductReceiptNoteDetailAppService : SfsStoreAppServiceBase<ProductReceiptNoteDetail, ProductReceiptNoteDetailDTO, SfsStoreRequestInputBase, ProductReceiptNoteDetailInput, ProductReceiptNoteImportInput>, IProductReceiptNoteDetailAppService
{
private readonly IProductReceiptNoteDetailRepository _productReceiptNoteDetailRepository;
public ProductReceiptNoteDetailAppService(
IProductReceiptNoteDetailRepository repository
) : base(repository)
{
_productReceiptNoteDetailRepository = repository;
}
[HttpGet("get-itemcode-by-mesbarcode")]
public virtual async Task<ProductReceiptNoteDetailDTO> GetItemCodeByMesBarCode(string mesBarCode)
{
var entity = await _productReceiptNoteDetailRepository.FirstOrDefaultAsync(r => r.MesBarCode == mesBarCode).ConfigureAwait(false);
var dto = ObjectMapper.Map<ProductReceiptNoteDetail, ProductReceiptNoteDetailDTO>(entity);
return dto;
}
}

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/ProductReceiptNotes/IProductReceiptNoteDetailRepository.cs

@ -0,0 +1,4 @@
namespace Win_in.Sfs.Wms.Store.Domain;
public interface IProductReceiptNoteDetailRepository : ISfsStoreRepositoryBase<ProductReceiptNoteDetail>
{
}

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/IStoreDbContext.cs

@ -74,6 +74,8 @@ public interface IStoreDbContext : IEfCoreDbContext
public DbSet<JisProductReceiptNote> JisProductReceiptNotes { get; } public DbSet<JisProductReceiptNote> JisProductReceiptNotes { get; }
public DbSet<ProductReceiptNote> ProductReceiptNotes { get; } public DbSet<ProductReceiptNote> ProductReceiptNotes { get; }
public DbSet<ProductReceiptNoteDetail> ProductReceiptNoteDetails { get; }
public DbSet<OfflineSettlementNote> OfflineSettlementNotes { get; } public DbSet<OfflineSettlementNote> OfflineSettlementNotes { get; }
public DbSet<BackFlushNote> BackFlushNotes { get; } public DbSet<BackFlushNote> BackFlushNotes { get; }
public DbSet<ProductL7PartsNote> ProductL7PartsNotes { get; } public DbSet<ProductL7PartsNote> ProductL7PartsNotes { get; }

10
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Notes/ProductReceiptNotes/ProductReceiptNoteDetailEfCoreRepository.cs

@ -0,0 +1,10 @@
using Volo.Abp.EntityFrameworkCore;
using Win_in.Sfs.Wms.Store.Domain;
namespace Win_in.Sfs.Wms.Store.EntityFrameworkCore;
public class ProductReceiptNoteDetailEfCoreRepository : SfsStoreEfCoreRepositoryBase<StoreDbContext, ProductReceiptNoteDetail>, IProductReceiptNoteDetailRepository
{
public ProductReceiptNoteDetailEfCoreRepository(IDbContextProvider<StoreDbContext> dbContextProvider) : base(dbContextProvider)
{
}
}

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContext.cs

@ -73,6 +73,8 @@ public class StoreDbContext : AbpDbContext<StoreDbContext>, IStoreDbContext
public DbSet<JisProductReceiptNote> JisProductReceiptNotes { get; set; } public DbSet<JisProductReceiptNote> JisProductReceiptNotes { get; set; }
public DbSet<ProductReceiptNote> ProductReceiptNotes { get; set; } public DbSet<ProductReceiptNote> ProductReceiptNotes { get; set; }
public DbSet<ProductReceiptNoteDetail> ProductReceiptNoteDetails { get; set; }
public DbSet<OfflineSettlementNote> OfflineSettlementNotes { get; set; } public DbSet<OfflineSettlementNote> OfflineSettlementNotes { get; set; }
public DbSet<BackFlushNote> BackFlushNotes { get; set; } public DbSet<BackFlushNote> BackFlushNotes { get; set; }
public DbSet<ProductL7PartsNote> ProductL7PartsNotes { get; set; } public DbSet<ProductL7PartsNote> ProductL7PartsNotes { get; set; }

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreEntityFrameworkCoreModule.cs

@ -95,6 +95,7 @@ public class StoreEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient<IJisDeliverNoteRepository, JisDeliverNoteEfCoreRepository>(); context.Services.AddTransient<IJisDeliverNoteRepository, JisDeliverNoteEfCoreRepository>();
context.Services.AddTransient<IProductL7PartsNoteRepository, ProductL7PartsNoteEfCoreRepository>(); context.Services.AddTransient<IProductL7PartsNoteRepository, ProductL7PartsNoteEfCoreRepository>();
context.Services.AddTransient<IProductReceiptNoteRepository, ProductReceiptNoteEfCoreRepository>(); context.Services.AddTransient<IProductReceiptNoteRepository, ProductReceiptNoteEfCoreRepository>();
context.Services.AddTransient<IProductReceiptNoteDetailRepository, ProductReceiptNoteDetailEfCoreRepository>();
context.Services.AddTransient<IOfflineSettlementNoteRepository, OfflineSettlementNoteEfCoreRepository>(); context.Services.AddTransient<IOfflineSettlementNoteRepository, OfflineSettlementNoteEfCoreRepository>();
context.Services.AddTransient<IBackFlushNoteRepository, BackFlushNoteEfCoreRepository>(); context.Services.AddTransient<IBackFlushNoteRepository, BackFlushNoteEfCoreRepository>();
context.Services.AddTransient<IPurchaseReceiptNoteRepository, PurchaseReceiptNoteEfCoreRepository>(); context.Services.AddTransient<IPurchaseReceiptNoteRepository, PurchaseReceiptNoteEfCoreRepository>();
@ -106,7 +107,8 @@ public class StoreEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient<IIssueNoteRepository, IssueNoteEfCoreRepository>(); context.Services.AddTransient<IIssueNoteRepository, IssueNoteEfCoreRepository>();
context.Services.AddTransient<IInjectionIssueNoteRepository, InjectionIssueNoteEfCoreRepository>(); context.Services.AddTransient<IInjectionIssueNoteRepository, InjectionIssueNoteEfCoreRepository>();
context.Services.AddTransient<IAssembleIssueNoteRepository, AssembleIssueNoteEfCoreRepository>(); context.Services.AddTransient<IAssembleIssueNoteRepository, AssembleIssueNoteEfCoreRepository>();
context.Services.AddTransient<IKittingIssueNoteRepository, KittingIssueNoteEfCoreRepository>(); context.Services.AddTransient<IThirdLocationNoteRepository, ThirdLocationNoteEfCoreRepository>(); context.Services.AddTransient<IKittingIssueNoteRepository, KittingIssueNoteEfCoreRepository>();
context.Services.AddTransient<IThirdLocationNoteRepository, ThirdLocationNoteEfCoreRepository>();
context.Services.AddTransient<IContainerNoteRepository, ContainerNoteEfCoreRepository>(); context.Services.AddTransient<IContainerNoteRepository, ContainerNoteEfCoreRepository>();
context.Services.AddTransient<IUnplannedReceiptNoteRepository, UnplannedReceiptNoteEfCoreRepository>(); context.Services.AddTransient<IUnplannedReceiptNoteRepository, UnplannedReceiptNoteEfCoreRepository>();
context.Services.AddTransient<IUnplannedIssueNoteRepository, UnplannedIssueNoteEfCoreRepository>(); context.Services.AddTransient<IUnplannedIssueNoteRepository, UnplannedIssueNoteEfCoreRepository>();

Loading…
Cancel
Save