Browse Source

更新版本

dev_DY_CC
赵新宇 1 year ago
parent
commit
b0597d2244
  1. 27
      be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.EosAgent/Incoming/PlanReader.cs
  2. 1
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Permissions/BasedataPermissionDefinitionProvider.cs
  3. 33
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/DTOs/PositionCodeDTO.cs
  4. 9
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/IPositionCodeService.cs
  5. 39
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeEditInput.cs
  6. 37
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeImportInput.cs
  7. 21
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/PositionCodePermissions.cs
  8. 46
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PurchasePrices/DTOs/PurchasePriceSheetDTO.cs
  9. 4
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PurchasePrices/IPurchasePriceSheetAppService.cs
  10. 1
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/BasedataApplicationAutoMapperProfile.cs
  11. 49
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCode/PositionCodeAppService.cs
  12. 28
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCode/PositionCodeAutoMapperProfile.cs
  13. 18
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PurchasePrices/PurchasePriceSheetAppService.cs
  14. 2
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PurchasePrices/PurchasePriceSheetAutoMapperProfile.cs
  15. 9
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/IPositionCodeManager.cs
  16. 8
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/IPositionCodeRepository.cs
  17. 34
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/PositionCode.cs
  18. 28
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/PositionCodeManager.cs
  19. 25
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PurchasePrices/PurchasePriceSheet.cs
  20. 3
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContext.cs
  21. 1
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContextModelCreatingExtensions.cs
  22. 1
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs
  23. 3607
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Migrations/20240222061733_myInit.Designer.cs
  24. 1424
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Migrations/20240222061733_myInit.cs
  25. 314
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Migrations/BasedataDbContextModelSnapshot.cs
  26. 35
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PositionCode/PositionCodeDbContextModelCreatingExtensions.cs
  27. 12
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PositionCode/PositionCodeEfCoreRepository.cs
  28. 7
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PurchasePrices/PurchasePriceSheetDbContextModelCreatingExtensions.cs
  29. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/PutawayNotes/IPutawayNoteAppService.cs
  30. 159
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/Dtos/SplitPackingRecDto.cs
  31. 17
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/ISplitPackingRecAppService.cs
  32. 161
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs
  33. 14
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/Inputs/SplitPackingRecImportInput.cs
  34. 20
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/PutawayNotes/PutawayNoteAppService.cs
  35. 66
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs
  36. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Orders/PurchaseOrders/PurchaseOrderAppService.cs
  37. 42
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/SplitPackings/SplitPackingRecAppService.cs
  38. 17
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/SplitPackings/SplitPackingRecAutoMapperProfile.cs
  39. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/StoreApplicationAutoMapperProfile.cs
  40. 5
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain.Shared/SplitPackings/OprTypeEnum.cs
  41. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/SplitPackings/ISplitPackingRecManager.cs
  42. 119
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/SplitPackings/SplitPackingRec.cs
  43. 126
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/SplitPackings/SplitPackingRecManager.cs
  44. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Win_in.Sfs.Wms.Store.Domain.csproj
  45. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/ExchangeData/ExchangeDataDbContextModelCreatingExtensions.cs
  46. 21669
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Migrations/20240222014023_Mig_Store_Init.Designer.cs
  47. 644
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Migrations/20240222014023_Mig_Store_Init.cs
  48. 856
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Migrations/StoreDbContextModelSnapshot.cs
  49. 45
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/SplitPackings/SplitPackingRecDbContextModelCreatingExtensions.cs

27
be/DataExchange/Fawtyg/Win_in.Sfs.Wms.DataExchange.Fawtyg.EosAgent/Incoming/PlanReader.cs

