Browse Source

Merge branch 'Agv分支2024-11-19' of http://dev.ccwin-in.com:3000/BoXu.Zheng/WZC2 into Agv分支2024-11-19

Agv分支2024-11-19
郑勃旭 4 months ago
parent
commit
a3d3bd6d6c
  1. 17
      be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/IssueJobController.cs
  2. 3
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/IssueJobs/IIssueJobAppService.cs
  3. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/AgvJobs/AgvJobOutputService.cs
  4. 5
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs
  5. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
  6. 63
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/IssueJobAppService.cs
  7. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs
  8. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/UnplannedIssueJobs/UnplannedIssueJobAppService.cs
  9. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/UnplannedReceiptJobs/UnplannedReceiptJobAppService.cs

17
be/Hosts/WmsPda.Host/Win_in.Sfs.Wms.Pda.Host/Controllers/Jobs/IssueJobController.cs

@ -50,6 +50,23 @@ public class IssueJobController : AbpController
var result = await _issueJobAppService.GetAsync(id).ConfigureAwait(false); var result = await _issueJobAppService.GetAsync(id).ConfigureAwait(false);
return Ok(result); return Ok(result);
} }
/// <summary>
/// 余料回库
/// </summary>
/// <param name="jobdto"></param>
/// <returns></returns>
[HttpPost("NotifyOutTaskBack4FW")]
public async Task<AgvResultObject> CallReturn(AgvRequestBack jobdto)
{
return await _issueJobAppService.CallReturn(jobdto).ConfigureAwait(false);
}
/// <summary> /// <summary>
/// 获取列表 /// 获取列表

3
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/IssueJobs/IIssueJobAppService.cs

@ -23,4 +23,7 @@ public interface IIssueJobAppService
/// <returns></returns> /// <returns></returns>
Task<IssueJobDTO> SaveDetail_SplitPackingAsync(SplitPacking_UpdateJobDetailInput input); Task<IssueJobDTO> SaveDetail_SplitPackingAsync(SplitPacking_UpdateJobDetailInput input);
Task<AgvResultObject> CallReturn(AgvRequestBack jobdto);
} }

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/AgvJobs/AgvJobOutputService.cs

