Browse Source

暂存

Agv分支2024-11-19
赵新宇 5 months ago
parent
commit
626471060a
  1. 6
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Locations/DTOs/LocationDTO.cs
  2. 6
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Locations/Inputs/LocationEditInput.cs
  3. 6
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Locations/Inputs/LocationImportInput.cs
  4. 2
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/DTOs/PostionLocationDTO.cs
  5. 2
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Locations/Location.cs
  6. 84
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocation.cs
  7. 6
      be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Job/EnumJobStatus.cs
  8. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/AgvJobs/AgvJobAccountService.cs
  9. 211
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/AssembleIssueJobs/AssembleIssueJobAppService.cs
  10. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/CoatingIssueJobs/CoatingIssueJobAppService.cs
  11. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs
  12. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/KittingIssueJobs/KittingIssueJobAppService.cs
  13. 8
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs
  14. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/AssembleIssueRequestManager.cs
  15. 4
      build/src/docker/publish/conf/settings/appsettings.Development.json

6
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Locations/DTOs/LocationDTO.cs

@ -189,4 +189,10 @@ public class LocationDTO : SfsBaseDataDTOBase, IHasCode, IHasName, IHasLocationS
/// </summary>
[Display(Name = "是否可以拆托")]
public bool EnableSplitPallet { get; set; } = true;
/// <summary>
/// 是否AGV配送
/// </summary>
[Display(Name = "是否AGV配送")]
public bool EnableAgv { get; set; } = false; //是否AGV配送
}

6
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Locations/Inputs/LocationEditInput.cs

@ -177,6 +177,12 @@ public class LocationEditInput : SfsBaseDataWithWarehouseCreateOrUpdateInputBase
/// </summary>
[Display(Name = "是否可以拆托")]
public bool EnableSplitPallet { get; set; } = true;
/// <summary>
/// 是否AGV配送
/// </summary>
[Display(Name = "是否AGV配送")]
public bool EnableAgv { get; set; } = false; //是否AGV配送
#endregion
#region Create

6
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Locations/Inputs/LocationImportInput.cs

@ -210,6 +210,12 @@ public class LocationImportInput : SfsBaseDataImportInputBase, IHasLocationSwitc
[Required(ErrorMessage = "{0}是必填项")]
public bool EnableSplitPallet { get; set; } = true;
/// <summary>
/// 是否AGV配送
/// </summary>
[Display(Name = "是否AGV配送")]
public bool EnableAgv { get; set; } = false; //是否AGV配送
/// <summary>
/// 描述
/// </summary>

2
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/DTOs/PostionLocationDTO.cs

@ -5,7 +5,7 @@ using Win_in.Sfs.Shared.Domain.Shared;
namespace Win_in.Sfs.Basedata.Application.Contracts;
/// <summary>
/// 库位
/// 工作站库位对应关系
/// </summary>
[Display(Name = "工作站库位对应关系")]
public class PostionLocationDTO : SfsBaseDataDTOBase, IHasCode, IHasName

2
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Locations/Location.cs

@ -98,5 +98,5 @@ public class Location : SfsBaseDataAggregateRootBase, IHasCode, IHasName, IHasLo
public bool EnableReturnFromCustomer { get; set; } = true; // 可以接收客户退货
public bool EnableSplitBox { get; set; } = true; //是否可以拆箱
public bool EnableSplitPallet { get; set; } = true; //是否可以拆托
public bool EnableAgv { get; set; } = false; //是否AGV配送
}

84
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocation.cs

