Browse Source

Merge branch 'dev_DY_CC' of http://dev.ccwin-in.com:3000/BoXu.Zheng/WZC2 into dev_DY_CC

dev_DY_CC
lvzb 12 months ago
parent
commit
9c4f42e7f2
  1. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Chassis/DTOs/ChassisDTO.cs
  2. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Chassis/Inputs/ChassisEditInput.cs
  3. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Chassis/Inputs/ChassisImportInput.cs
  4. 16
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/CoatingIssueJobs/DTOs/CoatingIssueJobDTO.cs
  5. 35
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
  6. 189
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs
  7. 10
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/IssueJobToRestoClient.cs
  8. 103
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/ProxyIssueJobDto.cs
  9. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Chassis/Chassis.cs

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Chassis/DTOs/ChassisDTO.cs

@ -45,4 +45,12 @@ public class ChassisDTO : SfsBasicDTOBase
/// </summary> /// </summary>
[Display(Name = "执行位置排序列")] [Display(Name = "执行位置排序列")]
public long SortNumber { get; set; } public long SortNumber { get; set; }
public string ItemCode { get; set; }
public string ItemName { get; set; }
public string ItemDesc1 { get; set; }
public string ItemDesc2 { get; set; }
} }

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Chassis/Inputs/ChassisEditInput.cs

@ -45,4 +45,12 @@ public class ChassisEditInput
/// </summary> /// </summary>
[Display(Name = "执行位置排序列")] [Display(Name = "执行位置排序列")]
public long SortNumber { get; set; } public long SortNumber { get; set; }
public string ItemCode { get; set; }
public string ItemName { get; set; }
public string ItemDesc1 { get; set; }
public string ItemDesc2 { get; set; }
} }

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Chassis/Inputs/ChassisImportInput.cs

@ -48,4 +48,12 @@ public class ChassisImportInput : SfsStoreImportInputBase
/// </summary> /// </summary>
[Display(Name = "执行位置排序列")] [Display(Name = "执行位置排序列")]
public long SortNumber { get; set; } public long SortNumber { get; set; }
public string ItemCode { get; set; }
public string ItemName { get; set; }
public string ItemDesc1 { get; set; }
public string ItemDesc2 { get; set; }
} }

16
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Jobs/IssueJobs/CoatingIssueJobs/DTOs/CoatingIssueJobDTO.cs

