Browse Source

视觉接口修改

dev_DY_CC
lvzb 12 months ago
parent
commit
690e23454a
  1. 33
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.InjectionMoldingTaskAgent/Incoming/InjectionMoldingRequestReader.cs
  2. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/DTOs/UnCompletedRequestDto.cs
  3. 3
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/IInjectionIssueRequestAppService.cs
  4. 36
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs

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

@ -72,13 +72,10 @@ public class InjectionMoldingRequestReader : IReader
// var sleepTime = (_options.Value.AutoRemote.TimeCycle*60/ _options.Value.AutoRemote.Interval)-10;
var invterval = _options.Value.AutoRemote.Interval;
var successTime = 0;
var guid = DateTime.Now.ToString("yyyyMMddHHmmssfff");
for (int i = 0; i <invterval; i++)
{
Stopwatch sw = Stopwatch.StartNew();
Client client = new Client(_options.Value.AutoRemote.IpAddress, _httpClientFactory.CreateClient());//调用客户记录
@ -97,25 +94,31 @@ public class InjectionMoldingRequestReader : IReader
}
var ids = _options.Value.AutoRemote.AreaIDs.Split(",");
List<ResponCargoItem> camralist = new List<ResponCargoItem>();
for (int i = 1; i <= invterval; i++)
{
foreach (var itm in ids)//遍历区域查找所有货物
{
var idsList = await client.GetCargoStaticAsync(itm).ConfigureAwait(false);
camralist.AddRange(idsList);
//flag 1-有货 0-空闲
camralist.AddRange(idsList.Where(r => r.Flag == 0));
}
_logger.LogInformation($"读取标识{guid}读取成功次数{i},耗时 {sw.ElapsedMilliseconds}毫秒");
}
successTime++;
sw.Stop();
_logger.LogInformation($"读取标识{guid}读取成功次数{successTime},耗时 {sw.ElapsedMilliseconds}毫秒");
Thread.Sleep(1000);
if (successTime == invterval)
//按区域、货位号、零件、标志
var group= camralist.GroupBy(r => new { r.AreaID, r.CargoID, r.PartCode, r.Flag });
//获取和次数相等的空闲数据
var list = group.Where(r => r.Count() == invterval).ToList();
//如果有货位空闲
if (list.Count>0)
{
sw = Stopwatch.StartNew();
_logger.LogInformation($"开始标识{guid}同步WMS开始");
List<UnCompletedRequestDto> inputdetail = new List<UnCompletedRequestDto>();
foreach (var item in camralist)
foreach (var item in list.Select(r=>r.Key).ToList())
{
UnCompletedRequestDto jobrequestinput = new UnCompletedRequestDto();
jobrequestinput.ItemCode = item.PartCode;
@ -124,9 +127,9 @@ public class InjectionMoldingRequestReader : IReader
inputdetail.Add(jobrequestinput);
}
var uncompletelist = await _injectionRequest.GetUnCompletedRequestAsync(inputdetail).ConfigureAwait(false);//将所有库位零件信息查找未完成记录
var uncompletelist = await _injectionRequest.Getlist(inputdetail).ConfigureAwait(false);//将所有库位零件信息查找未完成记录
var query = from itm in camralist
var query = from itm in list.Select(r => r.Key).ToList()
join itm1 in uncompletelist on new { locCode = itm.AreaID.ToString(), itmCode = itm.PartCode, PositionCode = itm.CargoID.ToString() }
equals new { locCode = itm1.LocCode, itmCode = itm1.ItemCode, PositionCode = itm1.PositionCode } into temp
from tm in temp.DefaultIfEmpty()
@ -189,8 +192,6 @@ public class InjectionMoldingRequestReader : IReader
}
}
//Client client = new Client(_options.Value.AutoRemote.IpAddress, _httpClientFactory.CreateClient());//调用客户记录

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/DTOs/UnCompletedRequestDto.cs

@ -1,6 +1,8 @@
using Volo.Abp.Application.Dtos;
namespace Win_in.Sfs.Wms.Store.Application.Contracts;
public class UnCompletedRequestDto
public class UnCompletedRequestDto: EntityDto
{
public string ItemCode { get; set; }
public string LocCode { get; set; }

3
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Requests/IssueRequest/InjectionIssueRequests/IInjectionIssueRequestAppService.cs

@ -13,5 +13,6 @@ public interface IInjectionIssueRequestAppService
Task<InjectionIssueRequestDTO> CreateAndHandleAsync(InjectionIssueRequestEditInput input);
Task UpdateStatusCompletedAsync(string number);
Task<string> IsHasNewJobAsync(string requestNumber, List<string> jobNumber);
Task<List<UnCompletedRequestDto>> GetUnCompletedRequestAsync(List<UnCompletedRequestDto> p_list);
Task<List<UnCompletedRequestDto>> GetListForSJ(List<UnCompletedRequestDto> p_list);
Task<List<UnCompletedRequestDto>> Getlist(List<UnCompletedRequestDto> pList);
}

36
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/IssuelRequests/InjectionIssueRequests/InjectionIssueRequestAppService.cs

@ -401,8 +401,8 @@ public class InjectionIssueRequestAppService : SfsStoreRequestAppServiceBase<Inj
/// 获取已完成的叫料单数量
/// </summary>
/// <returns></returns>
[HttpPost("get-uncompleted-request")]
public async Task<List<UnCompletedRequestDto>> GetUnCompletedRequestAsync(List<UnCompletedRequestDto> pList)
[HttpPost("sj")]
public async Task<List<UnCompletedRequestDto>> GetListForSJ(List<UnCompletedRequestDto> pList)
{
var returnList = new List<UnCompletedRequestDto>();
//枚举类型查不到改成SQL查询
@ -427,6 +427,38 @@ public class InjectionIssueRequestAppService : SfsStoreRequestAppServiceBase<Inj
return returnList;
}
/// <summary>
/// 获取已完成的叫料单数量
/// </summary>
/// <returns></returns>
[HttpPost("get")]
public async Task<List<UnCompletedRequestDto>> Getlist(List<UnCompletedRequestDto> pList)
{
var returnList = new List<UnCompletedRequestDto>();
//枚举类型查不到改成SQL查询
var list = await _repository.GetListAsync(p =>
p.RequestStatus != EnumRequestStatus.Completed && p.IssueRequestType == EnumIssueRequestType.Vision)
.ConfigureAwait(false);
foreach (var itm in list)
{
var query = from detail in itm.Details
join citm in pList on new
{
detail.ItemCode,
locCode = detail.ToLocationCode,
areaCode = detail.PositionCode
} equals
new { citm.ItemCode, locCode = citm.LocCode, areaCode = citm.PositionCode }
select new UnCompletedRequestDto
{
ItemCode = detail.ItemCode,
LocCode = detail.ToLocationCode,
PositionCode = detail.PositionCode
};
returnList.AddRange(query.ToList());
}
return returnList;
}
#endregion
}

Loading…
Cancel
Save