diff --git a/.vs/WZC2/v17/.wsuo b/.vs/WZC2/v17/.wsuo
index 1bda40505..530a087c5 100644
Binary files a/.vs/WZC2/v17/.wsuo and b/.vs/WZC2/v17/.wsuo differ
diff --git a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs
index 3f742e1d0..fde6ad445 100644
--- a/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs
+++ b/be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs
@@ -122,17 +122,6 @@ public class InjectionMoldingRequestReader : IReader
_logger.LogInformation(MakeGrid($"标识{guid}读取{invterval}次接口表",camralist1));
-
-
-
-
-
-
-
-
-
-
-
sw.Stop();
//按区域、货位号、物品、标志
@@ -454,6 +443,7 @@ public class InjectionMoldingRequestReader : IReader
sb.Append("|");
sb.AppendLine();
}
+
return sb.ToString();
}
diff --git a/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/Types/EnumReceiptType.cs b/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/Types/EnumReceiptType.cs
index e3505bade..945551f5f 100644
--- a/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/Types/EnumReceiptType.cs
+++ b/be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Store/Types/EnumReceiptType.cs
@@ -29,4 +29,9 @@ public enum EnumReceiptType
/// L7级物品完工
///
MesScanReceiptToL7Parts = 4,
+
+ ///
+ /// 线边仓缴库
+ ///
+ ProductReceiptRequest=5,
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs
index 71385a607..90c36ca5b 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs
@@ -33,6 +33,9 @@ public class AssembleIssueJobAppService
AssembleIssueJobCheckInput, AssembleIssueJobEditInput>,
IAssembleIssueJobAppService, ITransferLibCallback
{
+ protected IAssembleIssueRequestAppService AssembleIssueRequestAppService =>
+ LazyServiceProvider.LazyGetRequiredService();
+
private readonly IAssembleIssueJobManager _assembleIssueJobManager;
private readonly ILocationAppService _locationAppService;
private readonly IAssembleIssueNoteAppService _assembleIssueNoteAppService;
@@ -41,9 +44,6 @@ public class AssembleIssueJobAppService
private readonly ITransferLibRequestAppService _transferLibRequestAppService;
private readonly IOptions _options;
- protected IAssembleIssueRequestAppService AssembleIssueRequestAppService =>
- LazyServiceProvider.LazyGetRequiredService();
-
public AssembleIssueJobAppService(
IAssembleIssueJobRepository repository, IAssembleIssueJobManager assembleIssueJobManager,
ILocationAppService locationAppService,
@@ -133,7 +133,7 @@ public class AssembleIssueJobAppService
[HttpPost("by-request-number/{requestNumber}")]
public virtual async Task> GetByRequestNumberAsync(string requestNumber)
{
- var entitys = await _repository.GetListAsync(p => p.AssembleRequestNumber == requestNumber)
+ var entitys = await _repository.GetListAsync(p => p.AssembleRequestNumber == requestNumber,"",true)
.ConfigureAwait(false);
return ObjectMapper.Map, List>(entitys);
}
@@ -347,7 +347,7 @@ public class AssembleIssueJobAppService
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
- var client = new IssueJobToRestoClient(_options.Value.Address, httpclient);
+ var client = new IssueJobToRestoClient(_options.Value.Address, httpclient, _options.Value.Path);
ret = await client.SyncIssueJobStereoAsync(main).ConfigureAwait(false);
}
catch (Exception ex)
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
index af401bc86..dd009a495 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
@@ -9,6 +9,7 @@ using System.Threading.Tasks;
using Castle.Components.DictionaryAdapter;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
+using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using MyNamespace;
using Volo.Abp;
@@ -40,11 +41,14 @@ public class CoatingIssueJobAppService
private readonly IHttpClientFactory _httpClientFactory;
private readonly ITransferLibRequestAppService _transferLibRequestAppService;
private readonly IOptions _options;
+ private readonly ILogger _logger;
protected ICoatingIssueRequestAppService CoatingIssueRequestAppService =>
LazyServiceProvider.LazyGetRequiredService();
public CoatingIssueJobAppService(
+
+ ILogger logger,
ICoatingIssueJobRepository repository, ICoatingIssueJobManager coatingIssueJobManager,
ILocationAppService locationAppService,
ICoatingIssueNoteAppService coatingIssueNoteAppService, IExpectOutAppService expectOutAppService
@@ -59,6 +63,7 @@ public class CoatingIssueJobAppService
_httpClientFactory = httpClientFactory;
_options = options;
_transferLibRequestAppService = transferLibRequestAppService;
+ _logger = logger;
}
[HttpPost("get-by-number-2")]
@@ -133,7 +138,7 @@ public class CoatingIssueJobAppService
[HttpPost("by-request-number/{requestNumber}")]
public virtual async Task> GetByRequestNumberAsync(string requestNumber)
{
- var entitys = await _repository.GetListAsync(p => p.CoatingRequestNumber == requestNumber)
+ var entitys = await _repository.GetListAsync(p => p.CoatingRequestNumber == requestNumber, "", true)
.ConfigureAwait(false);
return ObjectMapper.Map, List>(entitys);
}
@@ -315,7 +320,7 @@ public class CoatingIssueJobAppService
var ret = new ReusltObject();
ret.Code = "1";
ret.Message = "操作成功";
- ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd");
+ ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
try
{
var IssueJobToRestoDetailDTOs = new List();
@@ -341,12 +346,24 @@ public class CoatingIssueJobAppService
#if DEBUG
var json = JsonSerializer.Serialize(main);
- _options.Value.Address = "http://localhost:59094/"; //测试地址
+ _options.Value.Address = "http://7e42682n64.goho.co:21171/"; //测试地址
_options.Value.Token = ""; //测试token
_options.Value.UserName = ""; //测试用户名
_options.Value.Password = ""; //测试密码
+ _options.Value.Path = "zozocnApi/custom/receiveProductionPlan"; //测试密码
#endif
+
+ //var json = JsonSerializer.Serialize(main);
+ _options.Value.Address = "http://7e42682n64.goho.co:21171/"; //测试地址
+ _options.Value.Token = ""; //测试token
+ _options.Value.UserName = ""; //测试用户名
+ _options.Value.Password = ""; //测试密码
+ _options.Value.Path = "zozocnApi/custom/receiveProductionPlan"; //测试密码
+
+ _logger.LogInformation(System.Text.Json.JsonSerializer.Serialize(_options));
+
+
if (!string.IsNullOrEmpty(_options.Value.Token))
{
var token = _options.Value.Token;
@@ -361,15 +378,22 @@ public class CoatingIssueJobAppService
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
- var client = new IssueJobToRestoClient(_options.Value.Address, httpclient);
+ var client = new IssueJobToRestoClient(_options.Value.Address, httpclient,_options.Value.Path);
+
+ var flag=DateTime.Now.ToString("yyyyMMddHHmmss");
+ _logger.LogInformation($"标志{flag}开始调用高通WMS:传递值{System.Text.Json.JsonSerializer.Serialize(main)}");
+
ret = await client.SyncIssueJobStereoAsync(main).ConfigureAwait(false);
+
+ _logger.LogInformation($"标志{flag}调用高通WMS:返回值{ret}");
+
}
catch (Exception ex)
{
ret = new ReusltObject();
ret.Code = "2";
ret.Message = ex.Message;
- ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd");
+ ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
return ret;
@@ -382,7 +406,7 @@ public class CoatingIssueJobAppService
var json = JsonSerializer.Serialize(input);
#endif
var errors = new List();
- var ret = new ReusltObject { Code = "1", OperateTime = DateTime.Now.ToString("yyyy-MM-dd"), Message = "操作成功" };
+ var ret = new ReusltObject { Code = "1", OperateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), Message = "操作成功" };
try
{
if (input.Jobs.Count > 0)
@@ -546,12 +570,17 @@ public class CoatingIssueJobAppService
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
-
+ var flag = DateTime.Now.ToString("yyyyMMddHHmmss");
+ _logger.LogInformation($"立体库任务检查开始{flag}");
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{
+
+ _logger.LogInformation($"立体库任务开始标记{flag}");
//TODO 立体库
var ret = await SyncIssueJobStereoAsync(new List { coatingIssueJobDto },
loctionDto.Code).ConfigureAwait(false);
+
+ _logger.LogInformation($"立体库任务结束标记{flag},返回值{ret}");
if (ret.Code != "1")
{
throw new UserFriendlyException($"调用立体库不成功!原因:{ret.Message}");
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs
index e79ba5940..d77ac6e90 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs
@@ -132,7 +132,7 @@ public class InjectionIssueJobAppService
[HttpPost("by-request-number/{requestNumber}")]
public virtual async Task> GetByRequestNumberAsync(string requestNumber)
{
- var entitys = await _repository.GetListAsync(p => p.InjectionRequestNumber == requestNumber)
+ var entitys = await _repository.GetListAsync(p => p.InjectionRequestNumber == requestNumber, "", true)
.ConfigureAwait(false);
return ObjectMapper.Map, List>(entitys);
}
@@ -325,7 +325,7 @@ public class InjectionIssueJobAppService
#if DEBUG
var json = JsonSerializer.Serialize(main);
- _options.Value.Address = "http://localhost:59094/"; //测试地址
+ _options.Value.Address = "http://7e42682n64.goho.co:21171/"; //测试地址
_options.Value.Token = ""; //测试token
_options.Value.UserName = ""; //测试用户名
_options.Value.Password = ""; //测试密码
@@ -345,7 +345,7 @@ public class InjectionIssueJobAppService
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
- var client = new IssueJobToRestoClient(_options.Value.Address, httpclient);
+ var client = new IssueJobToRestoClient(_options.Value.Address, httpclient, _options.Value.Path);
ret = await client.SyncIssueJobStereoAsync(main).ConfigureAwait(false);
}
catch (Exception ex)
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs
index a5afe53d0..71d54f5c7 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs
@@ -132,7 +132,7 @@ public class KittingIssueJobAppService
[HttpPost("by-request-number/{requestNumber}")]
public virtual async Task> GetByRequestNumberAsync(string requestNumber)
{
- var entitys = await _repository.GetListAsync(p => p.KittingRequestNumber == requestNumber)
+ var entitys = await _repository.GetListAsync(p => p.KittingRequestNumber == requestNumber, "", true)
.ConfigureAwait(false);
return ObjectMapper.Map, List>(entitys);
}
@@ -345,7 +345,7 @@ public class KittingIssueJobAppService
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
- var client = new IssueJobToRestoClient(_options.Value.Address, httpclient);
+ var client = new IssueJobToRestoClient(_options.Value.Address, httpclient, _options.Value.Path);
ret = await client.SyncIssueJobStereoAsync(main).ConfigureAwait(false);
}
catch (Exception ex)
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs
index 72645dc9c..b16b5121c 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs
@@ -124,7 +124,7 @@ public class SparePartIssueJobAppService
[HttpPost("by-request-number/{requestNumber}")]
public virtual async Task> GetByRequestNumberAsync(string requestNumber)
{
- var entitys = await _repository.GetListAsync(p => p.SparePartRequestNumber == requestNumber)
+ var entitys = await _repository.GetListAsync(p => p.SparePartRequestNumber == requestNumber, "", true)
.ConfigureAwait(false);
return ObjectMapper.Map, List>(entitys);
}
@@ -337,7 +337,7 @@ public class SparePartIssueJobAppService
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
- var client = new IssueJobToRestoClient(_options.Value.Address, httpclient);
+ var client = new IssueJobToRestoClient(_options.Value.Address, httpclient, _options.Value.Path);
ret = await client.SyncIssueJobStereoAsync(main).ConfigureAwait(false);
}
catch (Exception ex)
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/IssueJobToRestoClient.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/IssueJobToRestoClient.cs
index 0f801929b..26101a196 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/IssueJobToRestoClient.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/IssueJobToRestoClient.cs
@@ -34,11 +34,12 @@ namespace MyNamespace
private static System.Lazy _settings = new System.Lazy(CreateSerializerSettings, true);
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
- public IssueJobToRestoClient(string baseUrl, System.Net.Http.HttpClient httpClient)
+ public IssueJobToRestoClient(string baseUrl, System.Net.Http.HttpClient httpClient,string path)
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
{
BaseUrl = baseUrl;
_httpClient = httpClient;
+ _path = path;
}
private static System.Text.Json.JsonSerializerOptions CreateSerializerSettings()
@@ -58,6 +59,21 @@ namespace MyNamespace
_baseUrl += '/';
}
}
+ private string _path;
+ public string Path
+ {
+ get { return _path; }
+ set
+ {
+ _path = value;
+
+ }
+ }
+
+
+
+
+
protected System.Text.Json.JsonSerializerOptions JsonSerializerSettings { get { return _settings.Value; } }
@@ -95,7 +111,7 @@ namespace MyNamespace
var urlBuilder_ = new System.Text.StringBuilder();
if (!string.IsNullOrEmpty(_baseUrl)) urlBuilder_.Append(_baseUrl);
// Operation Path: "CargoState/SyncIssueJobStereo"
- urlBuilder_.Append("CargoState/SyncIssueJobStereo");//修改路由需求
+ urlBuilder_.Append(_path);//修改路由需求
PrepareRequest(client_, request_, urlBuilder_);
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/ContainerRequests/ContainerRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/ContainerRequests/ContainerRequestAppService.cs
index a57e2b4a0..ea3f8b328 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/ContainerRequests/ContainerRequestAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/ContainerRequests/ContainerRequestAppService.cs
@@ -78,7 +78,7 @@ public class ContainerRequestAppService :
///
private async Task SetRequestAutoPropertiesAsync(ContainerRequestEditInput entity)
{
- var tranType = await _transactionTypeAppService.GetByTransTypeAsync(EnumTransType.Issue, EnumTransSubType.None).ConfigureAwait(false);
+ var tranType = await _transactionTypeAppService.GetByTransTypeAsync(EnumTransType.TransferLib, EnumTransSubType.Transfer_Warehouse).ConfigureAwait(false);
Check.NotNull(tranType, "事务类型", "事务类型不存在");
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs
index d00810a4f..971031b3b 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/AssembleIssueRequests/AssembleIssueRequestAppService.cs
@@ -195,7 +195,7 @@ public class AssembleIssueRequestAppService : SfsStoreRequestAppServiceBase= detail.IssuedQty)
+ if (detail.Qty > detail.IssuedQty)
{
return;
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs
index c3e7e85c5..714651fd8 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/CoatingIssueRequests/CoatingIssueRequestAppService.cs
@@ -195,7 +195,7 @@ public class CoatingIssueRequestAppService : SfsStoreRequestAppServiceBase= detail.IssuedQty)
+ if (detail.Qty > detail.IssuedQty)
{
return;
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs
index 82284b72f..d5736b7ba 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs
@@ -195,7 +195,7 @@ public class InjectionIssueRequestAppService : SfsStoreRequestAppServiceBase= detail.IssuedQty)
+ if (detail.Qty > detail.IssuedQty)
{
return;
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs
index 1f0a0c086..9b062b596 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/KittingIssueRequests/KittingIssueRequestAppService.cs
@@ -198,7 +198,7 @@ public class KittingIssueRequestAppService : SfsStoreRequestAppServiceBase= detail.IssuedQty)
+ if (detail.Qty > detail.IssuedQty)
{
return;
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs
index aadefd1f1..ca0de939e 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/SparePartIssueRequests/SparePartIssueRequestAppService.cs
@@ -191,7 +191,7 @@ public class SparePartIssueRequestAppService : SfsStoreRequestAppServiceBase= detail.IssuedQty)
+ if (detail.Qty > detail.IssuedQty)
{
return;
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Options/RestoOptions.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Options/RestoOptions.cs
index e6cf97d3c..95ecb71d4 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Options/RestoOptions.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Options/RestoOptions.cs
@@ -16,6 +16,8 @@ public class RestoOptions
// 令牌
public string Token { set; get; }
+ public string Path { set; get; }
+
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/AssembleIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/AssembleIssueRequestManager.cs
index f4e0adb6d..a9adfe5ee 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/AssembleIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/AssembleIssueRequestManager.cs
@@ -55,4 +55,9 @@ public class AssembleIssueRequestManager
{
throw new System.NotImplementedException();
}
+
+ public virtual async Task UpdateByEntityAsync(AssembleIssueRequest request)
+ {
+ return await _repository.UpdateAsync(request).ConfigureAwait(false);
+ }
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/IAssembleIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/IAssembleIssueRequestManager.cs
index 60460c17e..e871fc7bc 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/IAssembleIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/IAssembleIssueRequestManager.cs
@@ -11,4 +11,5 @@ public interface IAssembleIssueRequestManager : ISfsStoreRequestManager CreateByNumberAsync(AssembleIssueRequest entity);
+ Task UpdateByEntityAsync(AssembleIssueRequest request);
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/CoatingIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/CoatingIssueRequestManager.cs
index 26615b133..f9cb23eeb 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/CoatingIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/CoatingIssueRequestManager.cs
@@ -52,4 +52,9 @@ public class CoatingIssueRequestManager
{
throw new System.NotImplementedException();
}
+
+ public virtual async Task UpdateByEntityAsync(CoatingIssueRequest request)
+ {
+ return await _repository.UpdateAsync(request).ConfigureAwait(false);
+ }
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/ICoatingIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/ICoatingIssueRequestManager.cs
index 9354bccb8..5506e85ed 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/ICoatingIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/CoatingIssuelRequests/ICoatingIssueRequestManager.cs
@@ -9,4 +9,5 @@ public interface ICoatingIssueRequestManager : ISfsStoreRequestManager CreateByNumberAsync(CoatingIssueRequest entity);
+ Task UpdateByEntityAsync(CoatingIssueRequest request);
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/IInjectionIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/IInjectionIssueRequestManager.cs
index 15fa68237..741d438d2 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/IInjectionIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/IInjectionIssueRequestManager.cs
@@ -10,4 +10,5 @@ public interface IInjectionIssueRequestManager : ISfsStoreRequestManager CreateByNumberAsync(InjectionIssueRequest entity);
+ Task UpdateByEntityAsync(InjectionIssueRequest request);
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/InjectionIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/InjectionIssueRequestManager.cs
index 32d963082..8e36276d3 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/InjectionIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/InjectionIssueRequests/InjectionIssueRequestManager.cs
@@ -52,4 +52,9 @@ public class InjectionIssueRequestManager
{
throw new System.NotImplementedException();
}
+
+ public virtual async Task UpdateByEntityAsync(InjectionIssueRequest request)
+ {
+ return await _repository.UpdateAsync(request).ConfigureAwait(false);
+ }
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/IKittingIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/IKittingIssueRequestManager.cs
index 43cda56b6..b9ea28603 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/IKittingIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/IKittingIssueRequestManager.cs
@@ -10,4 +10,5 @@ public interface IKittingIssueRequestManager : ISfsStoreRequestManager CreateByNumberAsync(KittingIssueRequest entity);
+ Task UpdateByEntityAsync(KittingIssueRequest request);
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/KittingIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/KittingIssueRequestManager.cs
index 7bd369ae5..dd7aaea26 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/KittingIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/KittingIssueRequests/KittingIssueRequestManager.cs
@@ -52,4 +52,9 @@ public class KittingIssueRequestManager
{
throw new System.NotImplementedException();
}
+
+ public virtual async Task UpdateByEntityAsync(KittingIssueRequest request)
+ {
+ return await _repository.UpdateAsync(request).ConfigureAwait(false);
+ }
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/ISparePartRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/ISparePartRequestManager.cs
index 5a4d9b272..9fa0f207c 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/ISparePartRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/ISparePartRequestManager.cs
@@ -10,4 +10,5 @@ public interface ISparePartIssueRequestManager : ISfsStoreRequestManager CreateByNumberAsync(SparePartIssueRequest entity);
+ Task UpdateByEntityAsync(SparePartIssueRequest request);
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/SparePartIssueRequestManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/SparePartIssueRequestManager.cs
index 849a5edf0..f9620dc71 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/SparePartIssueRequestManager.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/SparePartIssueRequests/SparePartIssueRequestManager.cs
@@ -52,4 +52,9 @@ public class SparePartIssueRequestManager
{
throw new System.NotImplementedException();
}
+
+ public virtual async Task UpdateByEntityAsync(SparePartIssueRequest request)
+ {
+ return await _repository.UpdateAsync(request).ConfigureAwait(false);
+ }
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/AssembleIssueRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/AssembleIssueRequestEventHandler.cs
index cb7bae31f..278560a4b 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/AssembleIssueRequestEventHandler.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/AssembleIssueRequestEventHandler.cs
@@ -14,6 +14,7 @@ using Win_in.Sfs.Shared.Event;
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
+using Win_in.Sfs.Wms.Store.Domain.Acl.Balance;
namespace Win_in.Sfs.Wms.Store.Event.BusinessRequest;
@@ -30,6 +31,7 @@ public class AssembleIssueRequestEventHandler
private readonly IProductionLineItemAppService _productionLineItemAppService;
private readonly ILocationAppService _locationAppService;
private readonly IBalanceAppService _balanceAppService;
+ protected IAssembleIssueRequestManager AssembleIssueRequestManager => LazyServiceProvider.LazyGetRequiredService();
private IMapper _mapper;
public AssembleIssueRequestEventHandler(
@@ -138,7 +140,9 @@ public class AssembleIssueRequestEventHandler
foreach (var tempDetailDto in tempDetailDtos)
{
//未发送的数量
- tempDetailDto.Qty = tempDetailDto.Qty - tempDetailDto.IssuedQty;
+ tempDetailDto.Qty = tempDetailDto.Qty>tempDetailDto.IssuedQty?
+ tempDetailDto.Qty - tempDetailDto.IssuedQty:
+ 0;
if (tempDetailDto.Qty > balanceDto.Qty) //需求量大于 这条推荐库存的余额
{
@@ -176,7 +180,12 @@ public class AssembleIssueRequestEventHandler
assembleIssueRequest,
assembleIssueRequestDetails.First()).ConfigureAwait(false);
assembleIssueJobEditInput.Details = assembleIssueJobDetailInputs;
- jobs.Add(assembleIssueJobEditInput);
+
+ assembleIssueJobEditInput.Details=assembleIssueJobEditInput.Details.Where(p => p.RecommendFromQty>0).ToList();
+ if (assembleIssueJobEditInput.Details != null && assembleIssueJobEditInput.Details.Any())
+ {
+ jobs.Add(assembleIssueJobEditInput);
+ }
}
return jobs;
@@ -653,6 +662,8 @@ public class AssembleIssueRequestEventHandler
requestDetail.ReceivedQty = allReceivedQty;
}
}
+
+ await AssembleIssueRequestManager.UpdateByEntityAsync(assembleIssueRequest).ConfigureAwait(false);
}
///
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/CoatingIssueRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/CoatingIssueRequestEventHandler.cs
index 0d2c009a5..bdb6584f2 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/CoatingIssueRequestEventHandler.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/CoatingIssueRequestEventHandler.cs
@@ -14,6 +14,7 @@ using Win_in.Sfs.Shared.Event;
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
+using Win_in.Sfs.Wms.Store.Domain.Acl.Balance;
namespace Win_in.Sfs.Wms.Store.Event.BusinessRequest;
@@ -25,20 +26,21 @@ public class CoatingIssueRequestEventHandler
, ILocalEventHandler>
, ILocalEventHandler>>
{
- private readonly ICoatingIssueJobAppService _coatingIssueJobAppService;
+ private readonly ICoatingIssueJobAppService _CoatingIssueJobAppService;
private readonly IProductionLineAppService _productionLineAppService;
private readonly IProductionLineItemAppService _productionLineItemAppService;
private readonly ILocationAppService _locationAppService;
private readonly IBalanceAppService _balanceAppService;
+ protected ICoatingIssueRequestManager CoatingIssueRequestManager => LazyServiceProvider.LazyGetRequiredService();
private IMapper _mapper;
public CoatingIssueRequestEventHandler(
- ICoatingIssueJobAppService coatingIssueJobAppService, IProductionLineAppService productionLineAppService,
+ ICoatingIssueJobAppService CoatingIssueJobAppService, IProductionLineAppService productionLineAppService,
ILocationAppService locationAppService,
IBalanceAppService balanceAppService, IProductionLineItemAppService productionLineItemAppService
)
{
- _coatingIssueJobAppService = coatingIssueJobAppService;
+ _CoatingIssueJobAppService = CoatingIssueJobAppService;
_productionLineAppService = productionLineAppService;
_locationAppService = locationAppService;
_balanceAppService = balanceAppService;
@@ -107,14 +109,14 @@ public class CoatingIssueRequestEventHandler
///
/// 创建注塑任务-按数量
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateCoatingIssueJobWithQtyTypeAsync
- (CoatingIssueRequest coatingIssueRequest, List coatingIssueRequestDetails,
+ (CoatingIssueRequest CoatingIssueRequest, List CoatingIssueRequestDetails,
List recommendbalanceDtos,
List useBalanceList)
{
@@ -122,9 +124,9 @@ public class CoatingIssueRequestEventHandler
//用来临时存放所有未生成任务的发料集合 如果生成完了再这里去掉
var tempDetailDtos =
ObjectMapper.Map, List>(
- coatingIssueRequestDetails);
+ CoatingIssueRequestDetails);
- var coatingIssueJobDetailInputs = new List();
+ var CoatingIssueJobDetailInputs = new List();
if (recommendbalanceDtos != null && recommendbalanceDtos.Count > 0)
{
@@ -138,7 +140,9 @@ public class CoatingIssueRequestEventHandler
foreach (var tempDetailDto in tempDetailDtos)
{
//未发送的数量
- tempDetailDto.Qty = tempDetailDto.Qty - tempDetailDto.IssuedQty;
+ tempDetailDto.Qty = tempDetailDto.Qty > tempDetailDto.IssuedQty ?
+ tempDetailDto.Qty - tempDetailDto.IssuedQty :
+ 0;
if (tempDetailDto.Qty > balanceDto.Qty) //需求量大于 这条推荐库存的余额
{
@@ -150,7 +154,7 @@ public class CoatingIssueRequestEventHandler
balanceDto.Qty = tempDetailDto.Qty;
}
- coatingIssueJobDetailInputs.Add(
+ CoatingIssueJobDetailInputs.Add(
await BuildCoatingIssueJobDetailWithQtyTypeAsync(tempDetailDto, balanceDto)
.ConfigureAwait(false));
useBalanceList.Add(balanceDto);
@@ -170,13 +174,18 @@ public class CoatingIssueRequestEventHandler
}
}
- if (coatingIssueJobDetailInputs.Any())
+ if (CoatingIssueJobDetailInputs.Any())
{
- var coatingIssueJobEditInput = await BuildCoatingIssueJobCreateInputWithQtyTypeAsync(
- coatingIssueRequest,
- coatingIssueRequestDetails.First()).ConfigureAwait(false);
- coatingIssueJobEditInput.Details = coatingIssueJobDetailInputs;
- jobs.Add(coatingIssueJobEditInput);
+ var CoatingIssueJobEditInput = await BuildCoatingIssueJobCreateInputWithQtyTypeAsync(
+ CoatingIssueRequest,
+ CoatingIssueRequestDetails.First()).ConfigureAwait(false);
+ CoatingIssueJobEditInput.Details = CoatingIssueJobDetailInputs;
+
+ CoatingIssueJobEditInput.Details = CoatingIssueJobEditInput.Details.Where(p => p.RecommendFromQty > 0).ToList();
+ if (CoatingIssueJobEditInput.Details != null && CoatingIssueJobEditInput.Details.Any())
+ {
+ jobs.Add(CoatingIssueJobEditInput);
+ }
}
return jobs;
@@ -185,19 +194,19 @@ public class CoatingIssueRequestEventHandler
///
/// 构造注塑任务-按数量
///
- ///
+ ///
///
///
private async Task BuildCoatingIssueJobCreateInputWithQtyTypeAsync(
- CoatingIssueRequest coatingIssueRequest, CoatingIssueRequestDetail requestDetailInput)
+ CoatingIssueRequest CoatingIssueRequest, CoatingIssueRequestDetail requestDetailInput)
{
- var job = ObjectMapper.Map(coatingIssueRequest);
+ var job = ObjectMapper.Map(CoatingIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
job.WorkGroupCode = requestDetailInput.ToLocationGroup;
job.WarehouseCode = requestDetailInput.ToWarehouseCode;
- job.Worker = coatingIssueRequest.Worker;
- job.CoatingRequestNumber = coatingIssueRequest.Number;
+ job.Worker = CoatingIssueRequest.Worker;
+ job.CoatingRequestNumber = CoatingIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.QtyType;
await Task.CompletedTask.ConfigureAwait(false);
@@ -208,31 +217,31 @@ public class CoatingIssueRequestEventHandler
///
/// 构造注塑任务明细-按数量
///
- ///
+ ///
///
///
private async Task BuildCoatingIssueJobDetailWithQtyTypeAsync(
- CoatingIssueRequestDetailDTO coatingIssueRequestDetail, BalanceDTO balance)
+ CoatingIssueRequestDetailDTO CoatingIssueRequestDetail, BalanceDTO balance)
{
var detail = new CoatingIssueJobDetailInput();
- detail.RequestLocationCode = coatingIssueRequestDetail.ToLocationCode;
- detail.PositionCode = coatingIssueRequestDetail.PositionCode;
- detail.RecommendType = coatingIssueRequestDetail.RecommendType;
+ detail.RequestLocationCode = CoatingIssueRequestDetail.ToLocationCode;
+ detail.PositionCode = CoatingIssueRequestDetail.PositionCode;
+ detail.RecommendType = CoatingIssueRequestDetail.RecommendType;
detail.Uom = balance.Uom;
detail.ItemCode = balance.ItemCode;
detail.ItemDesc2 = balance.ItemDesc2;
detail.ItemDesc1 = balance.ItemDesc1;
detail.ItemName = balance.ItemName;
- detail.ProdLine = coatingIssueRequestDetail.ProdLine;
+ detail.ProdLine = CoatingIssueRequestDetail.ProdLine;
detail.RequestQty = balance.Qty;
- detail.StdPackQty = coatingIssueRequestDetail.StdPackQty;
+ detail.StdPackQty = CoatingIssueRequestDetail.StdPackQty;
detail.Status = balance.Status;
- detail.RequestLocationErpCode = coatingIssueRequestDetail.ToLocationErpCode;
- detail.RequestLocationArea = coatingIssueRequestDetail.ToLocationArea;
- detail.RequestWarehouseCode = coatingIssueRequestDetail.ToWarehouseCode;
- detail.RequestLocationGroup = coatingIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationCode = coatingIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationErpCode = CoatingIssueRequestDetail.ToLocationErpCode;
+ detail.RequestLocationArea = CoatingIssueRequestDetail.ToLocationArea;
+ detail.RequestWarehouseCode = CoatingIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationGroup = CoatingIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationCode = CoatingIssueRequestDetail.ToLocationCode;
detail.RecommendFromPackingCode = balance.PackingCode;
detail.RecommendFromContainerCode = balance.ContainerCode;
@@ -264,11 +273,11 @@ public class CoatingIssueRequestEventHandler
detail.RecommendFromLocationGroup = balance.LocationGroup;
detail.RecommendFromWarehouseCode = balance.WarehouseCode;
- detail.RecommendToLocationCode = coatingIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = coatingIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = coatingIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = coatingIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = coatingIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = CoatingIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = CoatingIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = CoatingIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = CoatingIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = CoatingIssueRequestDetail.ToLocationGroup;
detail.TransferLibFromPackingCode = balance.PackingCode;
detail.TransferLibFromContainerCode = balance.ContainerCode;
@@ -299,11 +308,11 @@ public class CoatingIssueRequestEventHandler
detail.TransferLibFromLocationGroup = balance.LocationGroup;
detail.TransferLibFromWarehouseCode = balance.WarehouseCode;
- detail.TransferLibToLocationCode = coatingIssueRequestDetail.ToLocationCode;
- detail.TransferLibToLocationErpCode = coatingIssueRequestDetail.ToLocationErpCode;
- detail.TransferLibToLocationArea = coatingIssueRequestDetail.ToLocationArea;
- detail.TransferLibToWarehouseCode = coatingIssueRequestDetail.ToWarehouseCode;
- detail.TransferLibToLocationGroup = coatingIssueRequestDetail.ToLocationGroup;
+ detail.TransferLibToLocationCode = CoatingIssueRequestDetail.ToLocationCode;
+ detail.TransferLibToLocationErpCode = CoatingIssueRequestDetail.ToLocationErpCode;
+ detail.TransferLibToLocationArea = CoatingIssueRequestDetail.ToLocationArea;
+ detail.TransferLibToWarehouseCode = CoatingIssueRequestDetail.ToWarehouseCode;
+ detail.TransferLibToLocationGroup = CoatingIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -316,28 +325,28 @@ public class CoatingIssueRequestEventHandler
///
/// 创建注塑任务 按箱叫料-按箱
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateCoatingIssueJobWithBoxQtyTypeAsync
(
- CoatingIssueRequest coatingIssueRequest,
- List coatingIssueRequestDetailList,
+ CoatingIssueRequest CoatingIssueRequest,
+ List CoatingIssueRequestDetailList,
List recommendbalanceDtos,
List useBalanceList)
{
var inputJobs = new List();
- var jobs = await _coatingIssueJobAppService.GetByRequestNumberAsync(coatingIssueRequest.Number)
+ var jobs = await _CoatingIssueJobAppService.GetByRequestNumberAsync(CoatingIssueRequest.Number)
.ConfigureAwait(false);
- foreach (var detail in coatingIssueRequestDetailList)
+ foreach (var detail in CoatingIssueRequestDetailList)
{
//当前物品的集合
- var inputDetails = coatingIssueRequestDetailList;
+ var inputDetails = CoatingIssueRequestDetailList;
//获取请求下 这个物品和这个库位一个需要多少箱
var sumBoxQty = inputDetails.Sum(p => p.BoxQty - jobs.Count);
//获取生产线
@@ -368,12 +377,12 @@ public class CoatingIssueRequestEventHandler
useBalanceList.Add(firstUsable);
usableList.Remove(firstUsable);
- var coatingIssueJobEditInput =
- await BuildCoatingIssueJobCreateInputWithBoxQtyTypeAsync(coatingIssueRequest,
+ var CoatingIssueJobEditInput =
+ await BuildCoatingIssueJobCreateInputWithBoxQtyTypeAsync(CoatingIssueRequest,
detail, firstUsable)
.ConfigureAwait(false);
- inputJobs.Add(coatingIssueJobEditInput);
+ inputJobs.Add(CoatingIssueJobEditInput);
}
else
{
@@ -389,24 +398,24 @@ public class CoatingIssueRequestEventHandler
///
/// 构造注塑任务-按箱
///
- ///
- ///
+ ///
+ ///
///
///
private async Task BuildCoatingIssueJobCreateInputWithBoxQtyTypeAsync(
- CoatingIssueRequest coatingIssueRequest,
- CoatingIssueRequestDetail coatingIssueRequestDetail, BalanceDTO balanceDtos)
+ CoatingIssueRequest CoatingIssueRequest,
+ CoatingIssueRequestDetail CoatingIssueRequestDetail, BalanceDTO balanceDtos)
{
- var job = ObjectMapper.Map(coatingIssueRequest);
+ var job = ObjectMapper.Map(CoatingIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
- job.WorkGroupCode = coatingIssueRequestDetail.ToLocationGroup;
- job.WarehouseCode = coatingIssueRequestDetail.ToWarehouseCode;
- job.Worker = coatingIssueRequest.Worker;
- job.CoatingRequestNumber = coatingIssueRequest.Number;
+ job.WorkGroupCode = CoatingIssueRequestDetail.ToLocationGroup;
+ job.WarehouseCode = CoatingIssueRequestDetail.ToWarehouseCode;
+ job.Worker = CoatingIssueRequest.Worker;
+ job.CoatingRequestNumber = CoatingIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.BoxQtyType;
- job.Details.Add(await BuildCoatingIssueJobDetailWithBoxQtyTypeAsync(coatingIssueRequestDetail, balanceDtos)
+ job.Details.Add(await BuildCoatingIssueJobDetailWithBoxQtyTypeAsync(CoatingIssueRequestDetail, balanceDtos)
.ConfigureAwait(false));
await Task.CompletedTask.ConfigureAwait(false);
@@ -417,28 +426,28 @@ public class CoatingIssueRequestEventHandler
///
/// 构造注塑任务明细-按箱
///
- ///
+ ///
///
///
private async Task BuildCoatingIssueJobDetailWithBoxQtyTypeAsync(
- CoatingIssueRequestDetail coatingIssueRequestDetail, BalanceDTO balance)
+ CoatingIssueRequestDetail CoatingIssueRequestDetail, BalanceDTO balance)
{
var detail = new CoatingIssueJobDetailInput();
- detail.RequestLocationCode = coatingIssueRequestDetail.ToLocationCode;
- detail.RequestLocationGroup = coatingIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationArea = coatingIssueRequestDetail.ToLocationArea;
- detail.RequestLocationErpCode = coatingIssueRequestDetail.ToLocationErpCode;
- detail.RequestWarehouseCode = coatingIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationCode = CoatingIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationGroup = CoatingIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationArea = CoatingIssueRequestDetail.ToLocationArea;
+ detail.RequestLocationErpCode = CoatingIssueRequestDetail.ToLocationErpCode;
+ detail.RequestWarehouseCode = CoatingIssueRequestDetail.ToWarehouseCode;
detail.RequestQty = 1;
- detail.PositionCode = coatingIssueRequestDetail.PositionCode;
- detail.RecommendType = coatingIssueRequestDetail.RecommendType;
- detail.ProdLine = coatingIssueRequestDetail.ProdLine;
+ detail.PositionCode = CoatingIssueRequestDetail.PositionCode;
+ detail.RecommendType = CoatingIssueRequestDetail.RecommendType;
+ detail.ProdLine = CoatingIssueRequestDetail.ProdLine;
- detail.ItemCode = coatingIssueRequestDetail.ItemCode;
- detail.ItemName = coatingIssueRequestDetail.ItemName;
- detail.ItemDesc1 = coatingIssueRequestDetail.ItemDesc1;
- detail.ItemDesc2 = coatingIssueRequestDetail.ItemDesc2;
+ detail.ItemCode = CoatingIssueRequestDetail.ItemCode;
+ detail.ItemName = CoatingIssueRequestDetail.ItemName;
+ detail.ItemDesc1 = CoatingIssueRequestDetail.ItemDesc1;
+ detail.ItemDesc2 = CoatingIssueRequestDetail.ItemDesc2;
detail.Status = EnumInventoryStatus.OK;
detail.Uom = balance.Uom;
@@ -473,11 +482,11 @@ public class CoatingIssueRequestEventHandler
detail.RecommendToProduceDate = balance.ProduceDate;
detail.RecommendToArriveDate = balance.ArriveDate;
- detail.RecommendToLocationCode = coatingIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = coatingIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = coatingIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = coatingIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = coatingIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = CoatingIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = CoatingIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = CoatingIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = CoatingIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = CoatingIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -489,26 +498,26 @@ public class CoatingIssueRequestEventHandler
//创建任务
private async Task> CreateAllCoatingIssueJobAsync(
- CoatingIssueRequest coatingIssueRequest)
+ CoatingIssueRequest CoatingIssueRequest)
{
- var coatingIssueJobEditInputs = new List();
+ var CoatingIssueJobEditInputs = new List();
//已用的库存的集合
var useBalanceList = new List();
- foreach (var groupbyItemCodeAndProdLine in coatingIssueRequest.Details.GroupBy(p =>
+ foreach (var groupbyItemCodeAndProdLine in CoatingIssueRequest.Details.GroupBy(p =>
new { p.ItemCode }))
{
- foreach (var coatingIssueRequestDetail in groupbyItemCodeAndProdLine)
+ foreach (var CoatingIssueRequestDetail in groupbyItemCodeAndProdLine)
{
var productionLineItemDto = await _productionLineItemAppService.GetByProductLineCodeAndItemCodeAsync(
- coatingIssueRequestDetail.ProdLine,
+ CoatingIssueRequestDetail.ProdLine,
groupbyItemCodeAndProdLine.Key.ItemCode).ConfigureAwait(false);
if (productionLineItemDto == null)
{
throw new UserFriendlyException(
- $"未在生产线物品关系表中维护【{coatingIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
+ $"未在生产线物品关系表中维护【{CoatingIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
}
//原料
@@ -521,7 +530,7 @@ public class CoatingIssueRequestEventHandler
//获取可用库存
var input = new RecommendBalanceRequestInput
{
- ItemCode = coatingIssueRequestDetail.ItemCode,
+ ItemCode = CoatingIssueRequestDetail.ItemCode,
Qty = decimal.MaxValue,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
@@ -532,14 +541,14 @@ public class CoatingIssueRequestEventHandler
var sortByFifoAsync = await SortByFifoAsync(usableList).ConfigureAwait(false);
//因为是按箱叫料 先把值赋值给箱数量上
- coatingIssueRequestDetail.BoxQty = coatingIssueRequestDetail.Qty;
+ CoatingIssueRequestDetail.BoxQty = CoatingIssueRequestDetail.Qty;
if (usableList.Any())
{
//因为是原料所以按箱叫料
- coatingIssueJobEditInputs.AddRange(
- await CreateCoatingIssueJobWithBoxQtyTypeAsync(coatingIssueRequest,
- new EditableList { coatingIssueRequestDetail },
+ CoatingIssueJobEditInputs.AddRange(
+ await CreateCoatingIssueJobWithBoxQtyTypeAsync(CoatingIssueRequest,
+ new EditableList { CoatingIssueRequestDetail },
sortByFifoAsync,
useBalanceList).ConfigureAwait(false));
}
@@ -557,7 +566,7 @@ public class CoatingIssueRequestEventHandler
var input = new RecommendBalanceRequestInput
{
ItemCode = groupbyItemCodeAndProdLine.Key.ItemCode,
- Qty = coatingIssueRequestDetail.Qty,
+ Qty = CoatingIssueRequestDetail.Qty,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
JsonSerializer.Deserialize>(productionLineItemDto
@@ -583,23 +592,23 @@ public class CoatingIssueRequestEventHandler
}
}
- coatingIssueJobEditInputs.AddRange(
- await CreateCoatingIssueJobWithQtyTypeAsync(coatingIssueRequest,
- new List { coatingIssueRequestDetail }, temp,
+ CoatingIssueJobEditInputs.AddRange(
+ await CreateCoatingIssueJobWithQtyTypeAsync(CoatingIssueRequest,
+ new List { CoatingIssueRequestDetail }, temp,
useBalanceList).ConfigureAwait(false));
}
}
}
}
- if (coatingIssueJobEditInputs.Count > 0) //有库存 可以创建任务
+ if (CoatingIssueJobEditInputs.Count > 0) //有库存 可以创建任务
{
//新增任务
- var addCoatingIssueJobDtos = await _coatingIssueJobAppService
- .CreateManyAsync(coatingIssueJobEditInputs)
+ var addCoatingIssueJobDtos = await _CoatingIssueJobAppService
+ .CreateManyAsync(CoatingIssueJobEditInputs)
.ConfigureAwait(false);
- await UpdateCoatingIssueRequestDetailQtyAsync(coatingIssueRequest, addCoatingIssueJobDtos)
+ await UpdateCoatingIssueRequestDetailQtyAsync(CoatingIssueRequest, addCoatingIssueJobDtos)
.ConfigureAwait(false);
return addCoatingIssueJobDtos;
@@ -611,15 +620,15 @@ public class CoatingIssueRequestEventHandler
///
/// 修改请求的 已发 已收数量
///
- ///
+ ///
///
///
- private async Task UpdateCoatingIssueRequestDetailQtyAsync(CoatingIssueRequest coatingIssueRequest,
+ private async Task UpdateCoatingIssueRequestDetailQtyAsync(CoatingIssueRequest CoatingIssueRequest,
List addCoatingIssueJobDtos)
{
//原有任务
- var existCoatingIssueJobDtos = await _coatingIssueJobAppService
- .GetByRequestNumberAsync(coatingIssueRequest.Number)
+ var existCoatingIssueJobDtos = await _CoatingIssueJobAppService
+ .GetByRequestNumberAsync(CoatingIssueRequest.Number)
.ConfigureAwait(false);
//新增的任务和已有的任务总和
@@ -627,7 +636,7 @@ public class CoatingIssueRequestEventHandler
allCoatingIssueJobDtos.AddRange(addCoatingIssueJobDtos);
allCoatingIssueJobDtos.AddRange(existCoatingIssueJobDtos);
- var groupByItemCodeLocationCode = coatingIssueRequest.Details.GroupBy(p =>
+ var groupByItemCodeLocationCode = CoatingIssueRequest.Details.GroupBy(p =>
new { p.ItemCode, p.ToLocationCode });
foreach (var group in groupByItemCodeLocationCode)
{
@@ -653,6 +662,8 @@ public class CoatingIssueRequestEventHandler
requestDetail.ReceivedQty = allReceivedQty;
}
}
+
+ await CoatingIssueRequestManager.UpdateByEntityAsync(CoatingIssueRequest).ConfigureAwait(false);
}
///
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/InjectionIssueRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/InjectionIssueRequestEventHandler.cs
index de4d6b6f3..7008e859b 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/InjectionIssueRequestEventHandler.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/InjectionIssueRequestEventHandler.cs
@@ -14,6 +14,7 @@ using Win_in.Sfs.Shared.Event;
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
+using Win_in.Sfs.Wms.Store.Domain.Acl.Balance;
namespace Win_in.Sfs.Wms.Store.Event.BusinessRequest;
@@ -25,20 +26,21 @@ public class InjectionIssueRequestEventHandler
, ILocalEventHandler>
, ILocalEventHandler>>
{
- private readonly IInjectionIssueJobAppService _injectionIssueJobAppService;
+ private readonly IInjectionIssueJobAppService _InjectionIssueJobAppService;
private readonly IProductionLineAppService _productionLineAppService;
private readonly IProductionLineItemAppService _productionLineItemAppService;
private readonly ILocationAppService _locationAppService;
private readonly IBalanceAppService _balanceAppService;
+ protected IInjectionIssueRequestManager InjectionIssueRequestManager => LazyServiceProvider.LazyGetRequiredService();
private IMapper _mapper;
public InjectionIssueRequestEventHandler(
- IInjectionIssueJobAppService injectionIssueJobAppService, IProductionLineAppService productionLineAppService,
+ IInjectionIssueJobAppService InjectionIssueJobAppService, IProductionLineAppService productionLineAppService,
ILocationAppService locationAppService,
IBalanceAppService balanceAppService, IProductionLineItemAppService productionLineItemAppService
)
{
- _injectionIssueJobAppService = injectionIssueJobAppService;
+ _InjectionIssueJobAppService = InjectionIssueJobAppService;
_productionLineAppService = productionLineAppService;
_locationAppService = locationAppService;
_balanceAppService = balanceAppService;
@@ -107,14 +109,14 @@ public class InjectionIssueRequestEventHandler
///
/// 创建注塑任务-按数量
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateInjectionIssueJobWithQtyTypeAsync
- (InjectionIssueRequest injectionIssueRequest, List injectionIssueRequestDetails,
+ (InjectionIssueRequest InjectionIssueRequest, List InjectionIssueRequestDetails,
List recommendbalanceDtos,
List useBalanceList)
{
@@ -122,9 +124,9 @@ public class InjectionIssueRequestEventHandler
//用来临时存放所有未生成任务的发料集合 如果生成完了再这里去掉
var tempDetailDtos =
ObjectMapper.Map, List>(
- injectionIssueRequestDetails);
+ InjectionIssueRequestDetails);
- var injectionIssueJobDetailInputs = new List();
+ var InjectionIssueJobDetailInputs = new List();
if (recommendbalanceDtos != null && recommendbalanceDtos.Count > 0)
{
@@ -138,7 +140,9 @@ public class InjectionIssueRequestEventHandler
foreach (var tempDetailDto in tempDetailDtos)
{
//未发送的数量
- tempDetailDto.Qty = tempDetailDto.Qty - tempDetailDto.IssuedQty;
+ tempDetailDto.Qty = tempDetailDto.Qty > tempDetailDto.IssuedQty ?
+ tempDetailDto.Qty - tempDetailDto.IssuedQty :
+ 0;
if (tempDetailDto.Qty > balanceDto.Qty) //需求量大于 这条推荐库存的余额
{
@@ -150,7 +154,7 @@ public class InjectionIssueRequestEventHandler
balanceDto.Qty = tempDetailDto.Qty;
}
- injectionIssueJobDetailInputs.Add(
+ InjectionIssueJobDetailInputs.Add(
await BuildInjectionIssueJobDetailWithQtyTypeAsync(tempDetailDto, balanceDto)
.ConfigureAwait(false));
useBalanceList.Add(balanceDto);
@@ -170,13 +174,18 @@ public class InjectionIssueRequestEventHandler
}
}
- if (injectionIssueJobDetailInputs.Any())
+ if (InjectionIssueJobDetailInputs.Any())
{
- var injectionIssueJobEditInput = await BuildInjectionIssueJobCreateInputWithQtyTypeAsync(
- injectionIssueRequest,
- injectionIssueRequestDetails.First()).ConfigureAwait(false);
- injectionIssueJobEditInput.Details = injectionIssueJobDetailInputs;
- jobs.Add(injectionIssueJobEditInput);
+ var InjectionIssueJobEditInput = await BuildInjectionIssueJobCreateInputWithQtyTypeAsync(
+ InjectionIssueRequest,
+ InjectionIssueRequestDetails.First()).ConfigureAwait(false);
+ InjectionIssueJobEditInput.Details = InjectionIssueJobDetailInputs;
+
+ InjectionIssueJobEditInput.Details = InjectionIssueJobEditInput.Details.Where(p => p.RecommendFromQty > 0).ToList();
+ if (InjectionIssueJobEditInput.Details != null && InjectionIssueJobEditInput.Details.Any())
+ {
+ jobs.Add(InjectionIssueJobEditInput);
+ }
}
return jobs;
@@ -185,19 +194,19 @@ public class InjectionIssueRequestEventHandler
///
/// 构造注塑任务-按数量
///
- ///
+ ///
///
///
private async Task BuildInjectionIssueJobCreateInputWithQtyTypeAsync(
- InjectionIssueRequest injectionIssueRequest, InjectionIssueRequestDetail requestDetailInput)
+ InjectionIssueRequest InjectionIssueRequest, InjectionIssueRequestDetail requestDetailInput)
{
- var job = ObjectMapper.Map(injectionIssueRequest);
+ var job = ObjectMapper.Map(InjectionIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
job.WorkGroupCode = requestDetailInput.ToLocationGroup;
job.WarehouseCode = requestDetailInput.ToWarehouseCode;
- job.Worker = injectionIssueRequest.Worker;
- job.InjectionRequestNumber = injectionIssueRequest.Number;
+ job.Worker = InjectionIssueRequest.Worker;
+ job.InjectionRequestNumber = InjectionIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.QtyType;
await Task.CompletedTask.ConfigureAwait(false);
@@ -208,31 +217,31 @@ public class InjectionIssueRequestEventHandler
///
/// 构造注塑任务明细-按数量
///
- ///
+ ///
///
///
private async Task BuildInjectionIssueJobDetailWithQtyTypeAsync(
- InjectionIssueRequestDetailDTO injectionIssueRequestDetail, BalanceDTO balance)
+ InjectionIssueRequestDetailDTO InjectionIssueRequestDetail, BalanceDTO balance)
{
var detail = new InjectionIssueJobDetailInput();
- detail.RequestLocationCode = injectionIssueRequestDetail.ToLocationCode;
- detail.PositionCode = injectionIssueRequestDetail.PositionCode;
- detail.RecommendType = injectionIssueRequestDetail.RecommendType;
+ detail.RequestLocationCode = InjectionIssueRequestDetail.ToLocationCode;
+ detail.PositionCode = InjectionIssueRequestDetail.PositionCode;
+ detail.RecommendType = InjectionIssueRequestDetail.RecommendType;
detail.Uom = balance.Uom;
detail.ItemCode = balance.ItemCode;
detail.ItemDesc2 = balance.ItemDesc2;
detail.ItemDesc1 = balance.ItemDesc1;
detail.ItemName = balance.ItemName;
- detail.ProdLine = injectionIssueRequestDetail.ProdLine;
+ detail.ProdLine = InjectionIssueRequestDetail.ProdLine;
detail.RequestQty = balance.Qty;
- detail.StdPackQty = injectionIssueRequestDetail.StdPackQty;
+ detail.StdPackQty = InjectionIssueRequestDetail.StdPackQty;
detail.Status = balance.Status;
- detail.RequestLocationErpCode = injectionIssueRequestDetail.ToLocationErpCode;
- detail.RequestLocationArea = injectionIssueRequestDetail.ToLocationArea;
- detail.RequestWarehouseCode = injectionIssueRequestDetail.ToWarehouseCode;
- detail.RequestLocationGroup = injectionIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationCode = injectionIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationErpCode = InjectionIssueRequestDetail.ToLocationErpCode;
+ detail.RequestLocationArea = InjectionIssueRequestDetail.ToLocationArea;
+ detail.RequestWarehouseCode = InjectionIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationGroup = InjectionIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationCode = InjectionIssueRequestDetail.ToLocationCode;
detail.RecommendFromPackingCode = balance.PackingCode;
detail.RecommendFromContainerCode = balance.ContainerCode;
@@ -264,11 +273,11 @@ public class InjectionIssueRequestEventHandler
detail.RecommendFromLocationGroup = balance.LocationGroup;
detail.RecommendFromWarehouseCode = balance.WarehouseCode;
- detail.RecommendToLocationCode = injectionIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = injectionIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = injectionIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = injectionIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = injectionIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = InjectionIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = InjectionIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = InjectionIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = InjectionIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = InjectionIssueRequestDetail.ToLocationGroup;
detail.TransferLibFromPackingCode = balance.PackingCode;
detail.TransferLibFromContainerCode = balance.ContainerCode;
@@ -299,11 +308,11 @@ public class InjectionIssueRequestEventHandler
detail.TransferLibFromLocationGroup = balance.LocationGroup;
detail.TransferLibFromWarehouseCode = balance.WarehouseCode;
- detail.TransferLibToLocationCode = injectionIssueRequestDetail.ToLocationCode;
- detail.TransferLibToLocationErpCode = injectionIssueRequestDetail.ToLocationErpCode;
- detail.TransferLibToLocationArea = injectionIssueRequestDetail.ToLocationArea;
- detail.TransferLibToWarehouseCode = injectionIssueRequestDetail.ToWarehouseCode;
- detail.TransferLibToLocationGroup = injectionIssueRequestDetail.ToLocationGroup;
+ detail.TransferLibToLocationCode = InjectionIssueRequestDetail.ToLocationCode;
+ detail.TransferLibToLocationErpCode = InjectionIssueRequestDetail.ToLocationErpCode;
+ detail.TransferLibToLocationArea = InjectionIssueRequestDetail.ToLocationArea;
+ detail.TransferLibToWarehouseCode = InjectionIssueRequestDetail.ToWarehouseCode;
+ detail.TransferLibToLocationGroup = InjectionIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -316,28 +325,28 @@ public class InjectionIssueRequestEventHandler
///
/// 创建注塑任务 按箱叫料-按箱
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateInjectionIssueJobWithBoxQtyTypeAsync
(
- InjectionIssueRequest injectionIssueRequest,
- List injectionIssueRequestDetailList,
+ InjectionIssueRequest InjectionIssueRequest,
+ List InjectionIssueRequestDetailList,
List recommendbalanceDtos,
List useBalanceList)
{
var inputJobs = new List();
- var jobs = await _injectionIssueJobAppService.GetByRequestNumberAsync(injectionIssueRequest.Number)
+ var jobs = await _InjectionIssueJobAppService.GetByRequestNumberAsync(InjectionIssueRequest.Number)
.ConfigureAwait(false);
- foreach (var detail in injectionIssueRequestDetailList)
+ foreach (var detail in InjectionIssueRequestDetailList)
{
//当前物品的集合
- var inputDetails = injectionIssueRequestDetailList;
+ var inputDetails = InjectionIssueRequestDetailList;
//获取请求下 这个物品和这个库位一个需要多少箱
var sumBoxQty = inputDetails.Sum(p => p.BoxQty - jobs.Count);
//获取生产线
@@ -368,12 +377,12 @@ public class InjectionIssueRequestEventHandler
useBalanceList.Add(firstUsable);
usableList.Remove(firstUsable);
- var injectionIssueJobEditInput =
- await BuildInjectionIssueJobCreateInputWithBoxQtyTypeAsync(injectionIssueRequest,
+ var InjectionIssueJobEditInput =
+ await BuildInjectionIssueJobCreateInputWithBoxQtyTypeAsync(InjectionIssueRequest,
detail, firstUsable)
.ConfigureAwait(false);
- inputJobs.Add(injectionIssueJobEditInput);
+ inputJobs.Add(InjectionIssueJobEditInput);
}
else
{
@@ -389,24 +398,24 @@ public class InjectionIssueRequestEventHandler
///
/// 构造注塑任务-按箱
///
- ///
- ///
+ ///
+ ///
///
///
private async Task BuildInjectionIssueJobCreateInputWithBoxQtyTypeAsync(
- InjectionIssueRequest injectionIssueRequest,
- InjectionIssueRequestDetail injectionIssueRequestDetail, BalanceDTO balanceDtos)
+ InjectionIssueRequest InjectionIssueRequest,
+ InjectionIssueRequestDetail InjectionIssueRequestDetail, BalanceDTO balanceDtos)
{
- var job = ObjectMapper.Map(injectionIssueRequest);
+ var job = ObjectMapper.Map(InjectionIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
- job.WorkGroupCode = injectionIssueRequestDetail.ToLocationGroup;
- job.WarehouseCode = injectionIssueRequestDetail.ToWarehouseCode;
- job.Worker = injectionIssueRequest.Worker;
- job.InjectionRequestNumber = injectionIssueRequest.Number;
+ job.WorkGroupCode = InjectionIssueRequestDetail.ToLocationGroup;
+ job.WarehouseCode = InjectionIssueRequestDetail.ToWarehouseCode;
+ job.Worker = InjectionIssueRequest.Worker;
+ job.InjectionRequestNumber = InjectionIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.BoxQtyType;
- job.Details.Add(await BuildInjectionIssueJobDetailWithBoxQtyTypeAsync(injectionIssueRequestDetail, balanceDtos)
+ job.Details.Add(await BuildInjectionIssueJobDetailWithBoxQtyTypeAsync(InjectionIssueRequestDetail, balanceDtos)
.ConfigureAwait(false));
await Task.CompletedTask.ConfigureAwait(false);
@@ -417,28 +426,28 @@ public class InjectionIssueRequestEventHandler
///
/// 构造注塑任务明细-按箱
///
- ///
+ ///
///
///
private async Task BuildInjectionIssueJobDetailWithBoxQtyTypeAsync(
- InjectionIssueRequestDetail injectionIssueRequestDetail, BalanceDTO balance)
+ InjectionIssueRequestDetail InjectionIssueRequestDetail, BalanceDTO balance)
{
var detail = new InjectionIssueJobDetailInput();
- detail.RequestLocationCode = injectionIssueRequestDetail.ToLocationCode;
- detail.RequestLocationGroup = injectionIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationArea = injectionIssueRequestDetail.ToLocationArea;
- detail.RequestLocationErpCode = injectionIssueRequestDetail.ToLocationErpCode;
- detail.RequestWarehouseCode = injectionIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationCode = InjectionIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationGroup = InjectionIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationArea = InjectionIssueRequestDetail.ToLocationArea;
+ detail.RequestLocationErpCode = InjectionIssueRequestDetail.ToLocationErpCode;
+ detail.RequestWarehouseCode = InjectionIssueRequestDetail.ToWarehouseCode;
detail.RequestQty = 1;
- detail.PositionCode = injectionIssueRequestDetail.PositionCode;
- detail.RecommendType = injectionIssueRequestDetail.RecommendType;
- detail.ProdLine = injectionIssueRequestDetail.ProdLine;
+ detail.PositionCode = InjectionIssueRequestDetail.PositionCode;
+ detail.RecommendType = InjectionIssueRequestDetail.RecommendType;
+ detail.ProdLine = InjectionIssueRequestDetail.ProdLine;
- detail.ItemCode = injectionIssueRequestDetail.ItemCode;
- detail.ItemName = injectionIssueRequestDetail.ItemName;
- detail.ItemDesc1 = injectionIssueRequestDetail.ItemDesc1;
- detail.ItemDesc2 = injectionIssueRequestDetail.ItemDesc2;
+ detail.ItemCode = InjectionIssueRequestDetail.ItemCode;
+ detail.ItemName = InjectionIssueRequestDetail.ItemName;
+ detail.ItemDesc1 = InjectionIssueRequestDetail.ItemDesc1;
+ detail.ItemDesc2 = InjectionIssueRequestDetail.ItemDesc2;
detail.Status = EnumInventoryStatus.OK;
detail.Uom = balance.Uom;
@@ -473,11 +482,11 @@ public class InjectionIssueRequestEventHandler
detail.RecommendToProduceDate = balance.ProduceDate;
detail.RecommendToArriveDate = balance.ArriveDate;
- detail.RecommendToLocationCode = injectionIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = injectionIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = injectionIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = injectionIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = injectionIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = InjectionIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = InjectionIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = InjectionIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = InjectionIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = InjectionIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -489,26 +498,26 @@ public class InjectionIssueRequestEventHandler
//创建任务
private async Task> CreateAllInjectionIssueJobAsync(
- InjectionIssueRequest injectionIssueRequest)
+ InjectionIssueRequest InjectionIssueRequest)
{
- var injectionIssueJobEditInputs = new List();
+ var InjectionIssueJobEditInputs = new List();
//已用的库存的集合
var useBalanceList = new List();
- foreach (var groupbyItemCodeAndProdLine in injectionIssueRequest.Details.GroupBy(p =>
+ foreach (var groupbyItemCodeAndProdLine in InjectionIssueRequest.Details.GroupBy(p =>
new { p.ItemCode }))
{
- foreach (var injectionIssueRequestDetail in groupbyItemCodeAndProdLine)
+ foreach (var InjectionIssueRequestDetail in groupbyItemCodeAndProdLine)
{
var productionLineItemDto = await _productionLineItemAppService.GetByProductLineCodeAndItemCodeAsync(
- injectionIssueRequestDetail.ProdLine,
+ InjectionIssueRequestDetail.ProdLine,
groupbyItemCodeAndProdLine.Key.ItemCode).ConfigureAwait(false);
if (productionLineItemDto == null)
{
throw new UserFriendlyException(
- $"未在生产线物品关系表中维护【{injectionIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
+ $"未在生产线物品关系表中维护【{InjectionIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
}
//原料
@@ -521,7 +530,7 @@ public class InjectionIssueRequestEventHandler
//获取可用库存
var input = new RecommendBalanceRequestInput
{
- ItemCode = injectionIssueRequestDetail.ItemCode,
+ ItemCode = InjectionIssueRequestDetail.ItemCode,
Qty = decimal.MaxValue,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
@@ -532,14 +541,14 @@ public class InjectionIssueRequestEventHandler
var sortByFifoAsync = await SortByFifoAsync(usableList).ConfigureAwait(false);
//因为是按箱叫料 先把值赋值给箱数量上
- injectionIssueRequestDetail.BoxQty = injectionIssueRequestDetail.Qty;
+ InjectionIssueRequestDetail.BoxQty = InjectionIssueRequestDetail.Qty;
if (usableList.Any())
{
//因为是原料所以按箱叫料
- injectionIssueJobEditInputs.AddRange(
- await CreateInjectionIssueJobWithBoxQtyTypeAsync(injectionIssueRequest,
- new EditableList { injectionIssueRequestDetail },
+ InjectionIssueJobEditInputs.AddRange(
+ await CreateInjectionIssueJobWithBoxQtyTypeAsync(InjectionIssueRequest,
+ new EditableList { InjectionIssueRequestDetail },
sortByFifoAsync,
useBalanceList).ConfigureAwait(false));
}
@@ -557,7 +566,7 @@ public class InjectionIssueRequestEventHandler
var input = new RecommendBalanceRequestInput
{
ItemCode = groupbyItemCodeAndProdLine.Key.ItemCode,
- Qty = injectionIssueRequestDetail.Qty,
+ Qty = InjectionIssueRequestDetail.Qty,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
JsonSerializer.Deserialize>(productionLineItemDto
@@ -583,23 +592,23 @@ public class InjectionIssueRequestEventHandler
}
}
- injectionIssueJobEditInputs.AddRange(
- await CreateInjectionIssueJobWithQtyTypeAsync(injectionIssueRequest,
- new List { injectionIssueRequestDetail }, temp,
+ InjectionIssueJobEditInputs.AddRange(
+ await CreateInjectionIssueJobWithQtyTypeAsync(InjectionIssueRequest,
+ new List { InjectionIssueRequestDetail }, temp,
useBalanceList).ConfigureAwait(false));
}
}
}
}
- if (injectionIssueJobEditInputs.Count > 0) //有库存 可以创建任务
+ if (InjectionIssueJobEditInputs.Count > 0) //有库存 可以创建任务
{
//新增任务
- var addInjectionIssueJobDtos = await _injectionIssueJobAppService
- .CreateManyAsync(injectionIssueJobEditInputs)
+ var addInjectionIssueJobDtos = await _InjectionIssueJobAppService
+ .CreateManyAsync(InjectionIssueJobEditInputs)
.ConfigureAwait(false);
- await UpdateInjectionIssueRequestDetailQtyAsync(injectionIssueRequest, addInjectionIssueJobDtos)
+ await UpdateInjectionIssueRequestDetailQtyAsync(InjectionIssueRequest, addInjectionIssueJobDtos)
.ConfigureAwait(false);
return addInjectionIssueJobDtos;
@@ -611,15 +620,15 @@ public class InjectionIssueRequestEventHandler
///
/// 修改请求的 已发 已收数量
///
- ///
+ ///
///
///
- private async Task UpdateInjectionIssueRequestDetailQtyAsync(InjectionIssueRequest injectionIssueRequest,
+ private async Task UpdateInjectionIssueRequestDetailQtyAsync(InjectionIssueRequest InjectionIssueRequest,
List addInjectionIssueJobDtos)
{
//原有任务
- var existInjectionIssueJobDtos = await _injectionIssueJobAppService
- .GetByRequestNumberAsync(injectionIssueRequest.Number)
+ var existInjectionIssueJobDtos = await _InjectionIssueJobAppService
+ .GetByRequestNumberAsync(InjectionIssueRequest.Number)
.ConfigureAwait(false);
//新增的任务和已有的任务总和
@@ -627,7 +636,7 @@ public class InjectionIssueRequestEventHandler
allInjectionIssueJobDtos.AddRange(addInjectionIssueJobDtos);
allInjectionIssueJobDtos.AddRange(existInjectionIssueJobDtos);
- var groupByItemCodeLocationCode = injectionIssueRequest.Details.GroupBy(p =>
+ var groupByItemCodeLocationCode = InjectionIssueRequest.Details.GroupBy(p =>
new { p.ItemCode, p.ToLocationCode });
foreach (var group in groupByItemCodeLocationCode)
{
@@ -653,6 +662,8 @@ public class InjectionIssueRequestEventHandler
requestDetail.ReceivedQty = allReceivedQty;
}
}
+
+ await InjectionIssueRequestManager.UpdateByEntityAsync(InjectionIssueRequest).ConfigureAwait(false);
}
///
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/KittingIssueRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/KittingIssueRequestEventHandler.cs
index 52d428aa8..ecc36f17d 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/KittingIssueRequestEventHandler.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/KittingIssueRequestEventHandler.cs
@@ -14,6 +14,7 @@ using Win_in.Sfs.Shared.Event;
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
+using Win_in.Sfs.Wms.Store.Domain.Acl.Balance;
namespace Win_in.Sfs.Wms.Store.Event.BusinessRequest;
@@ -25,20 +26,21 @@ public class KittingIssueRequestEventHandler
, ILocalEventHandler>
, ILocalEventHandler>>
{
- private readonly IKittingIssueJobAppService _kittingIssueJobAppService;
+ private readonly IKittingIssueJobAppService _KittingIssueJobAppService;
private readonly IProductionLineAppService _productionLineAppService;
private readonly IProductionLineItemAppService _productionLineItemAppService;
private readonly ILocationAppService _locationAppService;
private readonly IBalanceAppService _balanceAppService;
+ protected IKittingIssueRequestManager KittingIssueRequestManager => LazyServiceProvider.LazyGetRequiredService();
private IMapper _mapper;
public KittingIssueRequestEventHandler(
- IKittingIssueJobAppService kittingIssueJobAppService, IProductionLineAppService productionLineAppService,
+ IKittingIssueJobAppService KittingIssueJobAppService, IProductionLineAppService productionLineAppService,
ILocationAppService locationAppService,
IBalanceAppService balanceAppService, IProductionLineItemAppService productionLineItemAppService
)
{
- _kittingIssueJobAppService = kittingIssueJobAppService;
+ _KittingIssueJobAppService = KittingIssueJobAppService;
_productionLineAppService = productionLineAppService;
_locationAppService = locationAppService;
_balanceAppService = balanceAppService;
@@ -95,7 +97,7 @@ public class KittingIssueRequestEventHandler
public virtual async Task HandleEventAsync(SfsCompletedEntityEventData eventData)
{
_ = eventData.Entity;
- // await _kittingIssueJobAppService.CompleteByKittingIssueRequestAsync(entity.Number);
+ // await _KittingIssueJobAppService.CompleteByKittingIssueRequestAsync(entity.Number);
await Task.CompletedTask.ConfigureAwait(false);
}
@@ -107,14 +109,14 @@ public class KittingIssueRequestEventHandler
///
/// 创建注塑任务-按数量
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateKittingIssueJobWithQtyTypeAsync
- (KittingIssueRequest kittingIssueRequest, List kittingIssueRequestDetails,
+ (KittingIssueRequest KittingIssueRequest, List KittingIssueRequestDetails,
List recommendbalanceDtos,
List useBalanceList)
{
@@ -122,9 +124,9 @@ public class KittingIssueRequestEventHandler
//用来临时存放所有未生成任务的发料集合 如果生成完了再这里去掉
var tempDetailDtos =
ObjectMapper.Map, List>(
- kittingIssueRequestDetails);
+ KittingIssueRequestDetails);
- var kittingIssueJobDetailInputs = new List();
+ var KittingIssueJobDetailInputs = new List();
if (recommendbalanceDtos != null && recommendbalanceDtos.Count > 0)
{
@@ -138,7 +140,9 @@ public class KittingIssueRequestEventHandler
foreach (var tempDetailDto in tempDetailDtos)
{
//未发送的数量
- tempDetailDto.Qty = tempDetailDto.Qty - tempDetailDto.IssuedQty;
+ tempDetailDto.Qty = tempDetailDto.Qty > tempDetailDto.IssuedQty ?
+ tempDetailDto.Qty - tempDetailDto.IssuedQty :
+ 0;
if (tempDetailDto.Qty > balanceDto.Qty) //需求量大于 这条推荐库存的余额
{
@@ -150,7 +154,7 @@ public class KittingIssueRequestEventHandler
balanceDto.Qty = tempDetailDto.Qty;
}
- kittingIssueJobDetailInputs.Add(
+ KittingIssueJobDetailInputs.Add(
await BuildKittingIssueJobDetailWithQtyTypeAsync(tempDetailDto, balanceDto)
.ConfigureAwait(false));
useBalanceList.Add(balanceDto);
@@ -170,12 +174,18 @@ public class KittingIssueRequestEventHandler
}
}
- if (kittingIssueJobDetailInputs.Any())
+ if (KittingIssueJobDetailInputs.Any())
{
- var kittingIssueJobEditInput = await BuildKittingIssueJobCreateInputWithQtyTypeAsync(kittingIssueRequest,
- kittingIssueRequestDetails.First()).ConfigureAwait(false);
- kittingIssueJobEditInput.Details = kittingIssueJobDetailInputs;
- jobs.Add(kittingIssueJobEditInput);
+ var KittingIssueJobEditInput = await BuildKittingIssueJobCreateInputWithQtyTypeAsync(
+ KittingIssueRequest,
+ KittingIssueRequestDetails.First()).ConfigureAwait(false);
+ KittingIssueJobEditInput.Details = KittingIssueJobDetailInputs;
+
+ KittingIssueJobEditInput.Details = KittingIssueJobEditInput.Details.Where(p => p.RecommendFromQty > 0).ToList();
+ if (KittingIssueJobEditInput.Details != null && KittingIssueJobEditInput.Details.Any())
+ {
+ jobs.Add(KittingIssueJobEditInput);
+ }
}
return jobs;
@@ -184,19 +194,19 @@ public class KittingIssueRequestEventHandler
///
/// 构造注塑任务-按数量
///
- ///
+ ///
///
///
private async Task BuildKittingIssueJobCreateInputWithQtyTypeAsync(
- KittingIssueRequest kittingIssueRequest, KittingIssueRequestDetail requestDetailInput)
+ KittingIssueRequest KittingIssueRequest, KittingIssueRequestDetail requestDetailInput)
{
- var job = ObjectMapper.Map(kittingIssueRequest);
+ var job = ObjectMapper.Map(KittingIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
job.WorkGroupCode = requestDetailInput.ToLocationGroup;
job.WarehouseCode = requestDetailInput.ToWarehouseCode;
- job.Worker = kittingIssueRequest.Worker;
- job.KittingRequestNumber = kittingIssueRequest.Number;
+ job.Worker = KittingIssueRequest.Worker;
+ job.KittingRequestNumber = KittingIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.QtyType;
await Task.CompletedTask.ConfigureAwait(false);
@@ -207,31 +217,31 @@ public class KittingIssueRequestEventHandler
///
/// 构造注塑任务明细-按数量
///
- ///
+ ///
///
///
private async Task BuildKittingIssueJobDetailWithQtyTypeAsync(
- KittingIssueRequestDetailDTO kittingIssueRequestDetail, BalanceDTO balance)
+ KittingIssueRequestDetailDTO KittingIssueRequestDetail, BalanceDTO balance)
{
var detail = new KittingIssueJobDetailInput();
- detail.RequestLocationCode = kittingIssueRequestDetail.ToLocationCode;
- detail.PositionCode = kittingIssueRequestDetail.PositionCode;
- detail.RecommendType = kittingIssueRequestDetail.RecommendType;
+ detail.RequestLocationCode = KittingIssueRequestDetail.ToLocationCode;
+ detail.PositionCode = KittingIssueRequestDetail.PositionCode;
+ detail.RecommendType = KittingIssueRequestDetail.RecommendType;
detail.Uom = balance.Uom;
detail.ItemCode = balance.ItemCode;
detail.ItemDesc2 = balance.ItemDesc2;
detail.ItemDesc1 = balance.ItemDesc1;
detail.ItemName = balance.ItemName;
- detail.ProdLine = kittingIssueRequestDetail.ProdLine;
+ detail.ProdLine = KittingIssueRequestDetail.ProdLine;
detail.RequestQty = balance.Qty;
- detail.StdPackQty = kittingIssueRequestDetail.StdPackQty;
+ detail.StdPackQty = KittingIssueRequestDetail.StdPackQty;
detail.Status = balance.Status;
- detail.RequestLocationErpCode = kittingIssueRequestDetail.ToLocationErpCode;
- detail.RequestLocationArea = kittingIssueRequestDetail.ToLocationArea;
- detail.RequestWarehouseCode = kittingIssueRequestDetail.ToWarehouseCode;
- detail.RequestLocationGroup = kittingIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationCode = kittingIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationErpCode = KittingIssueRequestDetail.ToLocationErpCode;
+ detail.RequestLocationArea = KittingIssueRequestDetail.ToLocationArea;
+ detail.RequestWarehouseCode = KittingIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationGroup = KittingIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationCode = KittingIssueRequestDetail.ToLocationCode;
detail.RecommendFromPackingCode = balance.PackingCode;
detail.RecommendFromContainerCode = balance.ContainerCode;
@@ -263,11 +273,11 @@ public class KittingIssueRequestEventHandler
detail.RecommendFromLocationGroup = balance.LocationGroup;
detail.RecommendFromWarehouseCode = balance.WarehouseCode;
- detail.RecommendToLocationCode = kittingIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = kittingIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = kittingIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = kittingIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = kittingIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = KittingIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = KittingIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = KittingIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = KittingIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = KittingIssueRequestDetail.ToLocationGroup;
detail.TransferLibFromPackingCode = balance.PackingCode;
detail.TransferLibFromContainerCode = balance.ContainerCode;
@@ -298,11 +308,11 @@ public class KittingIssueRequestEventHandler
detail.TransferLibFromLocationGroup = balance.LocationGroup;
detail.TransferLibFromWarehouseCode = balance.WarehouseCode;
- detail.TransferLibToLocationCode = kittingIssueRequestDetail.ToLocationCode;
- detail.TransferLibToLocationErpCode = kittingIssueRequestDetail.ToLocationErpCode;
- detail.TransferLibToLocationArea = kittingIssueRequestDetail.ToLocationArea;
- detail.TransferLibToWarehouseCode = kittingIssueRequestDetail.ToWarehouseCode;
- detail.TransferLibToLocationGroup = kittingIssueRequestDetail.ToLocationGroup;
+ detail.TransferLibToLocationCode = KittingIssueRequestDetail.ToLocationCode;
+ detail.TransferLibToLocationErpCode = KittingIssueRequestDetail.ToLocationErpCode;
+ detail.TransferLibToLocationArea = KittingIssueRequestDetail.ToLocationArea;
+ detail.TransferLibToWarehouseCode = KittingIssueRequestDetail.ToWarehouseCode;
+ detail.TransferLibToLocationGroup = KittingIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -315,28 +325,28 @@ public class KittingIssueRequestEventHandler
///
/// 创建注塑任务 按箱叫料-按箱
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateKittingIssueJobWithBoxQtyTypeAsync
(
- KittingIssueRequest kittingIssueRequest,
- List kittingIssueRequestDetailList,
+ KittingIssueRequest KittingIssueRequest,
+ List KittingIssueRequestDetailList,
List recommendbalanceDtos,
List useBalanceList)
{
var inputJobs = new List();
- var jobs = await _kittingIssueJobAppService.GetByRequestNumberAsync(kittingIssueRequest.Number)
+ var jobs = await _KittingIssueJobAppService.GetByRequestNumberAsync(KittingIssueRequest.Number)
.ConfigureAwait(false);
- foreach (var detail in kittingIssueRequestDetailList)
+ foreach (var detail in KittingIssueRequestDetailList)
{
//当前物品的集合
- var inputDetails = kittingIssueRequestDetailList;
+ var inputDetails = KittingIssueRequestDetailList;
//获取请求下 这个物品和这个库位一个需要多少箱
var sumBoxQty = inputDetails.Sum(p => p.BoxQty - jobs.Count);
//获取生产线
@@ -354,7 +364,8 @@ public class KittingIssueRequestEventHandler
//可用库存
var usableList = recommendbalanceDtos;
- usableList = usableList.Where(p => !useBalanceList.Select(p => p.PackingCode).Contains(p.PackingCode))
+ usableList = usableList.Where(p =>
+ !useBalanceList.Select(balanceDto => balanceDto.PackingCode).Contains(p.PackingCode))
.ToList();
if (usableList.Any())
{
@@ -366,12 +377,12 @@ public class KittingIssueRequestEventHandler
useBalanceList.Add(firstUsable);
usableList.Remove(firstUsable);
- var kittingIssueJobEditInput =
- await BuildKittingIssueJobCreateInputWithBoxQtyTypeAsync(kittingIssueRequest,
+ var KittingIssueJobEditInput =
+ await BuildKittingIssueJobCreateInputWithBoxQtyTypeAsync(KittingIssueRequest,
detail, firstUsable)
.ConfigureAwait(false);
- inputJobs.Add(kittingIssueJobEditInput);
+ inputJobs.Add(KittingIssueJobEditInput);
}
else
{
@@ -387,24 +398,24 @@ public class KittingIssueRequestEventHandler
///
/// 构造注塑任务-按箱
///
- ///
- ///
+ ///
+ ///
///
///
private async Task BuildKittingIssueJobCreateInputWithBoxQtyTypeAsync(
- KittingIssueRequest kittingIssueRequest,
- KittingIssueRequestDetail kittingIssueRequestDetail, BalanceDTO balanceDtos)
+ KittingIssueRequest KittingIssueRequest,
+ KittingIssueRequestDetail KittingIssueRequestDetail, BalanceDTO balanceDtos)
{
- var job = ObjectMapper.Map(kittingIssueRequest);
+ var job = ObjectMapper.Map(KittingIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
- job.WorkGroupCode = kittingIssueRequestDetail.ToLocationGroup;
- job.WarehouseCode = kittingIssueRequestDetail.ToWarehouseCode;
- job.Worker = kittingIssueRequest.Worker;
- job.KittingRequestNumber = kittingIssueRequest.Number;
+ job.WorkGroupCode = KittingIssueRequestDetail.ToLocationGroup;
+ job.WarehouseCode = KittingIssueRequestDetail.ToWarehouseCode;
+ job.Worker = KittingIssueRequest.Worker;
+ job.KittingRequestNumber = KittingIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.BoxQtyType;
- job.Details.Add(await BuildKittingIssueJobDetailWithBoxQtyTypeAsync(kittingIssueRequestDetail, balanceDtos)
+ job.Details.Add(await BuildKittingIssueJobDetailWithBoxQtyTypeAsync(KittingIssueRequestDetail, balanceDtos)
.ConfigureAwait(false));
await Task.CompletedTask.ConfigureAwait(false);
@@ -415,28 +426,28 @@ public class KittingIssueRequestEventHandler
///
/// 构造注塑任务明细-按箱
///
- ///
+ ///
///
///
private async Task BuildKittingIssueJobDetailWithBoxQtyTypeAsync(
- KittingIssueRequestDetail kittingIssueRequestDetail, BalanceDTO balance)
+ KittingIssueRequestDetail KittingIssueRequestDetail, BalanceDTO balance)
{
var detail = new KittingIssueJobDetailInput();
- detail.RequestLocationCode = kittingIssueRequestDetail.ToLocationCode;
- detail.RequestLocationGroup = kittingIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationArea = kittingIssueRequestDetail.ToLocationArea;
- detail.RequestLocationErpCode = kittingIssueRequestDetail.ToLocationErpCode;
- detail.RequestWarehouseCode = kittingIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationCode = KittingIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationGroup = KittingIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationArea = KittingIssueRequestDetail.ToLocationArea;
+ detail.RequestLocationErpCode = KittingIssueRequestDetail.ToLocationErpCode;
+ detail.RequestWarehouseCode = KittingIssueRequestDetail.ToWarehouseCode;
detail.RequestQty = 1;
- detail.PositionCode = kittingIssueRequestDetail.PositionCode;
- detail.RecommendType = kittingIssueRequestDetail.RecommendType;
- detail.ProdLine = kittingIssueRequestDetail.ProdLine;
+ detail.PositionCode = KittingIssueRequestDetail.PositionCode;
+ detail.RecommendType = KittingIssueRequestDetail.RecommendType;
+ detail.ProdLine = KittingIssueRequestDetail.ProdLine;
- detail.ItemCode = kittingIssueRequestDetail.ItemCode;
- detail.ItemName = kittingIssueRequestDetail.ItemName;
- detail.ItemDesc1 = kittingIssueRequestDetail.ItemDesc1;
- detail.ItemDesc2 = kittingIssueRequestDetail.ItemDesc2;
+ detail.ItemCode = KittingIssueRequestDetail.ItemCode;
+ detail.ItemName = KittingIssueRequestDetail.ItemName;
+ detail.ItemDesc1 = KittingIssueRequestDetail.ItemDesc1;
+ detail.ItemDesc2 = KittingIssueRequestDetail.ItemDesc2;
detail.Status = EnumInventoryStatus.OK;
detail.Uom = balance.Uom;
@@ -471,11 +482,11 @@ public class KittingIssueRequestEventHandler
detail.RecommendToProduceDate = balance.ProduceDate;
detail.RecommendToArriveDate = balance.ArriveDate;
- detail.RecommendToLocationCode = kittingIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = kittingIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = kittingIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = kittingIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = kittingIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = KittingIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = KittingIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = KittingIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = KittingIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = KittingIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -487,26 +498,26 @@ public class KittingIssueRequestEventHandler
//创建任务
private async Task> CreateAllKittingIssueJobAsync(
- KittingIssueRequest kittingIssueRequest)
+ KittingIssueRequest KittingIssueRequest)
{
- var kittingIssueJobEditInputs = new List();
+ var KittingIssueJobEditInputs = new List();
//已用的库存的集合
var useBalanceList = new List();
- foreach (var groupbyItemCodeAndProdLine in kittingIssueRequest.Details.GroupBy(p =>
+ foreach (var groupbyItemCodeAndProdLine in KittingIssueRequest.Details.GroupBy(p =>
new { p.ItemCode }))
{
- foreach (var kittingIssueRequestDetail in groupbyItemCodeAndProdLine)
+ foreach (var KittingIssueRequestDetail in groupbyItemCodeAndProdLine)
{
var productionLineItemDto = await _productionLineItemAppService.GetByProductLineCodeAndItemCodeAsync(
- kittingIssueRequestDetail.ProdLine,
+ KittingIssueRequestDetail.ProdLine,
groupbyItemCodeAndProdLine.Key.ItemCode).ConfigureAwait(false);
if (productionLineItemDto == null)
{
throw new UserFriendlyException(
- $"未在生产线物品关系表中维护【{kittingIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
+ $"未在生产线物品关系表中维护【{KittingIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
}
//原料
@@ -519,7 +530,7 @@ public class KittingIssueRequestEventHandler
//获取可用库存
var input = new RecommendBalanceRequestInput
{
- ItemCode = kittingIssueRequestDetail.ItemCode,
+ ItemCode = KittingIssueRequestDetail.ItemCode,
Qty = decimal.MaxValue,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
@@ -530,14 +541,14 @@ public class KittingIssueRequestEventHandler
var sortByFifoAsync = await SortByFifoAsync(usableList).ConfigureAwait(false);
//因为是按箱叫料 先把值赋值给箱数量上
- kittingIssueRequestDetail.BoxQty = kittingIssueRequestDetail.Qty;
+ KittingIssueRequestDetail.BoxQty = KittingIssueRequestDetail.Qty;
if (usableList.Any())
{
//因为是原料所以按箱叫料
- kittingIssueJobEditInputs.AddRange(
- await CreateKittingIssueJobWithBoxQtyTypeAsync(kittingIssueRequest,
- new EditableList { kittingIssueRequestDetail },
+ KittingIssueJobEditInputs.AddRange(
+ await CreateKittingIssueJobWithBoxQtyTypeAsync(KittingIssueRequest,
+ new EditableList { KittingIssueRequestDetail },
sortByFifoAsync,
useBalanceList).ConfigureAwait(false));
}
@@ -555,7 +566,7 @@ public class KittingIssueRequestEventHandler
var input = new RecommendBalanceRequestInput
{
ItemCode = groupbyItemCodeAndProdLine.Key.ItemCode,
- Qty = kittingIssueRequestDetail.Qty,
+ Qty = KittingIssueRequestDetail.Qty,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
JsonSerializer.Deserialize>(productionLineItemDto
@@ -581,22 +592,23 @@ public class KittingIssueRequestEventHandler
}
}
- kittingIssueJobEditInputs.AddRange(
- await CreateKittingIssueJobWithQtyTypeAsync(kittingIssueRequest,
- new List { kittingIssueRequestDetail }, temp,
+ KittingIssueJobEditInputs.AddRange(
+ await CreateKittingIssueJobWithQtyTypeAsync(KittingIssueRequest,
+ new List { KittingIssueRequestDetail }, temp,
useBalanceList).ConfigureAwait(false));
}
}
}
}
- if (kittingIssueJobEditInputs.Count > 0) //有库存 可以创建任务
+ if (KittingIssueJobEditInputs.Count > 0) //有库存 可以创建任务
{
//新增任务
- var addKittingIssueJobDtos = await _kittingIssueJobAppService.CreateManyAsync(kittingIssueJobEditInputs)
+ var addKittingIssueJobDtos = await _KittingIssueJobAppService
+ .CreateManyAsync(KittingIssueJobEditInputs)
.ConfigureAwait(false);
- await UpdateKittingIssueRequestDetailQtyAsync(kittingIssueRequest, addKittingIssueJobDtos)
+ await UpdateKittingIssueRequestDetailQtyAsync(KittingIssueRequest, addKittingIssueJobDtos)
.ConfigureAwait(false);
return addKittingIssueJobDtos;
@@ -608,15 +620,15 @@ public class KittingIssueRequestEventHandler
///
/// 修改请求的 已发 已收数量
///
- ///
+ ///
///
///
- private async Task UpdateKittingIssueRequestDetailQtyAsync(KittingIssueRequest kittingIssueRequest,
+ private async Task UpdateKittingIssueRequestDetailQtyAsync(KittingIssueRequest KittingIssueRequest,
List addKittingIssueJobDtos)
{
//原有任务
- var existKittingIssueJobDtos = await _kittingIssueJobAppService
- .GetByRequestNumberAsync(kittingIssueRequest.Number)
+ var existKittingIssueJobDtos = await _KittingIssueJobAppService
+ .GetByRequestNumberAsync(KittingIssueRequest.Number)
.ConfigureAwait(false);
//新增的任务和已有的任务总和
@@ -624,7 +636,7 @@ public class KittingIssueRequestEventHandler
allKittingIssueJobDtos.AddRange(addKittingIssueJobDtos);
allKittingIssueJobDtos.AddRange(existKittingIssueJobDtos);
- var groupByItemCodeLocationCode = kittingIssueRequest.Details.GroupBy(p =>
+ var groupByItemCodeLocationCode = KittingIssueRequest.Details.GroupBy(p =>
new { p.ItemCode, p.ToLocationCode });
foreach (var group in groupByItemCodeLocationCode)
{
@@ -650,6 +662,8 @@ public class KittingIssueRequestEventHandler
requestDetail.ReceivedQty = allReceivedQty;
}
}
+
+ await KittingIssueRequestManager.UpdateByEntityAsync(KittingIssueRequest).ConfigureAwait(false);
}
///
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/SparePartIssueRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/SparePartIssueRequestEventHandler.cs
index 640d8698f..30c996fe6 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/SparePartIssueRequestEventHandler.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/IssueRequest/SparePartIssueRequestEventHandler.cs
@@ -14,6 +14,7 @@ using Win_in.Sfs.Shared.Event;
using Win_in.Sfs.Wms.Inventory.Application.Contracts;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
+using Win_in.Sfs.Wms.Store.Domain.Acl.Balance;
namespace Win_in.Sfs.Wms.Store.Event.BusinessRequest;
@@ -25,20 +26,21 @@ public class SparePartIssueRequestEventHandler
, ILocalEventHandler>
, ILocalEventHandler>>
{
- private readonly ISparePartIssueJobAppService _sparePartIssueJobAppService;
+ private readonly ISparePartIssueJobAppService _SparePartIssueJobAppService;
private readonly IProductionLineAppService _productionLineAppService;
private readonly IProductionLineItemAppService _productionLineItemAppService;
private readonly ILocationAppService _locationAppService;
private readonly IBalanceAppService _balanceAppService;
+ protected ISparePartIssueRequestManager SparePartIssueRequestManager => LazyServiceProvider.LazyGetRequiredService();
private IMapper _mapper;
public SparePartIssueRequestEventHandler(
- ISparePartIssueJobAppService sparePartIssueJobAppService, IProductionLineAppService productionLineAppService,
+ ISparePartIssueJobAppService SparePartIssueJobAppService, IProductionLineAppService productionLineAppService,
ILocationAppService locationAppService,
IBalanceAppService balanceAppService, IProductionLineItemAppService productionLineItemAppService
)
{
- _sparePartIssueJobAppService = sparePartIssueJobAppService;
+ _SparePartIssueJobAppService = SparePartIssueJobAppService;
_productionLineAppService = productionLineAppService;
_locationAppService = locationAppService;
_balanceAppService = balanceAppService;
@@ -95,7 +97,7 @@ public class SparePartIssueRequestEventHandler
public virtual async Task HandleEventAsync(SfsCompletedEntityEventData eventData)
{
_ = eventData.Entity;
- // await _sparePartIssueJobAppService.CompleteBySparePartIssueRequestAsync(entity.Number);
+ // await _SparePartIssueJobAppService.CompleteBySparePartIssueRequestAsync(entity.Number);
await Task.CompletedTask.ConfigureAwait(false);
}
@@ -107,14 +109,14 @@ public class SparePartIssueRequestEventHandler
///
/// 创建注塑任务-按数量
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateSparePartIssueJobWithQtyTypeAsync
- (SparePartIssueRequest sparePartIssueRequest, List sparePartIssueRequestDetails,
+ (SparePartIssueRequest SparePartIssueRequest, List SparePartIssueRequestDetails,
List recommendbalanceDtos,
List useBalanceList)
{
@@ -122,9 +124,9 @@ public class SparePartIssueRequestEventHandler
//用来临时存放所有未生成任务的发料集合 如果生成完了再这里去掉
var tempDetailDtos =
ObjectMapper.Map, List>(
- sparePartIssueRequestDetails);
+ SparePartIssueRequestDetails);
- var sparePartIssueJobDetailInputs = new List();
+ var SparePartIssueJobDetailInputs = new List();
if (recommendbalanceDtos != null && recommendbalanceDtos.Count > 0)
{
@@ -138,7 +140,9 @@ public class SparePartIssueRequestEventHandler
foreach (var tempDetailDto in tempDetailDtos)
{
//未发送的数量
- tempDetailDto.Qty = tempDetailDto.Qty - tempDetailDto.IssuedQty;
+ tempDetailDto.Qty = tempDetailDto.Qty > tempDetailDto.IssuedQty ?
+ tempDetailDto.Qty - tempDetailDto.IssuedQty :
+ 0;
if (tempDetailDto.Qty > balanceDto.Qty) //需求量大于 这条推荐库存的余额
{
@@ -150,7 +154,7 @@ public class SparePartIssueRequestEventHandler
balanceDto.Qty = tempDetailDto.Qty;
}
- sparePartIssueJobDetailInputs.Add(
+ SparePartIssueJobDetailInputs.Add(
await BuildSparePartIssueJobDetailWithQtyTypeAsync(tempDetailDto, balanceDto)
.ConfigureAwait(false));
useBalanceList.Add(balanceDto);
@@ -170,12 +174,18 @@ public class SparePartIssueRequestEventHandler
}
}
- if (sparePartIssueJobDetailInputs.Any())
+ if (SparePartIssueJobDetailInputs.Any())
{
- var sparePartIssueJobEditInput = await BuildSparePartIssueJobCreateInputWithQtyTypeAsync(sparePartIssueRequest,
- sparePartIssueRequestDetails.First()).ConfigureAwait(false);
- sparePartIssueJobEditInput.Details = sparePartIssueJobDetailInputs;
- jobs.Add(sparePartIssueJobEditInput);
+ var SparePartIssueJobEditInput = await BuildSparePartIssueJobCreateInputWithQtyTypeAsync(
+ SparePartIssueRequest,
+ SparePartIssueRequestDetails.First()).ConfigureAwait(false);
+ SparePartIssueJobEditInput.Details = SparePartIssueJobDetailInputs;
+
+ SparePartIssueJobEditInput.Details = SparePartIssueJobEditInput.Details.Where(p => p.RecommendFromQty > 0).ToList();
+ if (SparePartIssueJobEditInput.Details != null && SparePartIssueJobEditInput.Details.Any())
+ {
+ jobs.Add(SparePartIssueJobEditInput);
+ }
}
return jobs;
@@ -184,19 +194,19 @@ public class SparePartIssueRequestEventHandler
///
/// 构造注塑任务-按数量
///
- ///
+ ///
///
///
private async Task BuildSparePartIssueJobCreateInputWithQtyTypeAsync(
- SparePartIssueRequest sparePartIssueRequest, SparePartIssueRequestDetail requestDetailInput)
+ SparePartIssueRequest SparePartIssueRequest, SparePartIssueRequestDetail requestDetailInput)
{
- var job = ObjectMapper.Map(sparePartIssueRequest);
+ var job = ObjectMapper.Map(SparePartIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
job.WorkGroupCode = requestDetailInput.ToLocationGroup;
job.WarehouseCode = requestDetailInput.ToWarehouseCode;
- job.Worker = sparePartIssueRequest.Worker;
- job.SparePartRequestNumber = sparePartIssueRequest.Number;
+ job.Worker = SparePartIssueRequest.Worker;
+ job.SparePartRequestNumber = SparePartIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.QtyType;
await Task.CompletedTask.ConfigureAwait(false);
@@ -207,31 +217,31 @@ public class SparePartIssueRequestEventHandler
///
/// 构造注塑任务明细-按数量
///
- ///
+ ///
///
///
private async Task BuildSparePartIssueJobDetailWithQtyTypeAsync(
- SparePartIssueRequestDetailDTO sparePartIssueRequestDetail, BalanceDTO balance)
+ SparePartIssueRequestDetailDTO SparePartIssueRequestDetail, BalanceDTO balance)
{
var detail = new SparePartIssueJobDetailInput();
- detail.RequestLocationCode = sparePartIssueRequestDetail.ToLocationCode;
- detail.PositionCode = sparePartIssueRequestDetail.PositionCode;
- detail.RecommendType = sparePartIssueRequestDetail.RecommendType;
+ detail.RequestLocationCode = SparePartIssueRequestDetail.ToLocationCode;
+ detail.PositionCode = SparePartIssueRequestDetail.PositionCode;
+ detail.RecommendType = SparePartIssueRequestDetail.RecommendType;
detail.Uom = balance.Uom;
detail.ItemCode = balance.ItemCode;
detail.ItemDesc2 = balance.ItemDesc2;
detail.ItemDesc1 = balance.ItemDesc1;
detail.ItemName = balance.ItemName;
- detail.ProdLine = sparePartIssueRequestDetail.ProdLine;
+ detail.ProdLine = SparePartIssueRequestDetail.ProdLine;
detail.RequestQty = balance.Qty;
- detail.StdPackQty = sparePartIssueRequestDetail.StdPackQty;
+ detail.StdPackQty = SparePartIssueRequestDetail.StdPackQty;
detail.Status = balance.Status;
- detail.RequestLocationErpCode = sparePartIssueRequestDetail.ToLocationErpCode;
- detail.RequestLocationArea = sparePartIssueRequestDetail.ToLocationArea;
- detail.RequestWarehouseCode = sparePartIssueRequestDetail.ToWarehouseCode;
- detail.RequestLocationGroup = sparePartIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationCode = sparePartIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationErpCode = SparePartIssueRequestDetail.ToLocationErpCode;
+ detail.RequestLocationArea = SparePartIssueRequestDetail.ToLocationArea;
+ detail.RequestWarehouseCode = SparePartIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationGroup = SparePartIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationCode = SparePartIssueRequestDetail.ToLocationCode;
detail.RecommendFromPackingCode = balance.PackingCode;
detail.RecommendFromContainerCode = balance.ContainerCode;
@@ -263,11 +273,11 @@ public class SparePartIssueRequestEventHandler
detail.RecommendFromLocationGroup = balance.LocationGroup;
detail.RecommendFromWarehouseCode = balance.WarehouseCode;
- detail.RecommendToLocationCode = sparePartIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = sparePartIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = sparePartIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = sparePartIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = sparePartIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = SparePartIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = SparePartIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = SparePartIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = SparePartIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = SparePartIssueRequestDetail.ToLocationGroup;
detail.TransferLibFromPackingCode = balance.PackingCode;
detail.TransferLibFromContainerCode = balance.ContainerCode;
@@ -298,11 +308,11 @@ public class SparePartIssueRequestEventHandler
detail.TransferLibFromLocationGroup = balance.LocationGroup;
detail.TransferLibFromWarehouseCode = balance.WarehouseCode;
- detail.TransferLibToLocationCode = sparePartIssueRequestDetail.ToLocationCode;
- detail.TransferLibToLocationErpCode = sparePartIssueRequestDetail.ToLocationErpCode;
- detail.TransferLibToLocationArea = sparePartIssueRequestDetail.ToLocationArea;
- detail.TransferLibToWarehouseCode = sparePartIssueRequestDetail.ToWarehouseCode;
- detail.TransferLibToLocationGroup = sparePartIssueRequestDetail.ToLocationGroup;
+ detail.TransferLibToLocationCode = SparePartIssueRequestDetail.ToLocationCode;
+ detail.TransferLibToLocationErpCode = SparePartIssueRequestDetail.ToLocationErpCode;
+ detail.TransferLibToLocationArea = SparePartIssueRequestDetail.ToLocationArea;
+ detail.TransferLibToWarehouseCode = SparePartIssueRequestDetail.ToWarehouseCode;
+ detail.TransferLibToLocationGroup = SparePartIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -315,28 +325,28 @@ public class SparePartIssueRequestEventHandler
///
/// 创建注塑任务 按箱叫料-按箱
///
- ///
- ///
+ ///
+ ///
///
///
///
///
private async Task> CreateSparePartIssueJobWithBoxQtyTypeAsync
(
- SparePartIssueRequest sparePartIssueRequest,
- List sparePartIssueRequestDetailList,
+ SparePartIssueRequest SparePartIssueRequest,
+ List SparePartIssueRequestDetailList,
List recommendbalanceDtos,
List useBalanceList)
{
var inputJobs = new List();
- var jobs = await _sparePartIssueJobAppService.GetByRequestNumberAsync(sparePartIssueRequest.Number)
+ var jobs = await _SparePartIssueJobAppService.GetByRequestNumberAsync(SparePartIssueRequest.Number)
.ConfigureAwait(false);
- foreach (var detail in sparePartIssueRequestDetailList)
+ foreach (var detail in SparePartIssueRequestDetailList)
{
//当前物品的集合
- var inputDetails = sparePartIssueRequestDetailList;
+ var inputDetails = SparePartIssueRequestDetailList;
//获取请求下 这个物品和这个库位一个需要多少箱
var sumBoxQty = inputDetails.Sum(p => p.BoxQty - jobs.Count);
//获取生产线
@@ -354,7 +364,8 @@ public class SparePartIssueRequestEventHandler
//可用库存
var usableList = recommendbalanceDtos;
- usableList = usableList.Where(p => !useBalanceList.Select(p => p.PackingCode).Contains(p.PackingCode))
+ usableList = usableList.Where(p =>
+ !useBalanceList.Select(balanceDto => balanceDto.PackingCode).Contains(p.PackingCode))
.ToList();
if (usableList.Any())
{
@@ -366,12 +377,12 @@ public class SparePartIssueRequestEventHandler
useBalanceList.Add(firstUsable);
usableList.Remove(firstUsable);
- var sparePartIssueJobEditInput =
- await BuildSparePartIssueJobCreateInputWithBoxQtyTypeAsync(sparePartIssueRequest,
+ var SparePartIssueJobEditInput =
+ await BuildSparePartIssueJobCreateInputWithBoxQtyTypeAsync(SparePartIssueRequest,
detail, firstUsable)
.ConfigureAwait(false);
- inputJobs.Add(sparePartIssueJobEditInput);
+ inputJobs.Add(SparePartIssueJobEditInput);
}
else
{
@@ -387,24 +398,24 @@ public class SparePartIssueRequestEventHandler
///
/// 构造注塑任务-按箱
///
- ///
- ///
+ ///
+ ///
///
///
private async Task BuildSparePartIssueJobCreateInputWithBoxQtyTypeAsync(
- SparePartIssueRequest sparePartIssueRequest,
- SparePartIssueRequestDetail sparePartIssueRequestDetail, BalanceDTO balanceDtos)
+ SparePartIssueRequest SparePartIssueRequest,
+ SparePartIssueRequestDetail SparePartIssueRequestDetail, BalanceDTO balanceDtos)
{
- var job = ObjectMapper.Map(sparePartIssueRequest);
+ var job = ObjectMapper.Map(SparePartIssueRequest);
job.JobType = EnumJobType.IssueJob;
job.JobStatus = EnumJobStatus.Open;
- job.WorkGroupCode = sparePartIssueRequestDetail.ToLocationGroup;
- job.WarehouseCode = sparePartIssueRequestDetail.ToWarehouseCode;
- job.Worker = sparePartIssueRequest.Worker;
- job.SparePartRequestNumber = sparePartIssueRequest.Number;
+ job.WorkGroupCode = SparePartIssueRequestDetail.ToLocationGroup;
+ job.WarehouseCode = SparePartIssueRequestDetail.ToWarehouseCode;
+ job.Worker = SparePartIssueRequest.Worker;
+ job.SparePartRequestNumber = SparePartIssueRequest.Number;
job.EnumIssueSendType = EnumIssueSendType.BoxQtyType;
- job.Details.Add(await BuildSparePartIssueJobDetailWithBoxQtyTypeAsync(sparePartIssueRequestDetail, balanceDtos)
+ job.Details.Add(await BuildSparePartIssueJobDetailWithBoxQtyTypeAsync(SparePartIssueRequestDetail, balanceDtos)
.ConfigureAwait(false));
await Task.CompletedTask.ConfigureAwait(false);
@@ -415,28 +426,28 @@ public class SparePartIssueRequestEventHandler
///
/// 构造注塑任务明细-按箱
///
- ///
+ ///
///
///
private async Task BuildSparePartIssueJobDetailWithBoxQtyTypeAsync(
- SparePartIssueRequestDetail sparePartIssueRequestDetail, BalanceDTO balance)
+ SparePartIssueRequestDetail SparePartIssueRequestDetail, BalanceDTO balance)
{
var detail = new SparePartIssueJobDetailInput();
- detail.RequestLocationCode = sparePartIssueRequestDetail.ToLocationCode;
- detail.RequestLocationGroup = sparePartIssueRequestDetail.ToLocationGroup;
- detail.RequestLocationArea = sparePartIssueRequestDetail.ToLocationArea;
- detail.RequestLocationErpCode = sparePartIssueRequestDetail.ToLocationErpCode;
- detail.RequestWarehouseCode = sparePartIssueRequestDetail.ToWarehouseCode;
+ detail.RequestLocationCode = SparePartIssueRequestDetail.ToLocationCode;
+ detail.RequestLocationGroup = SparePartIssueRequestDetail.ToLocationGroup;
+ detail.RequestLocationArea = SparePartIssueRequestDetail.ToLocationArea;
+ detail.RequestLocationErpCode = SparePartIssueRequestDetail.ToLocationErpCode;
+ detail.RequestWarehouseCode = SparePartIssueRequestDetail.ToWarehouseCode;
detail.RequestQty = 1;
- detail.PositionCode = sparePartIssueRequestDetail.PositionCode;
- detail.RecommendType = sparePartIssueRequestDetail.RecommendType;
- detail.ProdLine = sparePartIssueRequestDetail.ProdLine;
+ detail.PositionCode = SparePartIssueRequestDetail.PositionCode;
+ detail.RecommendType = SparePartIssueRequestDetail.RecommendType;
+ detail.ProdLine = SparePartIssueRequestDetail.ProdLine;
- detail.ItemCode = sparePartIssueRequestDetail.ItemCode;
- detail.ItemName = sparePartIssueRequestDetail.ItemName;
- detail.ItemDesc1 = sparePartIssueRequestDetail.ItemDesc1;
- detail.ItemDesc2 = sparePartIssueRequestDetail.ItemDesc2;
+ detail.ItemCode = SparePartIssueRequestDetail.ItemCode;
+ detail.ItemName = SparePartIssueRequestDetail.ItemName;
+ detail.ItemDesc1 = SparePartIssueRequestDetail.ItemDesc1;
+ detail.ItemDesc2 = SparePartIssueRequestDetail.ItemDesc2;
detail.Status = EnumInventoryStatus.OK;
detail.Uom = balance.Uom;
@@ -471,11 +482,11 @@ public class SparePartIssueRequestEventHandler
detail.RecommendToProduceDate = balance.ProduceDate;
detail.RecommendToArriveDate = balance.ArriveDate;
- detail.RecommendToLocationCode = sparePartIssueRequestDetail.ToLocationCode;
- detail.RecommendToLocationErpCode = sparePartIssueRequestDetail.ToLocationErpCode;
- detail.RecommendToLocationArea = sparePartIssueRequestDetail.ToLocationArea;
- detail.RecommendToWarehouseCode = sparePartIssueRequestDetail.ToWarehouseCode;
- detail.RecommendToLocationGroup = sparePartIssueRequestDetail.ToLocationGroup;
+ detail.RecommendToLocationCode = SparePartIssueRequestDetail.ToLocationCode;
+ detail.RecommendToLocationErpCode = SparePartIssueRequestDetail.ToLocationErpCode;
+ detail.RecommendToLocationArea = SparePartIssueRequestDetail.ToLocationArea;
+ detail.RecommendToWarehouseCode = SparePartIssueRequestDetail.ToWarehouseCode;
+ detail.RecommendToLocationGroup = SparePartIssueRequestDetail.ToLocationGroup;
await Task.CompletedTask.ConfigureAwait(false);
return detail;
@@ -487,26 +498,26 @@ public class SparePartIssueRequestEventHandler
//创建任务
private async Task> CreateAllSparePartIssueJobAsync(
- SparePartIssueRequest sparePartIssueRequest)
+ SparePartIssueRequest SparePartIssueRequest)
{
- var sparePartIssueJobEditInputs = new List();
+ var SparePartIssueJobEditInputs = new List();
//已用的库存的集合
var useBalanceList = new List();
- foreach (var groupbyItemCodeAndProdLine in sparePartIssueRequest.Details.GroupBy(p =>
+ foreach (var groupbyItemCodeAndProdLine in SparePartIssueRequest.Details.GroupBy(p =>
new { p.ItemCode }))
{
- foreach (var sparePartIssueRequestDetail in groupbyItemCodeAndProdLine)
+ foreach (var SparePartIssueRequestDetail in groupbyItemCodeAndProdLine)
{
var productionLineItemDto = await _productionLineItemAppService.GetByProductLineCodeAndItemCodeAsync(
- sparePartIssueRequestDetail.ProdLine,
+ SparePartIssueRequestDetail.ProdLine,
groupbyItemCodeAndProdLine.Key.ItemCode).ConfigureAwait(false);
if (productionLineItemDto == null)
{
throw new UserFriendlyException(
- $"未在生产线物品关系表中维护【{sparePartIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
+ $"未在生产线物品关系表中维护【{SparePartIssueRequestDetail.ProdLine}】物品【{groupbyItemCodeAndProdLine.Key.ItemCode}】的关系,请配置【生产线物品关系】");
}
//原料
@@ -519,7 +530,7 @@ public class SparePartIssueRequestEventHandler
//获取可用库存
var input = new RecommendBalanceRequestInput
{
- ItemCode = sparePartIssueRequestDetail.ItemCode,
+ ItemCode = SparePartIssueRequestDetail.ItemCode,
Qty = decimal.MaxValue,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
@@ -530,14 +541,14 @@ public class SparePartIssueRequestEventHandler
var sortByFifoAsync = await SortByFifoAsync(usableList).ConfigureAwait(false);
//因为是按箱叫料 先把值赋值给箱数量上
- sparePartIssueRequestDetail.BoxQty = sparePartIssueRequestDetail.Qty;
+ SparePartIssueRequestDetail.BoxQty = SparePartIssueRequestDetail.Qty;
if (usableList.Any())
{
//因为是原料所以按箱叫料
- sparePartIssueJobEditInputs.AddRange(
- await CreateSparePartIssueJobWithBoxQtyTypeAsync(sparePartIssueRequest,
- new EditableList { sparePartIssueRequestDetail },
+ SparePartIssueJobEditInputs.AddRange(
+ await CreateSparePartIssueJobWithBoxQtyTypeAsync(SparePartIssueRequest,
+ new EditableList { SparePartIssueRequestDetail },
sortByFifoAsync,
useBalanceList).ConfigureAwait(false));
}
@@ -555,7 +566,7 @@ public class SparePartIssueRequestEventHandler
var input = new RecommendBalanceRequestInput
{
ItemCode = groupbyItemCodeAndProdLine.Key.ItemCode,
- Qty = sparePartIssueRequestDetail.Qty,
+ Qty = SparePartIssueRequestDetail.Qty,
Statuses = new EditableList { EnumInventoryStatus.OK },
Locations =
JsonSerializer.Deserialize>(productionLineItemDto
@@ -581,22 +592,23 @@ public class SparePartIssueRequestEventHandler
}
}
- sparePartIssueJobEditInputs.AddRange(
- await CreateSparePartIssueJobWithQtyTypeAsync(sparePartIssueRequest,
- new List { sparePartIssueRequestDetail }, temp,
+ SparePartIssueJobEditInputs.AddRange(
+ await CreateSparePartIssueJobWithQtyTypeAsync(SparePartIssueRequest,
+ new List { SparePartIssueRequestDetail }, temp,
useBalanceList).ConfigureAwait(false));
}
}
}
}
- if (sparePartIssueJobEditInputs.Count > 0) //有库存 可以创建任务
+ if (SparePartIssueJobEditInputs.Count > 0) //有库存 可以创建任务
{
//新增任务
- var addSparePartIssueJobDtos = await _sparePartIssueJobAppService.CreateManyAsync(sparePartIssueJobEditInputs)
+ var addSparePartIssueJobDtos = await _SparePartIssueJobAppService
+ .CreateManyAsync(SparePartIssueJobEditInputs)
.ConfigureAwait(false);
- await UpdateSparePartIssueRequestDetailQtyAsync(sparePartIssueRequest, addSparePartIssueJobDtos)
+ await UpdateSparePartIssueRequestDetailQtyAsync(SparePartIssueRequest, addSparePartIssueJobDtos)
.ConfigureAwait(false);
return addSparePartIssueJobDtos;
@@ -608,15 +620,15 @@ public class SparePartIssueRequestEventHandler
///
/// 修改请求的 已发 已收数量
///
- ///
+ ///
///
///
- private async Task UpdateSparePartIssueRequestDetailQtyAsync(SparePartIssueRequest sparePartIssueRequest,
+ private async Task UpdateSparePartIssueRequestDetailQtyAsync(SparePartIssueRequest SparePartIssueRequest,
List addSparePartIssueJobDtos)
{
//原有任务
- var existSparePartIssueJobDtos = await _sparePartIssueJobAppService
- .GetByRequestNumberAsync(sparePartIssueRequest.Number)
+ var existSparePartIssueJobDtos = await _SparePartIssueJobAppService
+ .GetByRequestNumberAsync(SparePartIssueRequest.Number)
.ConfigureAwait(false);
//新增的任务和已有的任务总和
@@ -624,7 +636,7 @@ public class SparePartIssueRequestEventHandler
allSparePartIssueJobDtos.AddRange(addSparePartIssueJobDtos);
allSparePartIssueJobDtos.AddRange(existSparePartIssueJobDtos);
- var groupByItemCodeLocationCode = sparePartIssueRequest.Details.GroupBy(p =>
+ var groupByItemCodeLocationCode = SparePartIssueRequest.Details.GroupBy(p =>
new { p.ItemCode, p.ToLocationCode });
foreach (var group in groupByItemCodeLocationCode)
{
@@ -650,6 +662,8 @@ public class SparePartIssueRequestEventHandler
requestDetail.ReceivedQty = allReceivedQty;
}
}
+
+ await SparePartIssueRequestManager.UpdateByEntityAsync(SparePartIssueRequest).ConfigureAwait(false);
}
///
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductReceiptRequestEventHandler.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductReceiptRequestEventHandler.cs
index cbbbeeabe..f6f61f6cb 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductReceiptRequestEventHandler.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Requests/ProductReceiptRequestEventHandler.cs
@@ -181,6 +181,8 @@ public class ProductReceiptRequestEventHandler
{
var note = ObjectMapper.Map(request);
+ note.ReceiptType = EnumReceiptType.ProductReceiptRequest;
+
if (!Enum.TryParse(note.Type, true, out EnumTransSubType transSubType))
{
throw new UserFriendlyException($"{note.Type} 不是有效的子事务类型");
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/StoreEventAutoMapperProfile.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/StoreEventAutoMapperProfile.cs
index 7c38d07dd..74c004982 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/StoreEventAutoMapperProfile.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/StoreEventAutoMapperProfile.cs
@@ -119,6 +119,7 @@ public partial class StoreEventAutoMapperProfile : Profile
CoatingIssueJobAutoMapperProfile();
CoatingIssueNoteAutoMapperProfile();
CoatingIssueRequestAutoMapperProfile();
+ SparePartIssueNoteAutoMapperProfile();
MesNoteAutoMapperProfile();
}
diff --git a/build/src/docker/publish/conf/settings/appsettings.Development.json b/build/src/docker/publish/conf/settings/appsettings.Development.json
index c9e77bfc5..54cd1daea 100644
--- a/build/src/docker/publish/conf/settings/appsettings.Development.json
+++ b/build/src/docker/publish/conf/settings/appsettings.Development.json
@@ -117,8 +117,8 @@
//"BaseUrl": "http://localhost:59093/"
},
"BaseData": {
- "BaseUrl": "http://dev.ccwin-in.com:60084/"
- //"BaseUrl": "http://localhost:59094/"
+ //"BaseUrl": "http://dev.ccwin-in.com:60084/"
+ "BaseUrl": "http://localhost:59094/"
},
"Default": {
"BaseUrl": "http://dev.ccwin-in.com:60083/"