Browse Source

修改

dev_DY_CC
郑勃旭 11 months ago
parent
commit
a8fc6bf952
  1. 38
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Client/WebApi.cs
  2. 132
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs
  3. 1
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.csproj
  4. 2
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs
  5. 2
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/TyrpAgentModule.cs
  6. 2
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/appsettings.json
  7. 2
      be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/Properties/launchSettings.json
  8. 2
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ProductionLines/ProductionLineAppService.cs
  9. 4
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PurchasePrices/PurchasePriceSheetAutoMapperProfile.cs
  10. 4
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SalePrices/SalePriceSheetAutoMapperProfile.cs
  11. 4
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/StdCostPrices/StdCostPriceSheetAutoMapperProfile.cs
  12. 3
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/RecycledMaterialReceiptNotes/RecycledMaterialReceiptNoteAppService.cs
  13. 32
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Orders/PurchaseOrders/PurchaseOrderAppService.cs
  14. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs
  15. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/DataExchanges/RecycledMaterialReceiptNoteEventHandler.cs
  16. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ItemTransformNoteEventHandler.cs
  17. 4
      build/src/docker/publish/conf/settings/appsettings.Development.json

38
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Client/WebApi.cs

@ -535,6 +535,44 @@ namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.Incoming
}
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class ResponCargoItem1
{
/// <summary>
/// 读取次数
/// </summary>
[Newtonsoft.Json.JsonProperty("number", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public string Number { get; set; }
/// <summary>
/// 区域ID
/// </summary>
[Newtonsoft.Json.JsonProperty("areaID", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public string AreaID { get; set; }
/// <summary>
/// 货位号
/// </summary>
[Newtonsoft.Json.JsonProperty("cargoID", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public string CargoID { get; set; }
/// <summary>
/// 零件号
/// </summary>
[Newtonsoft.Json.JsonProperty("partCode", Required = Newtonsoft.Json.Required.Default, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public string PartCode { get; set; }
/// <summary>
/// 货位状态
/// </summary>
[Newtonsoft.Json.JsonProperty("flag", Required = Newtonsoft.Json.Required.DisallowNull, NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore)]
public int Flag { get; set; }
}
[System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]

132
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs

@ -23,6 +23,9 @@ using System.Net.NetworkInformation;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Store;
using System.Threading;
using System.Diagnostics;
using System.Reflection;
using Microsoft.Extensions.Primitives;
using Win_in.Sfs.Shared.Application;
namespace Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.Incoming;
public class InjectionMoldingRequestReader : IReader
@ -67,55 +70,89 @@ public class InjectionMoldingRequestReader : IReader
#if DEBUG
_options.Value.AutoRemote.TimeCycle = 1;
_options.Value.AutoRemote.Interval = 2;
#endif
// var sleepTime = (_options.Value.AutoRemote.TimeCycle*60/ _options.Value.AutoRemote.Interval)-10;
var invterval = _options.Value.AutoRemote.Interval;
var guid = DateTime.Now.ToString("yyyyMMddHHmmssfff");
Stopwatch sw = Stopwatch.StartNew();
Client client = new Client(_options.Value.AutoRemote.IpAddress, _httpClientFactory.CreateClient());//调用客户记录
var flag = await client.GetMacStaticAsync().ConfigureAwait(false);
if (flag != 1)
{
// 记录错误日志并返回空列表
_logger.LogInformation($"读取到摄像头信息为不可用{DateTime.Now},请检查摄像头");
return new List<IncomingFromExternal>();
}
if (string.IsNullOrEmpty(_options.Value.AutoRemote.AreaIDs))
{
_logger.LogInformation($"没有设置指定区域AutoRemote->AreaIDs");
return new List<IncomingFromExternal>();
}
var ids = _options.Value.AutoRemote.AreaIDs.Split(",");
List<ResponCargoItem> camralist = new List<ResponCargoItem>();
List<ResponCargoItem1> camralist1 = new List<ResponCargoItem1>();
for (int i = 1; i <= invterval; i++)
{
foreach (var itm in ids)//遍历区域查找所有货物
{
var idsList = await client.GetCargoStaticAsync(itm).ConfigureAwait(false);
Thread.Sleep(1000);//设备读取50ms延时,设置延时时间为1000ms保证读取更新到信息
//flag 1-有货 0-空闲
foreach (var respon in idsList.Where(r => r.Flag == 0))
{
var response = new ResponCargoItem1();
response.FromObject(respon);
response.Number = $"第{i.ToString()}次读取";
camralist1.Add(response);
}
camralist.AddRange(idsList.Where(r => r.Flag == 0));
}
_logger.LogInformation($"读取标识{guid}读取成功次数{i},耗时 {sw.ElapsedMilliseconds}毫秒");
}
_logger.LogInformation($"标识{guid}读取{invterval}次接口表:{System.Text.Json.JsonSerializer.Serialize(camralist1)}");
_logger.LogInformation(MakeGrid($"标识{guid}读取{invterval}次接口表",camralist1));
sw.Stop();
Thread.Sleep(1000);
//按区域、货位号、零件、标志
var group= camralist.GroupBy(r => new { r.AreaID, r.CargoID, r.PartCode, r.Flag });
//获取和次数相等的空闲数据
var list = group.Where(r => r.Count() == invterval).ToList();
var errorlist= group.Where(r => r.Count() != invterval).ToList();
if (errorlist.Count > 0)
{
_logger.LogInformation($"标识{guid}不能同步内容JSON:{System.Text.Json.JsonSerializer.Serialize(errorlist.Select(r => r.Key).ToList())}");
_logger.LogInformation(MakeGrid($"标识{guid}不能同步内容", errorlist));
}
//如果有货位空闲
if (list.Count>0)
{
sw = Stopwatch.StartNew();
sw = Stopwatch.StartNew();
_logger.LogInformation($"开始标识{guid}同步WMS开始");
List<UnCompletedRequestDto> inputdetail = new List<UnCompletedRequestDto>();
foreach (var item in list.Select(r=>r.Key).ToList())
@ -137,11 +174,15 @@ public class InjectionMoldingRequestReader : IReader
select itm;
var injectionList = query.ToList();//已经完成的记录
_logger.LogInformation($"标识{guid}同步WMS内容:{System.Text.Json.JsonSerializer.Serialize(injectionList)}");
_logger.LogInformation(MakeGrid($"{guid}同步WMS内容", injectionList));
foreach (var inject in injectionList)
{
List<InjectionRequest> cameraList = new List<InjectionRequest>();
InjectionIssueRequestEditInput input = new InjectionIssueRequestEditInput();
input.Worker = "Vision";
input.IssueRequestType = EnumIssueRequestType.Vision;
@ -249,7 +290,7 @@ public class InjectionMoldingRequestReader : IReader
{
// 获取对应零件信息
var itm = await _itemService.GetByCodeAsync(request.ItemCode).ConfigureAwait(false);
if (itm == null) { errors.Add($"编号:{request.ItemCode}零件表中没找到!"); }
if (itm == null) { errors.Add($"编号:{request.ItemCode}零件表中没找到,请维护零件表!"); }
else
{
// 更新请求中的零件描述和名称
@ -260,7 +301,7 @@ public class InjectionMoldingRequestReader : IReader
}
// 获取对应库位信息
var loc = await _locService.GetByCodeAsync(request.ToLocationCode).ConfigureAwait(false);
if (loc == null) { errors.Add($"编号:{request.ToLocationCode}库位表中没找到!"); }
if (loc == null) { errors.Add($"编号:{request.ToLocationCode}库位表中没找到,请维护库位表!"); }
else
{
@ -357,14 +398,79 @@ public class InjectionMoldingRequestReader : IReader
public decimal Qty { get; set; }
}
private string MakeGrid<T>(string header,List<T> p_list) where T : class
{
StringBuilder sb = new StringBuilder();
sb.AppendLine(header);
int rows = p_list.Count;
var first = p_list.First();
var properties = first.GetType().GetProperties();
int columns = properties.Length;
var columNames = first.GetType().GetProperties().ToList().Select(p => p.Name).ToList();
int cellWidth = 20; // 每个单元格的宽度
List<string> contents = new List<string>();
for (int i = 0; i < rows; i++)
{
var row = p_list[i];
foreach (PropertyInfo property in properties)
{
// 使用反射获取属性值
contents.Add(property.GetValue(row).ToString());
}
}
// 输出列头
for (int j = 0; j < columns; j++)
{
sb.Append("|");
sb.Append(FormatCell(columNames[j], cellWidth));
}
sb.Append("|");
sb.AppendLine();
// 输出列头分隔线
for (int k = 0; k < columns * (cellWidth + 1) + 1; k++)
{
sb.Append("-");
}
sb.AppendLine();
// 输出网格内容
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < columns; j++)
{
sb.Append("|");
sb.Append(FormatCell(contents[i * columns + j], cellWidth));
}
sb.Append("|");
sb.AppendLine();
}
return sb.ToString();
}
private string FormatCell(object value, int width)
{
return value.ToString().PadLeft(width);
}
}

1
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent.csproj

@ -12,6 +12,7 @@
<PackageReference Include="Microsoft.Extensions.Hosting" Version="6.0.*" />
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="6.0.12" />
<PackageReference Include="Serilog.Sinks.MSSqlServer" Version="6.3.0" />
<PackageReference Include="Spectre.Console" Version="0.49.1" />
<PackageReference Include="Volo.Abp.EntityFrameworkCore.SqlServer" Version="5.3.5" />
<PackageReference Include="Volo.Abp.BackgroundJobs" Version="5.3.5" />
<PackageReference Include="Volo.Abp.BackgroundWorkers" Version="5.3.5" />

2
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.MesAgent/Incoming/MesOutConverter.cs

@ -108,7 +108,7 @@ public class MesOutConverter : IIncomingConverter
wmsProductReceiptNoteDetail.Lot = ""; //排序批次
wmsProductReceiptNoteDetail.PackingCode = "";//箱标签
wmsProductReceiptNoteDetail.Status = EnumInventoryStatus.OK;
wmsProductReceiptNoteDetail.WarehouseCode = "T8";
wmsProductReceiptNoteDetail.WarehouseCode = "T9";
wmsProductReceiptNoteDetail.LocationArea = "";
wmsProductReceiptNoteDetail.LocationGroup = "";
if (wmsProductReceiptNoteDetail.MesQuality=="1")//质量补

2
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/TyrpAgentModule.cs

@ -172,7 +172,7 @@ public class TyrpAgentModule : AbpModule
ApplicationInitializationContext context)
{
// context.AddBackgroundWorkerAsync<TyrpIncomingBackgroundWorker>();
context.AddBackgroundWorkerAsync<TyrpIncomingBackgroundWorker>();
context.AddBackgroundWorkerAsync<TyrpOutgoingBackgroundWorker>();
}

2
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.TyrpAgent/appsettings.json

@ -3,7 +3,7 @@
"Default": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_Main_CC;uid=ccwin-in;pwd=Microsoft@2022;TrustServerCertificate=True;Encrypt=false",
"DataExchange": "Server=dev.ccwin-in.com,13319;Database=WMS_DongYang_DataExchange_CC;uid=ccwin-in;pwd=Microsoft@2022;TrustServerCertificate=True;Encrypt=false",
"TYRP": "Server=dev.ccwin-in.com,13319;Database=TYRP_CC;Uid=ccwin-in;Pwd=Microsoft@2022;TrustServerCertificate=True",
"SYBASE_TYRP": "Data Source=10.164.115.137; Port=5000; Database=mesdb; Uid=sa; Pwd=dawning;Charset=cp850;" //iso_1
"SYBASE_TYRP": "Data Source=10.164.233.4; Port=5000; Database=mesdb; Uid=sa; Pwd=dawning;Charset=cp850;" //iso_1
},
"AuthServer": {

2
be/DataExchange/src/Win_in.Sfs.Wms.DataExchange.Agent/Properties/launchSettings.json

@ -4,7 +4,7 @@
"commandName": "WSL2",
"distributionName": ""
},
"配置文件 1": {
"Win_in.Sfs.Wms.DataExchange.Agent": {
"commandName": "Project"
}
}

2
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/ProductionLines/ProductionLineAppService.cs

@ -64,7 +64,7 @@ public class ProductionLineAppService
var entity = await _repository.FirstOrDefaultAsync(p => p.LocationCode == locationCode).ConfigureAwait(false);
if (entity == null)
{
throw new UserFriendlyException($"【{locationCode}】库位不存在");
throw new UserFriendlyException($"生产线表中【{locationCode}】库位不存在");
}
return ObjectMapper.Map<ProductionLine, ProductionLineDTO>(entity);

4
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PurchasePrices/PurchasePriceSheetAutoMapperProfile.cs

@ -11,5 +11,9 @@ public partial class BasedataApplicationAutoMapperProfile : Profile
{
CreateMap<PurchasePriceSheet, PurchasePriceSheetDTO>()
.ReverseMap();
CreateMap<PurchasePriceSheetEditInput, PurchasePriceSheet>()
.IgnoreAuditedObjectProperties()
.Ignore(x => x.ConcurrencyStamp)
.Ignore(x => x.Id);
}
}

4
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/SalePrices/SalePriceSheetAutoMapperProfile.cs

@ -11,5 +11,9 @@ public partial class BasedataApplicationAutoMapperProfile : Profile
{
CreateMap<SalePriceSheet, SalePriceSheetDTO>()
.ReverseMap();
CreateMap<SalePriceSheetEditInput, SalePriceSheet>()
.IgnoreAuditedObjectProperties()
.Ignore(x => x.ConcurrencyStamp)
.Ignore(x => x.Id);
}
}

4
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/StdCostPrices/StdCostPriceSheetAutoMapperProfile.cs

@ -11,5 +11,9 @@ public partial class BasedataApplicationAutoMapperProfile : Profile
{
CreateMap<StdCostPriceSheet, StdCostPriceSheetDTO>()
.ReverseMap();
CreateMap<StdCostPriceSheetEditInput, StdCostPriceSheet>()
.IgnoreAuditedObjectProperties()
.Ignore(x => x.ConcurrencyStamp)
.Ignore(x => x.Id);
}
}

3
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/RecycledMaterialReceiptNotes/RecycledMaterialReceiptNoteAppService.cs

@ -75,7 +75,7 @@ public class RecycledMaterialReceiptNoteAppService :
entity = await _repository.InsertAsync(entity).ConfigureAwait(false);
await LocalEventBus.PublishAsync(new SfsCreatedEntityEventData<RecycledMaterialReceiptNote>(entity), false).ConfigureAwait(false);
await LocalEventBus.PublishAsync(new SfsCompletedEntityEventData<RecycledMaterialReceiptNote>(entity), false).ConfigureAwait(false);
return ObjectMapper.Map<RecycledMaterialReceiptNote, RecycledMaterialReceiptNoteDTO>(entity);
}
@ -110,6 +110,7 @@ public class RecycledMaterialReceiptNoteAppService :
}
entity = await _repository.InsertAsync(entity).ConfigureAwait(false);
await LocalEventBus.PublishAsync(new SfsCompletedEntityEventData<RecycledMaterialReceiptNote>(entity), false).ConfigureAwait(false);
return ObjectMapper.Map<RecycledMaterialReceiptNote, RecycledMaterialReceiptNoteDTO>(entity);
}
}