@ -4,14 +4,16 @@ using Win_in.Sfs.Shared.Domain.Entities;
using Win_in.Sfs.Shared.Domain.Shared;
namespace Win_in.Sfs.Basedata.Domain;
/// <summary>
/// 工位 库位 关系
/// </summary>
public class PostionLocation : SfsBaseDataAggregateRootBase, IHasCode, IHasName
{
/// <summary>
/// 代码
/// </summary>
[IgnoreUpdate]
[Display(Name ="工作站编号")]
[Display(Name = "工位代码")]
public string Code { get; set; }
/// <summary>
@ -25,82 +27,4 @@ public class PostionLocation : SfsBaseDataAggregateRootBase, IHasCode, IHasName
/// </summary>
[Display(Name ="库位")]
public string LocationCode { get; set; }
///// <summary>
///// 库位类型
///// </summary>
//public EnumLocationType Type { get; set; }
///// <summary>
///// ERP系统库位代码
///// </summary>
//public string ErpLocationCode { get; set; }
///// <summary>
///// 仓库代码
///// </summary>
//public string WarehouseCode { get; set; }
///// <summary>
///// 区域代码
///// </summary>
//public string AreaCode { get; set; }
///// <summary>
///// 库位组代码
///// </summary>
//public string LocationGroupCode { get; set; }
///// <summary>
///// 工作组代码
///// </summary>
//public string WorkGroupCode { get; set; }
///// <summary>
///// 货架号
///// </summary>
//public string ShelfCode { get; set; }
///// <summary>
///// 行号
///// </summary>
//public int RowCode { get; set; }
///// <summary>
///// 列号
///// </summary>
//public int ColumnCode { get; set; }
///// <summary>
///// 默认库存状态
///// </summary>
//public EnumInventoryStatus DefaultInventoryStatus { get; set; }
///// <summary>
///// 拣料优先级
///// </summary>
//public int PickPriority { get; set; }
///// <summary>
///// 拣料顺序
///// </summary>
//public int PickOrder { get; set; }
//public bool EnableMixItem { get; set; } = true; // 可以混物品
//public bool EnableMixLot { get; set; } = true; // 可以混批次
//public bool EnableMixStatus { get; set; } = true; // 可以混状态
//public bool EnableNegative { get; set; } = true; // 可以负库存
//public bool EnableKeepZero { get; set; } = true; // 可以保留零库存
//public bool EnableOpportunityCount { get; set; } = true; // 可以机会盘点
//public bool EnablePick { get; set; } = true; // 可以领料
//public bool EnableOverPick { get; set; } = true; // 可以过量领料
//public bool EnableWholeStore { get; set; } = true; // 可以整包存储
//public bool EnableBreakStore { get; set; } = true; // 可以散件存储
//public bool EnableShip { get; set; } = true; // 可以发出
//public bool EnableReceive { get; set; } = true; // 可以接收
//public bool EnableReturnToSupplier { get; set; } = true; // 可以退货给供应商
//public bool EnableReturnFromCustomer { get; set; } = true; // 可以接收客户退货
//public bool EnableSplitBox { get; set; } = true; //是否可以拆箱
//public bool EnableSplitPallet { get; set; } = true; //是否可以拆托
}

6
be/Modules/Shared/src/Win_in.Sfs.Shared.Domain.Shared/Enums/Job/EnumJobStatus.cs

@ -52,4 +52,10 @@ public enum EnumJobStatus
/// </summary>
[Display(Name = "待库移")]
Wait=30,
/// <summary>
/// 待AGV库移
/// </summary>
[Display(Name = "待AGV库移")]
WaitAgv = 31,
}

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/AgvJobs/AgvJobAccountService.cs