@ -42,15 +42,15 @@ public class CoatingIssueJobDTO : SfsJobDTOBase<CoatingIssueJobDetailDTO>
/// <summary> /// <summary>
/// 喷涂主表 /// 喷涂主表
/// </summary> /// </summary>
public class CoatingIssueRequestFromRestoDTO public class IssueRequestFromRestoDTO
{ {
public string RequestNumber { set; get; } public string RequestNumber { set; get; }
public List<CoatingIssueJobFromRestoDTO> Jobs { set; get; } public List<IssueJobFromRestoDTO> Jobs { set; get; }
} }
/// <summary> /// <summary>
/// 立体库发给WMS明细 /// 立体库发给WMS明细
/// </summary> /// </summary>
public class CoatingIssueJobFromRestoDetailDTO public class IssueJobFromRestoDetailDTO
{ {
[Display(Name = "零件编号")] [Display(Name = "零件编号")]
public string ItemCode { set; get; } public string ItemCode { set; get; }
@ -64,12 +64,12 @@ public class CoatingIssueJobFromRestoDetailDTO
/// <summary> /// <summary>
/// 立体库发给立体库任务单号 /// 立体库发给立体库任务单号
/// </summary> /// </summary>
public class CoatingIssueJobFromRestoDTO public class IssueJobFromRestoDTO
{ {
[Display(Name = "任务单号")] [Display(Name = "任务单号")]
public string JobNumber { set; get; } public string JobNumber { set; get; }
[Display(Name = "明细")] [Display(Name = "明细")]
public List<CoatingIssueJobFromRestoDetailDTO> Details { set; get; } public List<IssueJobFromRestoDetailDTO> Details { set; get; }
} }
/// <summary> /// <summary>
/// 发给立体库主表 /// 发给立体库主表
@ -78,7 +78,7 @@ public class CoatingIssueJobFromRestoDTO
/// 发给立体库子表 /// 发给立体库子表
/// </summary> /// </summary>
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class CoatingIssueJobToRestoDTO public partial class IssueJobToRestoDTO
{ {
[System.Text.Json.Serialization.JsonPropertyName("uuid")] [System.Text.Json.Serialization.JsonPropertyName("uuid")]
@ -88,7 +88,7 @@ public partial class CoatingIssueJobToRestoDTO
public string OperatorName { get; set; } public string OperatorName { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("details")] [System.Text.Json.Serialization.JsonPropertyName("details")]
public System.Collections.Generic.ICollection<CoatingIssueJobToRestoDetailDTO> Details { get; set; } public System.Collections.Generic.ICollection<IssueJobToRestoDetailDTO> Details { get; set; }
} }
@ -96,7 +96,7 @@ public partial class CoatingIssueJobToRestoDTO
/// 发给立体库主表 /// 发给立体库主表
/// </summary> /// </summary>
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] [System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class CoatingIssueJobToRestoDetailDTO public partial class IssueJobToRestoDetailDTO
{ {
[System.Text.Json.Serialization.JsonPropertyName("workNo")] [System.Text.Json.Serialization.JsonPropertyName("workNo")]

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

@ -59,6 +59,9 @@ public class CoatingIssueJobAppService
[HttpPost("add-many")] [HttpPost("add-many")]
public override async Task<List<CoatingIssueJobDTO>> CreateManyAsync(List<CoatingIssueJobEditInput> inputs) public override async Task<List<CoatingIssueJobDTO>> CreateManyAsync(List<CoatingIssueJobEditInput> inputs)
{ {
foreach (var input in inputs) foreach (var input in inputs)
{ {
await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false); await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false);
@ -200,31 +203,23 @@ public class CoatingIssueJobAppService
} }
[HttpPost("sync-coating-stereo")] [HttpPost("sync-issue-job-stereo")]
public virtual async Task<ReusltObject> SyncCoatingJobStereoAsync(List<CoatingIssueJobDTO> input) public virtual async Task<ReusltObject> SyncCoatingJobStereoAsync(List<CoatingIssueJobDTO> input)
{ {
foreach (var itm in input)
{
}
ReusltObject ret=new ReusltObject(); ReusltObject ret=new ReusltObject();
ret.Code = "1"; ret.Code = "1";
ret.Message = "操作成功"; ret.Message = "操作成功";
ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd"); ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd");
List<CoatingIssueJobToRestoDetailDTO> coatingIssueJobToRestoDetailDTOs = new List<CoatingIssueJobToRestoDetailDTO>(); List<IssueJobToRestoDetailDTO> IssueJobToRestoDetailDTOs = new List<IssueJobToRestoDetailDTO>();
CoatingIssueJobToRestoDTO main=new CoatingIssueJobToRestoDTO(); IssueJobToRestoDTO main=new IssueJobToRestoDTO();
main.OperatorName=CurrentUser.UserName; main.OperatorName=CurrentUser.UserName;
foreach (var job in input) foreach (var job in input)
{ {
foreach (var jobitem in job.Details) foreach (var jobitem in job.Details)
{ {
coatingIssueJobToRestoDetailDTOs.Add(new CoatingIssueJobToRestoDetailDTO() IssueJobToRestoDetailDTOs.Add(new IssueJobToRestoDetailDTO()
{ {
Count=jobitem.HandledToQty, Count=jobitem.HandledToQty,
ProductNo=jobitem.ItemCode, ProductNo=jobitem.ItemCode,
@ -234,23 +229,21 @@ public class CoatingIssueJobAppService
}); });
} }
} }
main.Details=coatingIssueJobToRestoDetailDTOs; main.Details=IssueJobToRestoDetailDTOs;
#region #region
CoatingIssueJobToRestoClient client = new CoatingIssueJobToRestoClient(_options.Value.Address, _httpClientFactory.CreateClient()); IssueJobToRestoClient client = new IssueJobToRestoClient(_options.Value.Address, _httpClientFactory.CreateClient());
ret = await client.SyncCoatingJobStereoAsync(main).ConfigureAwait(false); ret = await client.SyncCoatingJobStereoAsync(main).ConfigureAwait(false);
#endregion #endregion
return ret; return ret;
} }
[HttpPost("receive-coating-job-stereo")] [HttpPost("receive-issue-job-stereo")]
public virtual async Task<ReusltObject> SyncReciveCoatingJobStereoAsync(CoatingIssueRequestFromRestoDTO input) public virtual async Task<ReusltObject> SyncReciveCoatingJobStereoAsync(IssueRequestFromRestoDTO input)
{ {
List<string> errors = new List<string>(); List<string> errors = new List<string>();
var ret=new ReusltObject() var ret=new ReusltObject()
@ -261,7 +254,6 @@ public class CoatingIssueJobAppService
}; };
try try
{ {
if (input.Jobs.Count > 0) if (input.Jobs.Count > 0)
{ {
var inputs = input.Jobs; var inputs = input.Jobs;
@ -276,7 +268,7 @@ public class CoatingIssueJobAppService
var dtos = ObjectMapper.Map<List<CoatingIssueJob>, List<CoatingIssueJobDTO>>(entities); var dtos = ObjectMapper.Map<List<CoatingIssueJob>, List<CoatingIssueJobDTO>>(entities);
foreach (var itm in dtos) foreach (var itm in dtos)
{ {
var first = inputs.FirstOrDefault<CoatingIssueJobFromRestoDTO>(p => p.JobNumber == itm.Number); var first = inputs.FirstOrDefault<IssueJobFromRestoDTO>(p => p.JobNumber == itm.Number);
List<CoatingIssueJobDetailDTO> details = new List<CoatingIssueJobDetailDTO>(); List<CoatingIssueJobDetailDTO> details = new List<CoatingIssueJobDetailDTO>();
foreach (var detail in first.Details) foreach (var detail in first.Details)
{ {
@ -319,9 +311,6 @@ public class CoatingIssueJobAppService
Message = string.Join(",",errors.ToArray()) Message = string.Join(",",errors.ToArray())
}; };
} }
return ret; return ret;
} }

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

@ -1,10 +1,13 @@
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Net.Http;
using System.Threading.Tasks; using System.Threading.Tasks;
using Castle.Components.DictionaryAdapter; using Castle.Components.DictionaryAdapter;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Options;
using MyNamespace;
using Volo.Abp; using Volo.Abp;
using Volo.Abp.ObjectMapping; using Volo.Abp.ObjectMapping;
using Win_in.Sfs.Basedata.Application.Contracts; using Win_in.Sfs.Basedata.Application.Contracts;
@ -14,7 +17,10 @@ using Win_in.Sfs.Wms.Inventory.Application.Contracts;
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;
using Win_in.Sfs.Wms.Store.Notes; using Win_in.Sfs.Wms.Store.Notes;
using Win_in.Sfs.Wms.Store.Options;
using static IdentityModel.ClaimComparer;
namespace Win_in.Sfs.Wms.Store.Application; namespace Win_in.Sfs.Wms.Store.Application;
@ -30,6 +36,8 @@ public class KittingIssueJobAppService
private readonly ITransferLibJobAppService _transferLibJobAppService; private readonly ITransferLibJobAppService _transferLibJobAppService;
private readonly IKittingIssueNoteAppService _kittingIssueNoteAppService; private readonly IKittingIssueNoteAppService _kittingIssueNoteAppService;
private readonly IExpectOutAppService _expectOutAppService; private readonly IExpectOutAppService _expectOutAppService;
private readonly IHttpClientFactory _httpClientFactory;
private readonly IOptions<RestoOptions> _options;
protected IKittingIssueRequestAppService KittingIssueRequestAppService => protected IKittingIssueRequestAppService KittingIssueRequestAppService =>
LazyServiceProvider.LazyGetRequiredService<IKittingIssueRequestAppService>(); LazyServiceProvider.LazyGetRequiredService<IKittingIssueRequestAppService>();
@ -37,7 +45,13 @@ public class KittingIssueJobAppService
public KittingIssueJobAppService( public KittingIssueJobAppService(
IKittingIssueJobRepository repository, IKittingIssueJobManager kittingIssueJobManager, IKittingIssueJobRepository repository, IKittingIssueJobManager kittingIssueJobManager,
ILocationAppService locationAppService, ITransferLibJobAppService transferLibJobAppService, ILocationAppService locationAppService, ITransferLibJobAppService transferLibJobAppService,
IKittingIssueNoteAppService kittingIssueNoteAppService, IExpectOutAppService expectOutAppService) : base( IKittingIssueNoteAppService kittingIssueNoteAppService, IExpectOutAppService expectOutAppService
, IHttpClientFactory httpClientFactory
, IOptions<RestoOptions> options
) : base(
repository, kittingIssueJobManager) repository, kittingIssueJobManager)
{ {
_kittingIssueJobManager = kittingIssueJobManager; _kittingIssueJobManager = kittingIssueJobManager;
@ -45,6 +59,8 @@ public class KittingIssueJobAppService
_transferLibJobAppService = transferLibJobAppService; _transferLibJobAppService = transferLibJobAppService;
_kittingIssueNoteAppService = kittingIssueNoteAppService; _kittingIssueNoteAppService = kittingIssueNoteAppService;
_expectOutAppService = expectOutAppService; _expectOutAppService = expectOutAppService;
_httpClientFactory = httpClientFactory;
_options = options;
} }
[HttpPost("add-many")] [HttpPost("add-many")]
@ -56,7 +72,13 @@ public class KittingIssueJobAppService
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false); await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
} }
return await base.CreateManyAsync(inputs).ConfigureAwait(false); var kittingIssueJobDtos=await base.CreateManyAsync(inputs).ConfigureAwait(false);
foreach (var kittingIssueJobDto in kittingIssueJobDtos)
{
await CheckDimensionalStorehouseAsync(kittingIssueJobDto).ConfigureAwait(false);
}
return kittingIssueJobDtos;
} }
[HttpPost("")] [HttpPost("")]
@ -65,7 +87,10 @@ public class KittingIssueJobAppService
await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false); await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false); await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
return await base.CreateAsync(input).ConfigureAwait(false); var kittingIssueJobDto=await base.CreateAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(kittingIssueJobDto).ConfigureAwait(false);
return kittingIssueJobDto;
} }
[HttpPost("invalid")] [HttpPost("invalid")]
@ -268,9 +293,32 @@ public class KittingIssueJobAppService
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse) if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{ {
input.JobStatus = EnumJobStatus.Wait; input.JobStatus = EnumJobStatus.Wait;
}
}
/// <summary>
/// 判断是不是在立体库
/// </summary>
/// <param name="kittingIssueJobDto"></param>
/// <returns></returns>
private async Task CheckDimensionalStorehouseAsync(KittingIssueJobDTO kittingIssueJobDto)
{
var jobDetailInputdetail = kittingIssueJobDto.Details.FirstOrDefault();
//todo 调用立库接口 var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{
//TODO 立体库
var ret = await SyncCoatingJobStereoAsync(new List<KittingIssueJobDTO> { kittingIssueJobDto }, loctionDto.Code).ConfigureAwait(false);
if (ret.Code != "1")
{
throw new UserFriendlyException($"调用立体库不成功!原因:{ret.Message}");
}
} }
} }
/// <summary> /// <summary>
@ -306,5 +354,138 @@ public class KittingIssueJobAppService
await Task.CompletedTask.ConfigureAwait(false); await Task.CompletedTask.ConfigureAwait(false);
} }
private async Task<ReusltObject> SyncCoatingJobStereoAsync(List<KittingIssueJobDTO> input,string p_loc)
{
ReusltObject ret = new ReusltObject();
ret.Code = "1";
ret.Message = "操作成功";
ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd");
try
{
List<IssueJobToRestoDetailDTO> IssueJobToRestoDetailDTOs = new List<IssueJobToRestoDetailDTO>();
IssueJobToRestoDTO main = new IssueJobToRestoDTO();
main.OperatorName = CurrentUser.UserName;
foreach (var job in input)
{
foreach (var jobitem in job.Details)
{
IssueJobToRestoDetailDTOs.Add(new IssueJobToRestoDetailDTO()
{
Count = jobitem.HandledToQty,
ProductNo = jobitem.ItemCode,
NeedSite = p_loc,
WorkNo = job.Number,
TaskNo = job.Number
});
}
}
main.Details = IssueJobToRestoDetailDTOs;
#if DEBUG
string json= System.Text.Json.JsonSerializer.Serialize(main);
_options.Value.Address = "http://localhost:59094/CargoState/SyncCoatingJobStereo";//测试地址
#endif
#region
IssueJobToRestoClient client = new IssueJobToRestoClient(_options.Value.Address, _httpClientFactory.CreateClient());
ret = await client.SyncCoatingJobStereoAsync(main).ConfigureAwait(false);
}
catch(Exception ex) {
ret = new ReusltObject();
ret.Code = "2";
ret.Message=ex.Message;
ret.OperateTime = DateTime.Now.ToString("yyyy-MM-dd");
}
#endregion
return ret;
}
[HttpPost("receive-issue-job-stereo")]
public virtual async Task<ReusltObject> SyncReciveCoatingJobStereoAsync(IssueRequestFromRestoDTO input)
{
#if DEBUG
var json= System.Text.Json.JsonSerializer.Serialize(input);
#endif
List<string> errors = new List<string>();
var ret = new ReusltObject()
{
Code = "1",
OperateTime = DateTime.Now.ToString("yyyy-MM-dd"),
Message = "操作成功"
};
try
{
if (input.Jobs.Count > 0)
{
var inputs = input.Jobs;
var numbers = inputs.Select(p => p.JobNumber);
var query = _repository.WithDetails()
.Where(p => numbers.Contains(p.Number));
var entities = query.ToList();
if (input.Jobs.Count == entities.Count)
{
errors.Add("提交出库任务和WMS出库任务不符,请核对! \n");
}
var dtos = ObjectMapper.Map<List<KittingIssueJob>, List<KittingIssueJobDTO>>(entities);
foreach (var itm in dtos)
{
var first = inputs.FirstOrDefault<IssueJobFromRestoDTO>(p => p.JobNumber == itm.Number);
List<KittingIssueJobDetailDTO> details = new List<KittingIssueJobDetailDTO>();
foreach (var detail in first.Details)
{
KittingIssueJobDetailDTO dto = new KittingIssueJobDetailDTO();
dto.HandledFromLocationCode = detail.FromLocationCode;
dto.HandledToLocationCode = detail.ToLocationCode;
dto.ItemCode = detail.ItemCode;
dto.RecommendFromQty = detail.Qty;
dto.RecommendToQty = detail.Qty;
dto.HandledFromQty = detail.Qty;
dto.HandledToQty = detail.Qty;
details.Add(dto);
}
itm.Details = details;
}
}
else
{
errors.Add("立体库确认单据里无数据! \n");
}
}
catch (Exception ex)
{
ret = new ReusltObject()
{
Code = "2",
OperateTime = DateTime.Now.ToString("yyyy-MM-dd"),
Message = ex.Message
};
return ret;
}
if (errors.Count > 0)
{
ret = new ReusltObject()
{
Code = "2",
OperateTime = DateTime.Now.ToString("yyyy-MM-dd"),
Message = string.Join(",", errors.ToArray())
};
}
return ret;
}
#endregion #endregion
} }