@ -97,8 +97,16 @@ public class AgvJobOutputService : ApplicationService
} }
[HttpPost("test-callagv-notifyOutTaskBack4FW")]
public async Task<AgvResultObject> TEST_notifyOutTaskBack4FW_CallAgvAsync(AgvRequestBack jobdto)
{
var client = await GetAgvJobClient().ConfigureAwait(false);
var ret = await client.NotifyOutTaskBack4FWAsync(jobdto).ConfigureAwait(false);
return ret;
}
private async Task<AgvJobClient> GetAgvJobClient() private async Task<AgvJobClient> GetAgvJobClient()
{ {

5
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs

@ -51,12 +51,13 @@ public class AssembleIssueJobAppService
private readonly IAssembleIssueNoteAppService _assembleIssueNoteAppService; private readonly IAssembleIssueNoteAppService _assembleIssueNoteAppService;
private readonly IExpectOutAppService _expectOutAppService; private readonly IExpectOutAppService _expectOutAppService;
private readonly IHttpClientFactory _httpClientFactory; private readonly IHttpClientFactory _httpClientFactory;
private readonly IOptions<AgvOptions> _agvOptions;
private readonly ITransferLibRequestAppService _transferLibRequestAppService; private readonly ITransferLibRequestAppService _transferLibRequestAppService;
private readonly IOptions<RestoOptions> _options; private readonly IOptions<RestoOptions> _options;
private readonly ICurrentUser _currentUser; private readonly ICurrentUser _currentUser;
private readonly UnitOfWorkManager _unitOfWorkManager; private readonly UnitOfWorkManager _unitOfWorkManager;
private readonly IOptions<AgvOptions> _agvOptions;
private readonly ILogger<AssembleIssueJobAppService> _logger; private readonly ILogger<AssembleIssueJobAppService> _logger;
@ -1178,7 +1179,7 @@ public class AssembleIssueJobAppService
var first = job.Details.FirstOrDefault(); var first = job.Details.FirstOrDefault();
var request = new AgvRequest(); var request = new AgvRequest();
request.MatCode = first.ItemCode; request.MatCode = first.ItemCode;
request.MatQty = first.HandledFromQty; request.MatQty = first.RecommendFromQty;
request.OrderNum = job.Number; request.OrderNum = job.Number;
request.OrderType = EnumJobType.AssembleIssueJob.ToString(); request.OrderType = EnumJobType.AssembleIssueJob.ToString();
request.BeginPosition = beginPosition; request.BeginPosition = beginPosition;

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

@ -1211,12 +1211,12 @@ public class CoatingIssueJobAppService
var first = job.Details.FirstOrDefault(); var first = job.Details.FirstOrDefault();
var request = new AgvRequest(); var request = new AgvRequest();
request.MatCode = first.ItemCode; request.MatCode = first.ItemCode;
request.MatQty = first.HandledFromQty; request.MatQty = first.RecommendFromQty;
request.OrderNum = job.Number; request.OrderNum = job.Number;
request.OrderType = ((int)EnumJobType.CoatingIssueJob).ToString(); request.OrderType = ((int)EnumJobType.CoatingIssueJob).ToString();
request.BeginPosition = beginPosition; request.BeginPosition = beginPosition;
request.EndPosition = endPosition; request.EndPosition = endPosition;
request.State = "0"; request.State = "1";
request.PakingCode = !string.IsNullOrEmpty(first.HandledFromPackingCode) ? first.HandledFromPackingCode : string.Empty; request.PakingCode = !string.IsNullOrEmpty(first.HandledFromPackingCode) ? first.HandledFromPackingCode : string.Empty;
request.Batch = ""; request.Batch = "";

63
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/IssueJobAppService.cs

@ -2,6 +2,9 @@ using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Linq.Expressions; using System.Linq.Expressions;
using System.Net.Http.Headers;
using System.Net.Http;
using System.Text;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
@ -15,6 +18,9 @@ using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain; using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.Domain.Shared; using Win_in.Sfs.Wms.Store.Domain.Shared;
using Win_in.Sfs.Wms.Store.Jobs.IssueJobs.proxy;
using Win_in.Sfs.Wms.Store.Options;
using Microsoft.Extensions.Options;
namespace Win_in.Sfs.Wms.Store.Application; namespace Win_in.Sfs.Wms.Store.Application;
@ -26,14 +32,69 @@ public class IssueJobAppService
IIssueJobAppService IIssueJobAppService
{ {
private readonly IIssueJobManager _issueJobManager; private readonly IIssueJobManager _issueJobManager;
private readonly IHttpClientFactory _httpClientFactory;
private readonly IOptions<AgvOptions> _agvOptions;
public IssueJobAppService( public IssueJobAppService(
IIssueJobRepository repository, IIssueJobManager issueJobManager IIssueJobRepository repository, IIssueJobManager issueJobManager,IHttpClientFactory httpClientFactory, IOptions<AgvOptions> agvOptions
) : base(repository, issueJobManager) ) : base(repository, issueJobManager)
{ {
_issueJobManager = issueJobManager; _issueJobManager = issueJobManager;
_httpClientFactory = httpClientFactory;
_agvOptions = agvOptions;
} }
/// <summary>
/// 余料回库
/// </summary>
/// <param name="jobdto"></param>
/// <returns></returns>
[HttpPost("NotifyOutTaskBack4FW")]
public async Task<AgvResultObject> CallReturn(AgvRequestBack jobdto)
{
var client = await GetAgvJobClient().ConfigureAwait(false);
var ret = await client.NotifyOutTaskBack4FWAsync(jobdto).ConfigureAwait(false);
return ret;
}
private async Task<AgvJobClient> GetAgvJobClient()
{
var httpclient = _httpClientFactory.CreateClient();
_agvOptions.Value.Address = string.IsNullOrEmpty(_agvOptions.Value.Address)
? "http://7e42682n64.goho.co:21171/"
: _agvOptions.Value.Address; //测试地址
_agvOptions.Value.Token =
string.IsNullOrEmpty(_agvOptions.Value.Token) ? string.Empty : _agvOptions.Value.Token; //测试token
_agvOptions.Value.UserName =
string.IsNullOrEmpty(_agvOptions.Value.UserName) ? "" : _agvOptions.Value.UserName; //测试用户名
_agvOptions.Value.Password =
string.IsNullOrEmpty(_agvOptions.Value.Password) ? "" : _agvOptions.Value.Password; //测试密码
_agvOptions.Value.Path = string.IsNullOrEmpty(_agvOptions.Value.Path)
? "zozocnApi/custom/receiveProductionPlan"
: _agvOptions.Value.Path; //测试密码
var flag = DateTime.Now.ToString("yyyyMMddHHmmss");
if (!string.IsNullOrEmpty(_agvOptions.Value.Token))
{
var token = _agvOptions.Value.Token;
httpclient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
}
if (!string.IsNullOrEmpty(_agvOptions.Value.UserName) && !string.IsNullOrEmpty(_agvOptions.Value.Password))
{
var username = _agvOptions.Value.UserName;
var password = _agvOptions.Value.Password;
httpclient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic",
Convert.ToBase64String(Encoding.ASCII.GetBytes($"{username}:{password}")));
}
var client = new AgvJobClient(_agvOptions.Value.Address, httpclient, _agvOptions.Value.Path);
return client;
}
/// <summary> /// <summary>
/// 根据物品和库位 检查是否存在发料任务 /// 根据物品和库位 检查是否存在发料任务
/// </summary> /// </summary>

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

@ -1168,9 +1168,9 @@ public class KittingIssueJobAppService
var first = job.Details.FirstOrDefault(); var first = job.Details.FirstOrDefault();
var request = new AgvRequest(); var request = new AgvRequest();
request.MatCode = first.ItemCode; request.MatCode = first.ItemCode;
request.MatQty = first.HandledFromQty; request.MatQty = first.RecommendFromQty;
request.OrderNum = job.Number; request.OrderNum = job.Number;
request.State = "0"; request.State = "1";
request.PakingCode = !string.IsNullOrEmpty(first.HandledFromPackingCode)?first.HandledFromPackingCode:string.Empty; request.PakingCode = !string.IsNullOrEmpty(first.HandledFromPackingCode)?first.HandledFromPackingCode:string.Empty;
request.Batch = ""; request.Batch = "";

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/UnplannedIssueJobs/UnplannedIssueJobAppService.cs

@ -851,7 +851,7 @@ public class UnplannedIssueJobAppService
request.BeginPosition = detail.HandledFromLocationCode; request.BeginPosition = detail.HandledFromLocationCode;
request.EndPosition = detail.HandledFromLocationCode; request.EndPosition = detail.HandledFromLocationCode;
request.OrderType = job.UnplannedIssueType == EnumUnplannedIssueType.Raw ? ((int)EnumJobType.UnplannedIssueJobHasPacking).ToString() :((int)EnumJobType.UnplannedIssueJobNoPacking).ToString(); ; request.OrderType = job.UnplannedIssueType == EnumUnplannedIssueType.Raw ? ((int)EnumJobType.UnplannedIssueJobHasPacking).ToString() :((int)EnumJobType.UnplannedIssueJobNoPacking).ToString(); ;
request.State = "0"; request.State = "1";
request.PakingCode = !string.IsNullOrEmpty(detail.HandledPackingCode) ? detail.HandledPackingCode : string.Empty; request.PakingCode = !string.IsNullOrEmpty(detail.HandledPackingCode) ? detail.HandledPackingCode : string.Empty;
request.Batch = ""; request.Batch = "";
var httpclient = _httpClientFactory.CreateClient(); var httpclient = _httpClientFactory.CreateClient();

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/UnplannedReceiptJobs/UnplannedReceiptJobAppService.cs

@ -479,7 +479,7 @@ public class UnplannedReceiptJobAppService
request.EndPosition = detail.HandledToLocationCode; request.EndPosition = detail.HandledToLocationCode;
request.OrderType = job.UnplannedReceiptType == EnumUnplannedReceiptType.Raw ? ((int)EnumJobType.UnplannedReceiptJobHasPacking).ToString() : ((int)EnumJobType.UnplannedReceiptJobNoPacking).ToString(); request.OrderType = job.UnplannedReceiptType == EnumUnplannedReceiptType.Raw ? ((int)EnumJobType.UnplannedReceiptJobHasPacking).ToString() : ((int)EnumJobType.UnplannedReceiptJobNoPacking).ToString();
request.State = "0"; request.State = "1";
request.PakingCode = !string.IsNullOrEmpty(detail.HandledPackingCode) ? detail.HandledPackingCode : string.Empty; request.PakingCode = !string.IsNullOrEmpty(detail.HandledPackingCode) ? detail.HandledPackingCode : string.Empty;
request.Batch = ""; request.Batch = "";
var httpclient = _httpClientFactory.CreateClient(); var httpclient = _httpClientFactory.CreateClient();

Loading…
Cancel
Save