@ -103,6 +103,7 @@ public class AgvJobAccountService : ApplicationService
}
return res;
return null;
}
private async Task CheckPostionLocation(AgvRequestOnlyJobHK request, Action<string> action, List<string> errors)
{

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

@ -107,7 +107,7 @@ public class AssembleIssueJobAppService
{
await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false);
//如果是立库 就给直接承接了
var dimensionalStorehouseflag = await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
var dimensionalStorehouseflag = await UpdateJobStatusWaitByDimensionalStorehouseAsync(input).ConfigureAwait(false);
if (dimensionalStorehouseflag)
{
input.IsClaims = true;
@ -118,12 +118,26 @@ public class AssembleIssueJobAppService
? "LYF"
: _options.Value.StereosPassword;
}
//如果是Agv
var agvFlag = await UpdateJobStatusWaitByAgvAsync(input).ConfigureAwait(false);
if (agvFlag)
{
input.IsClaims = true;
input.ClaimsUserId = string.IsNullOrEmpty(_options.Value.StereosUser)
? "AGV"
: _options.Value.StereosUser;
input.ClaimsUserName = string.IsNullOrEmpty(_options.Value.StereosPassword)
? "AGV"
: _options.Value.StereosPassword;
}
}
var assembleIssueJobDtos = await base.CreateManyAsync(inputs).ConfigureAwait(false);
foreach (var assembleIssueJobDto in assembleIssueJobDtos)
{
await CheckDimensionalStorehouseAsync(assembleIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(assembleIssueJobDto).ConfigureAwait(false);
await DoingAgvAsync(assembleIssueJobDto).ConfigureAwait(false);
}
return assembleIssueJobDtos;
@ -133,10 +147,12 @@ public class AssembleIssueJobAppService
public override async Task<AssembleIssueJobDTO> CreateAsync(AssembleIssueJobEditInput input)
{
await CheckMinRowAndSetStatusAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
await UpdateJobStatusWaitByDimensionalStorehouseAsync(input).ConfigureAwait(false);
await UpdateJobStatusWaitByAgvAsync(input).ConfigureAwait(false);
var assembleIssueJobDto = await base.CreateAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(assembleIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(assembleIssueJobDto).ConfigureAwait(false);
await DoingAgvAsync(assembleIssueJobDto).ConfigureAwait(false);
return assembleIssueJobDto;
}
@ -460,17 +476,61 @@ public class AssembleIssueJobAppService
[HttpPost("get-job-by-packing/{packingCode}")]
public virtual async Task<AssembleIssueJobDTO> GetJobByPackingCodeAsync(string packingCode)
{
var list=await _repository.GetListAsync(p => p.Details.Any(r => r.RecommendFromPackingCode==packingCode)).ConfigureAwait(false);
var list = await _repository.GetListAsync(p => p.Details.Any(r => r.RecommendFromPackingCode == packingCode)).ConfigureAwait(false);
if (list == null || list.Count < 1)
{
throw new UserFriendlyException("未找到该箱码的任务");
}
var dto=ObjectMapper.Map<AssembleIssueJob, AssembleIssueJobDTO>(list.First());
var dto = ObjectMapper.Map<AssembleIssueJob, AssembleIssueJobDTO>(list.First());
return dto;
}
#region 立库
/// <summary>
/// 调用立体库
/// </summary>
/// <param name="assembleIssueJobDto"></param>
/// <returns></returns>
private async Task DoingDimensionalStorehouseAsync(AssembleIssueJobDTO assembleIssueJobDto)
{
var jobDetailInputdetail = assembleIssueJobDto.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{
//TODO 立体库
var ret = await SyncIssueJobStereoAsync(new List<AssembleIssueJobDTO> { assembleIssueJobDto },
jobDetailInputdetail.RecommendToLocationCode, assembleIssueJobDto.Id).ConfigureAwait(false);
if (ret.Code != 0)
{
throw new UserFriendlyException($"调用立体库不成功!原因:{ret.Message}");
}
}
}
/// <summary>
/// 判断是不是在立体库
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private async Task<bool> UpdateJobStatusWaitByDimensionalStorehouseAsync(AssembleIssueJobEditInput input)
{
var jobDetailInputdetail = input.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{
input.JobStatus = EnumJobStatus.Wait;
return true;
}
return false;
}
/// <summary>
/// 立体库同步
/// </summary>
@ -611,6 +671,7 @@ public class AssembleIssueJobAppService
foreach (var itm in dtos)
{
var first = jobs.FirstOrDefault(p => p.JobNumber == itm.Number);
var itmDetails = itm.Details.ToList();
var details = new List<AssembleIssueJobDetailDTO>();
@ -723,6 +784,80 @@ public class AssembleIssueJobAppService
#endregion
#region Agv
/// <summary>
/// 调用AGV
/// </summary>
/// <param name="assembleIssueJobDto"></param>
/// <returns></returns>
private async Task DoingAgvAsync(AssembleIssueJobDTO assembleIssueJobDto)
{
var jobDetailInputdetail = assembleIssueJobDto.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.EnableAgv)
{
//TODO AGV
var ret = await CallAgvAsync(new List<AssembleIssueJobDTO> { assembleIssueJobDto }).ConfigureAwait(false);
#if DEBUG
ret.Code = 1;
#endif
if (ret.Code != 0)
{
throw new UserFriendlyException($"调用AGV不成功!原因:{ret.Message}");
}
}
}
/// <summary>
/// 判断是不是有Agv
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private async Task<bool> UpdateJobStatusWaitByAgvAsync(AssembleIssueJobEditInput input)
{
var jobDetailInputdetail = input.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.EnableAgv)
{
input.JobStatus = EnumJobStatus.WaitAgv;
return true;
}
return false;
}
/// <summary>
/// 调用 Agv 接口
/// </summary>
/// <param name="input"></param>
/// <param name="pLoc"></param>
/// <param name="uid"></param>
/// <returns></returns>
[HttpPost("call-agv")]
public async Task<ReusltObject> CallAgvAsync(List<AssembleIssueJobDTO> input)
{
return null;
}
[HttpPost("call-back-agv")]
public virtual async Task<ReusltObject> CallBackAgvAsync(IssueRequestFromRestoDTO input)
{
return null;
}
#endregion
#region 私有
/// <summary>
@ -789,70 +924,6 @@ public class AssembleIssueJobAppService
}
}
/// <summary>
/// 判断是不是在立体库
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
//private async Task CheckDimensionalStorehouseAsync(AssembleIssueJobEditInput input)
//{
// var jobDetailInputdetail = input.Details.FirstOrDefault();
// var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
// .ConfigureAwait(false);
// if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
// {
// input.JobStatus = EnumJobStatus.Wait;
// }
//}
/// <summary>
/// 判断是不是在立体库
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
private async Task<bool> CheckDimensionalStorehouseAsync(AssembleIssueJobEditInput input)
{
var jobDetailInputdetail = input.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{
input.JobStatus = EnumJobStatus.Wait;
return true;
}
return false;
}
/// <summary>
/// 判断是不是在立体库
/// </summary>
/// <param name="assembleIssueJobDto"></param>
/// <returns></returns>
private async Task CheckDimensionalStorehouseAsync(AssembleIssueJobDTO assembleIssueJobDto)
{
var jobDetailInputdetail = assembleIssueJobDto.Details.FirstOrDefault();
var loctionDto = await _locationAppService.GetByCodeAsync(jobDetailInputdetail.RecommendFromLocationCode)
.ConfigureAwait(false);
if (loctionDto.Type == EnumLocationType.DimensionalStorehouse)
{
//TODO 立体库
var ret = await SyncIssueJobStereoAsync(new List<AssembleIssueJobDTO> { assembleIssueJobDto },
jobDetailInputdetail.RecommendToLocationCode, assembleIssueJobDto.Id).ConfigureAwait(false);
if (ret.Code != 0)
{
throw new UserFriendlyException($"调用立体库不成功!原因:{ret.Message}");
}
}
}
/// <summary>
/// 修改当前任务状态 和 该任务的请求状态
/// </summary>

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