10
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/CoatingIssueJobToRestoClient.cs → be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/IssueJobToRestoClient.cs

@ -23,7 +23,7 @@ namespace MyNamespace
using System = global::System; using System = global::System;
[System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")] [System.CodeDom.Compiler.GeneratedCode("NSwag", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class CoatingIssueJobToRestoClient public partial class IssueJobToRestoClient
{ {
#pragma warning disable 8618 #pragma warning disable 8618
private string _baseUrl; private string _baseUrl;
@ -33,7 +33,7 @@ namespace MyNamespace
private static System.Lazy<System.Text.Json.JsonSerializerOptions> _settings = new System.Lazy<System.Text.Json.JsonSerializerOptions>(CreateSerializerSettings, true); private static System.Lazy<System.Text.Json.JsonSerializerOptions> _settings = new System.Lazy<System.Text.Json.JsonSerializerOptions>(CreateSerializerSettings, true);
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. #pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
public CoatingIssueJobToRestoClient(string baseUrl, System.Net.Http.HttpClient httpClient) public IssueJobToRestoClient(string baseUrl, System.Net.Http.HttpClient httpClient)
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable. #pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
{ {
BaseUrl = baseUrl; BaseUrl = baseUrl;
@ -68,7 +68,7 @@ namespace MyNamespace
/// <returns>Success</returns> /// <returns>Success</returns>
/// <exception cref="ApiException">A server side error occurred.</exception> /// <exception cref="ApiException">A server side error occurred.</exception>
public virtual System.Threading.Tasks.Task<ReusltObject> SyncCoatingJobStereoAsync(CoatingIssueJobToRestoDTO body) public virtual System.Threading.Tasks.Task<ReusltObject> SyncCoatingJobStereoAsync(IssueJobToRestoDTO body)
{ {
return SyncCoatingJobStereoAsync(body, System.Threading.CancellationToken.None); return SyncCoatingJobStereoAsync(body, System.Threading.CancellationToken.None);
} }
@ -76,7 +76,7 @@ namespace MyNamespace
/// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param> /// <param name="cancellationToken">A cancellation token that can be used by other objects or threads to receive notice of cancellation.</param>
/// <returns>Success</returns> /// <returns>Success</returns>
/// <exception cref="ApiException">A server side error occurred.</exception> /// <exception cref="ApiException">A server side error occurred.</exception>
public virtual async System.Threading.Tasks.Task<ReusltObject> SyncCoatingJobStereoAsync(CoatingIssueJobToRestoDTO body, System.Threading.CancellationToken cancellationToken) public virtual async System.Threading.Tasks.Task<ReusltObject> SyncCoatingJobStereoAsync(IssueJobToRestoDTO body, System.Threading.CancellationToken cancellationToken)
{ {
var client_ = _httpClient; var client_ = _httpClient;
var disposeClient_ = false; var disposeClient_ = false;
@ -94,7 +94,7 @@ namespace MyNamespace
var urlBuilder_ = new System.Text.StringBuilder(); var urlBuilder_ = new System.Text.StringBuilder();
if (!string.IsNullOrEmpty(_baseUrl)) urlBuilder_.Append(_baseUrl); if (!string.IsNullOrEmpty(_baseUrl)) urlBuilder_.Append(_baseUrl);
// Operation Path: "CargoState/SyncCoatingJobStereo" // Operation Path: "CargoState/SyncCoatingJobStereo"
urlBuilder_.Append("CargoState/SyncCoatingJobStereo"); urlBuilder_.Append("CargoState/SyncCoatingJobStereo");//修改路由
PrepareRequest(client_, request_, urlBuilder_); PrepareRequest(client_, request_, urlBuilder_);

103
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/proxy/ProxyIssueJobDto.cs

@ -0,0 +1,103 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Win_in.Sfs.Wms.Store.Jobs.IssueJobs.proxy;
/// <summary>
/// 喷涂主表
/// </summary>
public class IssueRequestFromRestoDTO
{
public string RequestNumber { set; get; }
public List<IssueJobFromRestoDTO> Jobs { set; get; }
}
/// <summary>
/// 立体库发给WMS明细
/// </summary>
public class IssueJobFromRestoDetailDTO
{
[Display(Name = "零件编号")]
public string ItemCode { set; get; }
[Display(Name = "目标库位")]
public string ToLocationCode { set; get; }
[Display(Name = "来源库位")]
public string FromLocationCode { set; get; }
[Display(Name = "数量")]
public decimal Qty { set; get; }
}
/// <summary>
/// 立体库发给立体库任务单号
/// </summary>
public class IssueJobFromRestoDTO
{
[Display(Name = "任务单号")]
public string JobNumber { set; get; }
[Display(Name = "明细")]
public List<IssueJobFromRestoDetailDTO> Details { set; get; }
}
/// <summary>
/// 发给立体库主表
/// </summary>
/// <summary>
/// 发给立体库子表
/// </summary>
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class IssueJobToRestoDTO
{
[System.Text.Json.Serialization.JsonPropertyName("uuid")]
public System.Guid Uuid { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("operatorName")]
public string OperatorName { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("details")]
public System.Collections.Generic.ICollection<IssueJobToRestoDetailDTO> Details { get; set; }
}
/// <summary>
/// 发给立体库主表
/// </summary>
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class IssueJobToRestoDetailDTO
{
[System.Text.Json.Serialization.JsonPropertyName("workNo")]
public string WorkNo { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("taskNo")]
public string TaskNo { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("needSite")]
public string NeedSite { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("productNo")]
public string ProductNo { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("count")]
public decimal Count { get; set; }
}
/// <summary>
/// 返回结果
/// </summary>
[System.CodeDom.Compiler.GeneratedCode("NJsonSchema", "14.0.7.0 (NJsonSchema v11.0.0.0 (Newtonsoft.Json v13.0.0.0))")]
public partial class ReusltObject
{
[System.Text.Json.Serialization.JsonPropertyName("code")]
public string Code { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("message")]
public string Message { get; set; }
[System.Text.Json.Serialization.JsonPropertyName("operateTime")]
public string OperateTime { get; set; }
}

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Chassis/Chassis.cs

@ -46,4 +46,12 @@ public class Chassis : SfsAggregateRootBase
/// </summary> /// </summary>
[Display(Name = "执行位置排序列")] [Display(Name = "执行位置排序列")]
public long SortNumber { get; set; } public long SortNumber { get; set; }
public string ItemCode { get; set; }
public string ItemName { get; set; }
public string ItemDesc1 { get; set; }
public string ItemDesc2 { get; set; }
} }

Loading…
Cancel
Save