32
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Orders/PurchaseOrders/PurchaseOrderAppService.cs

@ -9,6 +9,7 @@ using Microsoft.EntityFrameworkCore;
using Volo.Abp;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Repositories;
using Win_in.Sfs.Basedata.Application;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared;
@ -30,13 +31,15 @@ public class PurchaseOrderAppService :
private readonly ISupplierAppService _supplierAppService;
private readonly IItemBasicAppService _itemBasicAppService;
private readonly ILocationAppService _locationAppService;
public readonly IPurchasePriceSheetAppService _purchasePriceSheetAppService;
public PurchaseOrderAppService(
IPurchaseOrderRepository repository,
IPurchaseOrderManager purchaseOrderManager,
ISupplierAppService supplierAppService,
IItemBasicAppService itemBasicAppService
, ILocationAppService locationAppService) : base(repository)
, ILocationAppService locationAppService,
IPurchasePriceSheetAppService purchasePriceSheetAppService) : base(repository)
{
_repository = repository;
_purchaseOrderManager = purchaseOrderManager;
@ -46,6 +49,7 @@ public class PurchaseOrderAppService :
base.CreatePolicyName = PurchaseOrderPermissions.Create;
base.UpdatePolicyName = PurchaseOrderPermissions.Update;
base.DeletePolicyName = PurchaseOrderPermissions.Delete;
_purchasePriceSheetAppService = purchasePriceSheetAppService;
}
#region 东阳使用
@ -60,7 +64,6 @@ public class PurchaseOrderAppService :
{
var ImportData = dictionary.Select(p => p.Key);
#region 校验ERP库位是否存在
var allTempErpLocationCode = ImportData.Select(p => p.Details.Select(p => p.LocationErpCode).ToList()).ToList();
var allErpLocationCode = new List<string>();
@ -87,6 +90,7 @@ public class PurchaseOrderAppService :
#endregion
foreach (var purchaseOrder in ImportData)
{
purchaseOrder.CreatorId = CurrentUser.Id;
@ -98,10 +102,18 @@ public class PurchaseOrderAppService :
purchaseOrder.SupplierName = supplierDto.Name;
if (purchaseOrder.OrderStatus == EnumOrderStatus.Close)
{
throw new UserFriendlyException($"不允许导入关闭订单状态的订单");
throw new UserFriendlyException($"不允许导入关闭订单状态的订单!");
}
#region 校验行号是否有重复的
var polineCount = purchaseOrder.Details.GroupBy(r => r.PoLine).Count();
if (polineCount != purchaseOrder.Details.Count)
{
throw new UserFriendlyException($"同一订单号内行号不允许重复!");
}
#endregion
foreach (var detail in purchaseOrder.Details)
{
await CheckItemPrice(purchaseOrder.SupplierCode,detail.ItemCode).ConfigureAwait(false);
detail.LineStatus = EnumOrderStatus.Open;
var itemBasicDto = itemBasicDtos.First(p => p.Code == detail.ItemCode);
@ -115,6 +127,8 @@ public class PurchaseOrderAppService :
return dictionary;
}
/// <summary>
/// 【创建】采购订单
/// </summary>
@ -209,6 +223,18 @@ public class PurchaseOrderAppService :
return result;
}
/// <summary>
/// 校验采购价格
/// </summary>
/// <returns></returns>
private async Task CheckItemPrice(string supplierCode, string itemCode )
{
var isprice = await _purchasePriceSheetAppService.CheckPurPriceAsync(supplierCode, itemCode).ConfigureAwait(false);
if (isprice)
{
throw new UserFriendlyException($"供应商【{supplierCode}】零件名称【{itemCode}】无采购价格无法执行采购上架!");
}
}
private async Task<List<LocationDTO>> CheckErpLocationCodeAsync(List<string> erpLocationCodes)
{
erpLocationCodes = erpLocationCodes.Distinct().ToList();

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/PurchaseReceiptRequests/PurchaseReceiptRequestAppService.cs

@ -70,9 +70,7 @@ public class PurchaseReceiptRequestAppService :
public virtual async Task<PurchaseReceiptRequestDetailDTO> GetDetailByItemAndPackingAsync(string itemCode,
string packingCode)
{
var entitysList = (await _repository
.GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true)
.ConfigureAwait(false));
var entitysList = (await _repository.GetListAsync(p => p.Details.Any(y => y.ItemCode == itemCode && y.PackingCode == packingCode), true).ConfigureAwait(false));
if (entitysList != null && entitysList.Any())
{

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/DataExchanges/RecycledMaterialReceiptNoteEventHandler.cs

@ -11,20 +11,20 @@ namespace Win_in.Sfs.Wms.Store.Event.DataExchanges;
public class RecycledMaterialReceiptNoteEventHandler
: StoreDataExchangeEventHandlerBase<RecycledMaterialReceiptNote>
, ILocalEventHandler<SfsCreatedEntityEventData<RecycledMaterialReceiptNote>>
, ILocalEventHandler<SfsCreatedEntityEventData<List<RecycledMaterialReceiptNote>>>
, ILocalEventHandler<SfsCompletedEntityEventData<RecycledMaterialReceiptNote>>
, ILocalEventHandler<SfsCompletedEntityEventData<List<RecycledMaterialReceiptNote>>>
{
private const EnumExchangeDataType ExchangeDataType = EnumExchangeDataType.RecycledMaterialReceipt;
[UnitOfWork]
public virtual async Task HandleEventAsync(SfsCreatedEntityEventData<RecycledMaterialReceiptNote> eventData)
public virtual async Task HandleEventAsync(SfsCompletedEntityEventData<RecycledMaterialReceiptNote> eventData)
{
var entity = eventData.Entity;
await AddExchangeDataAsync(entity).ConfigureAwait(false);
}
[UnitOfWork]
public virtual async Task HandleEventAsync(SfsCreatedEntityEventData<List<RecycledMaterialReceiptNote>> eventData)
public virtual async Task HandleEventAsync(SfsCompletedEntityEventData<List<RecycledMaterialReceiptNote>> eventData)
{
var entities = eventData.Entity;
await AddExchangeDataAsync(entities).ConfigureAwait(false);

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Event/Transactions/ItemTransformNoteEventHandler.cs

@ -256,7 +256,7 @@ public class ItemTransformNoteEventHandler
JobNumber = note.JobNumber,
DocNumber = note.Number,
TransType = Type,
TransSubType = SubType,
TransSubType = EnumTransSubType.UnplannedReceipt_RecycledMaterialReceipt,
TransInOut = EnumTransInOut.In,
LocationArea = detail.FromLocationArea,
LocationGroup = detail.FromLocationGroup,

4
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/"

Loading…
Cancel
Save