@ -105,7 +105,7 @@ public class CoatingIssueJobAppService
var coatingIssueJobDtos = await base.CreateManyAsync(inputs).ConfigureAwait(false);
foreach (var coatingIssueJobDto in coatingIssueJobDtos)
{
await CheckDimensionalStorehouseAsync(coatingIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(coatingIssueJobDto).ConfigureAwait(false);
}
return coatingIssueJobDtos;
@ -118,7 +118,7 @@ public class CoatingIssueJobAppService
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
var coatingIssueJobDto = await base.CreateAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(coatingIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(coatingIssueJobDto).ConfigureAwait(false);
return coatingIssueJobDto;
}
@ -650,11 +650,11 @@ public class CoatingIssueJobAppService
}
/// <summary>
/// 判断是不是在立体库
/// 调用立体库
/// </summary>
/// <param name="coatingIssueJobDto"></param>
/// <returns></returns>
private async Task CheckDimensionalStorehouseAsync(CoatingIssueJobDTO coatingIssueJobDto)
private async Task DoingDimensionalStorehouseAsync(CoatingIssueJobDTO coatingIssueJobDto)
{
var jobDetailInputdetail = coatingIssueJobDto.Details.FirstOrDefault();

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/InjectionIssueJobs/InjectionIssueJobAppService.cs

@ -95,7 +95,7 @@ public class InjectionIssueJobAppService
var injectionIssueJobDtos = await base.CreateManyAsync(inputs).ConfigureAwait(false);
foreach (var injectionIssueJobDto in injectionIssueJobDtos)
{
await CheckDimensionalStorehouseAsync(injectionIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(injectionIssueJobDto).ConfigureAwait(false);
}
return injectionIssueJobDtos;
@ -108,7 +108,7 @@ public class InjectionIssueJobAppService
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
var injectionIssueJobDto = await base.CreateAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(injectionIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(injectionIssueJobDto).ConfigureAwait(false);
return injectionIssueJobDto;
}
@ -601,11 +601,11 @@ public class InjectionIssueJobAppService
}
/// <summary>
/// 判断是不是在立体库
/// 调用立体库
/// </summary>
/// <param name="injectionIssueJobDto"></param>
/// <returns></returns>
private async Task CheckDimensionalStorehouseAsync(InjectionIssueJobDTO injectionIssueJobDto)
private async Task DoingDimensionalStorehouseAsync(InjectionIssueJobDTO injectionIssueJobDto)
{
var jobDetailInputdetail = injectionIssueJobDto.Details.FirstOrDefault();

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

@ -107,7 +107,7 @@ public class KittingIssueJobAppService
var kittingIssueJobDtos = await base.CreateManyAsync(inputs).ConfigureAwait(false);
foreach (var kittingIssueJobDto in kittingIssueJobDtos)
{
await CheckDimensionalStorehouseAsync(kittingIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(kittingIssueJobDto).ConfigureAwait(false);
}
return kittingIssueJobDtos;
@ -120,7 +120,7 @@ public class KittingIssueJobAppService
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
var kittingIssueJobDto = await base.CreateAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(kittingIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(kittingIssueJobDto).ConfigureAwait(false);
return kittingIssueJobDto;
}
@ -615,11 +615,11 @@ public class KittingIssueJobAppService
}
/// <summary>
/// 判断是不是在立体库
/// 调用立体库
/// </summary>
/// <param name="kittingIssueJobDto"></param>
/// <returns></returns>
private async Task CheckDimensionalStorehouseAsync(KittingIssueJobDTO kittingIssueJobDto)
private async Task DoingDimensionalStorehouseAsync(KittingIssueJobDTO kittingIssueJobDto)
{
var jobDetailInputdetail = kittingIssueJobDto.Details.FirstOrDefault();

8
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/IssueJobs/SparePartIssueJobs/SparePartIssueJobAppService.cs

@ -95,7 +95,7 @@ public class SparePartIssueJobAppService
var sparePartIssueJobDtos = await base.CreateManyAsync(inputs).ConfigureAwait(false);
foreach (var sparePartIssueJobDto in sparePartIssueJobDtos)
{
await CheckDimensionalStorehouseAsync(sparePartIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(sparePartIssueJobDto).ConfigureAwait(false);
}
return sparePartIssueJobDtos;
@ -108,7 +108,7 @@ public class SparePartIssueJobAppService
await CheckDimensionalStorehouseAsync(input).ConfigureAwait(false);
var sparePartIssueJobDto = await base.CreateAsync(input).ConfigureAwait(false);
await CheckDimensionalStorehouseAsync(sparePartIssueJobDto).ConfigureAwait(false);
await DoingDimensionalStorehouseAsync(sparePartIssueJobDto).ConfigureAwait(false);
return sparePartIssueJobDto;
}
@ -591,11 +591,11 @@ public class SparePartIssueJobAppService
}
/// <summary>
/// 判断是不是在立体库
/// 调用立体库
/// </summary>
/// <param name="sparePartIssueJobDto"></param>
/// <returns></returns>
private async Task CheckDimensionalStorehouseAsync(SparePartIssueJobDTO sparePartIssueJobDto)
private async Task DoingDimensionalStorehouseAsync(SparePartIssueJobDTO sparePartIssueJobDto)
{
var jobDetailInputdetail = sparePartIssueJobDto.Details.FirstOrDefault();

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Requests/IssueRequests/AssembleIssueRequests/AssembleIssueRequestManager.cs

@ -37,7 +37,7 @@ public class AssembleIssueRequestManager
entity.Agree();
entity.RequestStatus = EnumRequestStatus.Partial;
await _repository.InsertAsync(entity,true).ConfigureAwait(false);
await LocalEventBus.PublishAsync(new SfsHandledEntityEventData<AssembleIssueRequest>(entity), false)
await LocalEventBus.PublishAsync(new SfsHandledEntityEventData<AssembleIssueRequest>(entity), false)
.ConfigureAwait(false);
return entity;

4
build/src/docker/publish/conf/settings/appsettings.Development.json

@ -147,8 +147,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