@ -5,6 +5,7 @@ using System.Text.Json;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using Volo.Abp.Guids; using Volo.Abp.Guids;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.DataExchange.Domain; using Win_in.Sfs.Wms.DataExchange.Domain;
using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.EOS; using Win_in.Sfs.Wms.DataExchange.Domain.Fawtyg.EOS;
@ -20,17 +21,20 @@ public class PlanReader : IReader
private readonly IIncomingFromExternalManager _incomingFromExternalManager; private readonly IIncomingFromExternalManager _incomingFromExternalManager;
private readonly ILogger<PlanReader> _logger; private readonly ILogger<PlanReader> _logger;
private readonly IGuidGenerator _guidGenerator; private readonly IGuidGenerator _guidGenerator;
private readonly IPurchasePriceSheetAppService _purchasePriceSheetAppService;
public PlanReader( public PlanReader(
IPlanManager planManager IPlanManager planManager
, IIncomingFromExternalManager incomingFromExternalManager , IIncomingFromExternalManager incomingFromExternalManager
, ILogger<PlanReader> logger , ILogger<PlanReader> logger
, IGuidGenerator guidGenerator , IGuidGenerator guidGenerator,
IPurchasePriceSheetAppService purchasePriceSheetAppService
) )
{ {
_planManager = planManager; _planManager = planManager;
_incomingFromExternalManager = incomingFromExternalManager; _incomingFromExternalManager = incomingFromExternalManager;
_logger = logger; _logger = logger;
_guidGenerator = guidGenerator; _guidGenerator = guidGenerator;
_purchasePriceSheetAppService = purchasePriceSheetAppService;
} }
@ -43,6 +47,12 @@ public class PlanReader : IReader
_logger.LogInformation("no plans"); _logger.LogInformation("no plans");
return new List<IncomingFromExternal>(); return new List<IncomingFromExternal>();
} }
var pobillno = await GetPriceItems(toBeProcessedPlans).ConfigureAwait(false);
if (pobillno.Count > 0)
{
toBeProcessedPlans = toBeProcessedPlans.Where(r => !pobillno.Contains(r.PlanBillNo)).ToList();
}
//Plan逐一转换为PurchaseOrder //Plan逐一转换为PurchaseOrder
var incomingDataList = BuildIncomingFromExternalFromPlanAsync(toBeProcessedPlans); var incomingDataList = BuildIncomingFromExternalFromPlanAsync(toBeProcessedPlans);
await _incomingFromExternalManager.CreateBulkAsync(incomingDataList).ConfigureAwait(false); await _incomingFromExternalManager.CreateBulkAsync(incomingDataList).ConfigureAwait(false);
@ -50,7 +60,22 @@ public class PlanReader : IReader
await _planManager.UpdateProcessedListAsync(toBeProcessedPlans).ConfigureAwait(false); await _planManager.UpdateProcessedListAsync(toBeProcessedPlans).ConfigureAwait(false);
return incomingDataList; return incomingDataList;
} }
private async Task<List<string>> GetPriceItems(List<Plan> toBeProcessedPlans)
{
List<string> pobillno = new List<string>();
foreach (var plan in toBeProcessedPlans)
{
if (pobillno.Contains(plan.PlanBillNo)) continue;
var price = await _purchasePriceSheetAppService.GetByItemCodeAsync(plan.ERP).ConfigureAwait(false);
if (price == null)
{
pobillno.Add(plan.PlanBillNo);
}
}
return pobillno;
}
private List<IncomingFromExternal> BuildIncomingFromExternalFromPlanAsync(List<Plan> toBeProcessedPlans) private List<IncomingFromExternal> BuildIncomingFromExternalFromPlanAsync(List<Plan> toBeProcessedPlans)
{ {
var incomingDataList = new List<IncomingFromExternal>(); var incomingDataList = new List<IncomingFromExternal>();

1
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Permissions/BasedataPermissionDefinitionProvider.cs

@ -35,6 +35,7 @@ public class BasedataPermissionDefinitionProvider : PermissionDefinitionProvider
basedataGroup.AddItemCategoryPermission(); basedataGroup.AddItemCategoryPermission();
basedataGroup.AddItemPackPermission(); basedataGroup.AddItemPackPermission();
basedataGroup.AddCategoryPermission(); basedataGroup.AddCategoryPermission();
basedataGroup.AddPositionCodePermission();
basedataGroup.AddWorkShopPermission(); basedataGroup.AddWorkShopPermission();
basedataGroup.AddDockPermission(); basedataGroup.AddDockPermission();
basedataGroup.AddLocationGroupPermission(); basedataGroup.AddLocationGroupPermission();

33
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/DTOs/PositionCodeDTO.cs

@ -0,0 +1,33 @@
using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.Application.Contracts;
[Display(Name = "位置码")]
public class PositionCodeDTO : SfsBaseDataDTOBase, IHasCode
{
/// <summary>
/// 代码
/// </summary>
[Display(Name = "代码")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string Code { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Display(Name = "物料号")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PartCode { get; set; }
/// <summary>
/// 标包数量
/// </summary>
[Display(Name = "标包数量")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 库位
/// </summary>
[Display(Name = "库位")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string LocationCode { get; set; }
}

9
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/IPositionCodeService.cs

@ -0,0 +1,9 @@
using Win_in.Sfs.Shared.Application.Contracts;
namespace Win_in.Sfs.Basedata.Application.Contracts;
public interface IPositionCodeService
: ISfsBaseDataAppServiceBase<PositionCodeDTO, SfsBaseDataRequestInputBase, PositionCodeEditInput>
, ISfsGetByCodeAppService<PositionCodeDTO>
{
}

39
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeEditInput.cs

@ -0,0 +1,39 @@
using System;
using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.Application.Contracts;
[Serializable]
public class PositionCodeEditInput : SfsBaseDataCreateOrUpdateInputBase
{
#region Base
/// <summary>
/// 物料号
/// </summary>
[Display(Name = "物料号")]
public string PartCode { get; set; }
/// <summary>
/// 标包数量
/// </summary>
[Display(Name = "标包数量")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 库位
/// </summary>
[Display(Name = "库位")]
public string LocationCode { get; set; }
#endregion
#region Create
/// <summary>
/// 代码
/// </summary>
[Display(Name = "代码")]
[Required(ErrorMessage = "{0}是必填项")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string Code { get; set; }
#endregion
}

37
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/Inputs/PositionCodeImportInput.cs

@ -0,0 +1,37 @@
using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.Application.Contracts;
[Display(Name = "位置码")]
public class PositionCodeImportInput : SfsBaseDataImportInputBase
{
/// <summary>
/// 代码
/// </summary>
[Key]
[Display(Name = "代码")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string Code { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Display(Name = "物料号")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PartCode { get; set; }
/// <summary>
/// 标包数量
/// </summary>
[Display(Name = "标包数量")]
[Required(ErrorMessage = "{0}是必填项")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 库位
/// </summary>
[Display(Name = "库位")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string LocationCode { get; set; }
}

21
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PositionCode/PositionCodePermissions.cs

@ -0,0 +1,21 @@
using Volo.Abp.Authorization.Permissions;
using Win_in.Sfs.Basedata.Domain;
namespace Win_in.Sfs.Basedata.Application.Contracts;
public static class PositionCodePermissions
{
public const string Default = BasedataPermissions.GroupName + "." + nameof(PositionCode);
public const string Create = Default + "." + BasedataPermissions.CreateStr;
public const string Update = Default + "." + BasedataPermissions.UpdateStr;
public const string Delete = Default + "." + BasedataPermissions.DeleteStr;
public static void AddPositionCodePermission(this PermissionGroupDefinition permissionGroup)
{
var positionCodePermission = permissionGroup.AddPermission(Default, BasedataPermissionDefinitionProvider.L(nameof(PositionCode)));
positionCodePermission.AddChild(Create, BasedataPermissionDefinitionProvider.L(BasedataPermissions.CreateStr));
positionCodePermission.AddChild(Update, BasedataPermissionDefinitionProvider.L(BasedataPermissions.UpdateStr));
positionCodePermission.AddChild(Delete, BasedataPermissionDefinitionProvider.L(BasedataPermissions.DeleteStr));
}
}

46
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PurchasePrices/DTOs/PurchasePriceSheetDTO.cs

@ -12,55 +12,31 @@ namespace Win_in.Sfs.Basedata.Application.Contracts;
/// </summary> /// </summary>
[Display(Name = "采购价格单")] [Display(Name = "采购价格单")]
public class PurchasePriceSheetDTO : SfsBaseDataDTOBase, IHasCode, IHasName public class PurchasePriceSheetDTO : SfsBaseDataDTOBase
{ {
/// <summary> /// <summary>
/// 供应商ID /// 价格单编码
/// </summary> /// </summary>
[Display(Name = "物料代码")]
[Display(Name = "供应商Id")]
[Required(ErrorMessage = "{0}是必填项")] [Required(ErrorMessage = "{0}是必填项")]
public Guid SupplierId { get; set; } [StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
/// <summary> public string ItemCode { get; set; }
/// 供应商名称
/// </summary>
[Display(Name = "供应商名称")]
public string SupplierName { get; set; }
/// <summary> /// <summary>
/// 价格单编码 /// 物料价格
/// </summary> /// </summary>
[Display(Name = "代码")] [Display(Name = "物料价格")]
[Required(ErrorMessage = "{0}是必填项")] public decimal MaterialPrice { get; set; }
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string Code { get; set; }
/// <summary> /// <summary>
/// 价格单名称 /// 成品价格
/// </summary> /// </summary>
[Display(Name = "价格单名称")] [Display(Name = "成品价格")]
public string Name { get; set; } public decimal ProductPrice { get; set; }
/// <summary> /// <summary>
/// 价格单描述 /// 价格单描述
/// </summary> /// </summary>
[Display(Name = "价格单描述")] [Display(Name = "价格单描述")]
public string Description { get; set; } public string Description { get; set; }
/// <summary>
/// 货币ID
/// </summary>
[Display(Name = "货币Id")]
[Required(ErrorMessage = "{0}是必填项")]
public Guid CurrencyId { get; set; }
/// <summary>
/// 货币名称
/// </summary>
[Display(Name = "货币名称")]
public string CurrencyName { get; set; }
//[Display(Name = "子表单")]
//public virtual List<PurchasePriceDetailDTO> PurchasePriceDetails { get; set; }
//
} }

4
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PurchasePrices/IPurchasePriceSheetAppService.cs

@ -1,6 +1,8 @@
using System.Threading.Tasks;
namespace Win_in.Sfs.Basedata.Application.Contracts; namespace Win_in.Sfs.Basedata.Application.Contracts;
public interface IPurchasePriceSheetAppService : ISfsBaseDataAppServiceBase<PurchasePriceSheetDTO, SfsBaseDataRequestInputBase, PurchasePriceSheetEditInput> public interface IPurchasePriceSheetAppService : ISfsBaseDataAppServiceBase<PurchasePriceSheetDTO, SfsBaseDataRequestInputBase, PurchasePriceSheetEditInput>
{ {
Task<PurchasePriceSheetDTO> GetByItemCodeAsync(string itemCode);
} }

1
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/BasedataApplicationAutoMapperProfile.cs

@ -12,6 +12,7 @@ public partial class BasedataApplicationAutoMapperProfile : Profile
CalendarAutoMapperProfile(); CalendarAutoMapperProfile();
InterfaceCalendarAutoMapperProfile(); InterfaceCalendarAutoMapperProfile();
CategoryAutoMapperProfile(); CategoryAutoMapperProfile();
PositionCodeAutoMapperProfile();
CurrencyAutoMapperProfile(); CurrencyAutoMapperProfile();
CurrencyExchangeAutoMapperProfile(); CurrencyExchangeAutoMapperProfile();
CustomerAddressAutoMapperProfile(); CustomerAddressAutoMapperProfile();

49
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCode/PositionCodeAppService.cs

@ -0,0 +1,49 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Volo.Abp;
using Volo.Abp.Caching;
using Volo.Abp.Uow;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Basedata.Domain.Shared;
namespace Win_in.Sfs.Basedata.Application;
[Authorize]
[Route($"{BasedataConsts.RootPath}position-code")]
public class PositionCodeAppService
: SfsBaseDataWithCodeAppServiceBase<PositionCode, PositionCodeDTO, SfsBaseDataRequestInputBase, PositionCodeEditInput, PositionCodeImportInput>
, IPositionCodeService
{
private readonly IPositionCodeManager _manager;
public PositionCodeAppService(IPositionCodeRepository repository, IDistributedCache<PositionCodeDTO> cache, IPositionCodeManager manager) : base(repository, cache)
{
base.CreatePolicyName = CategoryPermissions.Create;
base.UpdatePolicyName = CategoryPermissions.Update;
base.DeletePolicyName = CategoryPermissions.Delete;
_manager = manager;
}
[HttpPost("")]
[UnitOfWork]
public override async Task<PositionCodeDTO> CreateAsync(PositionCodeEditInput input)
{
var existEntity = await GetByCodeAsync(input.Code).ConfigureAwait(false);
if (existEntity != null)
{
throw new UserFriendlyException($"{input.Code} 已存在");
}
var itemBasic = await ItemBasicAppService.GetByCodeAsync(input.PartCode).ConfigureAwait(false);
Check.NotNull(itemBasic, "物品代码", $"物品 {input.PartCode} 不存在");
var location = await LocationAppService.GetByCodeAsync(input.LocationCode).ConfigureAwait(false);
Check.NotNull(location, "库位代码", $"库位 {input.LocationCode} 不存在");
return await base.CreateAsync(input).ConfigureAwait(false);
}
}

28
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PositionCode/PositionCodeAutoMapperProfile.cs

@ -0,0 +1,28 @@
using AutoMapper;
using Volo.Abp.AutoMapper;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
namespace Win_in.Sfs.Basedata.Application;
public partial class BasedataApplicationAutoMapperProfile : Profile
{
private void PositionCodeAutoMapperProfile()
{
CreateMap<PositionCode, PositionCodeDTO>()
.ReverseMap();
CreateMap<PositionCodeImportInput, PositionCode>()
.IgnoreAuditedObjectProperties()
.Ignore(x => x.TenantId)
.Ignore(x => x.Remark)
.Ignore(x => x.ExtraProperties)
.Ignore(x => x.ConcurrencyStamp)
;
CreateMap<PositionCode, PositionCodeImportInput>()
.Ignore(x => x.ReportStatus)
.Ignore(x => x.ReportReason);
}
}

18
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PurchasePrices/PurchasePriceSheetAppService.cs

@ -1,3 +1,4 @@
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Volo.Abp.Caching; using Volo.Abp.Caching;
@ -12,12 +13,25 @@ namespace Win_in.Sfs.Basedata.Application;
public class PurchasePriceSheetAppService : SfsBaseDataAppServiceBase<PurchasePriceSheet, PurchasePriceSheetDTO, SfsBaseDataRequestInputBase, PurchasePriceSheetEditInput, PurchasePriceSheetImportInput>, IPurchasePriceSheetAppService public class PurchasePriceSheetAppService : SfsBaseDataAppServiceBase<PurchasePriceSheet, PurchasePriceSheetDTO, SfsBaseDataRequestInputBase, PurchasePriceSheetEditInput, PurchasePriceSheetImportInput>, IPurchasePriceSheetAppService
{ {
private readonly IPurchasePriceSheetRepository _purchasePriceSheetRepository;
public PurchasePriceSheetAppService(IPurchasePriceSheetRepository repository, IDistributedCache<PurchasePriceSheetDTO> cache) : base(repository, cache) public PurchasePriceSheetAppService(IPurchasePriceSheetRepository repository, IDistributedCache<PurchasePriceSheetDTO> cache) : base(repository, cache)
{ {
_purchasePriceSheetRepository= repository;
base.CreatePolicyName = PurchasePriceSheetPermissions.Create; base.CreatePolicyName = PurchasePriceSheetPermissions.Create;
base.UpdatePolicyName = PurchasePriceSheetPermissions.Update; base.UpdatePolicyName = PurchasePriceSheetPermissions.Update;
base.DeletePolicyName = PurchasePriceSheetPermissions.Delete; base.DeletePolicyName = PurchasePriceSheetPermissions.Delete;
} }
/// <summary>
/// 根据供应零件号查询
/// </summary>
/// <param name="supplierCode"></param>
/// <param name="itemCode"></param>
/// <returns></returns>
[HttpGet("by-item-code")]
public virtual async Task<PurchasePriceSheetDTO> GetByItemCodeAsync(string itemCode)
{
var entity = await _purchasePriceSheetRepository.FindAsync(p => p.ItemCode== itemCode).ConfigureAwait(false);
var dto = ObjectMapper.Map<PurchasePriceSheet, PurchasePriceSheetDTO>(entity);
return dto;
}
} }

2
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PurchasePrices/PurchasePriceSheetAutoMapperProfile.cs

@ -10,8 +10,6 @@ public partial class BasedataApplicationAutoMapperProfile : Profile
private void PurchasePriceSheetAutoMapperProfile() private void PurchasePriceSheetAutoMapperProfile()
{ {
CreateMap<PurchasePriceSheet, PurchasePriceSheetDTO>() CreateMap<PurchasePriceSheet, PurchasePriceSheetDTO>()
.Ignore(x => x.SupplierName)
.Ignore(x => x.CurrencyName)
.ReverseMap(); .ReverseMap();
} }
} }

9
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/IPositionCodeManager.cs

@ -0,0 +1,9 @@
using Volo.Abp.Domain.Services;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.Domain;
public interface IPositionCodeManager : IDomainService, IBulkImportService<PositionCode>
{
}

8
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/IPositionCodeRepository.cs

@ -0,0 +1,8 @@
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.Domain;
public interface IPositionCodeRepository : ISfsBaseDataRepositoryBase<PositionCode>, ISfsBulkRepositoryBase<PositionCode>
{
}

34
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/PositionCode.cs

@ -0,0 +1,34 @@
using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Entities;
namespace Win_in.Sfs.Basedata.Domain;
/// <summary>
/// 位置码
/// </summary>
public class PositionCode : SfsBaseDataAggregateRootBase, IHasCode
{
/// <summary>
/// 位置代码
/// </summary>
[Display(Name = "位置代码")]
[IgnoreUpdate]
public string Code { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Display(Name = "物料号")]
public string PartCode { get; set; }
/// <summary>
/// 标包数量
/// </summary>
[Display(Name = "标包数量")]
public decimal StdPackQty { get; set; }
/// <summary>
/// 库位
/// </summary>
[Display(Name = "库位")]
public string LocationCode { get; set; }
}

28
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PositionCode/PositionCodeManager.cs

@ -0,0 +1,28 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Domain.Services;
namespace Win_in.Sfs.Basedata.Domain;
public class PositionCodeManager : DomainService, IPositionCodeManager
{
private readonly IPositionCodeRepository _repository;
public PositionCodeManager(IPositionCodeRepository repository)
{
_repository = repository;
}
/// <summary>
/// 执行导入
/// </summary>
public virtual async Task ImportDataAsync(List<PositionCode> mergeEntities, List<PositionCode> deleteEntities = null)
{
if (deleteEntities != null && deleteEntities.Count > 0)
{
await _repository.BulkDeleteAsync(deleteEntities).ConfigureAwait(false);
}
await _repository.BulkMergeAsync(mergeEntities).ConfigureAwait(false);
}
}

25
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PurchasePrices/PurchasePriceSheet.cs

@ -7,24 +7,13 @@ namespace Win_in.Sfs.Basedata.Domain;
/// <summary> /// <summary>
/// 采购价格单 /// 采购价格单
/// </summary> /// </summary>
public class PurchasePriceSheet : SfsBaseDataAggregateRootBase, IHasCode, IHasName public class PurchasePriceSheet : SfsBaseDataAggregateRootBase
{ {
/// <summary> /// <summary>
/// 供应商ID /// 物品代码
/// </summary> /// </summary>
[IgnoreUpdate] [IgnoreUpdate]
public Guid SupplierId { get; set; } public string ItemCode { get; set; }
/// <summary>
/// 编码
/// </summary>
[IgnoreUpdate]
public string Code { get; set; }
/// <summary>
/// 价格单名称
/// </summary>
public string Name { get; set; }
/// <summary> /// <summary>
/// 价格单描述 /// 价格单描述
/// </summary> /// </summary>
@ -33,6 +22,14 @@ public class PurchasePriceSheet : SfsBaseDataAggregateRootBase, IHasCode, IHasNa
/// 货币ID /// 货币ID
/// </summary> /// </summary>
public Guid CurrencyId { get; set; } public Guid CurrencyId { get; set; }
/// <summary>
/// 物料价格
/// </summary>
public decimal MaterialPrice { get; set; }
/// <summary>
/// 成品价格
/// </summary>
public decimal ProductPrice { get; set; }
#region details handler #region details handler
//public virtual void AddDetail(IGuidGenerator guidGenerator, PurchasePriceDetail detail) //public virtual void AddDetail(IGuidGenerator guidGenerator, PurchasePriceDetail detail)

3
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContext.cs

@ -52,6 +52,9 @@ public class BasedataDbContext : AbpDbContext<BasedataDbContext>, IBasedataDbCon
public DbSet<CustomerAddress> CustomerAddresses { get; set; } public DbSet<CustomerAddress> CustomerAddresses { get; set; }
public DbSet<ItemGuideBook> ItemGuideBooks { get; set; } public DbSet<ItemGuideBook> ItemGuideBooks { get; set; }
public DbSet<Dict> Dicts { get; set; } public DbSet<Dict> Dicts { get; set; }
public DbSet<PositionCode> PositionCodes { get; set; }
public DbSet<Equipment> Equipments { get; set; } public DbSet<Equipment> Equipments { get; set; }
public BasedataDbContext(DbContextOptions<BasedataDbContext> options) public BasedataDbContext(DbContextOptions<BasedataDbContext> options)
: base(options) : base(options)

1
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContextModelCreatingExtensions.cs

@ -66,6 +66,7 @@ public static class BasedataDbContextModelCreatingExtensions
builder.ConfigureEquipment(options); builder.ConfigureEquipment(options);
//设置decimal的默认小数位数 //设置decimal的默认小数位数
builder.ConfigurePrecisionOfDecimal(); builder.ConfigurePrecisionOfDecimal();
builder.ConfigurePositionCode(options);
} }

1
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs

@ -54,6 +54,7 @@ public class BasedataEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient<IItemStoreRelationRepository, ItemStoreRelationEfCoreRepository>(); context.Services.AddTransient<IItemStoreRelationRepository, ItemStoreRelationEfCoreRepository>();
context.Services.AddTransient<IItemSafetyStockRepository, ItemSafetyStockEfCoreRepository>(); context.Services.AddTransient<IItemSafetyStockRepository, ItemSafetyStockEfCoreRepository>();
context.Services.AddTransient<ICategoryRepository, CategoryEfCoreRepository>(); context.Services.AddTransient<ICategoryRepository, CategoryEfCoreRepository>();
context.Services.AddTransient<IPositionCodeRepository, PositionCodeEfCoreRepository>();
context.Services.AddTransient<IWorkShopRepository, WorkShopEfCoreRepository>(); context.Services.AddTransient<IWorkShopRepository, WorkShopEfCoreRepository>();
context.Services.AddTransient<IDockRepository, DockEfCoreRepository>(); context.Services.AddTransient<IDockRepository, DockEfCoreRepository>();
context.Services.AddTransient<ILocationGroupRepository, LocationGroupEfCoreRepository>(); context.Services.AddTransient<ILocationGroupRepository, LocationGroupEfCoreRepository>();

3607
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Migrations/20240222061733_myInit.Designer.cs

File diff suppressed because it is too large

1424
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Migrations/20240222061733_myInit.cs

File diff suppressed because it is too large

314
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Migrations/BasedataDbContextModelSnapshot.cs

@ -73,8 +73,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnName("LastModifierId"); .HasColumnName("LastModifierId");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<decimal>("SamplePercent") b.Property<decimal>("SamplePercent")
@ -97,7 +97,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("SupplierCode", "ItemCode", "FloorQty") b.HasIndex("SupplierCode", "ItemCode", "FloorQty")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_AQL", "dbo"); b.ToTable("Basedata_AQL", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Area", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Area", b =>
@ -153,8 +153,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -171,7 +171,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Area", "dbo"); b.ToTable("Basedata_Area", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Bom", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Bom", b =>
@ -253,8 +253,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -271,7 +271,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Product", "Component") b.HasIndex("Product", "Component")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Bom", "dbo"); b.ToTable("Basedata_Bom", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Calendar", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Calendar", b =>
@ -316,8 +316,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(3072)");
b.Property<string>("Status") b.Property<string>("Status")
.IsRequired() .IsRequired()
@ -334,7 +334,7 @@ namespace Win_in.Sfs.Basedata.Migrations
.IsUnique() .IsUnique()
.HasFilter("[Module] IS NOT NULL"); .HasFilter("[Module] IS NOT NULL");
b.ToTable("Basedata_Calendar", "dbo"); b.ToTable("Basedata_Calendar", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Category", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Category", b =>
@ -382,8 +382,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -395,7 +395,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Category", "dbo"); b.ToTable("Basedata_Category", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Currency", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Currency", b =>
@ -447,8 +447,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -460,7 +460,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Currency", "dbo"); b.ToTable("Basedata_Currency", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.CurrencyExchange", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.CurrencyExchange", b =>
@ -510,8 +510,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("decimal(18,6)"); .HasColumnType("decimal(18,6)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -523,7 +523,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("CurrencyId", "BasicCurrencyId") b.HasIndex("CurrencyId", "BasicCurrencyId")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_CurrencyExchange", "dbo"); b.ToTable("Basedata_CurrencyExchange", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Customer", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Customer", b =>
@ -602,8 +602,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("ShortName") b.Property<string>("ShortName")
@ -624,7 +624,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Customer", "dbo"); b.ToTable("Basedata_Customer", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.CustomerAddress", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.CustomerAddress", b =>
@ -712,7 +712,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code", "CustomerCode") b.HasIndex("Code", "CustomerCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_CustomerAddress", "dbo"); b.ToTable("Basedata_CustomerAddress", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.CustomerItem", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.CustomerItem", b =>
@ -775,8 +775,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnName("LastModifierId"); .HasColumnName("LastModifierId");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -792,7 +792,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("CustomerCode", "ItemCode") b.HasIndex("CustomerCode", "ItemCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_CustomerItem", "dbo"); b.ToTable("Basedata_CustomerItem", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Dict", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Dict", b =>
@ -840,8 +840,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -853,7 +853,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Dict", "dbo"); b.ToTable("Basedata_Dict", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.DictItem", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.DictItem", b =>
@ -897,8 +897,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -913,7 +913,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("MasterId"); b.HasIndex("MasterId");
b.ToTable("Basedata_DictItem", "dbo"); b.ToTable("Basedata_DictItem", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Dock", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Dock", b =>
@ -965,8 +965,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -982,7 +982,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Dock", "dbo"); b.ToTable("Basedata_Dock", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.DocumentSetting", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.DocumentSetting", b =>
@ -1046,8 +1046,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("int"); .HasColumnType("int");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -1063,7 +1063,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_DocumentSetting", "dbo"); b.ToTable("Basedata_DocumentSetting", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ErpLocation", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ErpLocation", b =>
@ -1111,8 +1111,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -1133,7 +1133,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ErpLocation", "dbo"); b.ToTable("Basedata_ErpLocation", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.InterfaceCalendar", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.InterfaceCalendar", b =>
@ -1212,7 +1212,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_InterfaceCalendar", "dbo"); b.ToTable("Basedata_InterfaceCalendar", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemBasic", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemBasic", b =>
@ -1319,8 +1319,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("Status") b.Property<string>("Status")
@ -1356,7 +1356,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ItemBasic", "dbo"); b.ToTable("Basedata_ItemBasic", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemCategory", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemCategory", b =>
@ -1401,8 +1401,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnName("LastModifierId"); .HasColumnName("LastModifierId");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -1419,7 +1419,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("CategoryCode", "ItemCode") b.HasIndex("CategoryCode", "ItemCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ItemCategory", "dbo"); b.ToTable("Basedata_ItemCategory", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemGuideBook", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemGuideBook", b =>
@ -1471,8 +1471,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("Step") b.Property<string>("Step")
@ -1488,7 +1488,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("ItemCode") b.HasIndex("ItemCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ItemGuideBook", "dbo"); b.ToTable("Basedata_ItemGuideBook", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemPack", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemPack", b =>
@ -1548,8 +1548,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("decimal(18,6)"); .HasColumnType("decimal(18,6)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -1561,7 +1561,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("ItemCode", "PackCode") b.HasIndex("ItemCode", "PackCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ItemPack", "dbo"); b.ToTable("Basedata_ItemPack", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemQuality", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemQuality", b =>
@ -1610,8 +1610,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnName("LastModifierId"); .HasColumnName("LastModifierId");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("Status") b.Property<string>("Status")
@ -1633,7 +1633,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("ItemCode", "SupplierCode") b.HasIndex("ItemCode", "SupplierCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ItemQuality", "dbo"); b.ToTable("Basedata_ItemQuality", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemSafetyStock", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemSafetyStock", b =>
@ -1689,8 +1689,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("decimal(18,6)"); .HasColumnType("decimal(18,6)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<decimal>("SafetyStock") b.Property<decimal>("SafetyStock")
@ -1720,7 +1720,7 @@ namespace Win_in.Sfs.Basedata.Migrations
.IsUnique() .IsUnique()
.HasFilter("[StoreValue] IS NOT NULL"); .HasFilter("[StoreValue] IS NOT NULL");
b.ToTable("Basedata_ItemSafetyStock", "dbo"); b.ToTable("Basedata_ItemSafetyStock", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemStoreRelation", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ItemStoreRelation", b =>
@ -1781,8 +1781,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("StoreRelationType") b.Property<string>("StoreRelationType")
@ -1816,7 +1816,7 @@ namespace Win_in.Sfs.Basedata.Migrations
.IsUnique() .IsUnique()
.HasFilter("[StoreValue] IS NOT NULL"); .HasFilter("[StoreValue] IS NOT NULL");
b.ToTable("Basedata_ItemStoreRelation", "dbo"); b.ToTable("Basedata_ItemStoreRelation", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Location", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Location", b =>
@ -1979,8 +1979,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasDefaultValue(0); .HasDefaultValue(0);
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<int>("RowCode") b.Property<int>("RowCode")
@ -2016,7 +2016,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Location", "dbo"); b.ToTable("Basedata_Location", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.LocationGroup", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.LocationGroup", b =>
@ -2168,8 +2168,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasDefaultValue(0); .HasDefaultValue(0);
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2186,7 +2186,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_LocationGroup", "dbo"); b.ToTable("Basedata_LocationGroup", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Machine", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Machine", b =>
@ -2238,8 +2238,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("uniqueidentifier"); .HasColumnType("uniqueidentifier");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2259,7 +2259,71 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Machine", "dbo"); b.ToTable("Basedata_Machine", (string)null);
});
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.PositionCode", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(64)
.HasColumnType("nvarchar(64)");
b.Property<string>("ConcurrencyStamp")
.IsConcurrencyToken()
.HasMaxLength(40)
.HasColumnType("nvarchar(40)")
.HasColumnName("ConcurrencyStamp");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<string>("ExtraProperties")
.HasColumnType("nvarchar(max)")
.HasColumnName("ExtraProperties");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("LocationCode")
.HasMaxLength(64)
.HasColumnType("nvarchar(64)");
b.Property<string>("PartCode")
.HasMaxLength(64)
.HasColumnType("nvarchar(64)");
b.Property<string>("Remark")
.HasMaxLength(3072)
.HasColumnType("nvarchar(3072)")
.HasColumnName("Remark");
b.Property<decimal>("StdPackQty")
.HasColumnType("decimal(18,6)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.HasKey("Id");
b.HasIndex("Code")
.IsUnique();
b.ToTable("Basedata_PositionCode", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ProductionLine", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ProductionLine", b =>
@ -2319,8 +2383,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2341,7 +2405,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ProductionLine", "dbo"); b.ToTable("Basedata_ProductionLine", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ProductionLineItem", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.ProductionLineItem", b =>
@ -2384,8 +2448,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(450)"); .HasColumnType("nvarchar(450)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2397,7 +2461,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("ProdLineCode", "ItemCode") b.HasIndex("ProdLineCode", "ItemCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_ProductionLineItem", "dbo"); b.ToTable("Basedata_ProductionLineItem", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Project", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Project", b =>
@ -2455,8 +2519,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2468,7 +2532,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Project", "dbo"); b.ToTable("Basedata_Project", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.PurchasePriceSheet", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.PurchasePriceSheet", b =>
@ -2520,8 +2584,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid>("SupplierId") b.Property<Guid>("SupplierId")
@ -2537,7 +2601,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_PurchasePriceSheet", "dbo"); b.ToTable("Basedata_PurchasePriceSheet", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.SalePriceSheet", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.SalePriceSheet", b =>
@ -2593,8 +2657,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2606,7 +2670,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code", "CustomerId") b.HasIndex("Code", "CustomerId")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_SalePriceSheet", "dbo"); b.ToTable("Basedata_SalePriceSheet", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Shift", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Shift", b =>
@ -2663,8 +2727,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -2676,7 +2740,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Shift", "dbo"); b.ToTable("Basedata_Shift", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.StdCostPriceSheet", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.StdCostPriceSheet", b =>
@ -2729,8 +2793,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid>("SupplierId") b.Property<Guid>("SupplierId")
@ -2745,7 +2809,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code", "SupplierId") b.HasIndex("Code", "SupplierId")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_StdCostPriceSheet", "dbo"); b.ToTable("Basedata_StdCostPriceSheet", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Supplier", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Supplier", b =>
@ -2831,8 +2895,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("ShortName") b.Property<string>("ShortName")
@ -2856,7 +2920,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Supplier", "dbo"); b.ToTable("Basedata_Supplier", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.SupplierItem", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.SupplierItem", b =>
@ -2903,8 +2967,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("decimal(18,6)"); .HasColumnType("decimal(18,6)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("SupplierCode") b.Property<string>("SupplierCode")
@ -2941,7 +3005,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("SupplierCode", "ItemCode") b.HasIndex("SupplierCode", "ItemCode")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_SupplierItem", "dbo"); b.ToTable("Basedata_SupplierItem", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.SupplierTimeWindow", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.SupplierTimeWindow", b =>
@ -2976,8 +3040,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnName("LastModifierId"); .HasColumnName("LastModifierId");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<string>("SupplierCode") b.Property<string>("SupplierCode")
@ -3009,7 +3073,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("SupplierCode", "TimeSlot", "Week") b.HasIndex("SupplierCode", "TimeSlot", "Week")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_SupplierTimeWindow", "dbo"); b.ToTable("Basedata_SupplierTimeWindow", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Team", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Team", b =>
@ -3061,8 +3125,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3074,7 +3138,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Team", "dbo"); b.ToTable("Basedata_Team", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.TransactionType", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.TransactionType", b =>
@ -3162,8 +3226,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3185,7 +3249,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("TransType", "TransSubType") b.HasIndex("TransType", "TransSubType")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_TransactionType", "dbo"); b.ToTable("Basedata_TransactionType", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Uom", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Uom", b =>
@ -3233,8 +3297,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3251,7 +3315,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Uom", "dbo"); b.ToTable("Basedata_Uom", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Warehouse", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.Warehouse", b =>
@ -3299,8 +3363,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3312,7 +3376,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_Warehouse", "dbo"); b.ToTable("Basedata_Warehouse", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.WorkGroup", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.WorkGroup", b =>
@ -3360,8 +3424,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3378,7 +3442,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_WorkGroup", "dbo"); b.ToTable("Basedata_WorkGroup", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.WorkShop", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.WorkShop", b =>
@ -3427,8 +3491,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3440,7 +3504,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_WorkShop", "dbo"); b.ToTable("Basedata_WorkShop", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.WorkStation", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.WorkStation", b =>
@ -3502,8 +3566,8 @@ namespace Win_in.Sfs.Basedata.Migrations
.HasColumnType("nvarchar(64)"); .HasColumnType("nvarchar(64)");
b.Property<string>("Remark") b.Property<string>("Remark")
.HasMaxLength(4096) .HasMaxLength(3072)
.HasColumnType("nvarchar(max)") .HasColumnType("nvarchar(3072)")
.HasColumnName("Remark"); .HasColumnName("Remark");
b.Property<Guid?>("TenantId") b.Property<Guid?>("TenantId")
@ -3519,7 +3583,7 @@ namespace Win_in.Sfs.Basedata.Migrations
b.HasIndex("Code") b.HasIndex("Code")
.IsUnique(); .IsUnique();
b.ToTable("Basedata_WorkStation", "dbo"); b.ToTable("Basedata_WorkStation", (string)null);
}); });
modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.DictItem", b => modelBuilder.Entity("Win_in.Sfs.Basedata.Domain.DictItem", b =>

35
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PositionCode/PositionCodeDbContextModelCreatingExtensions.cs

@ -0,0 +1,35 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Modeling;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Shared.EntityFrameworkCore;
namespace Win_in.Sfs.Basedata.EntityFrameworkCore;
public static class PositionCodeDbContextModelCreatingExtensions
{
public static void ConfigurePositionCode(this ModelBuilder builder, BasedataModelBuilderConfigurationOptions options)
{
builder.Entity<PositionCode>(b =>
{
//Configure table & schema name
b.ToTable(options.TablePrefix + nameof(PositionCode), options.Schema);
//Configure ABP properties
b.ConfigureByConvention();
//Configure Sfs base properties
b.ConfigureSfsBase();
//Properties
b.Property(q => q.Code).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.LocationCode).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.PartCode).HasMaxLength(SfsPropertyConst.CodeLength);
//Relations
//None
//Indexes
b.HasIndex(q => new { q.Code,q.PartCode,q.LocationCode }).IsUnique();
});
}
}

12
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PositionCode/PositionCodeEfCoreRepository.cs

@ -0,0 +1,12 @@
using Volo.Abp.EntityFrameworkCore;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.EntityFrameworkCore;
public class PositionCodeEfCoreRepository : SfsBaseDataEfCoreRepositoryBase<BasedataDbContext, PositionCode>, IPositionCodeRepository, ISfsBulkRepositoryBase<PositionCode>
{
public PositionCodeEfCoreRepository(IDbContextProvider<BasedataDbContext> dbContextProvider) : base(dbContextProvider)
{
}
}

7
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PurchasePrices/PurchasePriceSheetDbContextModelCreatingExtensions.cs

@ -20,17 +20,14 @@ public static class PurchasePriceSheetDbContextModelCreatingExtensions
b.ConfigureSfsBase(); b.ConfigureSfsBase();
//Properties //Properties
b.Property(q => q.Code).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength); b.Property(q => q.ItemCode).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.Name).HasMaxLength(SfsPropertyConst.NameLength);
b.Property(q => q.Description).HasMaxLength(SfsPropertyConst.DescLength); b.Property(q => q.Description).HasMaxLength(SfsPropertyConst.DescLength);
b.Property(x => x.SupplierId).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(x => x.CurrencyId).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
//Relations //Relations
//None //None
//Indexes //Indexes
b.HasIndex(q => new { q.Code }).IsUnique(); b.HasIndex(q => new { q.ItemCode }).IsUnique();
}); });
} }
} }

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/Notes/PutawayNotes/IPutawayNoteAppService.cs

@ -1,3 +1,4 @@
using System;
using System.Collections.Generic; using System.Collections.Generic;
using System.Threading; using System.Threading;
using System.Threading.Tasks; using System.Threading.Tasks;
@ -52,4 +53,5 @@ public interface IPutawayNoteAppService : ISfsStoreMasterReadOnlyAppServiceBase<
CancellationToken cancellationToken = default); CancellationToken cancellationToken = default);
Task<List<PutawayNoteDTO>> GetListByAsnNumbers(IEnumerable<string> asnNumbers); Task<List<PutawayNoteDTO>> GetListByAsnNumbers(IEnumerable<string> asnNumbers);
Task<bool> PrintUpdateRemark(Guid id);
} }

159
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/Dtos/SplitPackingRecDto.cs

@ -0,0 +1,159 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Label.Domain.Shared;
using Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings;
namespace Win_in.Sfs.Wms.Store.SplitPackings;
public class SplitPackingRecDTO : SfsBaseDataDTOBase
{
/// <summary>
/// 操作类型
/// </summary>
[Display(Name = "操作类型")]
public OprTypeEnum OprType { get; set; }
/// <summary>
/// 源箱码
/// </summary>
[Display(Name = "源箱码")]
public string FromPackingCode { get; set; }
/// <summary>
/// 源顶级箱码
/// </summary>
[Display(Name = "源顶级箱码")]
public string FromTopPackingCode { get; set; }
/// <summary>
/// 源标包数量
/// </summary>
[Display(Name = "源标包数量")]
public decimal FromStdPackQty { get; set; }
/// <summary>
/// 源计量单位
/// </summary>
[Display(Name = "源计量单位")]
public string FromUom { get; set; }
/// <summary>
/// 源数量
/// </summary>
[Display(Name = "源数量")]
public decimal FromQty { get; set; }
/// <summary>
/// 目标箱码
/// </summary>
[Display(Name = "目标箱码")]
public string ToPackingCode { get; set; }
/// <summary>
/// 目标顶级箱码
/// </summary>
[Display(Name = "目标顶级箱码")]
public string ToTopPackingCode { get; set; }
/// <summary>
/// 目标标包数量
/// </summary>
[Display(Name = "目标标包数量")]
public decimal ToStdPackQty { get; set; }
/// <summary>
/// 目标计量单位
/// </summary>
[Display(Name = "目标计量单位")]
public string ToUom { get; set; }
/// <summary>
/// 目标数量
/// </summary>
[Display(Name = "目标数量")]
public decimal ToQty { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Display(Name = "物料号")]
public string ItemCode { get; set; }
/// <summary>
/// 物料名称
/// </summary>
[Display(Name = "物料名称")]
public string ItemName { get; set; }
/// <summary>
/// 物料描述1
/// </summary>
[Display(Name = "物料描述1")]
public string ItemDesc1 { get; set; }
/// <summary>
/// 物料描述2
/// </summary>
[Display(Name = "物料描述2")]
public string ItemDesc2 { get; set; }
/// <summary>
/// 源批次
/// </summary>
[Display(Name = "源批次")]
public string FromLot { get; set; }
/// <summary>
/// 目标批次
/// </summary>
[Display(Name = "目标批次")]
public string ToLot { get; set; }
/// <summary>
/// 采购订单
/// </summary>
[Display(Name = "采购订单")]
public string PurchaseInfo_PoNumber { get; set; }
/// <summary>
/// 供应商发货单
/// </summary>
[Display(Name = "供应商发货单")]
public string PurchaseInfo_AsnNumber { get; set; }
/// <summary>
/// 到货通知
/// </summary>
[Display(Name = "到货通知")]
public string ArrivalNoticNumber { get; set; }
/// <summary>
/// 任务单
/// </summary>
[Display(Name = "任务单")]
public string TaskOrderNumber { get; set; }
/// <summary>
/// 收货记录单
/// </summary>
[Display(Name = "收货记录单")]
public string ReceiptRecNumber { get; set; }
/// <summary>
/// 上架单
/// </summary>
[Display(Name = "上架单")]
public string PutOnShelfNumber { get; set; }
/// <summary>
/// 标签类型
/// </summary>
[Display(Name = "标签类型")]
public EnumLabelType LabelType { get; set; }
}

17
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/ISplitPackingRecAppService.cs

@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Shared.Application.Contracts;
using Win_in.Sfs.Wms.Store.Application.Contracts;
namespace Win_in.Sfs.Wms.Store.SplitPackings;
public interface ISplitPackingRecAppService
: ISfsStoreAppServiceBase<SplitPackingRecDTO, SfsBaseDataRequestInputBase, SplitPackingRecEditInput>
{
Task<bool> BatchInsertAsync(List<SplitPackingRecEditInput> inputs);
}

161
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/Inputs/SplitPackingRecEditInput.cs

@ -0,0 +1,161 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Label.Domain.Shared;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings;
namespace Win_in.Sfs.Wms.Store.SplitPackings;
public class SplitPackingRecEditInput : SfsBaseDataCreateOrUpdateInputBase
{
/// <summary>
/// 操作类型
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
public OprTypeEnum OprType { get; set; }
/// <summary>
/// 源箱码
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string FromPackingCode { get; set; }
/// <summary>
/// 源顶级箱码
/// </summary>
//public string FromTopPackingCode { get; set; }
/// <summary>
/// 源标包数量
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
public decimal FromStdPackQty { get; set; }
/// <summary>
/// 源计量单位
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string FromUom { get; set; }
/// <summary>
/// 源数量
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
public decimal FromQty { get; set; }
/// <summary>
/// 目标箱码
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ToPackingCode { get; set; }
/// <summary>
/// 目标顶级箱码
/// </summary>
//public string ToTopPackingCode { get; set; }
/// <summary>
/// 目标标包数量
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
public decimal ToStdPackQty { get; set; }
/// <summary>
/// 目标计量单位
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ToUom { get; set; }
/// <summary>
/// 目标数量
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
public decimal ToQty { get; set; }
/// <summary>
/// 物料号
/// </summary>
[Required(ErrorMessage = "{0}是必填项")]
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ItemCode { get; set; }
/// <summary>
/// 物料名称
/// </summary>
[StringLength(SfsEfCorePropertyConst.NameLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ItemName { get; set; }
/// <summary>
/// 物料描述1
/// </summary>
[StringLength(SfsEfCorePropertyConst.DescLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ItemDesc1 { get; set; }
/// <summary>
/// 物料描述2
/// </summary>
[StringLength(SfsEfCorePropertyConst.DescLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ItemDesc2 { get; set; }
/// <summary>
/// 源批次
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string FromLot { get; set; }
/// <summary>
/// 目标批次
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ToLot { get; set; }
/// <summary>
/// 采购订单
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PurchaseInfo_PoNumber { get; set; }
/// <summary>
/// 供应商发货单
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PurchaseInfo_AsnNumber { get; set; }
/// <summary>
/// 到货通知
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ArrivalNoticNumber { get; set; }
/// <summary>
/// 任务单
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string TaskOrderNumber { get; set; }
/// <summary>
/// 收货记录单
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string ReceiptRecNumber { get; set; }
/// <summary>
/// 上架单
/// </summary>
[StringLength(SfsEfCorePropertyConst.CodeLength, ErrorMessage = "{0}最多输入{1}个字符")]
public string PutOnShelfNumber { get; set; }
/// <summary>
/// 标签类型
/// </summary>
public EnumLabelType LabelType { get; set; }
}

14
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application.Contracts/SplitPackings/Inputs/SplitPackingRecImportInput.cs

@ -0,0 +1,14 @@
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Win_in.Sfs.Wms.Store.Application.Contracts;
namespace Win_in.Sfs.Wms.Store.SplitPackings.Inputs;
[Display(Name = "拆箱记录")]
public class SplitPackingRecImportInput : SfsStoreImportInputBase
{
}

20
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/PutawayNotes/PutawayNoteAppService.cs

@ -222,4 +222,24 @@ public class PutawayNoteAppService :
return dtos; return dtos;
} }
[HttpPost("print-update-remark/{id}")]
public virtual async Task<bool> PrintUpdateRemark(Guid id)
{
bool result = true;
try
{
var entitie = await _repository.GetAsync(p => p.Id == id).ConfigureAwait(false);
if (entitie != null)
{
entitie.Remark = "已打印";
}
await _repository.UpdateAsync(entitie).ConfigureAwait(false);
}
catch (Exception)
{
result = false;
}
return result;
}
} }

66
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Notes/TransferNotes/TransferNoteAppService.cs

@ -125,48 +125,38 @@ public class TransferNoteAppService : SfsStoreWithDetailsAppServiceBase
[HttpPost("split-packing")] [HttpPost("split-packing")]
public async Task<TransferNoteDTO> SplitPackingAsync(TransferNoteEditInput transferNoteEditInput) public async Task<TransferNoteDTO> SplitPackingAsync(TransferNoteEditInput transferNoteEditInput)
{ {
//插入拆箱记录表
foreach (var inputDetail in transferNoteEditInput.Details) foreach (var inputDetail in transferNoteEditInput.Details)
{ {
//插入拆箱记录表
List<SplitPackingRec> recLst = new List<SplitPackingRec>(); List<SplitPackingRec> recLst = new List<SplitPackingRec>();
SplitPackingRec fromRec = new SplitPackingRec(); SplitPackingRec packRec = new SplitPackingRec();
fromRec.OprType = Domain.Shared.SplitPackings.OprTypeEnum.SplitBox; packRec.OprType = Domain.Shared.SplitPackings.OprTypeEnum.SplitBox;
//fromRec.GroupCode = ; packRec.FromPackingCode = inputDetail.FromPackingCode;
//fromRec.OprLevel = ; //packRec.FromTopPackingCode = inputDetail.;
fromRec.NodeType = Domain.Shared.SplitPackings.NodeTypeEnum.FromBox; packRec.FromStdPackQty = inputDetail.StdPackQty;
//fromRec.ParentId = ; packRec.FromUom = inputDetail.Uom;
fromRec.PackingCode = inputDetail.FromPackingCode; packRec.FromQty = inputDetail.Qty;
//fromRec.RootPackingCode = ; packRec.ToPackingCode = inputDetail.ToPackingCode;
fromRec.ItemCode = inputDetail.ItemCode; //packRec.ToTopPackingCode = inputDetail.;
fromRec.ItemName = inputDetail.ItemName; packRec.ToStdPackQty = inputDetail.StdPackQty;
fromRec.ItemDesc1 = inputDetail.ItemDesc1; packRec.ToUom = inputDetail.Uom;
fromRec.ItemDesc2 = inputDetail.ItemDesc2; packRec.ToQty = inputDetail.Qty;
fromRec.Lot = inputDetail.FromLot; packRec.ItemCode = inputDetail.ItemCode;
fromRec.StdPackQty = inputDetail.StdPackQty; packRec.ItemName = inputDetail.ItemName;
fromRec.Uom = inputDetail.Uom; packRec.ItemDesc1 = inputDetail.ItemDesc1;
fromRec.Qty = inputDetail.Qty; packRec.ItemDesc2 = inputDetail.ItemDesc2;
recLst.Add(fromRec); packRec.FromLot = inputDetail.FromLot;
packRec.ToLot = inputDetail.ToLot;
SplitPackingRec toRec = new SplitPackingRec(); //packRec.PurchaseInfo_PoNumber = inputDetail.; // 采购订单
toRec.OprType = Domain.Shared.SplitPackings.OprTypeEnum.SplitBox; //packRec.PurchaseInfo_AsnNumber = inputDetail.; //供应商发货单
//toRec.GroupCode = ; //packRec.ArrivalNoticNumber = inputDetail.; //到货通知
//toRec.OprLevel = ; //packRec.TaskOrderNumber = inputDetail.; //任务单
toRec.NodeType = Domain.Shared.SplitPackings.NodeTypeEnum.ToBox; //packRec.ReceiptRecNumber = inputDetail.; //收货记录单
//toRec.ParentId = ; //packRec.PutOnShelfNumber = inputDetail.; //上架单
toRec.PackingCode = inputDetail.ToPackingCode; recLst.Add(packRec);
//toRec.RootPackingCode = ; await _splitPackingRecManager.BatchInsertAsync(recLst).ConfigureAwait(false);
toRec.ItemCode = inputDetail.ItemCode;
toRec.ItemName = inputDetail.ItemName;
toRec.ItemDesc1 = inputDetail.ItemDesc1;
toRec.ItemDesc2 = inputDetail.ItemDesc2;
toRec.Lot = inputDetail.ToLot;
toRec.StdPackQty = inputDetail.StdPackQty;
toRec.Uom = inputDetail.Uom;
toRec.Qty = inputDetail.Qty;
recLst.Add(toRec);
await _splitPackingRecManager.DoSplitPacking(recLst).ConfigureAwait(false);
} }
//更新库存
transferNoteEditInput.Type = EnumTransSubType.Transfer_SplitPacking.ToString(); transferNoteEditInput.Type = EnumTransSubType.Transfer_SplitPacking.ToString();
return await CreateAsync(transferNoteEditInput).ConfigureAwait(false); return await CreateAsync(transferNoteEditInput).ConfigureAwait(false);
} }

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Orders/PurchaseOrders/PurchaseOrderAppService.cs

@ -191,6 +191,7 @@ public class PurchaseOrderAppService :
return result; return result;
} }
#endregion #endregion
#endregion #endregion

42
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/SplitPackings/SplitPackingRecAppService.cs

@ -0,0 +1,42 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Components;
using Win_in.Sfs.Wms.Store.Application;
using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.Domain.Shared;
using Win_in.Sfs.Wms.Store.SplitPackings.Inputs;
namespace Win_in.Sfs.Wms.Store.SplitPackings;
/// <summary>
/// 拆箱记录
/// </summary>
//[Authorize]
//[Route($"{StoreConsts.RootPath}split-packing-rec")]
public class SplitPackingRecAppService :
SfsStoreAppServiceBase<SplitPackingRec, SplitPackingRecDTO, SfsStoreRequestInputBase, SplitPackingRecEditInput
, SplitPackingRecImportInput>
//, ISplitPackingRecAppService
{
private readonly ISplitPackingRecManager _splitPackingRecManager;
public SplitPackingRecAppService(
ISplitPackingRecRepository repository,
ISplitPackingRecManager splitPackingRecManager
) : base(repository)
{
_splitPackingRecManager = splitPackingRecManager;
}
public async Task<bool> BatchInsertAsync(List<SplitPackingRecEditInput> inputs)
{
List<SplitPackingRec> lst = ObjectMapper.Map<List<SplitPackingRecEditInput>, List<SplitPackingRec>>(inputs);
bool ret = await _splitPackingRecManager.BatchInsertAsync(lst).ConfigureAwait(false);
return ret;
}
}

17
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/SplitPackings/SplitPackingRecAutoMapperProfile.cs

@ -0,0 +1,17 @@
using AutoMapper;
using Volo.Abp.AutoMapper;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.SplitPackings;
namespace Win_in.Sfs.Wms.Store.Application;
public partial class StoreApplicationAutoMapperProfile : Profile
{
private void SplitPackingRecAutoMapperProfile()
{
CreateMap<SplitPackingRec, SplitPackingRecDTO>();
CreateMap<SplitPackingRecEditInput, SplitPackingRec>();
}
}

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/StoreApplicationAutoMapperProfile.cs

@ -104,6 +104,7 @@ public partial class StoreApplicationAutoMapperProfile : Profile
#endregion #endregion
ExchangeDataAutoMapperProfile(); ExchangeDataAutoMapperProfile();
SplitPackingRecAutoMapperProfile();
} }
} }

