diff --git a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml
index c1943c344..7e651153f 100644
--- a/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml
+++ b/be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Application.Contracts/Win_in.Sfs.Wms.DataExchange.Application.Contracts.xml
@@ -771,6 +771,46 @@
最后修改时间
+
+
+ 目标ERP库位
+
+
+
+
+ 来源ERP库位
+
+
+
+
+ 数量
+
+
+
+
+ 物品代码
+
+
+
+
+ 发料记录号
+
+
+
+
+ 生效日期
+
+
+
+
+ 操作员
+
+
+
+
+ 明细
+
+
目标ERP库位
diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedIssueJobController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedIssueJobController.cs
index f886d53df..e0d88fdc3 100644
--- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedIssueJobController.cs
+++ b/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 Win_in.Sfs.Shared.Domain;
using Volo.Abp;
+using Win_in.Sfs.Shared.Domain.Shared.Enums.Store;
namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs;
@@ -51,14 +52,15 @@ public class UnplannedIssueJobController : AbpController
///
///
[HttpGet("list")]
- public virtual async Task> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday)
+ public virtual async Task> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday, EnumUnplannedIssueType enumUnplannedIssueType)
{
- var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false);
- var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes);
+ //var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false);
+ //var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes);
var status = new List() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing };
var jsonStatus = JsonSerializer.Serialize(status);
-
+ var issueType = new List() { (int)enumUnplannedIssueType };
+ var jsonIssueType = JsonSerializer.Serialize(issueType);
var request = new SfsJobRequestInputBase
{
MaxResultCount = pageSize,
@@ -68,7 +70,7 @@ public class UnplannedIssueJobController : AbpController
{
Filters = new List
{
- // new(nameof(UnplannedIssueJobDTO.WorkGroupCode),jsonWlgCodes,"In"),
+ new(nameof(UnplannedIssueJobDTO.UnplannedIssueType),jsonIssueType,"In"),
new(nameof(UnplannedIssueJobDTO.JobStatus),jsonStatus,"In")
}
}
@@ -81,7 +83,6 @@ public class UnplannedIssueJobController : AbpController
{
request.Sorting = $"{nameof(UnplannedIssueJobDTO.CreationTime)} ASC";
}
-
var list = await _unplannedIssueJobAppService.GetPagedListByFilterAsync(request, true).ConfigureAwait(false);
return list;
}
diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedReceiptJobController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedReceiptJobController.cs
index 601cde5f7..22bf2370e 100644
--- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/UnplannedReceiptJobController.cs
+++ b/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 Win_in.Sfs.Shared.Domain;
using Volo.Abp;
+using Win_in.Sfs.Shared.Domain.Shared.Enums.Store;
namespace Win_in.Sfs.Wms.Pda.Controllers.Jobs;
@@ -50,14 +51,15 @@ public class UnplannedReceiptJobController : AbpController
///
///
[HttpGet("list")]
- public virtual async Task> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday)
+ public virtual async Task> GetListAsync(int pageSize, int pageIndex, bool isCreationTimeSorting, bool isToday, EnumUnplannedReceiptType enumUnplannedReceiptType)
{
- var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false);
- var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes);
+ //var wlgCodes = await _userWorkGroupAppService.GetCodsOfCurrentUserAsync().ConfigureAwait(false);
+ //var jsonWlgCodes = JsonSerializer.Serialize(wlgCodes);
var status = new List() { (int)EnumJobStatus.Open, (int)EnumJobStatus.Doing };
+ var receiptType = new List() { (int)enumUnplannedReceiptType };
var jsonStatus = JsonSerializer.Serialize(status);
-
+ var jsonreceiptType = JsonSerializer.Serialize(receiptType);
var request = new SfsJobRequestInputBase
{
MaxResultCount = pageSize,
@@ -67,7 +69,7 @@ public class UnplannedReceiptJobController : AbpController
{
Filters = new List
{
- // new(nameof(UnplannedReceiptJobDTO.WorkGroupCode),jsonWlgCodes,"In"),
+ new(nameof(UnplannedReceiptJobDTO.UnplannedReceiptType),jsonreceiptType,"In"),
new(nameof(UnplannedReceiptJobDTO.JobStatus),jsonStatus,"In")
}
}
diff --git a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/ProductReceiptNoteController.cs b/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/ProductReceiptNoteController.cs
index 256241889..23ee748dc 100644
--- a/be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Stores/ProductReceiptNoteController.cs
+++ b/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
{
private readonly IProductReceiptNoteAppService _productReceiptNoteAppService;
-
+ private readonly IProductReceiptNoteDetailAppService _productReceiptNoteDetailAppService;
///
///
///
///
- public ProductReceiptNoteController(IProductReceiptNoteAppService productReceiptNoteAppService)
+ public ProductReceiptNoteController(IProductReceiptNoteAppService productReceiptNoteAppService, IProductReceiptNoteDetailAppService productReceiptNoteDetailAppService)
{
_productReceiptNoteAppService = productReceiptNoteAppService;
+ _productReceiptNoteDetailAppService = productReceiptNoteDetailAppService;
}
///
@@ -34,5 +35,15 @@ public class ProductReceiptNoteController : AbpController
{
await _productReceiptNoteAppService.CreateAsync(input).ConfigureAwait(false);
}
+ ///
+ /// 单件码获取方法
+ ///
+ ///
+ ///
+ [HttpPost("get-itemcode-by-mesbarcode")]
+ public virtual async Task GetItemCodeByMesBarCode(string mesBarCode)
+ {
+ return await _productReceiptNoteDetailAppService.GetItemCodeByMesBarCode(mesBarCode).ConfigureAwait(false);
+ }
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/IProductReceiptNoteDetailAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/IProductReceiptNoteDetailAppService.cs
new file mode 100644
index 000000000..dc5d7250b
--- /dev/null
+++ b/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
+{
+ Task GetItemCodeByMesBarCode(string mesBarCode);
+}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/ProductReceiptNoteDetailPermissions.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/ProductReceiptNotes/ProductReceiptNoteDetailPermissions.cs
new file mode 100644
index 000000000..07bbcd6c0
--- /dev/null
+++ b/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)));
+
+ }
+}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Permissions/StorePermissionDefinitionProvider.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Permissions/StorePermissionDefinitionProvider.cs
index 82e0f51b2..beeaa8c94 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Permissions/StorePermissionDefinitionProvider.cs
+++ b/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.AddPreparationPlanPermission();
storeGroup.AddProductReceiptNotePermission();
+ storeGroup.AddProductReceiptNoteDetailPermission();
storeGroup.AddOfflineSettlementNotePermission();
storeGroup.AddBackFlushNotePermission();
storeGroup.AddWorkOrderPermission();
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductReceiptNotes/ProductReceiptNoteDetailAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/ProductReceiptNotes/ProductReceiptNoteDetailAppService.cs
new file mode 100644
index 000000000..ccacd5537
--- /dev/null
+++ b/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, IProductReceiptNoteDetailAppService
+{
+ private readonly IProductReceiptNoteDetailRepository _productReceiptNoteDetailRepository;
+ public ProductReceiptNoteDetailAppService(
+ IProductReceiptNoteDetailRepository repository
+ ) : base(repository)
+ {
+ _productReceiptNoteDetailRepository = repository;
+ }
+
+
+ [HttpGet("get-itemcode-by-mesbarcode")]
+ public virtual async Task GetItemCodeByMesBarCode(string mesBarCode)
+ {
+ var entity = await _productReceiptNoteDetailRepository.FirstOrDefaultAsync(r => r.MesBarCode == mesBarCode).ConfigureAwait(false);
+ var dto = ObjectMapper.Map(entity);
+ return dto;
+ }
+
+}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/ProductReceiptNotes/IProductReceiptNoteDetailRepository.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Notes/ProductReceiptNotes/IProductReceiptNoteDetailRepository.cs
new file mode 100644
index 000000000..2e9b88d6a
--- /dev/null
+++ b/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
+{
+}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/IStoreDbContext.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/IStoreDbContext.cs
index 5fd1058d9..7038db0fd 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/IStoreDbContext.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/IStoreDbContext.cs
@@ -74,6 +74,8 @@ public interface IStoreDbContext : IEfCoreDbContext
public DbSet JisProductReceiptNotes { get; }
public DbSet ProductReceiptNotes { get; }
+
+ public DbSet ProductReceiptNoteDetails { get; }
public DbSet OfflineSettlementNotes { get; }
public DbSet BackFlushNotes { get; }
public DbSet ProductL7PartsNotes { get; }
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Notes/ProductReceiptNotes/ProductReceiptNoteDetailEfCoreRepository.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Notes/ProductReceiptNotes/ProductReceiptNoteDetailEfCoreRepository.cs
new file mode 100644
index 000000000..1f3c9d5b3
--- /dev/null
+++ b/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, IProductReceiptNoteDetailRepository
+{
+ public ProductReceiptNoteDetailEfCoreRepository(IDbContextProvider dbContextProvider) : base(dbContextProvider)
+ {
+ }
+}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContext.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContext.cs
index 5aca78453..8ef095cd4 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContext.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContext.cs
@@ -73,6 +73,8 @@ public class StoreDbContext : AbpDbContext, IStoreDbContext
public DbSet JisProductReceiptNotes { get; set; }
public DbSet ProductReceiptNotes { get; set; }
+
+ public DbSet ProductReceiptNoteDetails { get; set; }
public DbSet OfflineSettlementNotes { get; set; }
public DbSet BackFlushNotes { get; set; }
public DbSet ProductL7PartsNotes { get; set; }
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreEntityFrameworkCoreModule.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreEntityFrameworkCoreModule.cs
index a40b7bf6c..600f637f7 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreEntityFrameworkCoreModule.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreEntityFrameworkCoreModule.cs
@@ -95,6 +95,7 @@ public class StoreEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();
+ context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();
@@ -106,7 +107,8 @@ public class StoreEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();
- context.Services.AddTransient(); context.Services.AddTransient();
+ context.Services.AddTransient();
+ context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();