Browse Source

提交更新

Agv分支2024-11-19
赵新宇 5 months ago
parent
commit
531a04f2ea
  1. 11
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAppService.cs
  2. 126
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
  3. 129
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs

11
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAppService.cs

@ -187,9 +187,18 @@ public class PostionLocationAppService
return ObjectMapper.Map<List<PostionLocation>, List<PostionLocationDTO>>(result);
}
[HttpPost("get-all-list")]
public async Task<List<PostionLocationDTO>> GetAllListAsync()
{
var result =await base.GetAllListByFilterAsync(new SfsBaseDataRequestInputBase() ).ConfigureAwait(false);
return result;
}
//private async Task CheckLocationCode(string p_location)
//{
// var list = await _locationAppService.GetByCodeAsync(p_location).ConfigureAwait(false);
// if (list == null)
// {

126
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs

@ -948,63 +948,70 @@ public class CoatingIssueJobAppService
{
return ReturnMessage("-1", $"{entity.Number}任务单据已结束!");
}
foreach (var detail in entity.Details)
try
{
var detailDto = new CoatingIssueJobDetailDTO();
if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode))
{
//库移的最终目标 挪到 推荐的目标
var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.TransferLibToLot;
detailDto.HandledToPackingCode = detail.TransferLibToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.TransferLibToLot;
detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode;
}
else
foreach (var detail in entity.Details)
{
var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.RecommendToLot;
detailDto.HandledToPackingCode = detail.RecommendToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.RecommendToLot;
detailDto.HandledFromPackingCode = detail.RecommendToPackingCode;
}
var detailDto = new CoatingIssueJobDetailDTO();
if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode))
{
//库移的最终目标 挪到 推荐的目标
var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.TransferLibToLot;
detailDto.HandledToPackingCode = detail.TransferLibToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.TransferLibToLot;
detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode;
}
else
{
var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.RecommendToLot;
detailDto.HandledToPackingCode = detail.RecommendToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.RecommendToLot;
detailDto.HandledFromPackingCode = detail.RecommendToPackingCode;
}
await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false);
await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false);
}
}
catch (Exception e)
{
return ReturnMessage("-1", e.Message);
}
return ReturnMessage("0", "OK");
@ -1017,12 +1024,21 @@ public class CoatingIssueJobAppService
/// <returns></returns>
private AgvResultObject ReturnMessage(string code, string message)
{
return new AgvResultObject()
var result = new AgvResultObject()
{
Code = code,
Message = message,
ReqCode = ""
};
if (code == "0")
{
_logger.LogInformation("成功:" + JsonSerializer.Serialize(result));
}
else
{
_logger.LogInformation("失败:" + JsonSerializer.Serialize(result));
}
return result;
}
/// <summary>

129
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs

@ -87,6 +87,7 @@ public class KittingIssueJobAppService
_agvOptions = agvOptions;
_itemBasicAppService = itemBasicAppService;
_locationDeliveryAppService = locationDeliveryAppService;
_logger = logger;
}
[HttpPost("get-by-number-2")]
@ -909,61 +910,68 @@ public class KittingIssueJobAppService
return ReturnMessage("-1", $"{entity.Number}任务单据已结束!");
}
foreach (var detail in entity.Details)
try
{
var detailDto = new KittingIssueJobDetailDTO();
if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode))
foreach (var detail in entity.Details)
{
//库移的最终目标 挪到 推荐的目标
var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.TransferLibToLot;
detailDto.HandledToPackingCode = detail.TransferLibToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.TransferLibToLot;
detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode;
}
else
{
var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.RecommendToLot;
detailDto.HandledToPackingCode = detail.RecommendToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.RecommendToLot;
detailDto.HandledFromPackingCode = detail.RecommendToPackingCode;
var detailDto = new KittingIssueJobDetailDTO();
if (!string.IsNullOrEmpty(detail.TransferLibFromLocationCode))
{
//库移的最终目标 挪到 推荐的目标
var fromloc = await _locationAppService.GetByCodeAsync(detail.TransferLibFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.TransferLibToLot;
detailDto.HandledToPackingCode = detail.TransferLibToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.TransferLibToLot;
detailDto.HandledFromPackingCode = detail.TransferLibToPackingCode;
}
else
{
var fromloc = await _locationAppService.GetByCodeAsync(detail.RecommendFromLocationCode).ConfigureAwait(false);
var toloc = await _locationAppService.GetByCodeAsync(detail.RecommendToLocationCode).ConfigureAwait(false);
detailDto.InjectFrom(detail);
detailDto.HandledToLocationCode = toloc.Code;
detailDto.HandledToLocationGroup = toloc.LocationGroupCode;
detailDto.HandledToLocationArea = toloc.AreaCode;
detailDto.HandledToLocationErpCode = toloc.ErpLocationCode;
detailDto.HandledToWarehouseCode = toloc.WarehouseCode;
detailDto.HandledToQty = request.Data.First().MatQty;
detailDto.HandledToLot = detail.RecommendToLot;
detailDto.HandledToPackingCode = detail.RecommendToPackingCode;
detailDto.HandledFromLocationCode = fromloc.Code;
detailDto.HandledFromLocationGroup = fromloc.LocationGroupCode;
detailDto.HandledFromLocationArea = fromloc.AreaCode;
detailDto.HandledFromLocationErpCode = fromloc.ErpLocationCode;
detailDto.HandledFromWarehouseCode = fromloc.WarehouseCode;
detailDto.HandledFromQty = request.Data.First().MatQty;//2024-12-16 和励 张旭确认的 因为没有人工干预 也没校验 一托就直接顶走了
detailDto.HandledFromLot = detail.RecommendToLot;
detailDto.HandledFromPackingCode = detail.RecommendToPackingCode;
}
await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false);
}
await ExecuteDetailExtAsync(entity.Id, entity.Details.First().Id, detailDto).ConfigureAwait(false);
}
catch (Exception ex)
{
return ReturnMessage("-1", ex.Message);
}
return ReturnMessage("0", "OK");
}
@ -975,12 +983,22 @@ public class KittingIssueJobAppService
/// <returns></returns>
private AgvResultObject ReturnMessage(string code, string message)
{
return new AgvResultObject()
var result = new AgvResultObject()
{
Code = code,
Message = message,
ReqCode = ""
};
if(code == "0")
{
_logger.LogInformation("成功:"+JsonSerializer.Serialize(result));
}
else
{
_logger.LogInformation("失败:"+JsonSerializer.Serialize(result));
}
return result;
}
/// <summary>
@ -1184,8 +1202,11 @@ public class KittingIssueJobAppService
httpclient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic",
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
var json = JsonSerializer.Serialize(request);
var client = new AgvJobClient(_agvOptions.Value.Address, httpclient, _agvOptions.Value.Path);
_logger.LogInformation($"{flag}发送AGV任务请求:{json }");
ret = await client.PushOutTaskKittingAsync(request).ConfigureAwait(false);
}

Loading…
Cancel
Save