5
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain.Shared/SplitPackings/OprTypeEnum.cs

@ -7,6 +7,11 @@ using System.Threading.Tasks;
namespace Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings; namespace Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings;
public enum OprTypeEnum public enum OprTypeEnum
{ {
/// <summary>
/// 其它
/// </summary>
Other = 0,
/// <summary> /// <summary>
/// 拆箱 /// 拆箱
/// </summary> /// </summary>

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/SplitPackings/ISplitPackingRecManager.cs

@ -9,5 +9,5 @@ using Win_in.Sfs.Wms.Store.Domain;
namespace Win_in.Sfs.Wms.Store.SplitPackings; namespace Win_in.Sfs.Wms.Store.SplitPackings;
public interface ISplitPackingRecManager : IDomainService public interface ISplitPackingRecManager : IDomainService
{ {
Task<bool> DoSplitPacking(List<SplitPackingRec> input); Task<bool> BatchInsertAsync(List<SplitPackingRec> input);
} }

119
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/SplitPackings/SplitPackingRec.cs

@ -1,6 +1,7 @@
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema; using System.ComponentModel.DataAnnotations.Schema;
using Win_in.Sfs.Label.Domain.Shared;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings; using Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings;
@ -12,8 +13,6 @@ namespace Win_in.Sfs.Wms.Store.Domain;
/// </summary> /// </summary>
public class SplitPackingRec : SfsAggregateRootBase public class SplitPackingRec : SfsAggregateRootBase
, IHasItem , IHasItem
, IHasQty
, IHasStdPack
{ {
/// <summary> /// <summary>
/// 操作类型 /// 操作类型
@ -21,56 +20,126 @@ public class SplitPackingRec : SfsAggregateRootBase
public OprTypeEnum OprType { get; set; } public OprTypeEnum OprType { get; set; }
/// <summary> /// <summary>
/// /// 源箱码
/// </summary> /// </summary>
public string GroupCode { get; set; } public string FromPackingCode { get; set; }
/// <summary> /// <summary>
/// /// 源顶级箱码
/// </summary> /// </summary>
public long OprLevel { get; set; } public string FromTopPackingCode { get; set; }
/// <summary> /// <summary>
/// /// 源标包数量
/// </summary> /// </summary>
public NodeTypeEnum NodeType { get; set; } [Display(Name = "标包数量")]
[Column(TypeName = "decimal(18,6)")]
public decimal FromStdPackQty { get; set; }
public Guid? ParentId { get; set; } /// <summary>
/// 源计量单位
/// </summary>
[Display(Name = "计量单位")]
[MaxLength(SfsPropertyConst.CodeLength)]
public string FromUom { get; set; }
public string PackingCode { get; set; } /// <summary>
/// 源数量
/// </summary>
[Display(Name = "数量")]
[Column(TypeName = "decimal(18,6)")]
public decimal FromQty { get; set; }
public string RootPackingCode { get; set; } /// <summary>
/// 目标箱码
/// </summary>
public string ToPackingCode { get; set; }
/// <summary>
/// 目标顶级箱码
/// </summary>
public string ToTopPackingCode { get; set; }
//public string FullBarcodeString { get; set; } /// <summary>
/// 目标标包数量
/// </summary>
[Display(Name = "标包数量")]
[Column(TypeName = "decimal(18,6)")]
public decimal ToStdPackQty { get; set; }
/// <summary>
/// 目标计量单位
/// </summary>
[Display(Name = "计量单位")]
[MaxLength(SfsPropertyConst.CodeLength)]
public string ToUom { get; set; }
/// <summary>
/// 目标数量
/// </summary>
[Display(Name = "数量")]
[Column(TypeName = "decimal(18,6)")]
public decimal ToQty { get; set; }
/// <summary>
/// 物料号
/// </summary>
public string ItemCode { get; set; } public string ItemCode { get; set; }
/// <summary>
/// 物料名称
/// </summary>
public string ItemName { get; set; } public string ItemName { get; set; }
/// <summary>
/// 物料描述1
/// </summary>
public string ItemDesc1 { get; set; } public string ItemDesc1 { get; set; }
/// <summary>
/// 物料描述2
/// </summary>
public string ItemDesc2 { get; set; } public string ItemDesc2 { get; set; }
public string Lot { get; set; } /// <summary>
/// 源批次
/// </summary>
public string FromLot { get; set; }
/// <summary> /// <summary>
/// 标包数量 /// 目标批次
/// </summary> /// </summary>
[Display(Name = "标包数量")] public string ToLot { get; set; }
[Column(TypeName = "decimal(18,6)")]
public decimal StdPackQty { get; set; }
/// <summary> /// <summary>
/// 计量单位 /// 采购订单
/// </summary> /// </summary>
[Display(Name = "计量单位")] public string PurchaseInfo_PoNumber { get; set; }
[MaxLength(SfsPropertyConst.CodeLength)]
public string Uom { get; set; }
/// <summary> /// <summary>
/// 数量 /// 供应商发货单
/// </summary> /// </summary>
[Display(Name = "数量")] public string PurchaseInfo_AsnNumber { get; set; }
[Column(TypeName = "decimal(18,6)")]
public decimal Qty { get; set; } /// <summary>
/// 到货通知
/// </summary>
public string ArrivalNoticNumber { get; set; }
/// <summary>
/// 任务单
/// </summary>
public string TaskOrderNumber { get; set; }
/// <summary>
/// 收货记录单
/// </summary>
public string ReceiptRecNumber { get; set; }
/// <summary>
/// 上架单
/// </summary>
public string PutOnShelfNumber { get; set; }
public EnumLabelType LabelType { get; set; }
} }

126
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/SplitPackings/SplitPackingRecManager.cs

@ -4,50 +4,130 @@ using System.Linq;
using System.Text; using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using Volo.Abp;
using Volo.Abp.Domain.Services; using Volo.Abp.Domain.Services;
using Volo.Abp.ObjectMapping;
using Win_in.Sfs.Label.Domain;
using Win_in.Sfs.Wms.Store.Domain; using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.Domain.Shared.SplitPackings;
namespace Win_in.Sfs.Wms.Store.SplitPackings; namespace Win_in.Sfs.Wms.Store.SplitPackings;
public class SplitPackingRecManager : DomainService, ISplitPackingRecManager public class SplitPackingRecManager : DomainService, ISplitPackingRecManager
{ {
private readonly ISplitPackingRecRepository _repository; private readonly ISplitPackingRecRepository _repository;
private readonly IObjectMapper _autoMapper;
private readonly ILabelDefinitionManager _labelDefinitionManager;
public SplitPackingRecManager(ISplitPackingRecRepository repository) public SplitPackingRecManager(ISplitPackingRecRepository repository, IObjectMapper autoMapper, ILabelDefinitionManager labelDefinitionManager)
{ {
_repository = repository; _repository = repository;
_autoMapper = autoMapper;
_labelDefinitionManager = labelDefinitionManager;
} }
public async Task<bool> DoSplitPacking(List<SplitPackingRec> input) public async Task<bool> BatchInsertAsync(List<SplitPackingRec> input)
{ {
string groupCode = Guid.NewGuid().ToString();
long maxOprLevel;
Guid? parentId;
string rootPackingCode;
SplitPackingRec fromRec = input.First(itm => itm.NodeType == Domain.Shared.SplitPackings.NodeTypeEnum.FromBox);
var query = await _repository.GetQueryableAsync().ConfigureAwait(false); var query = await _repository.GetQueryableAsync().ConfigureAwait(false);
var hasData = await query.AnyAsync(itm => itm.PackingCode == fromRec.PackingCode).ConfigureAwait(false); foreach (SplitPackingRec item in input)
if (hasData)
{ {
maxOprLevel = await query.Where(itm => itm.PackingCode == fromRec.PackingCode).MaxAsync(itm => itm.OprLevel).ConfigureAwait(false); if (item.OprType == OprTypeEnum.Other) //入库等
SplitPackingRec lastRec = await query.FirstAsync(itm => itm.PackingCode == fromRec.PackingCode && itm.OprLevel == maxOprLevel).ConfigureAwait(false); {
parentId = lastRec.Id; if (item.FromPackingCode != item.ToPackingCode)
rootPackingCode = lastRec.RootPackingCode;
}
else
{ {
maxOprLevel = 1; throw new UserFriendlyException("操作类型不是拆箱或合箱状态,源箱码和目标箱码必须相同!");
parentId = null;
rootPackingCode = fromRec.PackingCode;
} }
foreach (SplitPackingRec item in input) throw new UserFriendlyException("操作类型不是拆箱或合箱状态,源箱码和目标箱码必须相等!");
}
else //拆箱或合箱
{
if (item.FromPackingCode == item.ToPackingCode)
{
throw new UserFriendlyException("操作类型是拆箱或合箱状态,源箱码和目标箱码不能相同!");
}
}
if (item.OprType == OprTypeEnum.SplitBox || item.OprType == OprTypeEnum.MergeBox)
{
if (string.IsNullOrEmpty(item.ToPackingCode))
{
item.ToPackingCode = await _labelDefinitionManager.GenerateAsync(item.LabelType.ToString(), DateTime.Now).ConfigureAwait(false);
}
string toPackCode = item.ToPackingCode;
//拆箱时,如果目标箱不存在,插入目标箱(两个箱码相同)
var toHis = await query.FirstOrDefaultAsync(itm => itm.FromPackingCode == toPackCode).ConfigureAwait(false);
if (toHis == null)
{ {
item.GroupCode = groupCode; SplitPackingRec newObj = new SplitPackingRec();
item.OprLevel = maxOprLevel + 1; _autoMapper.Map<SplitPackingRec, SplitPackingRec>(item, newObj);
item.ParentId = parentId; newObj.SetId(Guid.NewGuid());
item.RootPackingCode = rootPackingCode; newObj.OprType = OprTypeEnum.Other;
newObj.FromPackingCode = newObj.ToPackingCode;
newObj.FromTopPackingCode = newObj.ToTopPackingCode;
newObj.FromStdPackQty = newObj.ToStdPackQty;
newObj.FromUom = newObj.ToUom;
newObj.FromQty = newObj.ToQty;
newObj.FromLot = newObj.ToLot;
await _repository.InsertAsync(newObj).ConfigureAwait(false);
}
}
item.FromTopPackingCode = GetTopPackingCode(query, item.FromPackingCode);
item.ToTopPackingCode = GetTopPackingCode(query, item.ToPackingCode);
SetBillNumber(query, item);
} }
await _repository.InsertManyAsync(input).ConfigureAwait(false); await _repository.InsertManyAsync(input).ConfigureAwait(false);
return true; return true;
} }
/// <summary>
/// 取顶级箱码
/// </summary>
/// <param name="historyQuery">箱码历史</param>
/// <param name="item">当前箱码</param>
/// <returns></returns>
private static string GetTopPackingCode(IQueryable<SplitPackingRec> historyQuery, string packingCode)
{
var historyRec = historyQuery.Where(itm => itm.FromPackingCode == packingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
if (historyRec != null)
{
return historyRec.FromTopPackingCode;
}
else
{
historyRec = historyQuery.Where(itm => itm.ToPackingCode == packingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
if (historyRec != null)
{
return historyRec.ToTopPackingCode;
}
}
return null;
}
private static void SetBillNumber(IQueryable<SplitPackingRec> historyQuery, SplitPackingRec obj)
{
var historyRec = historyQuery.Where(itm => itm.FromPackingCode == obj.FromPackingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
if (historyRec != null)
{
obj.PurchaseInfo_PoNumber = historyRec.PurchaseInfo_PoNumber; //采购订单
obj.PurchaseInfo_AsnNumber = historyRec.PurchaseInfo_AsnNumber; //供应商发货单
obj.ArrivalNoticNumber = historyRec.ArrivalNoticNumber; //到货通知
obj.TaskOrderNumber = historyRec.TaskOrderNumber; //任务单
obj.ReceiptRecNumber = historyRec.ReceiptRecNumber; //收货记录单
obj.PutOnShelfNumber = historyRec.PutOnShelfNumber; //上架单
}
//else
//{
// historyRec = historyQuery.Where(itm => itm.ToPackingCode == obj.ToPackingCode).OrderBy(itm => itm.CreationTime).FirstOrDefault();
// if (historyRec != null)
// {
// obj.PurchaseInfo_PoNumber = historyRec.PurchaseInfo_PoNumber; //采购订单
// obj.PurchaseInfo_AsnNumber = historyRec.PurchaseInfo_AsnNumber; //供应商发货单
// obj.ArrivalNoticNumber = historyRec.ArrivalNoticNumber; //到货通知
// obj.TaskOrderNumber = historyRec.TaskOrderNumber; //任务单
// obj.ReceiptRecNumber = historyRec.ReceiptRecNumber; //收货记录单
// obj.PutOnShelfNumber = historyRec.PutOnShelfNumber; //上架单
// }
//}
}
} }

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Win_in.Sfs.Wms.Store.Domain.csproj

@ -30,6 +30,8 @@
<ProjectReference Include="..\..\..\BaseData\src\Win_in.Sfs.Basedata.Application.Contracts\Win_in.Sfs.Basedata.Application.Contracts.csproj" /> <ProjectReference Include="..\..\..\BaseData\src\Win_in.Sfs.Basedata.Application.Contracts\Win_in.Sfs.Basedata.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\FileStorage\src\Win_in.Sfs.FileStorage.Application.Contracts\Win_in.Sfs.FileStorage.Application.Contracts.csproj" /> <ProjectReference Include="..\..\..\FileStorage\src\Win_in.Sfs.FileStorage.Application.Contracts\Win_in.Sfs.FileStorage.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\Label\src\Win_in.Sfs.Label.Application.Contracts\Win_in.Sfs.Label.Application.Contracts.csproj" /> <ProjectReference Include="..\..\..\Label\src\Win_in.Sfs.Label.Application.Contracts\Win_in.Sfs.Label.Application.Contracts.csproj" />
<ProjectReference Include="..\..\..\Label\src\Win_in.Sfs.Label.Domain.Shared\Win_in.Sfs.Label.Domain.Shared.csproj" />
<ProjectReference Include="..\..\..\Label\src\Win_in.Sfs.Label.Domain\Win_in.Sfs.Label.Domain.csproj" />
<ProjectReference Include="..\..\..\Shared\src\Win_in.Sfs.Shared.Domain\Win_in.Sfs.Shared.Domain.csproj" /> <ProjectReference Include="..\..\..\Shared\src\Win_in.Sfs.Shared.Domain\Win_in.Sfs.Shared.Domain.csproj" />
<ProjectReference Include="..\..\..\Shared\src\Win_in.Sfs.Shared.Event\Win_in.Sfs.Shared.Event.csproj" /> <ProjectReference Include="..\..\..\Shared\src\Win_in.Sfs.Shared.Event\Win_in.Sfs.Shared.Event.csproj" />
<ProjectReference Include="..\..\..\Shared\src\Win_in.Sfs.Shared.Framework\Win_in.Sfs.Shared.Framework.csproj" /> <ProjectReference Include="..\..\..\Shared\src\Win_in.Sfs.Shared.Framework\Win_in.Sfs.Shared.Framework.csproj" />

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/ExchangeData/ExchangeDataDbContextModelCreatingExtensions.cs

@ -30,7 +30,7 @@ public static class ExchangeDataDbContextModelCreatingExtensions
b.Property(p => p.ReadTime); b.Property(p => p.ReadTime);
b.Property(p => p.ErrorCode).IsRequired().HasMaxLength(SfsPropertyConst.NameLength).HasConversion<string>(); b.Property(p => p.ErrorCode).IsRequired().HasMaxLength(SfsPropertyConst.NameLength).HasConversion<string>();
b.Property(p => p.ErrorMessage).HasMaxLength(SfsPropertyConst.RemarkLength); b.Property(p => p.ErrorMessage).HasMaxLength(SfsPropertyConst.RemarkLength);
b.Property(p => p.TyrpNumber).IsRequired().HasDefaultValueSql(); b.Property(p => p.TyrpNumber).IsRequired(); //.HasDefaultValueSql()
//Relations //Relations
//Indexes //Indexes

21669
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Migrations/20240222014023_Mig_Store_Init.Designer.cs

File diff suppressed because it is too large

644
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Migrations/20240222014023_Mig_Store_Init.cs

@ -0,0 +1,644 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Win_in.Sfs.Wms.Store.Migrations
{
public partial class Mig_Store_Init : Migration
{
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "CaseCode",
table: "Store_UnplannedReceiptRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "Explain",
table: "Store_UnplannedReceiptRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OnceBusiCode",
table: "Store_UnplannedReceiptRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ProjCapacityCode",
table: "Store_UnplannedReceiptRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ReasonCode",
table: "Store_UnplannedReceiptRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OANumber",
table: "Store_UnplannedReceiptRequest",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<int>(
name: "UnplannedReceiptType",
table: "Store_UnplannedReceiptRequest",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<string>(
name: "CaseCode",
table: "Store_UnplannedReceiptNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "Explain",
table: "Store_UnplannedReceiptNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OnceBusiCode",
table: "Store_UnplannedReceiptNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ProjCapacityCode",
table: "Store_UnplannedReceiptNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OANumber",
table: "Store_UnplannedReceiptNote",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<int>(
name: "UnplannedReceiptType",
table: "Store_UnplannedReceiptNote",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<string>(
name: "CaseCode",
table: "Store_UnplannedIssueRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "Explain",
table: "Store_UnplannedIssueRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OnceBusiCode",
table: "Store_UnplannedIssueRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ProjCapacityCode",
table: "Store_UnplannedIssueRequestDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OANumber",
table: "Store_UnplannedIssueRequest",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<int>(
name: "UnplannedIssueType",
table: "Store_UnplannedIssueRequest",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<string>(
name: "CaseCode",
table: "Store_UnplannedIssueNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "Explain",
table: "Store_UnplannedIssueNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OnceBusiCode",
table: "Store_UnplannedIssueNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ProjCapacityCode",
table: "Store_UnplannedIssueNoteDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OANumber",
table: "Store_UnplannedIssueNote",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<int>(
name: "UnplannedIssueType",
table: "Store_UnplannedIssueNote",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AlterColumn<string>(
name: "Type",
table: "Store_ProductReceiptRequest",
type: "nvarchar(64)",
maxLength: 64,
nullable: false,
defaultValue: "",
oldClrType: typeof(string),
oldType: "nvarchar(64)",
oldMaxLength: 64,
oldNullable: true);
migrationBuilder.AddColumn<DateTime>(
name: "InspectDate",
table: "Store_InspectNoteDetail",
type: "datetime2",
nullable: false,
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
migrationBuilder.AddColumn<string>(
name: "TyrpNumber",
table: "Store_ExchangeData",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "CaseCode",
table: "Job_UnplannedReceiptJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "Explain",
table: "Job_UnplannedReceiptJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OnceBusiCode",
table: "Job_UnplannedReceiptJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ProjCapacityCode",
table: "Job_UnplannedReceiptJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OANumber",
table: "Job_UnplannedReceiptJob",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<int>(
name: "UnplannedReceiptType",
table: "Job_UnplannedReceiptJob",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<string>(
name: "CaseCode",
table: "Job_UnplannedIssueJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "Explain",
table: "Job_UnplannedIssueJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OnceBusiCode",
table: "Job_UnplannedIssueJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "ProjCapacityCode",
table: "Job_UnplannedIssueJobDetail",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<string>(
name: "OANumber",
table: "Job_UnplannedIssueJob",
type: "nvarchar(max)",
nullable: true);
migrationBuilder.AddColumn<int>(
name: "UnplannedIssueType",
table: "Job_UnplannedIssueJob",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.CreateTable(
name: "Store_WipWarehouseAdjustNote",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
Type = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
RequestNumber = table.Column<string>(type: "nvarchar(max)", nullable: true),
JobNumber = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
Confirmed = table.Column<bool>(type: "bit", nullable: false),
ConfirmTime = table.Column<DateTime>(type: "datetime2", nullable: true),
ExtraProperties = table.Column<string>(type: "nvarchar(max)", nullable: true),
ConcurrencyStamp = table.Column<string>(type: "nvarchar(40)", maxLength: 40, nullable: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Remark = table.Column<string>(type: "nvarchar(3072)", maxLength: 3072, nullable: true),
Worker = table.Column<string>(type: "nvarchar(max)", nullable: true),
Number = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ActiveDate = table.Column<DateTime>(type: "datetime2", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Store_WipWarehouseAdjustNote", x => x.Id);
});
migrationBuilder.CreateTable(
name: "Store_WipWarehouseAdjustRequest",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
Type = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ExtraProperties = table.Column<string>(type: "nvarchar(max)", nullable: true),
ConcurrencyStamp = table.Column<string>(type: "nvarchar(40)", maxLength: 40, nullable: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Remark = table.Column<string>(type: "nvarchar(3072)", maxLength: 3072, nullable: true),
Worker = table.Column<string>(type: "nvarchar(max)", nullable: true),
Number = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ActiveDate = table.Column<DateTime>(type: "datetime2", nullable: false),
AutoSubmit = table.Column<bool>(type: "bit", nullable: false),
AutoAgree = table.Column<bool>(type: "bit", nullable: false),
AutoHandle = table.Column<bool>(type: "bit", nullable: false),
AutoCompleteJob = table.Column<bool>(type: "bit", nullable: false),
DirectCreateNote = table.Column<bool>(type: "bit", nullable: false),
RequestStatus = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Store_WipWarehouseAdjustRequest", x => x.Id);
});
migrationBuilder.CreateTable(
name: "Store_WipWarehouseAdjustNoteDetail",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
Reason = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ReasonCode = table.Column<string>(type: "nvarchar(max)", maxLength: 4096, nullable: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MasterID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Number = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
Remark = table.Column<string>(type: "nvarchar(3072)", maxLength: 3072, nullable: true),
ItemName = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ItemDesc1 = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ItemDesc2 = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ItemCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
Uom = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
Qty = table.Column<decimal>(type: "decimal(18,6)", precision: 18, scale: 6, nullable: false),
StdPackQty = table.Column<decimal>(type: "decimal(18,6)", nullable: false),
FromPackingCode = table.Column<string>(type: "nvarchar(450)", nullable: true),
ToPackingCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
FromContainerCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
ToContainerCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
FromLot = table.Column<string>(type: "nvarchar(max)", nullable: true),
ToLot = table.Column<string>(type: "nvarchar(max)", nullable: true),
SupplierBatch = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ArriveDate = table.Column<DateTime>(type: "datetime2", nullable: false),
ProduceDate = table.Column<DateTime>(type: "datetime2", nullable: false),
ExpireDate = table.Column<DateTime>(type: "datetime2", nullable: false),
FromLocationCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
FromLocationArea = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
FromLocationGroup = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
FromLocationErpCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
FromWarehouseCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
FromStatus = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToLocationCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToLocationArea = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ToLocationGroup = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ToLocationErpCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToWarehouseCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToStatus = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Store_WipWarehouseAdjustNoteDetail", x => x.Id);
table.ForeignKey(
name: "FK_Store_WipWarehouseAdjustNoteDetail_Store_WipWarehouseAdjustNote_MasterID",
column: x => x.MasterID,
principalTable: "Store_WipWarehouseAdjustNote",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable(
name: "Store_WipWarehouseAdjustRequestDetail",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
Reason = table.Column<string>(type: "nvarchar(max)", maxLength: 4096, nullable: true),
ReasonCode = table.Column<string>(type: "nvarchar(max)", maxLength: 4096, nullable: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
MasterID = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Number = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
Remark = table.Column<string>(type: "nvarchar(3072)", maxLength: 3072, nullable: true),
ItemName = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ItemDesc1 = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ItemDesc2 = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ItemCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
Uom = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
Qty = table.Column<decimal>(type: "decimal(18,6)", precision: 18, scale: 6, nullable: false),
StdPackQty = table.Column<decimal>(type: "decimal(18,6)", nullable: false),
FromPackingCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
ToPackingCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
FromContainerCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
ToContainerCode = table.Column<string>(type: "nvarchar(max)", nullable: true),
FromLot = table.Column<string>(type: "nvarchar(max)", nullable: true),
ToLot = table.Column<string>(type: "nvarchar(max)", nullable: true),
SupplierBatch = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ArriveDate = table.Column<DateTime>(type: "datetime2", nullable: false),
ProduceDate = table.Column<DateTime>(type: "datetime2", nullable: false),
ExpireDate = table.Column<DateTime>(type: "datetime2", nullable: false),
FromLocationCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
FromLocationArea = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
FromLocationGroup = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
FromLocationErpCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
FromWarehouseCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
FromStatus = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToLocationCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToLocationArea = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ToLocationGroup = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: true),
ToLocationErpCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToWarehouseCode = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false),
ToStatus = table.Column<string>(type: "nvarchar(64)", maxLength: 64, nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Store_WipWarehouseAdjustRequestDetail", x => x.Id);
table.ForeignKey(
name: "FK_Store_WipWarehouseAdjustRequestDetail_Store_WipWarehouseAdjustRequest_MasterID",
column: x => x.MasterID,
principalTable: "Store_WipWarehouseAdjustRequest",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateIndex(
name: "IX_Store_WipWarehouseAdjustNote_Number",
table: "Store_WipWarehouseAdjustNote",
column: "Number",
unique: true);
migrationBuilder.CreateIndex(
name: "IX_Store_WipWarehouseAdjustNoteDetail_MasterID",
table: "Store_WipWarehouseAdjustNoteDetail",
column: "MasterID");
migrationBuilder.CreateIndex(
name: "IX_Store_WipWarehouseAdjustNoteDetail_Number_FromPackingCode_FromLocationCode_ToLocationCode_FromStatus_ToStatus",
table: "Store_WipWarehouseAdjustNoteDetail",
columns: new[] { "Number", "FromPackingCode", "FromLocationCode", "ToLocationCode", "FromStatus", "ToStatus" },
unique: true,
filter: "[FromPackingCode] IS NOT NULL");
migrationBuilder.CreateIndex(
name: "IX_Store_WipWarehouseAdjustRequest_Number",
table: "Store_WipWarehouseAdjustRequest",
column: "Number",
unique: true);
migrationBuilder.CreateIndex(
name: "IX_Store_WipWarehouseAdjustRequestDetail_MasterID",
table: "Store_WipWarehouseAdjustRequestDetail",
column: "MasterID");
}
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "Store_WipWarehouseAdjustNoteDetail");
migrationBuilder.DropTable(
name: "Store_WipWarehouseAdjustRequestDetail");
migrationBuilder.DropTable(
name: "Store_WipWarehouseAdjustNote");
migrationBuilder.DropTable(
name: "Store_WipWarehouseAdjustRequest");
migrationBuilder.DropColumn(
name: "CaseCode",
table: "Store_UnplannedReceiptRequestDetail");
migrationBuilder.DropColumn(
name: "Explain",
table: "Store_UnplannedReceiptRequestDetail");
migrationBuilder.DropColumn(
name: "OnceBusiCode",
table: "Store_UnplannedReceiptRequestDetail");
migrationBuilder.DropColumn(
name: "ProjCapacityCode",
table: "Store_UnplannedReceiptRequestDetail");
migrationBuilder.DropColumn(
name: "ReasonCode",
table: "Store_UnplannedReceiptRequestDetail");
migrationBuilder.DropColumn(
name: "OANumber",
table: "Store_UnplannedReceiptRequest");
migrationBuilder.DropColumn(
name: "UnplannedReceiptType",
table: "Store_UnplannedReceiptRequest");
migrationBuilder.DropColumn(
name: "CaseCode",
table: "Store_UnplannedReceiptNoteDetail");
migrationBuilder.DropColumn(
name: "Explain",
table: "Store_UnplannedReceiptNoteDetail");
migrationBuilder.DropColumn(
name: "OnceBusiCode",
table: "Store_UnplannedReceiptNoteDetail");
migrationBuilder.DropColumn(
name: "ProjCapacityCode",
table: "Store_UnplannedReceiptNoteDetail");
migrationBuilder.DropColumn(
name: "OANumber",
table: "Store_UnplannedReceiptNote");
migrationBuilder.DropColumn(
name: "UnplannedReceiptType",
table: "Store_UnplannedReceiptNote");
migrationBuilder.DropColumn(
name: "CaseCode",
table: "Store_UnplannedIssueRequestDetail");
migrationBuilder.DropColumn(
name: "Explain",
table: "Store_UnplannedIssueRequestDetail");
migrationBuilder.DropColumn(
name: "OnceBusiCode",
table: "Store_UnplannedIssueRequestDetail");
migrationBuilder.DropColumn(
name: "ProjCapacityCode",
table: "Store_UnplannedIssueRequestDetail");
migrationBuilder.DropColumn(
name: "OANumber",
table: "Store_UnplannedIssueRequest");
migrationBuilder.DropColumn(
name: "UnplannedIssueType",
table: "Store_UnplannedIssueRequest");
migrationBuilder.DropColumn(
name: "CaseCode",
table: "Store_UnplannedIssueNoteDetail");
migrationBuilder.DropColumn(
name: "Explain",
table: "Store_UnplannedIssueNoteDetail");
migrationBuilder.DropColumn(
name: "OnceBusiCode",
table: "Store_UnplannedIssueNoteDetail");
migrationBuilder.DropColumn(
name: "ProjCapacityCode",
table: "Store_UnplannedIssueNoteDetail");
migrationBuilder.DropColumn(
name: "OANumber",
table: "Store_UnplannedIssueNote");
migrationBuilder.DropColumn(
name: "UnplannedIssueType",
table: "Store_UnplannedIssueNote");
migrationBuilder.DropColumn(
name: "InspectDate",
table: "Store_InspectNoteDetail");
migrationBuilder.DropColumn(
name: "TyrpNumber",
table: "Store_ExchangeData");
migrationBuilder.DropColumn(
name: "CaseCode",
table: "Job_UnplannedReceiptJobDetail");
migrationBuilder.DropColumn(
name: "Explain",
table: "Job_UnplannedReceiptJobDetail");
migrationBuilder.DropColumn(
name: "OnceBusiCode",
table: "Job_UnplannedReceiptJobDetail");
migrationBuilder.DropColumn(
name: "ProjCapacityCode",
table: "Job_UnplannedReceiptJobDetail");
migrationBuilder.DropColumn(
name: "OANumber",
table: "Job_UnplannedReceiptJob");
migrationBuilder.DropColumn(
name: "UnplannedReceiptType",
table: "Job_UnplannedReceiptJob");
migrationBuilder.DropColumn(
name: "CaseCode",
table: "Job_UnplannedIssueJobDetail");
migrationBuilder.DropColumn(
name: "Explain",
table: "Job_UnplannedIssueJobDetail");
migrationBuilder.DropColumn(
name: "OnceBusiCode",
table: "Job_UnplannedIssueJobDetail");
migrationBuilder.DropColumn(
name: "ProjCapacityCode",
table: "Job_UnplannedIssueJobDetail");
migrationBuilder.DropColumn(
name: "OANumber",
table: "Job_UnplannedIssueJob");
migrationBuilder.DropColumn(
name: "UnplannedIssueType",
table: "Job_UnplannedIssueJob");
migrationBuilder.AlterColumn<string>(
name: "Type",
table: "Store_ProductReceiptRequest",
type: "nvarchar(64)",
maxLength: 64,
nullable: true,
oldClrType: typeof(string),
oldType: "nvarchar(64)",
oldMaxLength: 64);
}
}
}

856
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Migrations/StoreDbContextModelSnapshot.cs

File diff suppressed because it is too large

45
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/SplitPackings/SplitPackingRecDbContextModelCreatingExtensions.cs

@ -18,28 +18,39 @@ public static class SplitPackingRecDbContextModelCreatingExtensions
//Configure ABP properties //Configure ABP properties
b.ConfigureByConvention(); b.ConfigureByConvention();
//Configure Sfs base properties //Configure Sfs base properties
b.ConfigureSfsBase(); //b.ConfigureSfsBase();
//Properties //Properties
b.Property(q => q.OprType).IsRequired(); b.Property(q => q.OprType).IsRequired();
b.Property(q => q.GroupCode).IsRequired().HasMaxLength(36); b.Property(q => q.FromPackingCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.OprLevel).IsRequired(); b.Property(q => q.FromTopPackingCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.NodeType).IsRequired(); b.Property(q => q.FromStdPackQty).IsRequired();
//b.Property(q => q.ParentId) b.Property(q => q.FromUom).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.PackingCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength); b.Property(q => q.FromQty).IsRequired().HasPrecision(18, 6);
b.Property(q => q.RootPackingCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ToPackingCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ToTopPackingCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ToStdPackQty).IsRequired();
b.Property(q => q.ToUom).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ToQty).IsRequired().HasPrecision(18, 6);
b.Property(q => q.ItemCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength); b.Property(q => q.ItemCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ItemName).IsRequired().HasMaxLength(SfsPropertyConst.NameLength); b.Property(q => q.ItemName).HasMaxLength(SfsPropertyConst.NameLength);
b.Property(q => q.ItemDesc1).IsRequired().HasMaxLength(SfsPropertyConst.DescLength); b.Property(q => q.ItemDesc1).HasMaxLength(SfsPropertyConst.DescLength);
b.Property(q => q.ItemDesc2).IsRequired().HasMaxLength(SfsPropertyConst.DescLength); b.Property(q => q.ItemDesc2).HasMaxLength(SfsPropertyConst.DescLength);
b.Property(q => q.Lot).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength); b.Property(q => q.FromLot).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.StdPackQty).HasPrecision(18, 4); b.Property(q => q.ToLot).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.Uom).HasMaxLength(50);
b.Property(q => q.Qty).IsRequired().HasPrecision(18,4);
//Indexes
b.HasIndex(q => new { PackingCode = q.PackingCode });
b.HasIndex(q => new { PackingCode = q.PackingCode, OprLevel = q.OprLevel });
b.Property(q => q.PurchaseInfo_PoNumber).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.PurchaseInfo_AsnNumber).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ArrivalNoticNumber).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.TaskOrderNumber).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.ReceiptRecNumber).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.PutOnShelfNumber).HasMaxLength(SfsPropertyConst.CodeLength);
//Indexes
b.HasIndex(q => new { FromPackingCode = q.FromPackingCode, ToPackingCode = q.ToPackingCode });
b.HasIndex(q => new { ToPackingCode = q.ToPackingCode });
}); });
} }
} }

Loading…
Cancel
Save