¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoæ¥è¯¢åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class GetWmsMaterialInfosInput : ExtensiblePagedAndSortedResultRequestDto |
| | | { |
| | | /// <summary> |
| | | /// Gets or sets the filter. |
| | | /// </summary> |
| | | public string Filter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// Gets or sets the name. |
| | | /// </summary> |
| | | public string Name { get; set; } |
| | | /// <summary> |
| | | /// ç©æä»£å· |
| | | /// </summary> |
| | | public string MaterialNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æºå |
| | | /// </summary> |
| | | public string? MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æå¯ä¸ç |
| | | /// </summary> |
| | | public string MaterialId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | public int? StockNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ¹å· |
| | | /// </summary> |
| | | public string? MaterialBatch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¾åºåç¼å· |
| | | /// </summary> |
| | | public string? SupplierCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoåå»ºåæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WmsMaterialInfoCreateDto : WmsMaterialInfoCreateOrUpdateDtoBase |
| | | { |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public virtual int? Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public bool? IsDisabled { get; set; } = false; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoåå»ºææ´æ°åºç±» |
| | | /// </summary> |
| | | public abstract class WmsMaterialInfoCreateOrUpdateDtoBase : ExtensibleEntityDto |
| | | { |
| | | /// <summary> |
| | | /// ç©æä»£å· |
| | | /// </summary> |
| | | public string MaterialNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æºå |
| | | /// </summary> |
| | | public string? MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æå¯ä¸ç |
| | | /// </summary> |
| | | public string MaterialId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | public int? StockNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ¹å· |
| | | /// </summary> |
| | | public string? MaterialBatch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¾åºåç¼å· |
| | | /// </summary> |
| | | public string? SupplierCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段1 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段2 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段3 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField3 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public virtual string Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoCreateOrUpdateDtoBase"/> class. |
| | | /// </summary> |
| | | public WmsMaterialInfoCreateOrUpdateDtoBase() : base(false) |
| | | { |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Domain.Entities; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoæ°æ®åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WmsMaterialInfoDto : ExtensibleEntityDto<Guid>, IHasConcurrencyStamp |
| | | { |
| | | /// <summary> |
| | | /// ç©æä»£å· |
| | | /// </summary> |
| | | public string MaterialNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æºå |
| | | /// </summary> |
| | | public string? MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æå¯ä¸ç |
| | | /// </summary> |
| | | public string MaterialId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | public int? StockNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ¹å· |
| | | /// </summary> |
| | | public string? MaterialBatch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¾åºåç¼å· |
| | | /// </summary> |
| | | public string? SupplierCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public virtual int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public virtual string Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public virtual bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¹¶åæ³ |
| | | /// </summary> |
| | | public string ConcurrencyStamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// Gets the export data. |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public Dictionary<string, object> GetExportData() |
| | | { |
| | | var exportData = new Dictionary<string, object>(); |
| | | foreach (var property in this.GetType().GetProperties()) |
| | | { |
| | | exportData.Add(property.Name, property.GetValue(this)); |
| | | } |
| | | |
| | | return exportData; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Volo.Abp.Domain.Entities; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoæ´æ°åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WmsMaterialInfoUpdateDto : WmsMaterialInfoCreateOrUpdateDtoBase, IHasConcurrencyStamp |
| | | { |
| | | /// <summary> |
| | | /// å¹¶åæ³ |
| | | /// </summary> |
| | | public string ConcurrencyStamp { get; set; } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using MiniExcelLibs.Attributes; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfoså¯¼åºæ¨¡å |
| | | /// </summary> |
| | | public class WmsMaterialInfosExportModel |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfoå¯¼åºæ¨¡å |
| | | /// </summary> |
| | | public class WorkSectionExportModel |
| | | { |
| | | /// <summary> |
| | | /// ç©æç¼å· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ç©æç¼å·", Width = 20)] |
| | | public string MaterialNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ç©æåç§°", Width = 25)] |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æºå/è§æ ¼ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æºåè§æ ¼", Width = 20)] |
| | | public string MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æå¯ä¸ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å¯ä¸æ è¯ç ", Width = 25)] |
| | | public string MaterialId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åºåæ°é |
| | | /// </summary> |
| | | [ExcelColumn(Name = "åºåæ°é", Width = 15)] |
| | | public int? StockNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ¹æ¬¡ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ç©ææ¹æ¬¡", Width = 20)] |
| | | public string MaterialBatch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¾åºåç¼å· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ä¾åºåç¼å·", Width = 25)] |
| | | public string SupplierCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ£éªç¶æ", Width = 25)] |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å
¥åºæ¶é´ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å
¥åºæ¶é´", Width = 25, Format = "yyyy-MM-dd HH:mm")] |
| | | public DateTime? InStockTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "夿³¨", Width = 30)] |
| | | public string Remark { get; set; } |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using static CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos.WmsMaterialInfosExportModel; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfos导å
¥æ¨¡å |
| | | /// </summary> |
| | | public class WmsMaterialInfosImportModel |
| | | { |
| | | private List<WmsMaterialInfoImportModel> _wmsmaterialinfos = new(); |
| | | |
| | | public List<WmsMaterialInfoImportModel> WmsMaterialInfos |
| | | { |
| | | get => _wmsmaterialinfos; |
| | | set |
| | | { |
| | | _wmsmaterialinfos = value; |
| | | var rowIndex = 2; |
| | | _wmsmaterialinfos?.ForEach(x => x.RowIndex = rowIndex++); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfo导å
¥æ¨¡å |
| | | /// </summary> |
| | | public class WmsMaterialInfoImportModel : WorkSectionExportModel |
| | | { |
| | | /// <summary> |
| | | /// è¡å· |
| | | /// </summary> |
| | | public int RowIndex { get; set; } |
| | | } |
| | | } |
| | | } |
| | |
| | | public virtual string MaterialId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | /// <summary> |
| | | /// åç§° |
| | | /// </summary> |
| | | public virtual string MaterialName { get; set; } |
| | |
| | | public string AreaName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦éå® |
| | | /// </summary> |
| | | public int IsLock { get; set; } |
| | | public YesNoEnum IsLock { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç©ºæ |
| | |
| | | public string AreaName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public string CheckStatusDesc |
| | | { |
| | | get |
| | | { |
| | | return GetEnumDescriptionUtil.GetEnumDescription(CheckStatus); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦éå® |
| | | /// </summary> |
| | | public YesNoEnum IsLock { get; set; } |
| | |
| | | public string AreaName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éå®ç¶æ |
| | | /// <para>0-æªéå® 1-å·²éå®</para> |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ¯å¦éå®", Width = 25)] |
| | | public int IsLock { get; set; } |
| | | public YesNoEnum IsLock { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç©ºæ |
| | |
| | | /// </summary> |
| | | public string MaterialName { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// åå· |
| | | /// </summary> |
| | | public string MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éè´ç±»åï¼æä¸¾å¼ï¼ |
| | | /// </summary> |
| | |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå· |
| | | /// </summary> |
| | | public string MaterialModel { get; set; } |
| | | /// <summary> |
| | | /// éè´ç±»åï¼æä¸¾å¼ï¼ |
| | | /// </summary> |
| | | public PurchaseTypeEnum PurchaseType { get; set; } |
| | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åå· |
| | | /// </summary> |
| | | public string MaterialModel { get; set; } |
| | | /// <summary> |
| | | /// ç产工å |
| | | /// </summary> |
| | | public string Factory { get; set; } |
| | |
| | | public string MaterialQuality { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "åå·", Width = 25)] |
| | | public string MaterialModel { get; set; } |
| | | /// <summary> |
| | | /// é¿åº¦ï¼åä½ï¼ç±³ï¼ |
| | | /// </summary> |
| | | /// <example>6.0</example> |
| | |
| | | /// <summary> |
| | | /// WmsPlaceæ¥è¯¢åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class GetWmsPlacesInput : ExtensiblePagedAndSortedResultRequestDto |
| | | public class GetWmsMaterialInfoInput : ExtensiblePagedAndSortedResultRequestDto |
| | | { |
| | | /// <summary> |
| | | /// Gets or sets the filter. |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | using Volo.Abp.Application.Services; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Contracts.Services; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoåºç¨æå¡ |
| | | /// </summary> |
| | | public interface IWmsMaterialInfoAppService : ICrudAppService<WmsMaterialInfoDto, Guid, GetWmsMaterialInfosInput, WmsMaterialInfoCreateDto, WmsMaterialInfoUpdateDto> |
| | | { |
| | | /// <summary> |
| | | /// Clones the asynchronous. |
| | | /// </summary> |
| | | /// <param name="ids">The ids.</param> |
| | | /// <returns></returns> |
| | | Task<List<WmsMaterialInfoDto>> CloneAsync(IEnumerable<Guid> ids); |
| | | |
| | | /// <summary> |
| | | /// Deletes the many asynchronous. |
| | | /// </summary> |
| | | /// <param name="ids">The ids.</param> |
| | | /// <returns></returns> |
| | | Task DeleteManyAsync(IEnumerable<Guid> ids); |
| | | |
| | | /// <summary> |
| | | /// Adjusts the sort asynchronous. |
| | | /// </summary> |
| | | /// <param name="id">The identifier.</param> |
| | | /// <param name="sort">The sort.</param> |
| | | /// <returns></returns> |
| | | Task AdjustSortAsync(Guid id, int sort); |
| | | |
| | | /// <summary> |
| | | /// Imports the asynchronous. |
| | | /// </summary> |
| | | /// <param name="input">The input.</param> |
| | | /// <returns></returns> |
| | | Task ImportAsync(WmsMaterialInfosImportModel input); |
| | | |
| | | /// <summary> |
| | | /// Exports the asynchronous. |
| | | /// </summary> |
| | | /// <param name="input">The input.</param> |
| | | /// <returns></returns> |
| | | Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialInfosInput input); |
| | | } |
| | |
| | | /// <summary> |
| | | /// WmsPlaceåºç¨æå¡ |
| | | /// </summary> |
| | | public interface IWmsPlaceAppService : ICrudAppService<WmsPlaceDto, Guid, GetWmsPlacesInput, WmsPlaceCreateDto, WmsPlaceUpdateDto> |
| | | public interface IWmsPlaceAppService : ICrudAppService<WmsPlaceDto, Guid, GetWmsMaterialInfoInput, WmsPlaceCreateDto, WmsPlaceUpdateDto> |
| | | { |
| | | /// <summary> |
| | | /// Clones the asynchronous. |
| | |
| | | /// </summary> |
| | | /// <param name="input">The input.</param> |
| | | /// <returns></returns> |
| | | Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsPlacesInput input); |
| | | Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialInfoInput input); |
| | | } |
| | |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | var oldWmsArea = await _wmsareaRepository.FindByNameAsync(wmsarea.AreaName); |
| | | var oldWmsArea = await _wmsareaRepository.FindByNameAsync(wmsarea.AreaNo); |
| | | if (oldWmsArea != null) |
| | | { |
| | | var wmsareaUpdateDto = new WmsAreaUpdateDto |
| | |
| | | wmsmaterial.Length = input.Length; |
| | | wmsmaterial.IsMainBranch = input.IsMainBranch; |
| | | wmsmaterial.Factory = input.Factory; |
| | | wmsmaterial.MaterialModel = input.MaterialModel; |
| | | wmsmaterial.Certification = input.Certification; |
| | | |
| | | await _wmsmaterialRepository.UpdateAsync(wmsmaterial); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Services; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.Domain.Shared; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterialInfos; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.ObjectExtending; |
| | | using Volo.Abp.ObjectMapping; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Implements; |
| | | |
| | | /// <inheritdoc /> |
| | | public class WmsMaterialInfoAppService : CMSPluginAppService, IWmsMaterialInfoAppService |
| | | { |
| | | private readonly IWmsMaterialInfoRepository _wmsmaterialinfoRepository; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoAppService"/> class. |
| | | /// </summary> |
| | | /// <param name="wmsmaterialinfoRepository">The task job repository.</param> |
| | | public WmsMaterialInfoAppService(IWmsMaterialInfoRepository wmsmaterialinfoRepository) |
| | | { |
| | | _wmsmaterialinfoRepository = wmsmaterialinfoRepository; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<WmsMaterialInfoDto> GetAsync(Guid id) |
| | | { |
| | | return ObjectMapper.Map<WmsMaterialInfo, WmsMaterialInfoDto>(await _wmsmaterialinfoRepository.GetAsync(id)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<PagedResultDto<WmsMaterialInfoDto>> GetListAsync(GetWmsMaterialInfosInput input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | if (input.Sorting.IsNullOrWhiteSpace()) |
| | | { |
| | | input.Sorting = nameof(WmsMaterialInfo.Sort); |
| | | } |
| | | |
| | | var specification = new WmsMaterialInfoSpecification(input.Name); |
| | | var materialInfo = ObjectMapper.Map<GetWmsMaterialInfosInput, WmsMaterialInfo>(input); |
| | | var count = await _wmsmaterialinfoRepository.GetCountAsync(materialInfo,input.Filter, specification); |
| | | var list = await _wmsmaterialinfoRepository.GetListAsync(materialInfo,input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification); |
| | | |
| | | return new PagedResultDto<WmsMaterialInfoDto>(count, ObjectMapper.Map<List<WmsMaterialInfo>, List<WmsMaterialInfoDto>>(list)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<WmsMaterialInfoDto> CreateAsync(WmsMaterialInfoCreateDto input) |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var exist = await _wmsmaterialinfoRepository.NameExistAsync(input.MaterialNo); |
| | | if (exist) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | } |
| | | |
| | | var maxSort = await _wmsmaterialinfoRepository.GetMaxSortAsync(); |
| | | var sort = input.Sort ?? maxSort; |
| | | var wmsmaterialinfo = ObjectMapper.Map<WmsMaterialInfoCreateDto, WmsMaterialInfo>(input); |
| | | input.MapExtraPropertiesTo(wmsmaterialinfo, MappingPropertyDefinitionChecks.None); |
| | | wmsmaterialinfo.Sort = sort; |
| | | await _wmsmaterialinfoRepository.InsertAsync(wmsmaterialinfo); |
| | | |
| | | if (input.Sort.HasValue && wmsmaterialinfo.Sort != maxSort) |
| | | { |
| | | await AdjustSortAsync(wmsmaterialinfo.Id, wmsmaterialinfo.Sort); |
| | | } |
| | | |
| | | return ObjectMapper.Map<WmsMaterialInfo, WmsMaterialInfoDto>(wmsmaterialinfo); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<WmsMaterialInfoDto> UpdateAsync(Guid id, WmsMaterialInfoUpdateDto input) |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var wmsMaterialInfo = await _wmsmaterialinfoRepository.GetAsync(id); |
| | | var exist = await _wmsmaterialinfoRepository.NameExistAsync(input.MaterialNo, wmsMaterialInfo.Id); |
| | | if (exist) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | } |
| | | |
| | | wmsMaterialInfo.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); |
| | | input.MapExtraPropertiesTo(wmsMaterialInfo, MappingPropertyDefinitionChecks.None); |
| | | |
| | | wmsMaterialInfo.MaterialNo = input.MaterialNo; |
| | | wmsMaterialInfo.MaterialName = input.MaterialName; |
| | | wmsMaterialInfo.MaterialModel = input.MaterialModel; |
| | | wmsMaterialInfo.MaterialId = input.MaterialId; |
| | | wmsMaterialInfo.StockNumber = input.StockNumber; |
| | | wmsMaterialInfo.MaterialBatch = input.MaterialBatch; |
| | | wmsMaterialInfo.SupplierCode = input.SupplierCode; |
| | | wmsMaterialInfo.CheckStatus = input.CheckStatus; |
| | | wmsMaterialInfo.RedundantField1 = input.RedundantField1; |
| | | wmsMaterialInfo.RedundantField2 = input.RedundantField2; |
| | | wmsMaterialInfo.RedundantField3 = input.RedundantField3; |
| | | wmsMaterialInfo.Remark = input.Remark; |
| | | |
| | | await _wmsmaterialinfoRepository.UpdateAsync(wmsMaterialInfo); |
| | | |
| | | return ObjectMapper.Map<WmsMaterialInfo, WmsMaterialInfoDto>(wmsMaterialInfo); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<List<WmsMaterialInfoDto>> CloneAsync(IEnumerable<Guid> ids) |
| | | { |
| | | var wmsmaterialinfos = new List<WmsMaterialInfo>(); |
| | | if (ids != null) |
| | | { |
| | | var sort = await _wmsmaterialinfoRepository.GetMaxSortAsync(); |
| | | foreach (var id in ids) |
| | | { |
| | | var wmsmaterialinfo = await _wmsmaterialinfoRepository.FindAsync(id); |
| | | if (wmsmaterialinfo != null) |
| | | { |
| | | var name = wmsmaterialinfo.MaterialName + WmsMaterialInfoConsts.CloneTag; |
| | | var notExist = false; |
| | | while (!notExist) |
| | | { |
| | | var exist = await _wmsmaterialinfoRepository.NameExistAsync(name); |
| | | if (exist || wmsmaterialinfos.Any(x => x.MaterialName == name)) |
| | | { |
| | | name += WmsMaterialInfoConsts.CloneTag; |
| | | continue; |
| | | } |
| | | |
| | | notExist = true; |
| | | } |
| | | |
| | | //wmsmaterialinfo = await _wmsmaterialinfoRepository.InsertAsync(wmsmaterialinfo.Clone(GuidGenerator.Create(), name, sort++)); |
| | | wmsmaterialinfos.Add(wmsmaterialinfo); |
| | | } |
| | | } |
| | | } |
| | | |
| | | return ObjectMapper.Map<List<WmsMaterialInfo>, List<WmsMaterialInfoDto>>(wmsmaterialinfos); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | return _wmsmaterialinfoRepository.DeleteAsync(id); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task DeleteManyAsync(IEnumerable<Guid> ids) |
| | | { |
| | | foreach (var id in ids) |
| | | { |
| | | await DeleteAsync(id); |
| | | } |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | var list = await _wmsmaterialinfoRepository.GetListAsync(null,nameof(WmsMaterialInfo.Sort)); |
| | | if (list != null && list.Any()) |
| | | { |
| | | var initSort = 1; |
| | | list.ForEach(x => x.AdjustSort(initSort++)); |
| | | var entity = list.FirstOrDefault(x => x.Id == id); |
| | | if (entity != null) |
| | | { |
| | | if (sort == 1) |
| | | { |
| | | list.Where(x => x.Id != id).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); |
| | | } |
| | | else if (entity.Sort > sort) |
| | | { |
| | | list.Where(x => x.Id != id && x.Sort >= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); |
| | | list.Where(x => x.Id != id && x.Sort < sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); |
| | | } |
| | | else if (entity.Sort < sort) |
| | | { |
| | | list.Where(x => x.Id != id && x.Sort > sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); |
| | | list.Where(x => x.Id != id && x.Sort <= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); |
| | | } |
| | | |
| | | entity.AdjustSort(sort); |
| | | } |
| | | } |
| | | |
| | | await _wmsmaterialinfoRepository.UpdateManyAsync(list); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task ImportAsync(WmsMaterialInfosImportModel input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | var wmsmaterialinfoCreateDtos = new List<(int RowIndex, WmsMaterialInfoCreateDto Item)>(); |
| | | var wmsmaterialinfoUpdateDtos = new List<(int RowIndex, Guid Id, WmsMaterialInfoUpdateDto Item)>(); |
| | | var wmsmaterialinfos = input.WmsMaterialInfos; |
| | | |
| | | if (wmsmaterialinfos != null && wmsmaterialinfos.Any()) |
| | | { |
| | | #region 导å
¥æ ¡éª |
| | | |
| | | // 夿åç§°æ¯å¦éå¤ï¼å¹¶è¾åºç¬¬å è¡éå¤ |
| | | var duplicateWmsMaterialInfos = wmsmaterialinfos.GroupBy(x => x.MaterialNo).Where(x => x.Count() > 1).ToList(); |
| | | if (duplicateWmsMaterialInfos?.Any() == true) |
| | | { |
| | | var duplicateWmsMaterialInfoMsgs = duplicateWmsMaterialInfos.Select(x => $"第 {string.Join(",", x.Select(x => x.RowIndex))} è¡ï¼{x.Key} åç§°éå¤"); |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ {string.Join(",", duplicateWmsMaterialInfoMsgs)}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | foreach (var wmsmaterialinfo in wmsmaterialinfos) |
| | | { |
| | | if (wmsmaterialinfo.MaterialNo.IsNullOrWhiteSpace() && wmsmaterialinfo.MaterialNo.IsNullOrWhiteSpace()) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if (wmsmaterialinfo.MaterialNo.IsNullOrWhiteSpace()) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialinfo.RowIndex}è¡ï¼WmsMaterialInfoåç§°ä¸è½ä¸ºç©º"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | var oldWmsMaterialInfo = await _wmsmaterialinfoRepository.FindByNameAsync(wmsmaterialinfo.MaterialNo); |
| | | if (oldWmsMaterialInfo != null) |
| | | { |
| | | var wmsmaterialinfoUpdateDto = new WmsMaterialInfoUpdateDto |
| | | { |
| | | MaterialNo = wmsmaterialinfo.MaterialNo, |
| | | MaterialName = wmsmaterialinfo.MaterialName, |
| | | MaterialId = wmsmaterialinfo.MaterialId, |
| | | |
| | | // ç©æç¹æ§ |
| | | MaterialModel = wmsmaterialinfo.MaterialModel, |
| | | MaterialBatch = wmsmaterialinfo.MaterialBatch, |
| | | StockNumber = wmsmaterialinfo.StockNumber, |
| | | |
| | | // ä¾åºåä¿¡æ¯ |
| | | SupplierCode = wmsmaterialinfo.SupplierCode, |
| | | |
| | | // ç¶æä¿¡æ¯ |
| | | CheckStatus = wmsmaterialinfo.CheckStatus, |
| | | |
| | | // ç³»ç»å段 |
| | | Remark = wmsmaterialinfo.Remark, |
| | | }; |
| | | |
| | | wmsmaterialinfoUpdateDtos.Add((wmsmaterialinfo.RowIndex, oldWmsMaterialInfo.Id, wmsmaterialinfoUpdateDto)); |
| | | } |
| | | else |
| | | { |
| | | var wmsmaterialinfoCreateDto = new WmsMaterialInfoCreateDto |
| | | { |
| | | MaterialNo = wmsmaterialinfo.MaterialNo, |
| | | MaterialName = wmsmaterialinfo.MaterialName, |
| | | MaterialId = wmsmaterialinfo.MaterialId, |
| | | |
| | | // ç©æç¹æ§ |
| | | MaterialModel = wmsmaterialinfo.MaterialModel, |
| | | MaterialBatch = wmsmaterialinfo.MaterialBatch, |
| | | StockNumber = wmsmaterialinfo.StockNumber, |
| | | |
| | | // ä¾åºåä¿¡æ¯ |
| | | SupplierCode = wmsmaterialinfo.SupplierCode, |
| | | |
| | | // ç¶æä¿¡æ¯ |
| | | CheckStatus = wmsmaterialinfo.CheckStatus, |
| | | |
| | | // ç³»ç»å段 |
| | | Remark = wmsmaterialinfo.Remark, |
| | | }; |
| | | |
| | | wmsmaterialinfoCreateDtos.Add((wmsmaterialinfo.RowIndex, wmsmaterialinfoCreateDto)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // æ°å¢ |
| | | foreach (var wmsmaterialinfoDto in wmsmaterialinfoCreateDtos) |
| | | { |
| | | try |
| | | { |
| | | await CreateAsync(wmsmaterialinfoDto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialinfoDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | |
| | | // æ´æ° |
| | | foreach (var wmsmaterialinfoDto in wmsmaterialinfoUpdateDtos) |
| | | { |
| | | try |
| | | { |
| | | await UpdateAsync(wmsmaterialinfoDto.Id, wmsmaterialinfoDto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{wmsmaterialinfoDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialInfosInput input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | if (input.Sorting.IsNullOrWhiteSpace()) |
| | | { |
| | | input.Sorting = nameof(WmsMaterialInfo.Sort); |
| | | } |
| | | |
| | | var specification = new WmsMaterialInfoSpecification(input.Name); |
| | | var materialInfo = ObjectMapper.Map<GetWmsMaterialInfosInput, WmsMaterialInfo>(input); |
| | | var list = await _wmsmaterialinfoRepository.GetListAsync(materialInfo,input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification, includeDetails: true); |
| | | var result = ObjectMapper.Map<List<WmsMaterialInfo>, List<WmsMaterialInfoDto>>(list); |
| | | |
| | | var sheets = new Dictionary<string, object> |
| | | { |
| | | ["é
ç½®"] = result.Select(x => x.GetExportData()).ToList(), |
| | | }; |
| | | |
| | | var fileName = result.Count > 1 ? "WmsMaterialInfoå表" : result.Count == 1 ? result.First()?.MaterialNo : "WmsMaterialInfo模ç"; |
| | | return (sheets, fileName); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// Checks the create or update dto asynchronous. |
| | | /// </summary> |
| | | /// <param name="input">The input.</param> |
| | | protected Task CheckCreateOrUpdateDtoAsync(WmsMaterialInfoCreateOrUpdateDtoBase input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | Check.NotNullOrWhiteSpace(input.MaterialNo, "ç¼å·", WmsMaterialInfoConsts.MaxMaterialIdLength); |
| | | Check.NotNullOrWhiteSpace(input.MaterialName, "åç§°", WmsMaterialInfoConsts.MaxMaterialIdLength); |
| | | Check.Length(input.Remark, "夿³¨", WmsMaterialInfoConsts.MaxRemarkLength); |
| | | return Task.CompletedTask; |
| | | } |
| | | } |
| | |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.ObjectExtending; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Util; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterials; |
| | | using CMS.Plugin.HIAWms.Domain.WmsContainers; |
| | | using CMS.Plugin.HIAWms.Domain.WmsPlaces; |
| | | using CMS.Plugin.HIAWms.Domain.WmsAreas; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.Implements; |
| | | |
| | |
| | | public class WmsMaterialStockAppService : CMSPluginAppService, IWmsMaterialStockAppService |
| | | { |
| | | private readonly IWmsMaterialStockRepository _wmsmaterialstockRepository; |
| | | private readonly IWmsMaterialRepository _wmsMaterialRepository; |
| | | private readonly IWmsContainerRepository _wmscontainerRepository; |
| | | private readonly IWmsPlaceRepository _wmsplaceRepository; |
| | | private readonly IWmsAreaRepository _wmsareaRepository; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialStockAppService"/> class. |
| | | /// </summary> |
| | | /// <param name="wmsmaterialstockRepository">The task job repository.</param> |
| | | public WmsMaterialStockAppService(IWmsMaterialStockRepository wmsmaterialstockRepository) |
| | | public WmsMaterialStockAppService(IWmsMaterialStockRepository wmsmaterialstockRepository, |
| | | IWmsMaterialRepository wmsMaterialRepository, |
| | | IWmsContainerRepository wmscontainerRepository, |
| | | IWmsPlaceRepository wmsplaceRepository, |
| | | IWmsAreaRepository wmsareaRepository |
| | | ) |
| | | { |
| | | _wmsmaterialstockRepository = wmsmaterialstockRepository; |
| | | _wmsMaterialRepository = wmsMaterialRepository; |
| | | _wmscontainerRepository = wmscontainerRepository; |
| | | _wmsplaceRepository = wmsplaceRepository; |
| | | _wmsareaRepository = wmsareaRepository; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var exist = await _wmsmaterialstockRepository.NameExistAsync(input.MaterialNo); |
| | | if (exist) |
| | | //var exist = await _wmsmaterialstockRepository.NameExistAsync(input.MaterialNo); |
| | | //if (exist) |
| | | //{ |
| | | // throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | //} |
| | | var material = await _wmsMaterialRepository.FindByNameAsync(input.MaterialNo); |
| | | if(material == null) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | throw new UserFriendlyException("ç©æä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | |
| | | var container = await _wmscontainerRepository.FindByNameAsync(input.ContainerNo); |
| | | if (container == null) |
| | | { |
| | | throw new UserFriendlyException("æçä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | var place = await _wmsplaceRepository.FindByNameAsync(input.PlaceNo); |
| | | if(place == null) |
| | | { |
| | | throw new UserFriendlyException("åºä½ä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | var area = await _wmsareaRepository.FindByNameAsync(place.AreaCode); |
| | | if(area == null) |
| | | { |
| | | throw new UserFriendlyException("åºä½åºåºä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | var maxSort = await _wmsmaterialstockRepository.GetMaxSortAsync(); |
| | | var sort = input.Sort ?? maxSort; |
| | | var wmsmaterialstock = ObjectMapper.Map<WmsMaterialStockCreateDto, WmsMaterialStock>(input); |
| | | input.MapExtraPropertiesTo(wmsmaterialstock, MappingPropertyDefinitionChecks.None); |
| | | wmsmaterialstock.MaterialId = Guid.NewGuid().ToString("N"); |
| | | material.MaterialName = material.MaterialName; |
| | | |
| | | wmsmaterialstock.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | wmsmaterialstock.ContainerType = container.ContainerType; |
| | | |
| | | wmsmaterialstock.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | wmsmaterialstock.StorageTypeNo = place.StorageTypeNo; |
| | | wmsmaterialstock.AreaCode = place.AreaCode; |
| | | wmsmaterialstock.AreaName = area.AreaName; |
| | | |
| | | wmsmaterialstock.MaterialModel = material.MaterialModel; |
| | | wmsmaterialstock.MaterialBatch = input.MaterialBatch; |
| | | |
| | | wmsmaterialstock.Sort = sort; |
| | | wmsmaterialstock.InStockTime = DateTime.Now; |
| | | await _wmsmaterialstockRepository.InsertAsync(wmsmaterialstock); |
| | | |
| | | |
| | | container.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | place.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | place.Islock = input.IsLock; |
| | | |
| | | await _wmscontainerRepository.UpdateAsync(container); |
| | | await _wmsplaceRepository.UpdateAsync(place); |
| | | |
| | | if (input.Sort.HasValue && wmsmaterialstock.Sort != maxSort) |
| | | { |
| | |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var wmsmaterialstock = await _wmsmaterialstockRepository.GetAsync(id); |
| | | var exist = await _wmsmaterialstockRepository.NameExistAsync(input.MaterialNo, wmsmaterialstock.Id); |
| | | if (exist) |
| | | //var exist = await _wmsmaterialstockRepository.NameExistAsync(input.MaterialNo, wmsmaterialstock.Id); |
| | | //if (exist) |
| | | //{ |
| | | // throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | //} |
| | | var material = await _wmsMaterialRepository.FindByNameAsync(input.MaterialNo); |
| | | if (material == null) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.MaterialNo]); |
| | | throw new UserFriendlyException("ç©æä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | |
| | | var container = await _wmscontainerRepository.FindByNameAsync(input.ContainerNo); |
| | | if (container == null) |
| | | { |
| | | throw new UserFriendlyException("æçä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | var place = await _wmsplaceRepository.FindByNameAsync(input.PlaceNo); |
| | | if (place == null) |
| | | { |
| | | throw new UserFriendlyException("åºä½ä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | var area = await _wmsareaRepository.FindByNameAsync(place.AreaCode); |
| | | if (area == null) |
| | | { |
| | | throw new UserFriendlyException("åºä½åºåºä¿¡æ¯ä¸åå¨"); |
| | | } |
| | | wmsmaterialstock.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); |
| | | input.MapExtraPropertiesTo(wmsmaterialstock, MappingPropertyDefinitionChecks.None); |
| | | |
| | | wmsmaterialstock.MaterialNo = input.MaterialNo; |
| | | wmsmaterialstock.MaterialName = input.MaterialName; |
| | | wmsmaterialstock.ContainerNo = input.ContainerNo; |
| | | wmsmaterialstock.ContainerStatus = input.ContainerStatus; |
| | | wmsmaterialstock.ContainerType = input.ContainerType; |
| | | wmsmaterialstock.StockNumber = input.StockNumber; |
| | | wmsmaterialstock.MaterialBatch = input.MaterialBatch; |
| | | wmsmaterialstock.SupplierCode = input.SupplierCode; |
| | | wmsmaterialstock.MaterialModel = input.MaterialModel; |
| | | wmsmaterialstock.PlaceNo = input.PlaceNo; |
| | | wmsmaterialstock.PlaceStatus = input.PlaceStatus; |
| | | wmsmaterialstock.StorageTypeNo = input.StorageTypeNo; |
| | | wmsmaterialstock.AreaCode = input.AreaCode; |
| | | wmsmaterialstock.AreaName = input.AreaName; |
| | | wmsmaterialstock.IsLock = input.IsLock; |
| | | wmsmaterialstock.InStockTime = input.InStockTime; |
| | | wmsmaterialstock.Remark = input.Remark; |
| | | |
| | | wmsmaterialstock.MaterialName = material.MaterialName; |
| | | wmsmaterialstock.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | wmsmaterialstock.ContainerType = container.ContainerType; |
| | | |
| | | wmsmaterialstock.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | wmsmaterialstock.StorageTypeNo = place.StorageTypeNo; |
| | | wmsmaterialstock.AreaCode = place.AreaCode; |
| | | wmsmaterialstock.AreaName = area.AreaName; |
| | | |
| | | wmsmaterialstock.MaterialModel = material.MaterialModel; |
| | | wmsmaterialstock.MaterialBatch = input.MaterialBatch; |
| | | |
| | | await _wmsmaterialstockRepository.UpdateAsync(wmsmaterialstock); |
| | | |
| | | container.ContainerStatus = Domain.Shared.Enums.ContainerStatusEnum.KUWEI; |
| | | place.PlaceStatus = Domain.Shared.Enums.PlaceStatusEnum.CUNHUO; |
| | | place.Islock = input.IsLock; |
| | | |
| | | await _wmscontainerRepository.UpdateAsync(container); |
| | | await _wmsplaceRepository.UpdateAsync(place); |
| | | |
| | | return ObjectMapper.Map<WmsMaterialStock, WmsMaterialStockDto>(wmsmaterialstock); |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<PagedResultDto<WmsPlaceDto>> GetListAsync(GetWmsPlacesInput input) |
| | | public virtual async Task<PagedResultDto<WmsPlaceDto>> GetListAsync(GetWmsMaterialInfoInput input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | |
| | | } |
| | | |
| | | var specification = new WmsPlaceSpecification(input.Name); |
| | | var place = ObjectMapper.Map<GetWmsPlacesInput, WmsPlace>(input); |
| | | var place = ObjectMapper.Map<GetWmsMaterialInfoInput, WmsPlace>(input); |
| | | var count = await _wmsplaceRepository.GetCountAsync(place,input.Filter, specification); |
| | | var list = await _wmsplaceRepository.GetListAsync(place, input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification); |
| | | |
| | |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsPlacesInput input) |
| | | public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWmsMaterialInfoInput input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | |
| | | } |
| | | |
| | | var specification = new WmsPlaceSpecification(input.Name); |
| | | var place = ObjectMapper.Map<GetWmsPlacesInput, WmsPlace>(input); |
| | | var place = ObjectMapper.Map<GetWmsMaterialInfoInput, WmsPlace>(input); |
| | | var list = await _wmsplaceRepository.GetListAsync(place, input.Sorting, input.MaxResultCount, input.SkipCount, input.Filter, specification, includeDetails: true); |
| | | var result = ObjectMapper.Map<List<WmsPlace>, List<WmsPlaceDto>>(list); |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using AutoMapper; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsPlaces; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.Domain.WmsPlaces; |
| | | using Volo.Abp.ObjectExtending; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Application.MapperProfiles; |
| | | |
| | | /// <summary> |
| | | /// AutoMapperé
ç½® |
| | | /// </summary> |
| | | /// <seealso cref="AutoMapper.Profile" /> |
| | | public class WmsMaterialInfoAutoMapperProfile : Profile |
| | | { |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoAutoMapperProfile"/> class. |
| | | /// </summary> |
| | | public WmsMaterialInfoAutoMapperProfile() |
| | | { |
| | | /* You can configure your AutoMapper mapping configuration here. |
| | | * Alternatively, you can split your mapping configurations |
| | | * into multiple profile classes for a better organization. */ |
| | | CreateMap<WmsMaterialInfo, WmsMaterialInfoDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<WmsMaterialInfoCreateDto, WmsMaterialInfo>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<GetWmsMaterialInfoInput, WmsMaterialInfo>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | } |
| | | } |
| | |
| | | * into multiple profile classes for a better organization. */ |
| | | CreateMap<WmsPlace, WmsPlaceDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<WmsPlaceCreateDto, WmsPlace>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<GetWmsPlacesInput, WmsPlace>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<GetWmsMaterialInfoInput, WmsPlace>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Linq; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.Enums |
| | | { |
| | | /// <summary> |
| | | /// åºåç©æçæ£éªç¶æ |
| | | /// </summary> |
| | | [Description("åºåç©æçæ£éªç¶æ")] |
| | | public enum MaterialCheckStatusEnum |
| | | { |
| | | /// <summary> |
| | | /// æªæ£éª |
| | | /// </summary> |
| | | [Description("æªæ£éª")] |
| | | WEIJIANYAN = 1, |
| | | |
| | | /// <summary> |
| | | /// åæ ¼ |
| | | /// </summary> |
| | | [Description("åæ ¼")] |
| | | HEGE = 2, |
| | | |
| | | /// <summary> |
| | | /// ä¸åæ ¼ |
| | | /// </summary> |
| | | [Description("ä¸åæ ¼")] |
| | | BUHEGE = 3, |
| | | |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfo常éå®ä¹ |
| | | /// </summary> |
| | | public static class WmsMaterialInfoConsts |
| | | { |
| | | public const string CloneTag = "_坿¬"; |
| | | public const int MaxMaterialNoLength = 50; |
| | | public const int MaxMaterialNameLength = 100; |
| | | public const int MaxMaterialModelLength = 50; |
| | | public const int MaxMaterialIdLength = 64; |
| | | public const int MaxMaterialBatchLength = 50; |
| | | public const int MaxSupplierCodeLength = 50; |
| | | public const int MaxRedundantFieldLength = 255; |
| | | public const int MaxRemarkLength = 500; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | namespace CMS.Plugin.HIAWms.Domain.Shared.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoäºä»¶åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | [Serializable] |
| | | public class WmsMaterialInfoEto |
| | | { |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoEto"/> class. |
| | | /// </summary> |
| | | /// <param name="name">The name.</param> |
| | | public WmsMaterialInfoEto(string name) |
| | | { |
| | | Name = name; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// åç§° |
| | | /// </summary> |
| | | public string Name { get; } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterialInfos; |
| | | using Volo.Abp.DependencyInjection; |
| | | using Volo.Abp.EventBus.Distributed; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.EventHandlers; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoäºä»¶å¤çç¨åº |
| | | /// </summary> |
| | | public class WmsMaterialInfoEventHandler : IDistributedEventHandler<WmsMaterialInfoEto>, ITransientDependency |
| | | { |
| | | /// <inheritdoc /> |
| | | public Task HandleEventAsync(WmsMaterialInfoEto eventData) |
| | | { |
| | | return Task.CompletedTask; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Volo.Abp.Domain.Repositories; |
| | | using Volo.Abp.Specifications; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterialInfos; |
| | | |
| | | /// <summary> |
| | | /// WmsMaterialInfoä»å¨ |
| | | /// </summary> |
| | | public interface IWmsMaterialInfoRepository : IBasicRepository<WmsMaterialInfo, Guid> |
| | | { |
| | | /// <summary> |
| | | /// Finds the by name asynchronous. |
| | | /// </summary> |
| | | /// <param name="name">The name.</param> |
| | | /// <param name="cancellationToken">The cancellation token.</param> |
| | | /// <returns></returns> |
| | | Task<WmsMaterialInfo> FindByNameAsync(string name, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// Names the exist asynchronous. |
| | | /// </summary> |
| | | /// <param name="name">The name.</param> |
| | | /// <param name="id">The identifier.</param> |
| | | /// <returns></returns> |
| | | Task<bool> NameExistAsync(string name, Guid? id = null); |
| | | |
| | | /// <summary> |
| | | /// Gets the maximum sort asynchronous. |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<int> GetMaxSortAsync(); |
| | | |
| | | /// <summary> |
| | | /// Gets the list asynchronous. |
| | | /// </summary> |
| | | /// <param name="sorting">The sorting.</param> |
| | | /// <param name="maxResultCount">The maximum result count.</param> |
| | | /// <param name="skipCount">The skip count.</param> |
| | | /// <param name="filter">The filter.</param> |
| | | /// <param name="specification">The specification.</param> |
| | | /// <param name="includeDetails">if set to <c>true</c> [include details].</param> |
| | | /// <param name="cancellationToken">The cancellation token.</param> |
| | | /// <returns></returns> |
| | | Task<List<WmsMaterialInfo>> GetListAsync(WmsMaterialInfo? materialInfo, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsMaterialInfo> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// Gets the count asynchronous. |
| | | /// </summary> |
| | | /// <param name="filter">The filter.</param> |
| | | /// <param name="specification">The specification.</param> |
| | | /// <param name="cancellationToken">The cancellation token.</param> |
| | | /// <returns></returns> |
| | | Task<long> GetCountAsync(WmsMaterialInfo? materialInfo, string filter = null, Specification<WmsMaterialInfo> specification = null, CancellationToken cancellationToken = default); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain.Shared.Enums; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterialInfos; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Domain.Entities.Auditing; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterialInfos |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfo |
| | | /// </summary> |
| | | public class WmsMaterialInfo : FullAuditedAggregateRoot<Guid> |
| | | { |
| | | /// <summary> |
| | | /// ç©æä»£å· |
| | | /// </summary> |
| | | public string MaterialNo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æåç§° |
| | | /// </summary> |
| | | public string MaterialName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æºå |
| | | /// </summary> |
| | | public string? MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©æå¯ä¸ç |
| | | /// </summary> |
| | | public string MaterialId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ°é |
| | | /// </summary> |
| | | public int? StockNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ç©ææ¹å· |
| | | /// </summary> |
| | | public string? MaterialBatch { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¾åºåç¼å· |
| | | /// </summary> |
| | | public string? SupplierCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段1 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段2 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段3 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField3 { get; set; } |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public virtual int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public virtual string Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public virtual bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// Adjusts the sort. |
| | | /// </summary> |
| | | /// <param name="sort">The sort.</param> |
| | | public void AdjustSort(int sort) |
| | | { |
| | | Sort = sort; |
| | | } |
| | | |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.DependencyInjection; |
| | | using Volo.Abp.Guids; |
| | | using Volo.Abp.Uow; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterialInfos |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfoç§åæ°æ®æä¾ç¨åº |
| | | /// </summary> |
| | | public class WmsMaterialInfoDataSeedContributor : IDataSeedContributor, ITransientDependency |
| | | { |
| | | private readonly IUnitOfWorkManager _unitOfWorkManager; |
| | | private readonly IWmsMaterialInfoRepository _wmsmaterialinfoRepository; |
| | | private readonly IGuidGenerator _guidGenerator; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoDataSeedContributor"/> class. |
| | | /// </summary> |
| | | /// <param name="unitOfWorkManager">The unit of work manager.</param> |
| | | /// <param name="guidGenerator">The unique identifier generator.</param> |
| | | /// <param name="wmsmaterialinfoRepository">The work section repository.</param> |
| | | public WmsMaterialInfoDataSeedContributor(IUnitOfWorkManager unitOfWorkManager, IGuidGenerator guidGenerator, IWmsMaterialInfoRepository wmsmaterialinfoRepository) |
| | | { |
| | | _unitOfWorkManager = unitOfWorkManager; |
| | | _wmsmaterialinfoRepository = wmsmaterialinfoRepository; |
| | | _guidGenerator = guidGenerator; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task SeedAsync(DataSeedContext context) |
| | | { |
| | | if (context.Properties.ContainsKey(CMSPluginDbProperties.ConnectionStringName) && context.Properties[CMSPluginDbProperties.ConnectionStringName]?.ToString() == CMSPluginDbProperties.ConnectionStringName) |
| | | { |
| | | try |
| | | { |
| | | //using var unitofWork = _unitOfWorkManager.Begin(requiresNew: true); |
| | | //await unitofWork.SaveChangesAsync(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | Console.WriteLine(ex.Message); |
| | | } |
| | | } |
| | | |
| | | if (context.Properties.ContainsKey("SeedTestData") && context.Properties["SeedTestData"]?.ToString() == "SeedTestData") |
| | | { |
| | | try |
| | | { |
| | | await SeedWmsMaterialInfoDataAsync(); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | Console.WriteLine(e.Message); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// Seeds the work section data asynchronous. |
| | | /// </summary> |
| | | private async Task SeedWmsMaterialInfoDataAsync() |
| | | { |
| | | |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.Linq.Expressions; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Domain.WmsMaterialInfos |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfoè§çº¦ |
| | | /// </summary> |
| | | public class WmsMaterialInfoSpecification : Volo.Abp.Specifications.Specification<WmsMaterialInfo> |
| | | { |
| | | private readonly string _materialNo; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoSpecification"/> class. |
| | | /// </summary> |
| | | public WmsMaterialInfoSpecification() |
| | | { |
| | | } |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoSpecification"/> class. |
| | | /// </summary> |
| | | /// <param name="materialNo">The name.</param> |
| | | public WmsMaterialInfoSpecification(string materialNo = null) |
| | | { |
| | | _materialNo = materialNo; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public override Expression<Func<WmsMaterialInfo, bool>> ToExpression() |
| | | { |
| | | Expression<Func<WmsMaterialInfo, bool>> expression = c => 1 == 1; |
| | | |
| | | if (_materialNo != null) |
| | | { |
| | | expression = expression.And(c => c.MaterialNo == _materialNo); |
| | | } |
| | | |
| | | return expression; |
| | | } |
| | | } |
| | | } |
| | |
| | | public string AreaName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ£éªç¶æ |
| | | /// </summary> |
| | | public MaterialCheckStatusEnum? CheckStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦éå® |
| | | /// </summary> |
| | | public int IsLock { get; set; } |
| | | public YesNoEnum IsLock { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç©ºæ |
| | | /// </summary> |
| | | public YesNoEnum EmptyContainer { get; protected set; } |
| | | public YesNoEnum EmptyContainer { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å
¥åºæ¶é´ |
| | |
| | | /// </summary> |
| | | public virtual string Remark { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// åä½å段1 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段2 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä½å段3 - é¢çæ©å±ç¨é |
| | | /// </summary> |
| | | public string RedundantField3 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | |
| | | /// </summary> |
| | | public string MaterialName { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// åå· |
| | | /// </summary> |
| | | public string MaterialModel { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éè´ç±»åï¼æä¸¾å¼ï¼ |
| | | /// </summary> |
| | |
| | | b.Property(x => x.Certification) |
| | | .HasMaxLength(128) |
| | | .HasComment("è¯ä¹¦ç¼å·"); |
| | | b.Property(x => x.MaterialModel) |
| | | .HasMaxLength(128) |
| | | .HasComment("åå·"); |
| | | |
| | | // åä½å段é
ç½® |
| | | b.Property(x => x.RedundantField1) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.HIAWms.Domain; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.Domain.Shared.WmsMaterialInfos; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Volo.Abp; |
| | | using Volo.Abp.EntityFrameworkCore.Modeling; |
| | | |
| | | namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions; |
| | | |
| | | /// <summary> |
| | | /// EfCoreæ©å± |
| | | /// </summary> |
| | | public static partial class CMSPluginEfCoreExtensions |
| | | { |
| | | /// <summary> |
| | | /// Includes the details. |
| | | /// </summary> |
| | | /// <param name="queryable">The queryable.</param> |
| | | /// <param name="include">if set to <c>true</c> [include].</param> |
| | | /// <returns></returns> |
| | | public static IQueryable<WmsMaterialInfo> IncludeDetails(this IQueryable<WmsMaterialInfo> queryable, bool include = true) |
| | | { |
| | | if (!include) |
| | | { |
| | | return queryable; |
| | | } |
| | | |
| | | return queryable; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// Configures the wmsmaterialinfo. |
| | | /// </summary> |
| | | /// <param name="builder">The builder.</param> |
| | | public static void ConfigureWmsMaterialInfo(this ModelBuilder builder) |
| | | { |
| | | Check.NotNull(builder, nameof(builder)); |
| | | |
| | | builder.Entity<WmsMaterialInfo>(b => |
| | | { |
| | | // é
ç½®è¡¨åæ¶æåç§° |
| | | b.ToTable((CMSPluginDbProperties.DbTablePrefix + "_WmsMaterialInfos").ToLower(), |
| | | CMSPluginDbProperties.DbSchema) |
| | | .HasComment("WMSç©æä¿¡æ¯è¡¨"); |
| | | |
| | | b.ConfigureByConvention(); |
| | | |
| | | // 主é®é
ç½® |
| | | b.HasKey(x => x.Id); |
| | | |
| | | // 屿§é
ç½® |
| | | b.Property(x => x.MaterialNo) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxMaterialNoLength) |
| | | .IsRequired() |
| | | .HasComment("ç©æä»£å·"); |
| | | |
| | | b.Property(x => x.MaterialName) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxMaterialNameLength) |
| | | .IsRequired() |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property(x => x.MaterialModel) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxMaterialModelLength) |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property(x => x.MaterialId) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxMaterialIdLength) |
| | | .IsRequired() |
| | | .HasComment("ç©æå¯ä¸ç "); |
| | | |
| | | b.Property(x => x.StockNumber) |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property(x => x.MaterialBatch) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxMaterialBatchLength) |
| | | .HasComment("ç©ææ¹å·"); |
| | | |
| | | b.Property(x => x.SupplierCode) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxSupplierCodeLength) |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.Property(x => x.CheckStatus) |
| | | .HasComment("æ£éªç¶æ(0:æªæ£éª,1:æ£éªéè¿,2:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property(x => x.RedundantField1) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxRedundantFieldLength) |
| | | .HasComment("åä½å段1"); |
| | | |
| | | b.Property(x => x.RedundantField2) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxRedundantFieldLength) |
| | | .HasComment("åä½å段2"); |
| | | |
| | | b.Property(x => x.RedundantField3) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxRedundantFieldLength) |
| | | .HasComment("åä½å段3"); |
| | | |
| | | b.Property(x => x.Sort) |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property(x => x.Remark) |
| | | .HasMaxLength(WmsMaterialInfoConsts.MaxRemarkLength) |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property(x => x.IsDisabled) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | // ç´¢å¼é
ç½® |
| | | b.HasIndex(x => x.MaterialNo).IsUnique(); |
| | | b.HasIndex(x => x.MaterialName); |
| | | b.HasIndex(x => x.MaterialId).IsUnique(); |
| | | b.HasIndex(x => x.MaterialBatch); |
| | | b.HasIndex(x => x.SupplierCode); |
| | | b.HasIndex(x => x.CheckStatus); |
| | | |
| | | // æ©å±å±æ§é
ç½® |
| | | b.ApplyObjectExtensionMappings(); |
| | | }); |
| | | } |
| | | } |
| | |
| | | .HasMaxLength(500) |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property(x => x.CheckStatus) |
| | | .HasComment("æ£éªç¶æ(1:æªæ£éª,2:æ£éªéè¿,3:æ£éªä¸éè¿)"); |
| | | |
| | | // åä½å段é
ç½® |
| | | b.Property(x => x.RedundantField1) |
| | | .HasMaxLength(256) |
| | | .IsRequired(false) |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property(x => x.RedundantField2) |
| | | .HasMaxLength(256) |
| | | .IsRequired(false) |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property(x => x.RedundantField3) |
| | | .HasMaxLength(256) |
| | | .IsRequired(false) |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property(x => x.IsDisabled) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<WmsArea> FindByNameAsync(string name, CancellationToken cancellationToken = default) |
| | | public virtual async Task<WmsArea> FindByNameAsync(string areaNo, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .OrderBy(t => t.Sort) |
| | | .Where(x => !x.IsDeleted) |
| | | .FirstOrDefaultAsync(t => t.AreaName == name, GetCancellationToken(cancellationToken)); |
| | | .FirstOrDefaultAsync(t => t.AreaNo == areaNo, GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ¥çåºåºæ¯å¦åå¨ |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System.Linq.Dynamic.Core; |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions; |
| | | using MathNet.Numerics; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | using Volo.Abp.Specifications; |
| | | |
| | | namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Repositories; |
| | | |
| | | /// <inheritdoc /> |
| | | public class EfCoreWmsMaterialInfoRepository : EfCoreRepository<ICMSPluginDbContext, WmsMaterialInfo, Guid>, IWmsMaterialInfoRepository |
| | | { |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="EfCoreWmsMaterialInfoRepository"/> class. |
| | | /// </summary> |
| | | /// <param name="dbContextProvider">The database context provider.</param> |
| | | public EfCoreWmsMaterialInfoRepository(IDbContextProvider<ICMSPluginDbContext> dbContextProvider) |
| | | : base(dbContextProvider) |
| | | { |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public virtual async Task<WmsMaterialInfo> FindByNameAsync(string materialInfo, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .OrderBy(t => t.Sort) |
| | | .FirstOrDefaultAsync(t => t.MaterialNo == materialInfo, GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<bool> NameExistAsync(string materialInfo, Guid? id = null) |
| | | { |
| | | return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).AnyAsync(x => x.MaterialNo == materialInfo); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<int> GetMaxSortAsync() |
| | | { |
| | | var hasAny = await (await GetQueryableAsync()).AnyAsync(); |
| | | if (!hasAny) |
| | | { |
| | | return 1; |
| | | } |
| | | |
| | | var sort = await (await GetQueryableAsync()).MaxAsync(x => x.Sort); |
| | | return sort + 1; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<List<WmsMaterialInfo>> GetListAsync(WmsMaterialInfo? materialInfo,string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsMaterialInfo> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default) |
| | | { |
| | | specification ??= new WmsMaterialInfoSpecification(); |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails(includeDetails) |
| | | .WhereIf(!filter.IsNullOrWhiteSpace(), |
| | | u => u.MaterialNo.Contains(filter) || |
| | | u.MaterialName.Contains(filter) || |
| | | u.MaterialModel.Contains(filter) || |
| | | u.MaterialBatch.Contains(filter) || |
| | | u.SupplierCode.Contains(filter)) |
| | | // 精确æ¥è¯¢æ¡ä»¶ |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialNo), u => u.MaterialNo.Contains(materialInfo.MaterialNo)) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialName), u => u.MaterialName.Contains(materialInfo.MaterialName)) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialModel), u => u.MaterialModel.Contains(materialInfo.MaterialModel)) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialBatch), u => u.MaterialBatch == materialInfo.MaterialBatch) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.SupplierCode), u => u.SupplierCode == materialInfo.SupplierCode) |
| | | .OrderBy(sorting) |
| | | .PageBy(skipCount, maxResultCount) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<long> GetCountAsync(WmsMaterialInfo? materialInfo, string filter = null, Specification<WmsMaterialInfo> specification = null, CancellationToken cancellationToken = default) |
| | | { |
| | | specification ??= new WmsMaterialInfoSpecification(); |
| | | return await (await GetQueryableAsync()) |
| | | .WhereIf(!filter.IsNullOrWhiteSpace(), |
| | | u => u.MaterialNo.Contains(filter) || |
| | | u.MaterialName.Contains(filter) || |
| | | u.MaterialModel.Contains(filter) || |
| | | u.MaterialBatch.Contains(filter) || |
| | | u.SupplierCode.Contains(filter)) |
| | | // 精确æ¥è¯¢æ¡ä»¶ |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialNo), u => u.MaterialNo.Contains(materialInfo.MaterialNo)) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialName), u => u.MaterialName.Contains(materialInfo.MaterialName)) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialModel), u => u.MaterialModel.Contains(materialInfo.MaterialModel)) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.MaterialBatch), u => u.MaterialBatch == materialInfo.MaterialBatch) |
| | | .WhereIf(!string.IsNullOrEmpty(materialInfo?.SupplierCode), u => u.SupplierCode == materialInfo.SupplierCode) |
| | | .CountAsync(cancellationToken: GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public override async Task<IQueryable<WmsMaterialInfo>> WithDetailsAsync() |
| | | { |
| | | return (await GetQueryableAsync()).IncludeDetails(); |
| | | } |
| | | } |
| | |
| | | using CMS.Plugin.HIAWms.Domain.WmsMaterialStocks; |
| | | using CMS.Plugin.HIAWms.EntityFrameworkCore.Extensions; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using SqlKata; |
| | | using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | using Volo.Abp.Specifications; |
| | |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .Where(u => !u.IsDeleted) |
| | | .OrderBy(t => t.Sort) |
| | | .FirstOrDefaultAsync(t => t.MaterialNo == materialNo, GetCancellationToken(cancellationToken)); |
| | | } |
| | |
| | | /// <inheritdoc /> |
| | | public async Task<bool> NameExistAsync(string materialNo, Guid? id = null) |
| | | { |
| | | return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).AnyAsync(x => x.MaterialNo == materialNo); |
| | | return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id) |
| | | .Where(u => !u.IsDeleted).AnyAsync(x => x.MaterialNo == materialNo); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<int> GetMaxSortAsync() |
| | | { |
| | | var hasAny = await (await GetQueryableAsync()).AnyAsync(); |
| | | var hasAny = await (await GetQueryableAsync()) |
| | | .Where(u => !u.IsDeleted).AnyAsync(); |
| | | if (!hasAny) |
| | | { |
| | | return 1; |
| | | } |
| | | |
| | | var sort = await (await GetQueryableAsync()).MaxAsync(x => x.Sort); |
| | | var sort = await (await GetQueryableAsync()) |
| | | .Where(u => !u.IsDeleted).MaxAsync(x => x.Sort); |
| | | return sort + 1; |
| | | } |
| | | |
| | |
| | | public async Task<List<WmsMaterialStock>> GetListAsync(WmsMaterialStock? stock, DateTime? startTime = null, DateTime? endTime = null, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, string filter = null, Specification<WmsMaterialStock> specification = null, bool includeDetails = false, CancellationToken cancellationToken = default) |
| | | { |
| | | specification ??= new WmsMaterialStockSpecification(); |
| | | return await (await GetDbSetAsync()) |
| | | var baseQuery = (await GetDbSetAsync()) |
| | | .IncludeDetails(includeDetails) |
| | | .WhereIf(!filter.IsNullOrWhiteSpace(), |
| | | u => u.MaterialNo.Contains(filter) || |
| | |
| | | .WhereIf(stock.IsLock > 0, u => u.IsLock == stock.IsLock) |
| | | .WhereIf(startTime.HasValue, u => u.InStockTime >= startTime.Value) |
| | | .WhereIf(endTime.HasValue, u => u.InStockTime <= endTime.Value) |
| | | .Where(u => !u.IsDeleted) |
| | | .AsQueryable(); |
| | | |
| | | var materialList = await baseQuery |
| | | .Select(x => new |
| | | { |
| | | x.MaterialNo, |
| | | x.MaterialName, |
| | | x.PlaceNo, |
| | | x.ContainerNo, |
| | | x.ContainerStatus, |
| | | x.PlaceStatus, |
| | | x.StorageTypeNo, |
| | | x.MaterialBatch, |
| | | x.MaterialModel, |
| | | x.AreaCode, |
| | | x.AreaName, |
| | | x.CheckStatus, |
| | | x.IsLock, |
| | | x.EmptyContainer, |
| | | x.InStockTime |
| | | }) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | |
| | | var groupedData = materialList |
| | | .GroupBy(x => new { x.MaterialNo, x.PlaceNo, x.ContainerNo, x.MaterialName }) |
| | | .Select(g => new WmsMaterialStock |
| | | { |
| | | MaterialNo = g.Key.MaterialNo, |
| | | MaterialName = g.Key.MaterialName, |
| | | PlaceNo = g.Key.PlaceNo, |
| | | ContainerNo = g.Key.ContainerNo, |
| | | ContainerStatus = g.First().ContainerStatus, |
| | | PlaceStatus = g.First().PlaceStatus, |
| | | StorageTypeNo = g.First().StorageTypeNo, |
| | | MaterialBatch = g.First().MaterialBatch, |
| | | MaterialModel = g.First().MaterialModel, |
| | | AreaCode = g.First().AreaCode, |
| | | AreaName = g.First().AreaName, |
| | | CheckStatus = g.First().CheckStatus, |
| | | IsLock = g.First().IsLock, |
| | | EmptyContainer = g.First().EmptyContainer, |
| | | InStockTime = g.First().InStockTime, |
| | | StockNumber = g.Count() |
| | | }) |
| | | .AsQueryable(); // 转æ¢åIQueryableä»¥æ¯æåç»æä½ |
| | | |
| | | var result = groupedData |
| | | .OrderBy(sorting.IsNullOrEmpty() ? nameof(WmsMaterialStock.Sort) : sorting) |
| | | .PageBy(skipCount, maxResultCount) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | .ToList(); |
| | | |
| | | return result; |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public async Task<long> GetCountAsync(WmsMaterialStock? stock, DateTime? startTime = null, DateTime? endTime = null, string filter = null, Specification<WmsMaterialStock> specification = null, CancellationToken cancellationToken = default) |
| | | { |
| | | specification ??= new WmsMaterialStockSpecification(); |
| | | return await (await GetQueryableAsync()) |
| | | var baseQuery = (await GetQueryableAsync()) |
| | | .WhereIf(!filter.IsNullOrWhiteSpace(), |
| | | u => u.MaterialNo.Contains(filter) || |
| | | u.MaterialName.Contains(filter) || |
| | |
| | | .WhereIf(stock.IsLock > 0, u => u.IsLock == stock.IsLock) |
| | | .WhereIf(startTime.HasValue, u => u.InStockTime >= startTime.Value) |
| | | .WhereIf(endTime.HasValue, u => u.InStockTime <= endTime.Value) |
| | | .CountAsync(cancellationToken: GetCancellationToken(cancellationToken)); |
| | | .Where(u => !u.IsDeleted) |
| | | .AsQueryable(); |
| | | |
| | | var materialList = await baseQuery |
| | | .Select(x => new |
| | | { |
| | | x.MaterialNo, |
| | | x.MaterialName, |
| | | x.PlaceNo, |
| | | x.ContainerNo, |
| | | x.ContainerStatus, |
| | | x.PlaceStatus, |
| | | x.StorageTypeNo, |
| | | x.MaterialBatch, |
| | | x.MaterialModel, |
| | | x.AreaCode, |
| | | x.AreaName, |
| | | x.CheckStatus, |
| | | x.IsLock, |
| | | x.EmptyContainer, |
| | | x.InStockTime |
| | | }) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | |
| | | var groupedData = materialList |
| | | .GroupBy(x => new { x.MaterialNo, x.PlaceNo, x.ContainerNo, x.MaterialName }) |
| | | .Select(g => new WmsMaterialStock |
| | | { |
| | | MaterialNo = g.Key.MaterialNo, |
| | | MaterialName = g.Key.MaterialName, |
| | | PlaceNo = g.Key.PlaceNo, |
| | | ContainerNo = g.Key.ContainerNo, |
| | | ContainerStatus = g.First().ContainerStatus, |
| | | PlaceStatus = g.First().PlaceStatus, |
| | | StorageTypeNo = g.First().StorageTypeNo, |
| | | MaterialBatch = g.First().MaterialBatch, |
| | | MaterialModel = g.First().MaterialModel, |
| | | AreaCode = g.First().AreaCode, |
| | | AreaName = g.First().AreaName, |
| | | CheckStatus = g.First().CheckStatus, |
| | | IsLock = g.First().IsLock, |
| | | EmptyContainer = g.First().EmptyContainer, |
| | | InStockTime = g.First().InStockTime, |
| | | StockNumber = g.Count() |
| | | }) |
| | | .AsQueryable(); // 转æ¢åIQueryableä»¥æ¯æåç»æä½ |
| | | |
| | | return groupedData.Count(); |
| | | } |
| | | |
| | | /// <inheritdoc /> |
| | | public override async Task<IQueryable<WmsMaterialStock>> WithDetailsAsync() |
| | | { |
| | | return (await GetQueryableAsync()).IncludeDetails(); |
| | | return (await GetQueryableAsync()).IncludeDetails() |
| | | .Where(u => !u.IsDeleted); |
| | | } |
| | | } |
| | |
| | | builder.ConfigureWmsPlace(); |
| | | builder.ConfigureWmsMaterial(); |
| | | builder.ConfigureWmsMaterialStock(); |
| | | builder.ConfigureWmsMaterialInfo(); |
| | | |
| | | /* Configure your own tables/entities inside here */ |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | // <auto-generated /> |
| | | using System; |
| | | using CMS.Plugin.HIAWms.MySQL; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Microsoft.EntityFrameworkCore.Infrastructure; |
| | | using Microsoft.EntityFrameworkCore.Migrations; |
| | | using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | |
| | | #nullable disable |
| | | |
| | | namespace CMS.Plugin.HIAWms.MySQL.Migrations |
| | | { |
| | | [DbContext(typeof(CMSPluginDbContext))] |
| | | [Migration("20250505105851_InitialCreate2")] |
| | | partial class InitialCreate2 |
| | | { |
| | | protected override void BuildTargetModel(ModelBuilder modelBuilder) |
| | | { |
| | | #pragma warning disable 612, 618 |
| | | modelBuilder |
| | | .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) |
| | | .HasAnnotation("ProductVersion", "6.0.16") |
| | | .HasAnnotation("Relational:MaxIdentifierLength", 64); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsAreas.WmsArea", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("AreaDesc") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("æè¿°"); |
| | | |
| | | b.Property<string>("AreaName") |
| | | .IsRequired() |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åºåºåç§°"); |
| | | |
| | | b.Property<string>("AreaNo") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºåºç¼å·"); |
| | | |
| | | b.Property<int>("AreaStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåºç¶æ"); |
| | | |
| | | b.Property<int>("AreaType") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåºç±»å"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("StoreCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä»åºä»£ç "); |
| | | |
| | | b.Property<string>("StoreName") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ä»åºåç§°"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaName"); |
| | | |
| | | b.ToTable("scms_wmsareas", (string)null); |
| | | |
| | | b.HasComment("åºåºè¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsContainers.WmsContainer", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<string>("ContainerNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æçç¼å·"); |
| | | |
| | | b.Property<int>("ContainerStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æçç¶æ"); |
| | | |
| | | b.Property<int>("ContainerType") |
| | | .HasColumnType("int") |
| | | .HasComment("æçç±»å"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int?>("ExceptionNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("å¼å¸¸æ°é"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<decimal?>("LimitHeight") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("éé«"); |
| | | |
| | | b.Property<decimal?>("LimitLength") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("éé¿"); |
| | | |
| | | b.Property<decimal?>("LimitWidth") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é宽"); |
| | | |
| | | b.Property<int?>("MaterialNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("ç©ææ°é"); |
| | | |
| | | b.Property<decimal?>("MaxWeight") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("è½½éä¸é"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<decimal?>("SpecHeight") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é«åº¦"); |
| | | |
| | | b.Property<decimal?>("SpecLength") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é¿åº¦"); |
| | | |
| | | b.Property<decimal?>("SpecWidth") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("宽度"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("ContainerNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("ContainerStatus"); |
| | | |
| | | b.HasIndex("ContainerType"); |
| | | |
| | | b.ToTable("scms_wmscontainers", (string)null); |
| | | |
| | | b.HasComment("æçä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialInfos.WmsMaterialInfo", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int?>("CheckStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æ£éªç¶æ(0:æªæ£éª,1:æ£éªéè¿,2:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç©ææ¹å·"); |
| | | |
| | | b.Property<string>("MaterialId") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æå¯ä¸ç "); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç©æä»£å·"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段1"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段2"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段3"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int?>("StockNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property<string>("SupplierCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("CheckStatus"); |
| | | |
| | | b.HasIndex("MaterialBatch"); |
| | | |
| | | b.HasIndex("MaterialId") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("SupplierCode"); |
| | | |
| | | b.ToTable("scms_wmsmaterialinfos", (string)null); |
| | | |
| | | b.HasComment("WMSç©æä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterials.WmsMaterial", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("Certification") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("è¯ä¹¦ç¼å·"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<string>("Factory") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç产工å"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("IsMainBranch") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(2) |
| | | .HasComment("æ¯å¦ä¸ºä¸»æ¯ç®¡"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<decimal>("Length") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é¿åº¦ï¼åä½ï¼mï¼"); |
| | | |
| | | b.Property<string>("MaterialCode") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æç¼ç ï¼å¯ä¸æ è¯ï¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialQuality") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("æè´¨ï¼å¦ï¼304ä¸éé¢ï¼"); |
| | | |
| | | b.Property<int>("MaterialType") |
| | | .HasColumnType("int") |
| | | .HasComment("ç©æç±»åï¼æä¸¾å¼ï¼"); |
| | | |
| | | b.Property<decimal>("OuterDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¤å¾ï¼åä½ï¼mmï¼"); |
| | | |
| | | b.Property<string>("PrimaryUnit") |
| | | .HasMaxLength(20) |
| | | .HasColumnType("varchar(20)") |
| | | .HasComment("主åä½ï¼å¦ï¼kgãmã个ï¼"); |
| | | |
| | | b.Property<int>("PurchaseType") |
| | | .HasColumnType("int") |
| | | .HasComment("éè´ç±»åï¼æä¸¾å¼ï¼"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("Standard") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("è§æ ¼/æ åï¼å¦ï¼GB/T 8163-2018ï¼"); |
| | | |
| | | b.Property<decimal>("WallThickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å£åï¼åä½ï¼mmï¼"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("MaterialCode") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialType"); |
| | | |
| | | b.HasIndex("PurchaseType"); |
| | | |
| | | b.ToTable("scms_wmsmaterials", (string)null); |
| | | |
| | | b.HasComment("ç©æåºç¡ä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialStocks.WmsMaterialStock", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("AreaCode") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºåç¼å·"); |
| | | |
| | | b.Property<string>("AreaName") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("åºåºåç§°"); |
| | | |
| | | b.Property<int?>("CheckStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æ£éªç¶æ(1:æªæ£éª,2:æ£éªéè¿,3:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<string>("ContainerNo") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("容å¨ç¼å·"); |
| | | |
| | | b.Property<int>("ContainerStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("容å¨ç¶æ"); |
| | | |
| | | b.Property<int>("ContainerType") |
| | | .HasColumnType("int") |
| | | .HasComment("容å¨ç±»å"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int>("EmptyContainer") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦ç©ºæ(2:å¦,1:æ¯)"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<DateTime?>("InStockTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("å
¥åºæ¶é´"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("IsLock") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦éå®(2:æªéå®,1:å·²éå®)"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©ææ¹æ¬¡"); |
| | | |
| | | b.Property<string>("MaterialId") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æID"); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialNo") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æç¼å·"); |
| | | |
| | | b.Property<string>("PlaceNo") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºä½ç¼å·"); |
| | | |
| | | b.Property<int>("PlaceStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("åºä½ç¶æ;"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int>("StockNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property<int>("StorageTypeNo") |
| | | .HasColumnType("int") |
| | | .HasComment("åºä½ç±»å"); |
| | | |
| | | b.Property<string>("SupplierCode") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaCode"); |
| | | |
| | | b.HasIndex("ContainerNo"); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("PlaceNo"); |
| | | |
| | | b.HasIndex("MaterialBatch", "SupplierCode"); |
| | | |
| | | b.ToTable("scms_wmsmaterialstocks", (string)null); |
| | | |
| | | b.HasComment("WMSç©æåºå表"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsPlaces.WmsPlace", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int>("Aisle") |
| | | .HasColumnType("int") |
| | | .HasComment("å··é"); |
| | | |
| | | b.Property<string>("AreaCode") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æå¨åºåº"); |
| | | |
| | | b.Property<int>("ColumnNo") |
| | | .HasColumnType("int") |
| | | .HasComment("å"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int>("EmptyContainer") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦ç©ºæ"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("Islock") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦éå®"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<int>("LayerNo") |
| | | .HasColumnType("int") |
| | | .HasComment("å±"); |
| | | |
| | | b.Property<string>("PlaceNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç¼å·"); |
| | | |
| | | b.Property<int>("PlaceStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("è´§ä½ç¶æ"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("RowNo") |
| | | .HasColumnType("int") |
| | | .HasComment("æ"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int>("StorageTypeNo") |
| | | .HasColumnType("int") |
| | | .HasComment("è´§ä½ç±»å"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaCode"); |
| | | |
| | | b.HasIndex("PlaceNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("PlaceStatus"); |
| | | |
| | | b.HasIndex("StorageTypeNo"); |
| | | |
| | | b.ToTable("scms_wmsplaces", (string)null); |
| | | |
| | | b.HasComment("åºä½è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsStores.WmsStore", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("StoreCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä»åºä»£ç "); |
| | | |
| | | b.Property<string>("StoreName") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ä»åºåç§°"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("StoreName"); |
| | | |
| | | b.ToTable("scms_wmsstores", (string)null); |
| | | |
| | | b.HasComment("ä»åºä¿¡æ¯è¡¨"); |
| | | }); |
| | | #pragma warning restore 612, 618 |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using Microsoft.EntityFrameworkCore.Migrations; |
| | | |
| | | #nullable disable |
| | | |
| | | namespace CMS.Plugin.HIAWms.MySQL.Migrations |
| | | { |
| | | public partial class InitialCreate2 : Migration |
| | | { |
| | | protected override void Up(MigrationBuilder migrationBuilder) |
| | | { |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_wmsmaterialinfos", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | MaterialNo = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: false, comment: "ç©æä»£å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialName = table.Column<string>(type: "varchar(100)", maxLength: 100, nullable: false, comment: "ç©æåç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialModel = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: true, comment: "æºå/è§æ ¼") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialId = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "ç©æå¯ä¸ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | StockNumber = table.Column<int>(type: "int", nullable: true, comment: "åºåæ°é"), |
| | | MaterialBatch = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: true, comment: "ç©ææ¹å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | SupplierCode = table.Column<string>(type: "varchar(50)", maxLength: 50, nullable: true, comment: "ä¾åºåç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CheckStatus = table.Column<int>(type: "int", nullable: true, comment: "æ£éªç¶æ(0:æªæ£éª,1:æ£éªéè¿,2:æ£éªä¸éè¿)"), |
| | | RedundantField1 = table.Column<string>(type: "varchar(255)", maxLength: 255, nullable: true, comment: "åä½å段1") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | RedundantField2 = table.Column<string>(type: "varchar(255)", maxLength: 255, nullable: true, comment: "åä½å段2") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | RedundantField3 = table.Column<string>(type: "varchar(255)", maxLength: 255, nullable: true, comment: "åä½å段3") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(500)", maxLength: 500, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "æ¯å¦ç¦ç¨"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true) |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_wmsmaterialinfos", x => x.Id); |
| | | }, |
| | | comment: "WMSç©æä¿¡æ¯è¡¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_wmsmaterialstocks", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | MaterialId = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "ç©æID") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: false, comment: "ç©æåç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ContainerNo = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "容å¨ç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ContainerStatus = table.Column<int>(type: "int", nullable: false, comment: "容å¨ç¶æ"), |
| | | ContainerType = table.Column<int>(type: "int", nullable: false, comment: "容å¨ç±»å"), |
| | | MaterialNo = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "ç©æç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | StockNumber = table.Column<int>(type: "int", nullable: false, comment: "åºåæ°é"), |
| | | MaterialBatch = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "ç©ææ¹æ¬¡") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | SupplierCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "ä¾åºåç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialModel = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true, comment: "æºå/è§æ ¼") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PlaceNo = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "åºä½ç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PlaceStatus = table.Column<int>(type: "int", nullable: false, comment: "åºä½ç¶æ;"), |
| | | StorageTypeNo = table.Column<int>(type: "int", nullable: false, comment: "åºä½ç±»å"), |
| | | AreaCode = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "åºåç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | AreaName = table.Column<string>(type: "varchar(128)", maxLength: 128, nullable: true, comment: "åºåºåç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CheckStatus = table.Column<int>(type: "int", nullable: true, comment: "æ£éªç¶æ(1:æªæ£éª,2:æ£éªéè¿,3:æ£éªä¸éè¿)"), |
| | | IsLock = table.Column<int>(type: "int", nullable: false, comment: "æ¯å¦éå®(2:æªéå®,1:å·²éå®)"), |
| | | EmptyContainer = table.Column<int>(type: "int", nullable: false, comment: "æ¯å¦ç©ºæ(2:å¦,1:æ¯)"), |
| | | InStockTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "å
¥åºæ¶é´"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(500)", maxLength: 500, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | RedundantField1 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åä½å段1 - é¢çæ©å±ç¨é") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | RedundantField2 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åä½å段2 - é¢çæ©å±ç¨é") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | RedundantField3 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åä½å段3 - é¢çæ©å±ç¨é") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "æ¯å¦ç¦ç¨"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true) |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_wmsmaterialstocks", x => x.Id); |
| | | }, |
| | | comment: "WMSç©æåºå表") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialinfos_CheckStatus", |
| | | table: "scms_wmsmaterialinfos", |
| | | column: "CheckStatus"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialinfos_MaterialBatch", |
| | | table: "scms_wmsmaterialinfos", |
| | | column: "MaterialBatch"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialinfos_MaterialId", |
| | | table: "scms_wmsmaterialinfos", |
| | | column: "MaterialId", |
| | | unique: true); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialinfos_MaterialName", |
| | | table: "scms_wmsmaterialinfos", |
| | | column: "MaterialName"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialinfos_MaterialNo", |
| | | table: "scms_wmsmaterialinfos", |
| | | column: "MaterialNo", |
| | | unique: true); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialinfos_SupplierCode", |
| | | table: "scms_wmsmaterialinfos", |
| | | column: "SupplierCode"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialstocks_AreaCode", |
| | | table: "scms_wmsmaterialstocks", |
| | | column: "AreaCode"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialstocks_ContainerNo", |
| | | table: "scms_wmsmaterialstocks", |
| | | column: "ContainerNo"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialstocks_MaterialBatch_SupplierCode", |
| | | table: "scms_wmsmaterialstocks", |
| | | columns: new[] { "MaterialBatch", "SupplierCode" }); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialstocks_MaterialName", |
| | | table: "scms_wmsmaterialstocks", |
| | | column: "MaterialName"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialstocks_MaterialNo", |
| | | table: "scms_wmsmaterialstocks", |
| | | column: "MaterialNo", |
| | | unique: true); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_wmsmaterialstocks_PlaceNo", |
| | | table: "scms_wmsmaterialstocks", |
| | | column: "PlaceNo"); |
| | | } |
| | | |
| | | protected override void Down(MigrationBuilder migrationBuilder) |
| | | { |
| | | migrationBuilder.DropTable( |
| | | name: "scms_wmsmaterialinfos"); |
| | | |
| | | migrationBuilder.DropTable( |
| | | name: "scms_wmsmaterialstocks"); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | // <auto-generated /> |
| | | using System; |
| | | using CMS.Plugin.HIAWms.MySQL; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Microsoft.EntityFrameworkCore.Infrastructure; |
| | | using Microsoft.EntityFrameworkCore.Migrations; |
| | | using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | |
| | | #nullable disable |
| | | |
| | | namespace CMS.Plugin.HIAWms.MySQL.Migrations |
| | | { |
| | | [DbContext(typeof(CMSPluginDbContext))] |
| | | [Migration("20250505121050_InitialCreate3")] |
| | | partial class InitialCreate3 |
| | | { |
| | | protected override void BuildTargetModel(ModelBuilder modelBuilder) |
| | | { |
| | | #pragma warning disable 612, 618 |
| | | modelBuilder |
| | | .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) |
| | | .HasAnnotation("ProductVersion", "6.0.16") |
| | | .HasAnnotation("Relational:MaxIdentifierLength", 64); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsAreas.WmsArea", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("AreaDesc") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("æè¿°"); |
| | | |
| | | b.Property<string>("AreaName") |
| | | .IsRequired() |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åºåºåç§°"); |
| | | |
| | | b.Property<string>("AreaNo") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºåºç¼å·"); |
| | | |
| | | b.Property<int>("AreaStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåºç¶æ"); |
| | | |
| | | b.Property<int>("AreaType") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåºç±»å"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("StoreCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä»åºä»£ç "); |
| | | |
| | | b.Property<string>("StoreName") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ä»åºåç§°"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaName"); |
| | | |
| | | b.ToTable("scms_wmsareas", (string)null); |
| | | |
| | | b.HasComment("åºåºè¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsContainers.WmsContainer", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<string>("ContainerNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æçç¼å·"); |
| | | |
| | | b.Property<int>("ContainerStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æçç¶æ"); |
| | | |
| | | b.Property<int>("ContainerType") |
| | | .HasColumnType("int") |
| | | .HasComment("æçç±»å"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int?>("ExceptionNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("å¼å¸¸æ°é"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<decimal?>("LimitHeight") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("éé«"); |
| | | |
| | | b.Property<decimal?>("LimitLength") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("éé¿"); |
| | | |
| | | b.Property<decimal?>("LimitWidth") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é宽"); |
| | | |
| | | b.Property<int?>("MaterialNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("ç©ææ°é"); |
| | | |
| | | b.Property<decimal?>("MaxWeight") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("è½½éä¸é"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(200) |
| | | .HasColumnType("varchar(200)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<decimal?>("SpecHeight") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é«åº¦"); |
| | | |
| | | b.Property<decimal?>("SpecLength") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é¿åº¦"); |
| | | |
| | | b.Property<decimal?>("SpecWidth") |
| | | .HasPrecision(18, 2) |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("宽度"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("ContainerNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("ContainerStatus"); |
| | | |
| | | b.HasIndex("ContainerType"); |
| | | |
| | | b.ToTable("scms_wmscontainers", (string)null); |
| | | |
| | | b.HasComment("æçä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialInfos.WmsMaterialInfo", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int?>("CheckStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æ£éªç¶æ(0:æªæ£éª,1:æ£éªéè¿,2:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç©ææ¹å·"); |
| | | |
| | | b.Property<string>("MaterialId") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æå¯ä¸ç "); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç©æä»£å·"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段1"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段2"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段3"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int?>("StockNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property<string>("SupplierCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("CheckStatus"); |
| | | |
| | | b.HasIndex("MaterialBatch"); |
| | | |
| | | b.HasIndex("MaterialId") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("SupplierCode"); |
| | | |
| | | b.ToTable("scms_wmsmaterialinfos", (string)null); |
| | | |
| | | b.HasComment("WMSç©æä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterials.WmsMaterial", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("Certification") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("è¯ä¹¦ç¼å·"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<string>("Factory") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç产工å"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("IsMainBranch") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(2) |
| | | .HasComment("æ¯å¦ä¸ºä¸»æ¯ç®¡"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<decimal>("Length") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é¿åº¦ï¼åä½ï¼mï¼"); |
| | | |
| | | b.Property<string>("MaterialCode") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æç¼ç ï¼å¯ä¸æ è¯ï¼"); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("åå·"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialQuality") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("æè´¨ï¼å¦ï¼304ä¸éé¢ï¼"); |
| | | |
| | | b.Property<int>("MaterialType") |
| | | .HasColumnType("int") |
| | | .HasComment("ç©æç±»åï¼æä¸¾å¼ï¼"); |
| | | |
| | | b.Property<decimal>("OuterDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¤å¾ï¼åä½ï¼mmï¼"); |
| | | |
| | | b.Property<string>("PrimaryUnit") |
| | | .HasMaxLength(20) |
| | | .HasColumnType("varchar(20)") |
| | | .HasComment("主åä½ï¼å¦ï¼kgãmã个ï¼"); |
| | | |
| | | b.Property<int>("PurchaseType") |
| | | .HasColumnType("int") |
| | | .HasComment("éè´ç±»åï¼æä¸¾å¼ï¼"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("Standard") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("è§æ ¼/æ åï¼å¦ï¼GB/T 8163-2018ï¼"); |
| | | |
| | | b.Property<decimal>("WallThickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å£åï¼åä½ï¼mmï¼"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("MaterialCode") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialType"); |
| | | |
| | | b.HasIndex("PurchaseType"); |
| | | |
| | | b.ToTable("scms_wmsmaterials", (string)null); |
| | | |
| | | b.HasComment("ç©æåºç¡ä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialStocks.WmsMaterialStock", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("AreaCode") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºåç¼å·"); |
| | | |
| | | b.Property<string>("AreaName") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("åºåºåç§°"); |
| | | |
| | | b.Property<int?>("CheckStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æ£éªç¶æ(1:æªæ£éª,2:æ£éªéè¿,3:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<string>("ContainerNo") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("容å¨ç¼å·"); |
| | | |
| | | b.Property<int>("ContainerStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("容å¨ç¶æ"); |
| | | |
| | | b.Property<int>("ContainerType") |
| | | .HasColumnType("int") |
| | | .HasComment("容å¨ç±»å"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int>("EmptyContainer") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦ç©ºæ(2:å¦,1:æ¯)"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<DateTime?>("InStockTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("å
¥åºæ¶é´"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("IsLock") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦éå®(2:æªéå®,1:å·²éå®)"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©ææ¹æ¬¡"); |
| | | |
| | | b.Property<string>("MaterialId") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æID"); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialNo") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æç¼å·"); |
| | | |
| | | b.Property<string>("PlaceNo") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºä½ç¼å·"); |
| | | |
| | | b.Property<int>("PlaceStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("åºä½ç¶æ;"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int>("StockNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property<int>("StorageTypeNo") |
| | | .HasColumnType("int") |
| | | .HasComment("åºä½ç±»å"); |
| | | |
| | | b.Property<string>("SupplierCode") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaCode"); |
| | | |
| | | b.HasIndex("ContainerNo"); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("PlaceNo"); |
| | | |
| | | b.HasIndex("MaterialBatch", "SupplierCode"); |
| | | |
| | | b.ToTable("scms_wmsmaterialstocks", (string)null); |
| | | |
| | | b.HasComment("WMSç©æåºå表"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsPlaces.WmsPlace", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int>("Aisle") |
| | | .HasColumnType("int") |
| | | .HasComment("å··é"); |
| | | |
| | | b.Property<string>("AreaCode") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æå¨åºåº"); |
| | | |
| | | b.Property<int>("ColumnNo") |
| | | .HasColumnType("int") |
| | | .HasComment("å"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int>("EmptyContainer") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦ç©ºæ"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("Islock") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦éå®"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<int>("LayerNo") |
| | | .HasColumnType("int") |
| | | .HasComment("å±"); |
| | | |
| | | b.Property<string>("PlaceNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç¼å·"); |
| | | |
| | | b.Property<int>("PlaceStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("è´§ä½ç¶æ"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("RowNo") |
| | | .HasColumnType("int") |
| | | .HasComment("æ"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int>("StorageTypeNo") |
| | | .HasColumnType("int") |
| | | .HasComment("è´§ä½ç±»å"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaCode"); |
| | | |
| | | b.HasIndex("PlaceNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("PlaceStatus"); |
| | | |
| | | b.HasIndex("StorageTypeNo"); |
| | | |
| | | b.ToTable("scms_wmsplaces", (string)null); |
| | | |
| | | b.HasComment("åºä½è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsStores.WmsStore", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("StoreCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä»åºä»£ç "); |
| | | |
| | | b.Property<string>("StoreName") |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ä»åºåç§°"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("StoreName"); |
| | | |
| | | b.ToTable("scms_wmsstores", (string)null); |
| | | |
| | | b.HasComment("ä»åºä¿¡æ¯è¡¨"); |
| | | }); |
| | | #pragma warning restore 612, 618 |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Microsoft.EntityFrameworkCore.Migrations; |
| | | |
| | | #nullable disable |
| | | |
| | | namespace CMS.Plugin.HIAWms.MySQL.Migrations |
| | | { |
| | | public partial class InitialCreate3 : Migration |
| | | { |
| | | protected override void Up(MigrationBuilder migrationBuilder) |
| | | { |
| | | migrationBuilder.AddColumn<string>( |
| | | name: "MaterialModel", |
| | | table: "scms_wmsmaterials", |
| | | type: "varchar(128)", |
| | | maxLength: 128, |
| | | nullable: true, |
| | | comment: "åå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | } |
| | | |
| | | protected override void Down(MigrationBuilder migrationBuilder) |
| | | { |
| | | migrationBuilder.DropColumn( |
| | | name: "MaterialModel", |
| | | table: "scms_wmsmaterials"); |
| | | } |
| | | } |
| | | } |
| | |
| | | b.HasComment("æçä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialInfos.WmsMaterialInfo", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int?>("CheckStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æ£éªç¶æ(0:æªæ£éª,1:æ£éªéè¿,2:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç©ææ¹å·"); |
| | | |
| | | b.Property<string>("MaterialId") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æå¯ä¸ç "); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(100) |
| | | .HasColumnType("varchar(100)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialNo") |
| | | .IsRequired() |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ç©æä»£å·"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段1"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段2"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(255) |
| | | .HasColumnType("varchar(255)") |
| | | .HasComment("åä½å段3"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int?>("StockNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property<string>("SupplierCode") |
| | | .HasMaxLength(50) |
| | | .HasColumnType("varchar(50)") |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("CheckStatus"); |
| | | |
| | | b.HasIndex("MaterialBatch"); |
| | | |
| | | b.HasIndex("MaterialId") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("SupplierCode"); |
| | | |
| | | b.ToTable("scms_wmsmaterialinfos", (string)null); |
| | | |
| | | b.HasComment("WMSç©æä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterials.WmsMaterial", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æç¼ç ï¼å¯ä¸æ è¯ï¼"); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("åå·"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(128) |
| | |
| | | b.HasComment("ç©æåºç¡ä¿¡æ¯è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsMaterialStocks.WmsMaterialStock", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("AreaCode") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºåç¼å·"); |
| | | |
| | | b.Property<string>("AreaName") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("åºåºåç§°"); |
| | | |
| | | b.Property<int?>("CheckStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("æ£éªç¶æ(1:æªæ£éª,2:æ£éªéè¿,3:æ£éªä¸éè¿)"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<string>("ContainerNo") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("容å¨ç¼å·"); |
| | | |
| | | b.Property<int>("ContainerStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("容å¨ç¶æ"); |
| | | |
| | | b.Property<int>("ContainerType") |
| | | .HasColumnType("int") |
| | | .HasComment("容å¨ç±»å"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<int>("EmptyContainer") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦ç©ºæ(2:å¦,1:æ¯)"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<DateTime?>("InStockTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("å
¥åºæ¶é´"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<int>("IsLock") |
| | | .HasColumnType("int") |
| | | .HasComment("æ¯å¦éå®(2:æªéå®,1:å·²éå®)"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©ææ¹æ¬¡"); |
| | | |
| | | b.Property<string>("MaterialId") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æID"); |
| | | |
| | | b.Property<string>("MaterialModel") |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("æºå/è§æ ¼"); |
| | | |
| | | b.Property<string>("MaterialName") |
| | | .IsRequired() |
| | | .HasMaxLength(128) |
| | | .HasColumnType("varchar(128)") |
| | | .HasComment("ç©æåç§°"); |
| | | |
| | | b.Property<string>("MaterialNo") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç©æç¼å·"); |
| | | |
| | | b.Property<string>("PlaceNo") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åºä½ç¼å·"); |
| | | |
| | | b.Property<int>("PlaceStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("åºä½ç¶æ;"); |
| | | |
| | | b.Property<string>("RedundantField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段1 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段2 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("RedundantField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä½å段3 - é¢çæ©å±ç¨é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(500) |
| | | .HasColumnType("varchar(500)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<int>("StockNumber") |
| | | .HasColumnType("int") |
| | | .HasComment("åºåæ°é"); |
| | | |
| | | b.Property<int>("StorageTypeNo") |
| | | .HasColumnType("int") |
| | | .HasComment("åºä½ç±»å"); |
| | | |
| | | b.Property<string>("SupplierCode") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ä¾åºåç¼å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("AreaCode"); |
| | | |
| | | b.HasIndex("ContainerNo"); |
| | | |
| | | b.HasIndex("MaterialName"); |
| | | |
| | | b.HasIndex("MaterialNo") |
| | | .IsUnique(); |
| | | |
| | | b.HasIndex("PlaceNo"); |
| | | |
| | | b.HasIndex("MaterialBatch", "SupplierCode"); |
| | | |
| | | b.ToTable("scms_wmsmaterialstocks", (string)null); |
| | | |
| | | b.HasComment("WMSç©æåºå表"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.HIAWms.Domain.WmsPlaces.WmsPlace", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | |
| | | cd ../ |
| | | dotnet ef migrations add InitialCreate1 -c CMSPluginDbContext -o Migrations |
| | | dotnet ef migrations add InitialCreate3 -c CMSPluginDbContext -o Migrations |
| | | ::dotnet ef migrations add Update1 -c CMSPluginDbContext -o Migrations |
| | | ::dotnet ef migrations add Update2 -c CMSPluginDbContext -o Migrations |
| | | ::dotnet ef migrations add Update3 -c CMSPluginDbContext -o Migrations |
| | |
| | | builder.ConfigureWmsPlace(); |
| | | builder.ConfigureWmsMaterial(); |
| | | builder.ConfigureWmsMaterialStock(); |
| | | builder.ConfigureWmsMaterialInfo(); |
| | | /* Configure your own tables/entities inside here */ |
| | | |
| | | //builder.Entity<YourEntity>(b => |
| | |
| | | builder.ConfigureWmsPlace(); |
| | | builder.ConfigureWmsMaterial(); |
| | | builder.ConfigureWmsMaterialStock(); |
| | | builder.ConfigureWmsMaterialInfo(); |
| | | |
| | | /* Configure your own tables/entities inside here */ |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Ao.Lang; |
| | | using CMS.Extensions.Abp.AspNetCore.Mvc.Filters; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Dtos.WmsMaterialInfos; |
| | | using CMS.Plugin.HIAWms.Application.Contracts.Services; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using MiniExcelLibs; |
| | | using System.Reflection; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.HIAWms.Controller |
| | | { |
| | | /// <summary> |
| | | /// WmsMaterialInfoæå¡ |
| | | /// </summary> |
| | | [ApiController] |
| | | [TypeFilter(typeof(CMSLanguageFilter))] |
| | | [TypeFilter(typeof(CMSUowActionFilter))] |
| | | [TypeFilter(typeof(CMSAuditActionFilter))] |
| | | [TypeFilter(typeof(CMSExceptionFilter))] |
| | | [Route("api/v{version:apiVersion}/HIAWms/[controller]")] |
| | | public class WmsMaterialInfoController : ControllerBase |
| | | { |
| | | private readonly IWmsMaterialInfoAppService _wmsmaterialinfoAppService; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WmsMaterialInfoController"/> class. |
| | | /// </summary> |
| | | /// <param name="wmsmaterialinfoAppService">The wmsmaterialinfo application service.</param> |
| | | public WmsMaterialInfoController(IWmsMaterialInfoAppService wmsmaterialinfoAppService) |
| | | { |
| | | _wmsmaterialinfoAppService = wmsmaterialinfoAppService; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åwmsmaterialinfo. |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("{id}")] |
| | | public virtual Task<WmsMaterialInfoDto> GetAsync(Guid id) |
| | | { |
| | | return _wmsmaterialinfoAppService.GetAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åwmsmaterialinfoçå表. |
| | | /// </summary> |
| | | /// <param name="input">è¾å
¥.</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | public virtual Task<PagedResultDto<WmsMaterialInfoDto>> GetListAsync([FromQuery] GetWmsMaterialInfosInput input) |
| | | { |
| | | return _wmsmaterialinfoAppService.GetListAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å建wmsmaterialinfo. |
| | | /// </summary> |
| | | /// <param name="input">è¾å
¥.</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [HttpPost] |
| | | public virtual Task<WmsMaterialInfoDto> CreateAsync(WmsMaterialInfoCreateDto input) |
| | | { |
| | | return _wmsmaterialinfoAppService.CreateAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°wmsmaterialinfo. |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <param name="input">è¾å
¥.</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [HttpPut] |
| | | [Route("{id}")] |
| | | public virtual Task<WmsMaterialInfoDto> UpdateAsync(Guid id, WmsMaterialInfoUpdateDto input) |
| | | { |
| | | return _wmsmaterialinfoAppService.UpdateAsync(id, input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
éWmsMaterialInfo. |
| | | /// </summary> |
| | | /// <param name="ids">Idéå.</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [HttpPost] |
| | | [Route("Clone")] |
| | | public virtual Task<List<WmsMaterialInfoDto>> CloneAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | return _wmsmaterialinfoAppService.CloneAsync(ids); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤wmsmaterialinfo. |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [HttpDelete] |
| | | [Route("{id}")] |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | return _wmsmaterialinfoAppService.DeleteAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¹éå é¤wmsmaterialinfo. |
| | | /// </summary> |
| | | /// <param name="ids">The ids.</param> |
| | | /// <returns></returns> |
| | | //[Authorize] |
| | | [HttpDelete] |
| | | public virtual Task DeleteAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | return _wmsmaterialinfoAppService.DeleteManyAsync(ids); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåº. |
| | | /// </summary> |
| | | /// <param name="id">æ è¯ç¬¦.</param> |
| | | /// <returns></returns> |
| | | [HttpPut] |
| | | [Route("{id}/AdjustSort/{sort}")] |
| | | public virtual Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | return _wmsmaterialinfoAppService.AdjustSortAsync(id, sort); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导å
¥wmsmaterialinfo. |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpPost] |
| | | [Route("Import")] |
| | | public virtual async Task<IActionResult> ImportAsync(IFormFile file) |
| | | { |
| | | using var stream = new MemoryStream(); |
| | | await file.CopyToAsync(stream); |
| | | stream.Seek(0L, SeekOrigin.Begin); |
| | | |
| | | var sheetNames = stream.GetSheetNames(); |
| | | var wmsmaterialinfoRows = sheetNames.Contains("é
ç½®") ? MiniExcel.Query<WmsMaterialInfosImportModel.WmsMaterialInfoImportModel>(stream, sheetName: "é
ç½®").ToList() : new(); |
| | | |
| | | if (!wmsmaterialinfoRows.Any()) |
| | | { |
| | | throw new UserFriendlyException("è¯·æ£æ¥å¯¼å
¥çè¡¨æ ¼"); |
| | | } |
| | | |
| | | await _wmsmaterialinfoAppService.ImportAsync(new WmsMaterialInfosImportModel |
| | | { |
| | | WmsMaterialInfos = wmsmaterialinfoRows, |
| | | }); |
| | | |
| | | return Ok(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导åºwmsmaterialinfo. |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("Export")] |
| | | public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsMaterialInfosInput input) |
| | | { |
| | | input.MaxResultCount = int.MaxValue; |
| | | var exportData = await _wmsmaterialinfoAppService.ExportAsync(input); |
| | | var templatePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Resources/Templates/WmsMaterialInfoå¯¼åºæ¨¡æ¿.xlsx"); |
| | | if (!System.IO.File.Exists(templatePath)) |
| | | { |
| | | templatePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? string.Empty, $"Resources/Templates/WmsMaterialInfoå¯¼åºæ¨¡æ¿.xlsx"); |
| | | } |
| | | |
| | | var memoryStream = new MemoryStream(); |
| | | await memoryStream.SaveAsByTemplateAsync(templatePath, exportData.Sheets); |
| | | memoryStream.Seek(0L, SeekOrigin.Begin); |
| | | return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { FileDownloadName = $"{exportData.FileName}_{DateTime.Now:yyyyMMddhhmmss}.xlsx" }; |
| | | } |
| | | } |
| | | } |
| | |
| | | /// <param name="input">è¾å
¥.</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | public virtual Task<PagedResultDto<WmsPlaceDto>> GetListAsync([FromQuery] GetWmsPlacesInput input) |
| | | public virtual Task<PagedResultDto<WmsPlaceDto>> GetListAsync([FromQuery] GetWmsMaterialInfoInput input) |
| | | { |
| | | return _wmsplaceAppService.GetListAsync(input); |
| | | } |
| | |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("Export")] |
| | | public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsPlacesInput input) |
| | | public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWmsMaterialInfoInput input) |
| | | { |
| | | input.MaxResultCount = int.MaxValue; |
| | | var exportData = await _wmsplaceAppService.ExportAsync(input); |
| | |
| | | ElButton: typeof import('element-plus/es')['ElButton'] |
| | | ElCheckbox: typeof import('element-plus/es')['ElCheckbox'] |
| | | ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] |
| | | ElDatePicker: typeof import('element-plus/es')['ElDatePicker'] |
| | | ElDialog: typeof import('element-plus/es')['ElDialog'] |
| | | ElDivider: typeof import('element-plus/es')['ElDivider'] |
| | | ElDrawer: typeof import('element-plus/es')['ElDrawer'] |
| | |
| | | "notPage": false |
| | | }, |
| | | { |
| | | "name": "åºåä¿¡æ¯", |
| | | "path": "/information-base/WmsMaterialStock", |
| | | "patchName": "WmsMaterialStock", |
| | | "icon": "p", |
| | | "notPage": false |
| | | }, |
| | | { |
| | | "name": "Wmsæç管ç", |
| | | "path": "/information-base/WmsContainer", |
| | | "patchName": "WmsContainer", |
| | |
| | | "icon": "p", |
| | | "notPage": false |
| | | }, |
| | | "WmsMaterialStock": { |
| | | "name": "åºåä¿¡æ¯", |
| | | "path": "/information-base/WmsMaterialStock", |
| | | "patchName": "WmsMaterialStock", |
| | | "icon": "p", |
| | | "notPage": false |
| | | }, |
| | | "WmsContainer": { |
| | | "name": "Wmsæç管ç", |
| | | "path": "/information-base/WmsContainer", |
| | |
| | | rules: [{ required: true, message: 'è¯·éæ©ç©æç±»å', trigger: 'change' }], |
| | | }, |
| | | { |
| | | label: 'åå·', |
| | | prop: 'materialModel', |
| | | el: 'input', |
| | | placeholder: '请è¾å
¥åå·', |
| | | }, |
| | | { |
| | | label: '主åä½', |
| | | prop: 'primaryUnit', |
| | | el: 'input', |
| | |
| | | materialType: formData.value.materialType, |
| | | primaryUnit: formData.value.primaryUnit, |
| | | standard: formData.value.standard, |
| | | materialModel: formData.value.materialModel, |
| | | outerDiameter: formData.value.outerDiameter, |
| | | wallThickness: formData.value.wallThickness, |
| | | materialQuality: formData.value.materialQuality, |
| | |
| | | materialType: res.materialType, |
| | | primaryUnit: res.primaryUnit, |
| | | standard: res.standard, |
| | | materialModel: res.materialModel, |
| | | outerDiameter: res.outerDiameter, |
| | | wallThickness: res.wallThickness, |
| | | materialQuality: res.materialQuality, |
| | |
| | | title: 'ç©æç±»å', |
| | | }, |
| | | { |
| | | field: 'materialModel', |
| | | title: 'ç©æåå·', |
| | | }, |
| | | { |
| | | field: 'primaryUnit', |
| | | title: '主åä½', |
| | | }, |
| | |
| | | divided: true, |
| | | icon: 'o', |
| | | }, |
| | | { |
| | | label: 'å䏿·»å ', |
| | | fn: (c: CurrentType, pageNum: number) => { |
| | | current.value = null |
| | | sort.value = c.index + 1 + (pageNum - 1) * 50 |
| | | dialogConfig.visible = true |
| | | dialogConfig.title = 'æ·»å ' |
| | | dialogConfig.isAdd = false |
| | | }, |
| | | divided: true, |
| | | icon: 'up', |
| | | }, |
| | | { |
| | | label: 'å䏿·»å ', |
| | | fn: (c: CurrentType, pageNum: number) => { |
| | | current.value = null |
| | | sort.value = c.index + 2 + (pageNum - 1) * 50 |
| | | dialogConfig.visible = true |
| | | dialogConfig.title = 'æ·»å ' |
| | | dialogConfig.isAdd = false |
| | | }, |
| | | divided: true, |
| | | icon: 'down', |
| | | }, |
| | | { |
| | | label: 'åå»ºå¯æ¬', |
| | | fn: async ({ row }: CurrentType) => { |
| | | await wmsContainer.cloneData([row.id]) |
| | | ElMessage.success('åå»ºå¯æ¬æå') |
| | | tableRef.value?.getList() |
| | | }, |
| | | divided: true, |
| | | icon: 'copy', |
| | | }, |
| | | // { |
| | | // label: 'å䏿·»å ', |
| | | // fn: (c: CurrentType, pageNum: number) => { |
| | | // current.value = null |
| | | // sort.value = c.index + 1 + (pageNum - 1) * 50 |
| | | // dialogConfig.visible = true |
| | | // dialogConfig.title = 'æ·»å ' |
| | | // dialogConfig.isAdd = false |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'up', |
| | | // }, |
| | | // { |
| | | // label: 'å䏿·»å ', |
| | | // fn: (c: CurrentType, pageNum: number) => { |
| | | // current.value = null |
| | | // sort.value = c.index + 2 + (pageNum - 1) * 50 |
| | | // dialogConfig.visible = true |
| | | // dialogConfig.title = 'æ·»å ' |
| | | // dialogConfig.isAdd = false |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'down', |
| | | // }, |
| | | // { |
| | | // label: 'åå»ºå¯æ¬', |
| | | // fn: async ({ row }: CurrentType) => { |
| | | // await wmsContainer.cloneData([row.id]) |
| | | // ElMessage.success('åå»ºå¯æ¬æå') |
| | | // tableRef.value?.getList() |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'copy', |
| | | // }, |
| | | { |
| | | label: 'å é¤', |
| | | fn: async (c: CurrentType) => { |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { importFileToService, exportFileToClient } from '@/api/file' |
| | | import { ElMessage } from 'element-plus' |
| | | import { downloadFile } from '@/utils' |
| | | import dayjs from 'dayjs' |
| | | |
| | | export const useFile = () => { |
| | | /** |
| | | * 导å
¥æä»¶ |
| | | * @param url |
| | | */ |
| | | const importFile = async (url: string, file: File) => { |
| | | const formData = new FormData() |
| | | formData.append('file', file) |
| | | await importFileToService(url, formData) |
| | | ElMessage('导å
¥æå') |
| | | } |
| | | /** |
| | | * å¯¼åºæä»¶ |
| | | * @param url |
| | | */ |
| | | const exportFile = async (url: string, params: any, name: string) => { |
| | | const res = await exportFileToClient(url, params) |
| | | downloadFile(res, `${name}_${dayjs().format('YYYYMMDDHHMMss')}.xlsx`) |
| | | ElMessage.success('å¯¼åºæå') |
| | | } |
| | | |
| | | return { |
| | | importFile, |
| | | exportFile, |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { ref, onMounted, reactive, Ref, nextTick, computed } from 'vue' |
| | | import { injectModel } from '@/libs/Provider/Provider' |
| | | import { WmsMaterialStock } from '../Models/WmsMaterialStock' |
| | | import { ElMessage } from 'element-plus' |
| | | import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' |
| | | import { useFile } from './File' |
| | | |
| | | interface CurrentType { |
| | | row: any |
| | | index: number |
| | | } |
| | | export const useWmsMaterialStock = (props: any, ctx?: any) => { |
| | | const wmsMaterialStock = injectModel<WmsMaterialStock>('wmsMaterialStock') |
| | | const { exportFile } = useFile() |
| | | /** |
| | | * 头é¨é
ç½® |
| | | */ |
| | | const headers = ref({}) |
| | | /** |
| | | * 卿åé
ç½® |
| | | */ |
| | | const wmsMaterialStockColumns = ref<Record<string, any>>([]) |
| | | /** |
| | | * æç´¢å¼ |
| | | */ |
| | | const search = ref('') |
| | | |
| | | /** |
| | | * æåº |
| | | */ |
| | | const sort = ref(0) |
| | | /** |
| | | * 鿩项 |
| | | */ |
| | | const selection = ref([]) |
| | | /** |
| | | * å½åéä¸çè¡ |
| | | */ |
| | | const current = ref<any>(null) |
| | | /** |
| | | * æ°æ®æº |
| | | */ |
| | | const dataSource: Ref<any[]> = ref([]) |
| | | |
| | | /** |
| | | * è¡¨æ ¼ |
| | | */ |
| | | const tableRef = ref() |
| | | const dialogConfig = reactive({ |
| | | visible: false, |
| | | title: '', |
| | | isAdd: false, |
| | | }) |
| | | |
| | | const dialogSettingConfig = reactive({ |
| | | visible: false, |
| | | title: '', |
| | | }) |
| | | |
| | | /** |
| | | * åé¡µæ°æ® |
| | | */ |
| | | const paginationParams = ref({}) |
| | | |
| | | /** |
| | | * æå¼è¯¦æ
|
| | | * @param row |
| | | */ |
| | | const openDetail = (row: any) => { |
| | | current.value = row |
| | | dialogConfig.visible = true |
| | | dialogConfig.title = row.name |
| | | dialogConfig.isAdd = false |
| | | sort.value = row.sort |
| | | } |
| | | |
| | | const contextMenu = [ |
| | | { |
| | | label: 'å±å¼è¯¦æ
', |
| | | fn: (c: CurrentType) => { |
| | | current.value = null |
| | | sort.value = c.row.sort |
| | | nextTick(() => openDetail(c.row)) |
| | | }, |
| | | divided: true, |
| | | icon: 'o', |
| | | }, |
| | | // { |
| | | // label: 'å䏿·»å ', |
| | | // fn: (c: CurrentType, pageNum: number) => { |
| | | // current.value = null |
| | | // sort.value = c.index + 1 + (pageNum - 1) * 50 |
| | | // dialogConfig.visible = true |
| | | // dialogConfig.title = 'æ·»å ' |
| | | // dialogConfig.isAdd = false |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'up', |
| | | // }, |
| | | // { |
| | | // label: 'å䏿·»å ', |
| | | // fn: (c: CurrentType, pageNum: number) => { |
| | | // current.value = null |
| | | // sort.value = c.index + 2 + (pageNum - 1) * 50 |
| | | // dialogConfig.visible = true |
| | | // dialogConfig.title = 'æ·»å ' |
| | | // dialogConfig.isAdd = false |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'down', |
| | | // }, |
| | | // { |
| | | // label: 'åå»ºå¯æ¬', |
| | | // fn: async ({ row }: CurrentType) => { |
| | | // await wmsMaterialStock.cloneData([row.id]) |
| | | // ElMessage.success('åå»ºå¯æ¬æå') |
| | | // tableRef.value?.getList() |
| | | // }, |
| | | // divided: true, |
| | | // icon: 'copy', |
| | | // }, |
| | | { |
| | | label: 'å é¤', |
| | | fn: async (c: CurrentType) => { |
| | | const names = selection.value.map((item: { name: string }) => item.name) |
| | | ConfirmBox( |
| | | `æ¯å¦å é¤${names.length ? names.join(',') : c.row.name}` |
| | | ).then(async () => { |
| | | const ids = selection.value.map((item: { id: string }) => item.id) |
| | | await wmsMaterialStock.deleteWmsMaterialStocks( |
| | | ids.length ? ids : [c.row.id] |
| | | ) |
| | | ElMessage.success('å 餿å') |
| | | tableRef.value.getList() |
| | | }) |
| | | }, |
| | | icon: 'close', |
| | | }, |
| | | ] |
| | | |
| | | const onCheck = (records: any) => { |
| | | selection.value = records |
| | | } |
| | | |
| | | const onAddWmsMaterialStock = () => { |
| | | const params = tableRef.value?.getPaginationParams() |
| | | current.value = null |
| | | dialogConfig.visible = true |
| | | dialogConfig.isAdd = true |
| | | dialogConfig.title = 'æ·»å ' |
| | | sort.value = params.totalCount + 1 |
| | | } |
| | | |
| | | const onConfirmWmsMaterialStock = async () => { |
| | | dialogConfig.visible = false |
| | | if (dialogConfig.isAdd) { |
| | | tableRef.value?.scrollToRow({ |
| | | skip: true, |
| | | }) |
| | | } else { |
| | | await tableRef.value?.getList() |
| | | } |
| | | } |
| | | /** |
| | | * è¡ç¹å»æ¶æ´æ°current |
| | | */ |
| | | const onRowClick = ({ row }: any) => { |
| | | if (dialogConfig.visible && current.value) { |
| | | current.value = row |
| | | } |
| | | } |
| | | /** |
| | | * å¯¼åº |
| | | */ |
| | | const onExport = () => { |
| | | const params = tableRef.value?.getParams() |
| | | exportFile( |
| | | '/api/v1/HIAWms/wmsMaterialStock/export', |
| | | params, |
| | | 'wmsMaterialStock' |
| | | ) |
| | | } |
| | | |
| | | /** |
| | | * å
³é®åæç´¢ |
| | | */ |
| | | const onSearch = () => { |
| | | tableRef.value?.getList({ |
| | | Filter: search.value, |
| | | }) |
| | | } |
| | | |
| | | /** |
| | | * éç½®è¡¨æ ¼æ°æ® |
| | | */ |
| | | const reloadList = () => { |
| | | tableRef.value?.getList() |
| | | } |
| | | /** |
| | | * ä¸ä¼ æå |
| | | */ |
| | | const onSuccess = () => { |
| | | tableRef.value?.getList() |
| | | ElMessage.success('导å
¥æå') |
| | | } |
| | | /** |
| | | * 失败 |
| | | * @param err |
| | | */ |
| | | const onError = (err: any) => { |
| | | try { |
| | | const message = JSON.parse(err.message) |
| | | ElMessage.error(message.msg) |
| | | } catch (error) { |
| | | ElMessage.error('导å
¥å¤±è´¥') |
| | | } |
| | | } |
| | | /** |
| | | * ä¸ä¼ é©å |
| | | */ |
| | | const onBeforeUpload = (file: File) => { |
| | | const format = ['xlsx', 'xls', 'csv'] |
| | | if (!format.includes(file.name.split('.')[1])) { |
| | | ElMessage.error('导å
¥æä»¶æ ¼å¼ä¸æ£ç¡®ï¼è¯·å¯¼å
¥.xlsx/.xlsä¸.csvæ ¼å¼çæä»¶') |
| | | return false |
| | | } |
| | | return true |
| | | } |
| | | |
| | | onMounted(() => { |
| | | headers.value = { |
| | | Authorization: `Bearer ${sessionStorage.getItem('Token')}`, |
| | | 'X-Project': sessionStorage.getItem('X-Project'), |
| | | } |
| | | }) |
| | | |
| | | ctx.expose({ |
| | | reloadList, |
| | | }) |
| | | |
| | | return { |
| | | dataSource, |
| | | contextMenu, |
| | | dialogConfig, |
| | | dialogSettingConfig, |
| | | tableRef, |
| | | current, |
| | | search, |
| | | sort, |
| | | wmsMaterialStockColumns, |
| | | paginationParams, |
| | | headers, |
| | | onBeforeUpload, |
| | | onError, |
| | | onSuccess, |
| | | openDetail, |
| | | onSearch, |
| | | onExport, |
| | | onRowClick, |
| | | onConfirmWmsMaterialStock, |
| | | onCheck, |
| | | onAddWmsMaterialStock, |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { |
| | | ref, |
| | | onMounted, |
| | | reactive, |
| | | computed, |
| | | Ref, |
| | | watch, |
| | | SetupContext, |
| | | h, |
| | | } from 'vue' |
| | | import { injectModel } from '@/libs/Provider/Provider' |
| | | import { WmsMaterialStockDrawer } from '../Models/WmsMaterialStockDrawer' |
| | | import { ElMessage } from 'element-plus' |
| | | import isEqual from 'lodash/isEqual' |
| | | import { ConfirmBox } from '@/components/ConfirmBox/ConfirmBox' |
| | | import { cloneDeep } from 'lodash' |
| | | import { |
| | | getAreaAreaDataList, |
| | | getWmsEnumData, |
| | | } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' |
| | | |
| | | export const useWmsMaterialStockDrawer = (props: any, ctx?: any) => { |
| | | const wmsMaterialStockDrawer = injectModel<WmsMaterialStockDrawer>( |
| | | 'wmsMaterialStockDrawer' |
| | | ) |
| | | /** |
| | | * ç¨æ¥å¯¹æ¯çåå§åæ°æ® |
| | | */ |
| | | const initiateData: Ref<Record<string, any>> = ref({}) |
| | | const formData = ref<Record<string, any>>({}) |
| | | // ref |
| | | const formRef = ref() |
| | | |
| | | const inputNumber = (attrs) => { |
| | | return ( |
| | | <el-input-number |
| | | min="1" |
| | | step="1" |
| | | precision="0" |
| | | {...attrs} |
| | | ></el-input-number> |
| | | ) |
| | | } |
| | | const datePicker = (attrs) => { |
| | | return ( |
| | | <el-date-picker |
| | | type="datetime" |
| | | format="YYYY-MM-DD HH:mm:ss" |
| | | {...attrs} |
| | | ></el-date-picker> |
| | | ) |
| | | } |
| | | |
| | | const current = computed(() => { |
| | | return props.row || null |
| | | }) |
| | | const visible = computed({ |
| | | get() { |
| | | return props.modelValue |
| | | }, |
| | | set(val) { |
| | | ctx.emit('update:modelValue', val) |
| | | }, |
| | | }) |
| | | /** |
| | | * æ·»å çformåæ®µ |
| | | */ |
| | | const formItems = reactive([ |
| | | // åºç¡ä¿¡æ¯ |
| | | { |
| | | label: 'ç©æç¼å·', |
| | | prop: 'materialNo', |
| | | el: 'input', |
| | | placeholder: '请è¾å
¥ç©æç¼å·', |
| | | rules: [ |
| | | { required: true, message: 'ç©æç¼å·ä¸è½ä¸ºç©º', trigger: 'blur' }, |
| | | { max: 50, message: 'é¿åº¦ä¸è½è¶
è¿50个å符', trigger: 'blur' }, |
| | | ], |
| | | }, |
| | | { |
| | | label: 'ç©æåç§°', |
| | | prop: 'materialName', |
| | | el: 'input', |
| | | placeholder: '请è¾å
¥ç©æåç§°', |
| | | rules: [ |
| | | { required: true, message: 'ç©æåç§°ä¸è½ä¸ºç©º', trigger: 'blur' }, |
| | | { max: 100, message: 'é¿åº¦ä¸è½è¶
è¿100个å符', trigger: 'blur' }, |
| | | ], |
| | | }, |
| | | // 容å¨ä¿¡æ¯ |
| | | { |
| | | label: '容å¨ç¼å·', |
| | | prop: 'containerNo', |
| | | el: 'input', |
| | | placeholder: '请è¾å
¥å®¹å¨ç¼å·', |
| | | rules: [ |
| | | { required: true, message: 'ç©æç¼å·ä¸è½ä¸ºç©º', trigger: 'blur' }, |
| | | { max: 50, message: 'é¿åº¦ä¸è½è¶
è¿50个å符', trigger: 'blur' }, |
| | | ], |
| | | }, |
| | | // åºåä¿¡æ¯ |
| | | { |
| | | label: 'åºåæ°é', |
| | | prop: 'stockNumber', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(inputNumber, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥åºåæ°é', |
| | | rules: [{ required: true, message: '请è¾å
¥åºåæ°é', trigger: 'blur' }], |
| | | }, |
| | | { |
| | | label: 'ç©ææ¹æ¬¡', |
| | | prop: 'materialBatch', |
| | | el: 'input', |
| | | placeholder: '请è¾å
¥ç©ææ¹æ¬¡å·', |
| | | rules: [ |
| | | { required: true, message: 'ç©ææ¹æ¬¡ä¸è½ä¸ºç©º', trigger: 'blur' }, |
| | | { max: 50, message: 'é¿åº¦ä¸è½è¶
è¿50个å符', trigger: 'blur' }, |
| | | ], |
| | | }, |
| | | |
| | | { |
| | | label: 'åºä½ç¼å·', |
| | | prop: 'placeNo', |
| | | el: 'input', |
| | | placeholder: '请è¾å
¥åºä½ç¼å·', |
| | | rules: [ |
| | | { required: true, message: 'åºä½ç¼å·ä¸è½ä¸ºç©º', trigger: 'blur' }, |
| | | { max: 50, message: 'é¿åº¦ä¸è½è¶
è¿50个å符', trigger: 'blur' }, |
| | | ], |
| | | }, |
| | | // ç¶æä¿¡æ¯ |
| | | { |
| | | label: 'æ£éªç¶æ', |
| | | prop: 'checkStatus', |
| | | el: 'select', |
| | | options: [], |
| | | placeholder: 'è¯·éæ©æ£éªç¶æ', |
| | | }, |
| | | { |
| | | label: 'æ¯å¦éå®', |
| | | prop: 'isLock', |
| | | el: 'select', |
| | | options: [], |
| | | placeholder: 'è¯·éæ©éå®ç¶æ', |
| | | }, |
| | | { |
| | | label: 'æ¯å¦ç©ºæ', |
| | | prop: 'emptyContainer', |
| | | el: 'select', |
| | | options: [], |
| | | placeholder: 'è¯·éæ©ç©ºæç¶æ', |
| | | }, |
| | | // æ¶é´ä¿¡æ¯ |
| | | |
| | | { |
| | | label: 'å
¥åºæ¶é´', |
| | | prop: 'inStockTime', |
| | | el: (props: any, { attrs }: SetupContext) => { |
| | | return h(datePicker, { |
| | | ...props, |
| | | clearable: true, |
| | | ...attrs, |
| | | }) |
| | | }, |
| | | width: '100%', |
| | | placeholder: '请è¾å
¥æä½æ¶é´', |
| | | }, |
| | | { |
| | | label: '夿³¨', |
| | | prop: 'remark', |
| | | el: 'input', |
| | | type: 'textarea', |
| | | placeholder: '请è¾å
¥å¤æ³¨ä¿¡æ¯', |
| | | rules: [{ max: 500, message: 'é¿åº¦ä¸è½è¶
è¿500个å符', trigger: 'blur' }], |
| | | }, |
| | | ]) |
| | | /** |
| | | * æ ¡éªæ¯å¦ææ°æ®åå |
| | | */ |
| | | const checkIsEqualObject = () => { |
| | | const data = { |
| | | formData: formData.value, |
| | | } |
| | | const check = isEqual(initiateData.value, data) |
| | | return check |
| | | } |
| | | |
| | | const onClose = (done: () => void) => { |
| | | if (visible.value) { |
| | | if (checkIsEqualObject()) { |
| | | visible.value = false |
| | | done && done() |
| | | } else { |
| | | ConfirmBox('æ¯å¦ä¿å设置ï¼') |
| | | .then(() => { |
| | | onConfirm() |
| | | }) |
| | | .catch(() => { |
| | | visible.value = false |
| | | done && done() |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | /** |
| | | * ä¿å |
| | | */ |
| | | const onConfirm = async () => { |
| | | await formRef.value?.validate() |
| | | const data = { |
| | | materialNo: formData.value.materialNo, |
| | | materialName: formData.value.materialName, |
| | | containerNo: formData.value.containerNo, |
| | | stockNumber: formData.value.stockNumber, |
| | | materialBatch: formData.value.materialBatch, |
| | | placeNo: formData.value.placeNo, |
| | | checkStatus: formData.value.checkStatus, |
| | | isLock: formData.value.isLock, |
| | | emptyContainer: formData.value.emptyContainer, |
| | | inStockTime: formData.value.inStockTime, |
| | | remark: formData.value.remark, |
| | | sort: props.sort, |
| | | } |
| | | if (!current.value) { |
| | | await wmsMaterialStockDrawer.addWmsMaterialStock(data) |
| | | } else { |
| | | const id = current.value.id |
| | | await wmsMaterialStockDrawer.updateWmsMaterialStock(id, data) |
| | | } |
| | | ElMessage.success('ä¿åæå') |
| | | ctx.emit('confirm') |
| | | } |
| | | |
| | | const updateCheckData = () => { |
| | | initiateData.value = { |
| | | formData: { |
| | | ...formData.value, |
| | | }, |
| | | } |
| | | } |
| | | const updateFormItemOptions = (propName: string, enumData: any[]) => { |
| | | const item = formItems.find((item) => item.prop === propName) |
| | | if (item && enumData) { |
| | | item.options = enumData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | } |
| | | } |
| | | const updateFormAreaOptions = (propName: string, enumData: any[]) => { |
| | | const item = formItems.find((item) => item.prop === propName) |
| | | if (item && enumData) { |
| | | item.options = enumData.map((item) => ({ |
| | | label: item.areaName, |
| | | value: item.areaNo, |
| | | })) |
| | | } |
| | | } |
| | | /** |
| | | * å¼¹çªæå¼è·å详æ
|
| | | */ |
| | | const onOpen = async () => { |
| | | const containerTypeEnum = await getWmsEnumData({ |
| | | EnumName: 'ContainerTypeEnum', |
| | | }) |
| | | updateFormItemOptions('containerType', containerTypeEnum) |
| | | |
| | | const containerStatusEnum = await getWmsEnumData({ |
| | | EnumName: 'ContainerStatusEnum', |
| | | }) |
| | | updateFormItemOptions('containerStatus', containerStatusEnum) |
| | | const placeStatusData = await getWmsEnumData({ |
| | | EnumName: 'PlaceStatusEnum', |
| | | }) |
| | | |
| | | updateFormItemOptions('placeStatus', placeStatusData) |
| | | const storageTypeNoData = await getWmsEnumData({ |
| | | EnumName: 'PlaceTypeEnum', |
| | | }) |
| | | updateFormItemOptions('storageTypeNo', storageTypeNoData) |
| | | |
| | | const checkStatusList = await getWmsEnumData({ |
| | | EnumName: 'MaterialCheckStatusEnum', |
| | | }) |
| | | updateFormItemOptions('checkStatus', checkStatusList) |
| | | |
| | | const yesNoData = await getWmsEnumData({ |
| | | EnumName: 'YesNoEnum', |
| | | }) |
| | | updateFormItemOptions('isLock', yesNoData) |
| | | updateFormItemOptions('emptyContainer', yesNoData) |
| | | |
| | | const areaList = await getAreaAreaDataList() |
| | | updateFormAreaOptions('areaCode', areaList) |
| | | |
| | | if (current.value) { |
| | | const res = await wmsMaterialStockDrawer.getWmsMaterialStockDetail( |
| | | current.value |
| | | ) |
| | | |
| | | formData.value = { |
| | | materialNo: res.materialNo, |
| | | materialName: res.materialName, |
| | | containerNo: res.containerNo, |
| | | stockNumber: res.stockNumber, |
| | | materialBatch: res.materialBatch, |
| | | placeNo: res.placeNo, |
| | | checkStatus: res.checkStatus, |
| | | isLock: res.isLock, |
| | | emptyContainer: res.emptyContainer, |
| | | inStockTime: res.inStockTime, |
| | | remark: res.remark, |
| | | id: res.id, |
| | | } |
| | | updateCheckData() |
| | | } else { |
| | | formData.value = { |
| | | isLock: 2, |
| | | emptyContainer: 2, |
| | | inStockTime: new Date(), |
| | | } |
| | | updateCheckData() |
| | | } |
| | | } |
| | | |
| | | watch(() => current.value, onOpen) |
| | | |
| | | return { |
| | | formItems, |
| | | formData, |
| | | visible, |
| | | formRef, |
| | | onOpen, |
| | | onClose, |
| | | onConfirm, |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { Base } from '@/libs/Base/Base' |
| | | const request = Base.request |
| | | |
| | | /** |
| | | * æ·»å |
| | | * @returns |
| | | */ |
| | | export const addWmsMaterialStock = (data: any) => { |
| | | return request.post('/api/v1/HIAWms/wmsMaterialStock', data) |
| | | } |
| | | |
| | | /** |
| | | * æ¹éå é¤ |
| | | * @returns |
| | | */ |
| | | export const deleteWmsMaterialStocks = (ids: string[]) => { |
| | | return request({ |
| | | data: ids, |
| | | url: '/api/v1/HIAWms/wmsMaterialStock', |
| | | method: 'delete', |
| | | }) |
| | | } |
| | | |
| | | /** |
| | | * å
é |
| | | * @returns |
| | | */ |
| | | export const cloneData = (data: any) => { |
| | | return request.post('/api/v1/HIAWms/wmsMaterialStock/clone', data) |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { Base } from '@/libs/Base/Base' |
| | | const request = Base.request |
| | | |
| | | /** |
| | | * æ·»å |
| | | * @returns |
| | | */ |
| | | export const addWmsMaterialStock = (data: any) => { |
| | | return request.post('/api/v1/HIAWms/wmsMaterialStock', data) |
| | | } |
| | | |
| | | /** |
| | | * è·å详æ
|
| | | * @returns |
| | | */ |
| | | export const getWmsMaterialStock = (id: string) => { |
| | | return request.get(`/api/v1/HIAWms/wmsMaterialStock/${id}`) |
| | | } |
| | | |
| | | /** |
| | | * æ´æ° |
| | | * @returns |
| | | */ |
| | | export const updateWmsMaterialStock = ( |
| | | id: string, |
| | | data: Record<string, any> |
| | | ) => { |
| | | return request.put(`/api/v1/HIAWms/wmsMaterialStock/${id}`, data) |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { Base } from '@/libs/Base/Base' |
| | | import { |
| | | deleteWmsMaterialStocks, |
| | | addWmsMaterialStock, |
| | | cloneData, |
| | | } from './Service/WmsMaterialStock' |
| | | |
| | | export class WmsMaterialStock extends Base<{ [key: string]: any }> { |
| | | constructor() { |
| | | super({ |
| | | data: [], |
| | | }) |
| | | } |
| | | onMounted() {} |
| | | /** |
| | | * å é¤ |
| | | * @param id |
| | | * @returns |
| | | */ |
| | | async deleteWmsMaterialStocks(ids: string[]) { |
| | | return deleteWmsMaterialStocks(ids) |
| | | } |
| | | |
| | | /** |
| | | * æ·»å æ°æ® |
| | | * @param data |
| | | * @returns |
| | | */ |
| | | addWmsMaterialStock(data: Record<string, any>) { |
| | | return addWmsMaterialStock(data) |
| | | } |
| | | |
| | | /** |
| | | * å
é |
| | | * @param ids |
| | | * @returns |
| | | */ |
| | | cloneData(ids: string[]) { |
| | | return cloneData(ids) |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { Base } from '@/libs/Base/Base' |
| | | import { |
| | | addWmsMaterialStock, |
| | | getWmsMaterialStock, |
| | | updateWmsMaterialStock, |
| | | } from './Service/WmsMaterialStockDrawer' |
| | | import { useGlobalState } from '@/libs/Store/Store' |
| | | |
| | | export class WmsMaterialStockDrawer extends Base<{ [key: string]: any }> { |
| | | constructor() { |
| | | super({ |
| | | data: [], |
| | | wmsMaterialStock: {}, |
| | | }) |
| | | } |
| | | |
| | | /** |
| | | * æ·»å |
| | | * @param data |
| | | */ |
| | | async addWmsMaterialStock(data: Record<string, any>) { |
| | | return addWmsMaterialStock(data) |
| | | } |
| | | /** |
| | | * æ´æ° |
| | | * @param data |
| | | */ |
| | | async updateWmsMaterialStock(id: string, data: Record<string, any>) { |
| | | return updateWmsMaterialStock(id, data) |
| | | } |
| | | |
| | | /** |
| | | * è·å详æ
|
| | | */ |
| | | async getWmsMaterialStockDetail(current: any, id?: string) { |
| | | return getWmsMaterialStock(id || current?.id) |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | .drawer { |
| | | width: 800px; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { SetupContext, defineComponent } from 'vue' |
| | | import BaseDrawer from '@/components/BaseDrawer/BaseDrawer' |
| | | import styles from './WmsMaterialStockDrawer.module.scss' |
| | | import { useWmsMaterialStockDrawer } from '../../../../Controllers/WmsMaterialStockDrawer.tsx' |
| | | import DyForm from '@/components/DyForm/DyForm' |
| | | |
| | | // @ts-ignore |
| | | export default defineComponent<{ |
| | | [key: string]: any |
| | | }>({ |
| | | name: 'å¼¹çª', |
| | | props: { |
| | | modelValue: { |
| | | type: Boolean, |
| | | default: false, |
| | | }, |
| | | title: { |
| | | type: String, |
| | | default: '', |
| | | }, |
| | | row: { |
| | | type: Object, |
| | | }, |
| | | sort: { |
| | | type: Number, |
| | | default: 0, |
| | | }, |
| | | }, |
| | | emits: ['update:modelValue', 'close', 'submit', 'confirm'], |
| | | setup(props: Record<string, any>, ctx: SetupContext) { |
| | | const { |
| | | onClose, |
| | | onConfirm, |
| | | onOpen, |
| | | formRef, |
| | | visible, |
| | | formItems, |
| | | formData, |
| | | } = useWmsMaterialStockDrawer(props, ctx) |
| | | return () => ( |
| | | <BaseDrawer |
| | | class={styles.drawer} |
| | | size="800px" |
| | | title={props.title || 'æ·»å '} |
| | | v-model={visible.value} |
| | | close-on-click-modal={true} |
| | | onConfirm={onConfirm} |
| | | onOpen={onOpen} |
| | | before-close={onClose} |
| | | onClose={onClose} |
| | | > |
| | | <DyForm |
| | | ref={formRef} |
| | | formData={formData.value} |
| | | labelWidth="106px" |
| | | formItemProps={formItems} |
| | | ></DyForm> |
| | | </BaseDrawer> |
| | | ) |
| | | }, |
| | | }) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | export const columns = [ |
| | | { |
| | | type: 'seq', |
| | | width: 60, |
| | | title: 'åºå·', |
| | | }, |
| | | { |
| | | field: 'materialNo', |
| | | title: 'ç©æç¼å·', |
| | | }, |
| | | { |
| | | field: 'materialName', |
| | | title: 'ç©æåç§°', |
| | | }, |
| | | { |
| | | field: 'placeNo', |
| | | title: 'åºä½ç¼å·', |
| | | }, |
| | | { |
| | | field: 'placeStatusDesc', |
| | | title: 'åºä½ç¶æ', |
| | | }, |
| | | { |
| | | field: 'containerNo', |
| | | title: '容å¨ç¼å·', |
| | | }, |
| | | { |
| | | field: 'stockNumber', |
| | | title: 'åºåæ°é', |
| | | }, |
| | | { |
| | | field: 'materialBatch', |
| | | title: 'ç©ææ¹æ¬¡', |
| | | }, |
| | | { |
| | | field: 'areaName', |
| | | title: 'æå±åºåº', |
| | | }, |
| | | { |
| | | field: 'checkStatusDesc', |
| | | title: 'æ£éªç¶æ', |
| | | }, |
| | | { |
| | | field: 'inStockTime', |
| | | title: 'å
¥åºæ¶é´', |
| | | }, |
| | | { |
| | | field: 'isLockDesc', |
| | | title: 'éå®ç¶æ', |
| | | }, |
| | | { |
| | | field: 'remark', |
| | | title: '夿³¨', |
| | | }, |
| | | ] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | .wmsMaterialStockContent { |
| | | width: 100%; |
| | | height: 80%; |
| | | |
| | | .wmsMaterialStockList { |
| | | width: 100%; |
| | | height: calc(100% - 70px); |
| | | } |
| | | .headerContent { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | height: 43px; |
| | | } |
| | | .header { |
| | | margin-bottom: 12px; |
| | | display: flex; |
| | | justify-content: flex-start; |
| | | align-items: center; |
| | | } |
| | | } |
| | | |
| | | .tagBox { |
| | | width: auto; |
| | | min-width: 80px; |
| | | height: 24px; |
| | | background: #ffffff; |
| | | border-radius: 19px 19px 19px 19px; |
| | | opacity: 1; |
| | | border: 1px dashed #bcc4cc; |
| | | width: 50px; |
| | | height: 20px; |
| | | font-size: 14px; |
| | | font-family: PingFang SC, PingFang SC; |
| | | font-weight: 400; |
| | | color: #5a84ff; |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | // cursor: pointer; |
| | | } |
| | | |
| | | .group { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | } |
| | | |
| | | .groupTable { |
| | | width: 100%; |
| | | } |
| | | |
| | | .overBox { |
| | | width: 100%; |
| | | height: calc(100% - 20px); |
| | | overflow: auto; |
| | | :global(.cs-collapse-item__header) { |
| | | background-color: #f1f1f1; |
| | | padding: 0 20px; |
| | | height: 35px; |
| | | font-size: 16px; |
| | | font-family: PingFang SC, PingFang SC; |
| | | font-weight: 500; |
| | | } |
| | | :global(.cs-collapse-item__content) { |
| | | padding-bottom: 0px; |
| | | } |
| | | } |
| | | .groupHeader { |
| | | width: 100%; |
| | | height: 30px; |
| | | background: #ccc; |
| | | } |
| | | |
| | | .hideBlock { |
| | | display: none; |
| | | } |
| | | .queryForm { |
| | | padding: 10px; |
| | | background: #f5f7fa; |
| | | margin-bottom: 0px; |
| | | border-radius: 4px; |
| | | |
| | | .el-form-item { |
| | | margin-right: 20px; |
| | | margin-bottom: 0; |
| | | |
| | | // ç»ä¸è¾å
¥æ¡åéæ©æ¡ç宽度 |
| | | .el-input, .el-select { |
| | | width: 200px; // 设置ç»ä¸ç宽度 |
| | | } |
| | | |
| | | // éæ©æ¡å
é¨è¾å
¥æ¡æ ·å¼ |
| | | .el-select .el-input__wrapper { |
| | | height: 32px; // ä¸è¾å
¥æ¡é«åº¦ä¸è´ |
| | | padding: 1px 11px; // ä¸è¾å
¥æ¡å
è¾¹è·ä¸è´ |
| | | } |
| | | |
| | | // æ¥æéæ©å¨å®½åº¦ |
| | | .el-date-editor { |
| | | width: 220px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | // 妿éè¦æ´ç²¾ç¡®çæ§å¶ï¼å¯ä»¥åç¬è®¾ç½® |
| | | .formItem { |
| | | width: 200px; |
| | | |
| | | &.el-input, &.el-select { |
| | | width: 100%; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { computed, defineComponent, onMounted, reactive, ref } from 'vue' |
| | | import type { Ref } from 'vue' |
| | | import BaseTable from '@/components/Table/Table' |
| | | import styles from './WmsMaterialStock.module.scss' |
| | | import { useWmsMaterialStock } from '../../../Controllers/WmsMaterialStock' |
| | | import IconButton from '@/components/IconButton/IconButton' |
| | | import WmsMaterialStockDrawer from '../Dialog/WmsMaterialStockDrawer/WmsMaterialStockDrawer' |
| | | import Search from '@/components/Search/Search' |
| | | import { columns } from './Config' |
| | | import TdButton from '@/components/TdButton/TdButton' |
| | | import { vPermission } from '@/libs/Permission/Permission' |
| | | import dayjs from 'dayjs' |
| | | import { |
| | | ElDatePicker, |
| | | ElForm, |
| | | ElFormItem, |
| | | ElInput, |
| | | ElOption, |
| | | ElSelect, |
| | | } from 'element-plus' |
| | | import { getWmsEnumData } from '@/widgets/HIAWms/Models/Service/WmsMaterialDrawer' |
| | | |
| | | interface RenderTableType { |
| | | url?: string |
| | | dataSource: Ref<any[]> |
| | | isDrag?: boolean |
| | | isChecked?: boolean |
| | | isHidePagination?: boolean |
| | | params?: Record<string, any> |
| | | autoHeight?: boolean |
| | | } |
| | | |
| | | export default defineComponent({ |
| | | name: 'WmsMaterialStock', |
| | | directives: { |
| | | permission: vPermission, |
| | | }, |
| | | setup(props, ctx) { |
| | | const { |
| | | dataSource, |
| | | contextMenu, |
| | | dialogConfig, |
| | | tableRef, |
| | | current, |
| | | search, |
| | | sort, |
| | | headers, |
| | | onError, |
| | | onSearch, |
| | | onRowClick, |
| | | onConfirmWmsMaterialStock, |
| | | onCheck, |
| | | onAddWmsMaterialStock, |
| | | onExport, |
| | | openDetail, |
| | | onSuccess, |
| | | onBeforeUpload, |
| | | } = useWmsMaterialStock(props, ctx) |
| | | |
| | | // æ°å¢çæ¥è¯¢æ¡ä»¶ |
| | | const queryForm = ref({ |
| | | containerNo: '', |
| | | materialNo: '', |
| | | materialName: '', |
| | | containerType: '', |
| | | containerStatus: '', |
| | | storageTypeNo: '', |
| | | placeStatus: '', |
| | | placeNo: '', |
| | | isLock: '', |
| | | emptyContainer: '', |
| | | dateRange: [], |
| | | filter: '', |
| | | }) |
| | | |
| | | const queryParams = computed(() => ({ |
| | | ...queryForm.value, |
| | | containerType: queryForm.value.containerType || '', // å¤ç䏿 |
| | | containerStatus: queryForm.value.containerStatus || '', |
| | | storageTypeNo: queryForm.value.storageTypeNo || '', // å¤ç䏿 |
| | | placeStatus: queryForm.value.placeStatus || '', |
| | | islock: queryForm.value.isLock || '', |
| | | emptyContainer: queryForm.value.emptyContainer || '', |
| | | startTime: queryForm.value.dateRange[0] || '', |
| | | endTime: queryForm.value.dateRange[1] || '', |
| | | })) |
| | | |
| | | // 卿æä¸¾é项 |
| | | const enumOptions = reactive({ |
| | | containerType: [] as Array<{ label: string; value: any }>, |
| | | containerStatus: [] as Array<{ label: string; value: any }>, |
| | | storageTypeNo: [] as Array<{ label: string; value: any }>, |
| | | placeStatus: [] as Array<{ label: string; value: any }>, |
| | | yesOrNo: [] as Array<{ label: string; value: any }>, |
| | | }) |
| | | |
| | | // è·åæä¸¾æ°æ® |
| | | const fetchEnumData = async () => { |
| | | try { |
| | | // è·åç©æç±»åæä¸¾ |
| | | const containerTypeData = await getWmsEnumData({ |
| | | EnumName: 'ContainerTypeEnum', |
| | | }) |
| | | enumOptions.containerType = containerTypeData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | // è·åç©æç±»åæä¸¾ |
| | | const storageTypeNoData = await getWmsEnumData({ |
| | | EnumName: 'PlaceTypeEnum', |
| | | }) |
| | | enumOptions.storageTypeNo = storageTypeNoData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | |
| | | // è·åéè´ç±»åæä¸¾ |
| | | const placeStatusData = await getWmsEnumData({ |
| | | EnumName: 'PlaceStatusEnum', |
| | | }) |
| | | enumOptions.placeStatus = placeStatusData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | |
| | | // è·åéè´ç±»åæä¸¾ |
| | | const containerStatusData = await getWmsEnumData({ |
| | | EnumName: 'ContainerStatusEnum', |
| | | }) |
| | | enumOptions.containerStatus = containerStatusData.map((item) => ({ |
| | | label: item.description, |
| | | value: item.value, |
| | | })) |
| | | } catch (error) { |
| | | console.error('è·åæä¸¾æ°æ®å¤±è´¥:', error) |
| | | } |
| | | } |
| | | |
| | | // ç»ä»¶æè½½æ¶è·åæä¸¾æ°æ® |
| | | onMounted(() => { |
| | | fetchEnumData() |
| | | }) |
| | | |
| | | // æ°å¢çæ¥è¯¢æ¹æ³ |
| | | const handleQuery = async () => { |
| | | console.log('æ¥è¯¢æ¡ä»¶:', queryParams.value) |
| | | // tableRef.value.getTableList() |
| | | tableRef.value.getList(queryParams.value) |
| | | } |
| | | |
| | | // éç½®æ¥è¯¢æ¡ä»¶ |
| | | const resetQuery = () => { |
| | | queryForm.value = { |
| | | containerNo: '', |
| | | materialNo: '', |
| | | materialName: '', |
| | | containerType: '', |
| | | containerStatus: '', |
| | | storageTypeNo: '', |
| | | placeStatus: '', |
| | | placeNo: '', |
| | | isLock: '', |
| | | emptyContainer: '', |
| | | dateRange: [], |
| | | filter: '', |
| | | } |
| | | } |
| | | /** |
| | | * @returns è¡¨æ ¼ |
| | | */ |
| | | const RenderBaseTable = (props: RenderTableType) => { |
| | | const { |
| | | url, |
| | | dataSource, |
| | | isDrag, |
| | | isChecked, |
| | | isHidePagination, |
| | | params, |
| | | autoHeight, |
| | | } = props |
| | | |
| | | return ( |
| | | <div |
| | | class={{ |
| | | [styles.wmsMaterialStockList]: true, |
| | | }} |
| | | > |
| | | <BaseTable |
| | | ref={tableRef} |
| | | url={url} |
| | | sortUrlTpl="/api/v1/HIAWms/wmsMaterialStock/{id}/adjustsort/{sort}" |
| | | v-model:dataSource={dataSource.value} |
| | | columns={columns} |
| | | contextMenu={contextMenu} |
| | | params={params} |
| | | isDrag={isDrag} |
| | | isChecked={isChecked} |
| | | autoHeight={autoHeight} |
| | | onCheck={onCheck} |
| | | onRowClick={onRowClick} |
| | | isHidePagination={isHidePagination} |
| | | pageSize={20} |
| | | v-slots={{ |
| | | inStockTime: ({ row }: any) => { |
| | | return ( |
| | | <div> |
| | | {row.inStockTime != null |
| | | ? dayjs(row.inStockTime).format('YYYY-MM-DD HH:mm:ss') |
| | | : '-'} |
| | | </div> |
| | | ) |
| | | }, |
| | | name: ({ row }: any) => { |
| | | return row?.name ? ( |
| | | <TdButton |
| | | onClick={() => openDetail(row)} |
| | | text={<span style="color:#5a84ff">详æ
</span>} |
| | | icon="scale" |
| | | tip={row?.name} |
| | | hover |
| | | > |
| | | {row?.name} |
| | | </TdButton> |
| | | ) : ( |
| | | '-' |
| | | ) |
| | | }, |
| | | }} |
| | | ></BaseTable> |
| | | </div> |
| | | ) |
| | | } |
| | | return () => { |
| | | return ( |
| | | <div class={styles.wmsMaterialStockContent}> |
| | | {/* æ·»å /ç¼è¾ */} |
| | | <WmsMaterialStockDrawer |
| | | v-model={dialogConfig.visible} |
| | | title={dialogConfig.title} |
| | | row={current.value} |
| | | sort={sort.value} |
| | | onConfirm={onConfirmWmsMaterialStock} |
| | | /> |
| | | {/* æ°å¢çæ¥è¯¢è¡¨å */} |
| | | <ElForm |
| | | inline |
| | | model={queryForm.value} |
| | | class={styles.queryForm} |
| | | label-width="80px" |
| | | > |
| | | <ElFormItem label="å
³é®å"> |
| | | <ElInput |
| | | v-model={queryForm.value.filter} |
| | | placeholder="请è¾å
¥å
³é®åæç´¢" |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="ç©æç¼ç "> |
| | | <ElInput |
| | | v-model={queryForm.value.materialNo} |
| | | placeholder="请è¾å
¥ç©æç¼ç " |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="ç©æåç§°"> |
| | | <ElInput |
| | | v-model={queryForm.value.materialName} |
| | | placeholder="请è¾å
¥ç©æåç§°" |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="æçç¼ç "> |
| | | <ElInput |
| | | v-model={queryForm.value.containerNo} |
| | | placeholder="请è¾å
¥æçç¼ç " |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="æçç±»å"> |
| | | <ElSelect |
| | | v-model={queryForm.value.containerType} |
| | | placeholder="è¯·éæ©æçç±»å" |
| | | clearable |
| | | loading={enumOptions.containerType.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.containerType.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="æçç¶æ"> |
| | | <ElSelect |
| | | v-model={queryForm.value.containerStatus} |
| | | placeholder="è¯·éæ©æçç¶æ" |
| | | clearable |
| | | loading={enumOptions.containerStatus.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.containerStatus.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="åºä½ç¼å·"> |
| | | <ElInput |
| | | v-model={queryForm.value.placeNo} |
| | | placeholder="请è¾å
¥åºä½ç¼å·" |
| | | clearable |
| | | class={styles.formItem} |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem label="åºä½ç±»å"> |
| | | <ElSelect |
| | | v-model={queryForm.value.storageTypeNo} |
| | | placeholder="è¯·éæ©æçç±»å" |
| | | clearable |
| | | loading={enumOptions.storageTypeNo.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.storageTypeNo.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="åºä½ç¶æ"> |
| | | <ElSelect |
| | | v-model={queryForm.value.placeStatus} |
| | | placeholder="è¯·éæ©æçç¶æ" |
| | | clearable |
| | | loading={enumOptions.placeStatus.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.placeStatus.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="æ¯å¦éå®"> |
| | | <ElSelect |
| | | v-model={queryForm.value.isLock} |
| | | placeholder="è¯·éæ©æ¯å¦éå®" |
| | | clearable |
| | | loading={enumOptions.yesOrNo.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.yesOrNo.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="æ¯å¦ç©ºæ"> |
| | | <ElSelect |
| | | v-model={queryForm.value.emptyContainer} |
| | | placeholder="è¯·éæ©æ¯å¦ç©ºæ" |
| | | clearable |
| | | loading={enumOptions.yesOrNo.length === 0} |
| | | class={styles.formItem} |
| | | > |
| | | {enumOptions.yesOrNo.map((option) => ( |
| | | <ElOption |
| | | key={option.value} |
| | | label={option.label} |
| | | value={option.value} |
| | | /> |
| | | ))} |
| | | </ElSelect> |
| | | </ElFormItem> |
| | | <ElFormItem label="æ¥æèå´"> |
| | | <ElDatePicker |
| | | v-model={queryForm.value.dateRange} |
| | | type="datetimerange" |
| | | range-separator="è³" |
| | | show-now="true" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | format="YYYY-MM-DD HH:mm:ss" |
| | | valueFormat="YYYY-MM-DD HH:mm:ss" |
| | | /> |
| | | </ElFormItem> |
| | | <ElFormItem> |
| | | <IconButton type="primary" icon="search" onClick={handleQuery}> |
| | | æ¥è¯¢ |
| | | </IconButton> |
| | | <IconButton |
| | | style="margin-left: 10px;" |
| | | icon="refresh" |
| | | onClick={resetQuery} |
| | | > |
| | | éç½® |
| | | </IconButton> |
| | | </ElFormItem> |
| | | </ElForm> |
| | | <div class={styles.headerContent}> |
| | | <div class={styles.header}> |
| | | <IconButton |
| | | v-permission="wmsMaterialStock-add" |
| | | icon="add-p" |
| | | onClick={onAddWmsMaterialStock} |
| | | type="primary" |
| | | > |
| | | æ·»å |
| | | </IconButton> |
| | | <el-divider direction="vertical" /> |
| | | <el-upload |
| | | v-permission="wmsMaterialStock-import" |
| | | name="file" |
| | | accept=".xlsx,.xls,.csv" |
| | | show-file-list={false} |
| | | onError={onError} |
| | | onSuccess={onSuccess} |
| | | before-upload={onBeforeUpload} |
| | | headers={headers.value} |
| | | action="/api/v1/HIAWms/wmsMaterialStock/import" |
| | | > |
| | | <IconButton icon="in">导å
¥</IconButton> |
| | | </el-upload> |
| | | |
| | | <IconButton |
| | | v-permission="wmsMaterialStock-output" |
| | | icon="out" |
| | | onClick={onExport} |
| | | > |
| | | å¯¼åº |
| | | </IconButton> |
| | | </div> |
| | | {/* <Search |
| | | placeholder="请è¾å
¥å
³é®å" |
| | | v-model={search.value} |
| | | onConfirm={onSearch} |
| | | style={{ marginTop: '-1px' }} |
| | | /> */} |
| | | </div> |
| | | <RenderBaseTable |
| | | url="/api/v1/HIAWms/wmsMaterialStock" |
| | | dataSource={dataSource} |
| | | isChecked={true} |
| | | isDrag={true} |
| | | /> |
| | | </div> |
| | | ) |
| | | } |
| | | }, |
| | | }) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | .WmsMaterialStock { |
| | | background-color: #fff; |
| | | border-radius: 5px 5px 0 0; |
| | | width: 100%; |
| | | height: 100%; |
| | | border: 1px solid #dbdbdb; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { |
| | | Component, |
| | | DefineComponent, |
| | | defineComponent, |
| | | markRaw, |
| | | ref, |
| | | SetupContext, |
| | | onMounted, |
| | | } from 'vue' |
| | | import styles from './WmsMaterialStock.module.scss' |
| | | // import WmsMaterialStock from './Pages/WmsMaterialStock/WmsMaterialStock' |
| | | import Tab from '@/components/Tab/Tab' |
| | | import { useProvideModels } from '@/libs/Provider/app' |
| | | import { usePermission } from '@/libs/Permission/Permission' |
| | | import { permissionCodes } from '../enum' |
| | | import { ModuleType, TabItem } from '../type/Type' |
| | | import { getEntityNames } from '@/hooks/hook' |
| | | import TabPane from '@/components/Tab/TabPane' |
| | | |
| | | const Models: ModuleType = import.meta.glob('./config/*.json', { |
| | | eager: true, |
| | | }) |
| | | |
| | | const entityNames = getEntityNames(Models) |
| | | const nameToLabelMap = [{ name: 'WmsMaterialStock', label: 'åºå' }] |
| | | |
| | | export default defineComponent({ |
| | | name: 'WmsMaterialStock', |
| | | |
| | | setup(props, ctx: SetupContext) { |
| | | useProvideModels() |
| | | usePermission(props, permissionCodes) |
| | | |
| | | const rf = ref<{ |
| | | [key: string]: any |
| | | }>({}) |
| | | |
| | | const tabData = ref<TabItem[]>([]) |
| | | |
| | | const onTabChange = (v: string) => { |
| | | rf.value?.[v]?.reloadList() |
| | | } |
| | | |
| | | const initTableData = async () => { |
| | | for (const i in entityNames) { |
| | | const name = entityNames[i] |
| | | const module = await import(`./Pages/${name}/${name}.tsx`) |
| | | const WmsPlaces = markRaw(module.default) |
| | | const foundLabel = |
| | | nameToLabelMap.find((item) => item.name === name)?.label || name |
| | | tabData.value.push({ |
| | | label: foundLabel, |
| | | name, |
| | | component: WmsPlaces, |
| | | }) |
| | | } |
| | | } |
| | | |
| | | initTableData() |
| | | |
| | | return () => { |
| | | return ( |
| | | <div class={styles.WmsMaterialStock}> |
| | | <Tab data={tabData.value} type="list" onTab={onTabChange}> |
| | | {tabData.value.map((widgetInfo) => { |
| | | const Widget: any = widgetInfo.component |
| | | return ( |
| | | <TabPane label={widgetInfo.label} name={widgetInfo.name}> |
| | | <Widget |
| | | ref={(r: any) => (rf.value['WmsMaterialStock'] = r)} |
| | | ></Widget> |
| | | </TabPane> |
| | | ) |
| | | })} |
| | | </Tab> |
| | | </div> |
| | | ) |
| | | } |
| | | }, |
| | | }) |
¶Ô±ÈÐÂÎļþ |
| | |
| | | { |
| | | "name": "WmsMaterialStock" |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | export interface TabType { |
| | | label: string |
| | | name: string |
| | | columns?: any[] |
| | | data?: any[] |
| | | isFooter: boolean |
| | | [key: string]: any |
| | | } |
| | | |
| | | export const permissionCodes = { |
| | | 'wmsMaterialStock-list': 'å表-å表', |
| | | 'wmsMaterialStock-add': 'å表-æ·»å ', |
| | | 'wmsMaterialStock-import': 'å表-导å
¥', |
| | | 'wmsMaterialStock-output': 'å表-è¾åº', |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import WmsMaterialStock from './Views/WmsMaterialStock' |
| | | import Setting from '@/components/Setting/Setting' |
| | | import { provider } from '@/provider/index' |
| | | import p from '../../assets/svg/p.svg' |
| | | |
| | | export default { |
| | | is: 'WmsMaterialStock', |
| | | name: 'åºåä¿¡æ¯', |
| | | category: 'run', |
| | | icon: p, |
| | | authorizationRequired: false, |
| | | canvasView: provider(WmsMaterialStock), |
| | | settingsView: Setting, |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | import { Component } from 'vue' |
| | | |
| | | export interface DataItemType { |
| | | id?: string |
| | | name?: string |
| | | code?: string |
| | | description?: string |
| | | label?: string |
| | | value?: string | number |
| | | } |
| | | |
| | | export interface WmsMaterialStockBaseType { |
| | | id?: string |
| | | name?: string |
| | | code?: string |
| | | value?: number |
| | | description?: string |
| | | options?: Array<DataItemType> |
| | | abilityValue?: number | string |
| | | data?: DataItemType |
| | | defaultValue?: string | number |
| | | flow: string |
| | | } |
| | | |
| | | export interface FlowDefinitionType { |
| | | id?: string |
| | | name?: string |
| | | code?: string |
| | | description?: string |
| | | } |
| | | |
| | | export type ModuleType = Record< |
| | | string, |
| | | { |
| | | default: Record<string, string> |
| | | name: string |
| | | } |
| | | > |
| | | |
| | | export interface TabItem { |
| | | name: string |
| | | label: string |
| | | component: Component |
| | | hidden?: boolean |
| | | } |
| | |
| | | areaDesc: formData.value.areaDesc, // æè¿° |
| | | areaStatus: formData.value.areaStatus, // åºåºç¶æ |
| | | areaType: formData.value.areaType, // åºåºç±»å |
| | | storeCode: formData.value.storeCode, // ä»åºä»£ç |
| | | // storeName: formData.value.storeName, // ä»åºåç§° |
| | | storeCode: formData.value.storeCode.areaCode, // ä»åºä»£ç |
| | | storeName: formData.value.storeCode.storeName, // ä»åºåç§° |
| | | remark: formData.value.remark, // 夿³¨ |
| | | } |
| | | if (!current.value) { |