Browse Source

更新版本

dev_DY_CC
赵新宇 1 year ago
parent
commit
5175b4aae4
  1. 5
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/DTOs/EquipmentDTO.cs
  2. 5
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentEditInput.cs
  3. 9
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentImportInput.cs
  4. 224
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentAppService.cs
  5. 5
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentPartCodeAppService.cs
  6. 2
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCap.cs
  7. 19
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCapManager.cs
  8. 4
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapManager.cs
  9. 11
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapRepository.cs
  10. 1
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs
  11. 24
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentDbContextModelCreatingExtensions.cs
  12. 36
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentEfCoreRepository.cs
  13. 66
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
  14. 308
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentRecordManager.cs
  15. 10
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapRepository.cs
  16. 32
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapDbContextModelCreatingExtensions.cs
  17. 23
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
  18. 2
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContextModelCreatingExtensions.cs

5
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/DTOs/EquipmentDTO.cs

@ -6,6 +6,7 @@ namespace Win_in.Sfs.Basedata.Application.Contracts;
using System; using System;
using System.Collections.Generic; using System.Collections.Generic;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata;
[Display(Name = "器具基本信息")] [Display(Name = "器具基本信息")]
@ -15,7 +16,7 @@ public class EquipmentDTO : SfsBaseDataDTOBase, IHasCode
/// 类型 /// 类型
/// </summary> /// </summary>
[Display(Name = "类型")] [Display(Name = "类型")]
public string Type { get; set; } = string.Empty; public EnumEquipmentType Type { get; set; }
/// <summary> /// <summary>
/// 器具编号 /// 器具编号
/// </summary> /// </summary>
@ -35,7 +36,7 @@ public class EquipmentDTO : SfsBaseDataDTOBase, IHasCode
/// 型号 /// 型号
/// </summary> /// </summary>
[Display(Name = "型号")] [Display(Name = "型号")]
public string Model { get; set; } = string.Empty; public EnumEquipmentModel Model { get; set; }
/// <summary> /// <summary>
/// 库位编号 /// 库位编号
/// </summary> /// </summary>

5
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentEditInput.cs

@ -2,6 +2,7 @@ using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata;
namespace Win_in.Sfs.Basedata.Application.Contracts; namespace Win_in.Sfs.Basedata.Application.Contracts;
@ -11,7 +12,7 @@ public class EquipmentEditInput : SfsBaseDataCreateOrUpdateInputBase
/// 类型 /// 类型
/// </summary> /// </summary>
[Display(Name = "类型")] [Display(Name = "类型")]
public string Type { get; set; } = string.Empty; public EnumEquipmentType Type { get; set; }
/// <summary> /// <summary>
/// 器具编号 /// 器具编号
/// </summary> /// </summary>
@ -31,7 +32,7 @@ public class EquipmentEditInput : SfsBaseDataCreateOrUpdateInputBase
/// 型号 /// 型号
/// </summary> /// </summary>
[Display(Name = "型号")] [Display(Name = "型号")]
public string Model { get; set; } = string.Empty; public EnumEquipmentModel Model { get; set; }
/// <summary> /// <summary>
/// 库位编号 /// 库位编号
/// </summary> /// </summary>

9
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentImportInput.cs

@ -1,8 +1,7 @@
using System; using System;
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using Win_in.Sfs.Shared.Application.Contracts;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata;
using Win_in.Sfs.Shared.Domain.Shared;
namespace Win_in.Sfs.Basedata.Application.Contracts; namespace Win_in.Sfs.Basedata.Application.Contracts;
@ -13,7 +12,7 @@ public class EquipmentImportInput : SfsBaseDataImportInputBase
/// 类型 /// 类型
/// </summary> /// </summary>
[Display(Name = "类型")] [Display(Name = "类型")]
public string Type { get; set; } = string.Empty; public Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata.EnumEquipmentType Type { get; set; }
/// <summary> /// <summary>
/// 器具编号 /// 器具编号
/// </summary> /// </summary>
@ -33,7 +32,7 @@ public class EquipmentImportInput : SfsBaseDataImportInputBase
/// 型号 /// 型号
/// </summary> /// </summary>
[Display(Name = "型号")] [Display(Name = "型号")]
public string Model { get; set; } = string.Empty; public EnumEquipmentModel Model { get; set; }
/// <summary> /// <summary>
/// 库位编号 /// 库位编号
/// </summary> /// </summary>

224
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentAppService.cs

@ -30,22 +30,18 @@ public class EquipmentAppService
: SfsBaseDataWithCodeAppServiceBase<Equipment, EquipmentDTO, SfsBaseDataRequestInputBase, EquipmentEditInput, EquipmentImportInput> : SfsBaseDataWithCodeAppServiceBase<Equipment, EquipmentDTO, SfsBaseDataRequestInputBase, EquipmentEditInput, EquipmentImportInput>
, IEquipmentAppService , IEquipmentAppService
{ {
//private readonly ItemValidator _itemValidator;
private readonly IEquipmentManager _manager; private readonly IEquipmentManager _manager;
private new readonly IEquipmentRepository _repository; private new readonly IEquipmentRepository _repository;
private readonly IExportImportService _importService; private readonly IExportImportService _importService;
public EquipmentAppService( public EquipmentAppService(
IEquipmentRepository repository, IEquipmentRepository repository,
IDistributedCache<EquipmentDTO> cache, IDistributedCache<EquipmentDTO> cache,
IExportImportService importService, IExportImportService importService,
// ItemValidator itemValidator,
IEquipmentManager manager) IEquipmentManager manager)
: base(repository, cache) : base(repository, cache)
{ {
_importService=importService; _importService=importService;
_repository = repository; _repository = repository;
//_itemValidator = itemValidator;
_manager = manager; _manager = manager;
base.CreatePolicyName = EquipmentPermissions.Create; base.CreatePolicyName = EquipmentPermissions.Create;
base.UpdatePolicyName = EquipmentPermissions.Update; base.UpdatePolicyName = EquipmentPermissions.Update;
@ -54,232 +50,15 @@ public class EquipmentAppService
[HttpPost("check")] [HttpPost("check")]
//[Authorize(ErpLocationPermissions.Default)] //[Authorize(ErpLocationPermissions.Default)]
public virtual async Task CheckAsync(string code, EquipmentCheckInput input) public virtual async Task CheckAsync(string code, EquipmentCheckInput input)
{ {
await Task.CompletedTask.ConfigureAwait(false); await Task.CompletedTask.ConfigureAwait(false);
} }
//public override async Task<IActionResult> ImportAsync([FromForm] SfsImportRequestInput requestInput, [Required] IFormFile file)
//{
// List<EquipmentErrorDTO> errors = new List<EquipmentErrorDTO>();
// using var ms = new MemoryStream();
// await file.OpenReadStream().CopyToAsync(ms).ConfigureAwait(false);
// var inputFileBytes = ms.GetAllBytes();
// var dtos=_importService.Import<EquipmentEditInput>(inputFileBytes).ToList();
// var list=ObjectMapper.Map<List<EquipmentEditInput>, List<Equipment>>(dtos);
// foreach (var itm in list)
// {
// itm.SetId(GuidGenerator.Create());
// itm.Code = string.Format("{0}{1}", "Q", itm.Code);
// }
// ////var bytes = result.FileContents;
// ////result.FileContents = null;
// ////HttpContextAccessor.HttpContext.Response.Headers.AccessControlExposeHeaders = "X-Response";
// ////HttpContextAccessor.HttpContext.Response.Headers.Add("X-Response",
// //// JsonSerializer.Serialize(new { result.ExceptionMessage, result.FileName, result.FileCode, result }));
// ////Console.WriteLine(@"导入错误信息:" + result.ExceptionMessage);
// ////var resultAction = new TestResult(bytes, ExportImportService.ContentType) { FileDownloadName = result.FileName };
// ////resultAction.errorNum = result.ErrorNum;
// ////resultAction.successNum = resultAction.successNum;
// //return resultAction;
// // return base.ImportAsync(requestInput, file);
//}
//protected ICategoryAppService _categoryApp => LazyServiceProvider.LazyGetRequiredService<ICategoryAppService>();
//protected IItemCategoryAppService _itemCategoryApp => LazyServiceProvider.LazyGetRequiredService<IItemCategoryAppService>();
//[HttpPost("check")]
//public virtual async Task CheckAsync(string code, EquipmentCheckInput input)
//{
// var result = new AbpValidationResult();
// _itemValidator.CheckFormat(code);
// var dto = await GetByCodeAsync(code).ConfigureAwait(false);
// var entity = ObjectMapper.Map<EquipmentDTO, Equipment>(dto);
// //_itemValidator.CheckCanBuy(entity, input.CanBuy, result);
// //_itemValidator.CheckCanMake(entity, input.CanMake, result);
// //_itemValidator.CheckStatus(entity, input.Statuses, result);
// //_itemValidator.CheckProject(entity, input.Projects, result);
// //await _itemValidator.CheckCategoryAsync(entity, input.Categories, result).ConfigureAwait(false);
// if (result.Errors.Count > 0)
// {
// throw new AbpValidationException(result.Errors);
// }
//}
///// <summary>
///// 检物品状态 是否可用
///// </summary>
///// <param name="itemCode"></param>
///// <returns></returns>
///// <exception cref="NotImplementedException"></exception>
//[HttpGet("check-item-is-available")]
//public virtual async Task<bool> CheckItemIsAvailable(string itemCode)
//{
// var entity = await _repository.FindAsync(c => c.Code == itemCode).ConfigureAwait(false);
// if (entity == null)
// {
// throw new UserFriendlyException($"未找到代码为 {itemCode} 的物品");
// }
// return entity.Status == EnumItemStatus.Active;
//}
/// <summary>
/// 检物品状态 是否可用(不查询数据库 直接根据对象判断)
/// </summary>
/// <param name="EquipmentDTO"></param>
/// <returns></returns>
//[HttpGet("check-item-is-available-no-select-sql")]
//public void CheckItemIsAvailable(EquipmentDTO EquipmentDTO)
//{
// if (EquipmentDTO != null && EquipmentDTO.Status != EnumItemStatus.Active)
// {
// throw new UserFriendlyException($"物料 {EquipmentDTO.Code} 状态为 {EquipmentDTO.Status} ,不是可用状态");
// }
//}
//[HttpGet("{id}")]
//public override async Task<EquipmentDTO> GetAsync(Guid id)
//{
// var dto = await base.GetAsync(id).ConfigureAwait(false);
// dto.ItemCategoryDictionary = await GetItemCategory(dto.Code).ConfigureAwait(false);
// return dto;
//}
/// <summary>
///
/// </summary>
/// <param name="name"></param>
/// <returns></returns>
/// <exception cref="NotImplementedException"></exception>
//[HttpGet("list-by-name")]
//public virtual async Task<List<EquipmentDTO>> GetListByNameAsync(string name)
//{
// var entities = await _repository.GetListAsync(c => c.Name == name).ConfigureAwait(false);
// var dtos = ObjectMapper.Map<List<Equipment>, List<EquipmentDTO>>(entities);
// return dtos;
//}
//[HttpGet("get-manage-type")]
//public virtual async Task<EnumItemManageType> GetManageTypeAsync(string itemCode)
//{
// var entity = await GetByCodeAsync(itemCode).ConfigureAwait(false);
// Check.NotNull(entity, "物品代码", $"物品 {itemCode} 不存在");
// return entity.ManageType;
//}
//[HttpGet("get-manage-types")]
//public virtual async Task<Dictionary<string, EnumItemManageType>> GetManageTypesAsync(List<string> itemCodes)
//{
// var dtos = await GetByCodesAsync(itemCodes).ConfigureAwait(false);
// var itemManageTypes = dtos.ToDictionary(dto => dto.Code, dto => dto.ManageType);
// return itemManageTypes;
//}
//[HttpPost("get-or-add")]
//public virtual async Task<EquipmentDTO> GetOrAddAsync(EquipmentEditInput input)
//{
// var result = await _repository.FirstOrDefaultAsync(p => p.Code == input.Code).ConfigureAwait(false);
// if (result == null)
// {
// var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input);
// result = await _repository.InsertAsync(entity, true).ConfigureAwait(false);
// }
// var dto = ObjectMapper.Map<Equipment, EquipmentDTO>(result);
// return dto;
//}
//[HttpPost("list")]
//public override async Task<PagedResultDto<EquipmentDTO>> GetPagedListByFilterAsync(
// SfsBaseDataRequestInputBase sfsRequestInput,
// bool includeDetails = false,
// CancellationToken cancellationToken = default)
//{
// Expression<Func<Equipment, bool>> expression = sfsRequestInput.Condition.Filters?.Count > 0
// ? sfsRequestInput.Condition.Filters.ToLambda<Equipment>()
// : p => true;
// var pageResult = await GetPagedListAsync(
// expression,
// sfsRequestInput.SkipCount,
// sfsRequestInput.MaxResultCount,
// sfsRequestInput.Sorting,
// includeDetails,
// cancellationToken).ConfigureAwait(false);
// foreach (var item in pageResult.Items)
// {
// item.ItemCategoryDictionary = await GetItemCategory(item.Code).ConfigureAwait(false);
// }
// return pageResult;
//}
//[HttpPost("upsert")]
//public virtual async Task UpsertAsync(EquipmentEditInput input)
//{
// var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input);
// await _repository.UpsertAsync(entity).ConfigureAwait(false);
//}
//[HttpPost("upsert-interface")]
//public virtual async Task UpsertAsyncByInterface(EquipmentEditInput input)
//{
// var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input);
// await _repository.UpsertAsyncByInterface(entity).ConfigureAwait(false);
//}
//protected override Expression<Func<Equipment, bool>> BuildSearchExpression(string keyWord)
//{
// Expression<Func<Equipment, bool>> expression = p =>
// p.Code.Contains(keyWord)
// || p.Name.Contains(keyWord)
// || p.Desc1.Contains(keyWord)
// || p.Desc2.Contains(keyWord)
// || p.AbcClass.Contains(keyWord)
// || p.BasicUom.Contains(keyWord)
// || p.Elevel.Contains(keyWord)
// || p.Project.Contains(keyWord)
// || p.Version.Contains(keyWord);
// return expression;
//}
//private async Task<Dictionary<string, string>> GetItemCategory(string itemCode)
//{
// // var itemCategorys = await this._itemCategoryApp.GetListByItemCode(itemCode).ConfigureAwait(false);
// // return itemCategorys.ToDictionary(x => x.CategoryCode, y => y.Value);
//}
[HttpPost("upsert")] [HttpPost("upsert")]
public virtual async Task UpsertAsync(EquipmentEditInput input) public virtual async Task UpsertAsync(EquipmentEditInput input)
{ {
var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input); var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input);
await _repository.UpsertAsync(entity).ConfigureAwait(false); await _repository.UpsertAsync(entity).ConfigureAwait(false);
} }
@ -292,8 +71,6 @@ public class EquipmentAppService
{ {
var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input); var entity = ObjectMapper.Map<EquipmentEditInput, Equipment>(input);
entity.Code = string.Format("{0}{1}", "Q", entity.Code); entity.Code = string.Format("{0}{1}", "Q", entity.Code);
await _repository.UpsertAsync(entity).ConfigureAwait(false); await _repository.UpsertAsync(entity).ConfigureAwait(false);
var entity1=_repository.WithDetails().FirstOrDefault(p => p.Code == input.Code); var entity1=_repository.WithDetails().FirstOrDefault(p => p.Code == input.Code);
return ObjectMapper.Map<Equipment,EquipmentDTO>(entity1); return ObjectMapper.Map<Equipment,EquipmentDTO>(entity1);
@ -304,5 +81,4 @@ public class EquipmentAppService
} }
} }
} }

5
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentPartCodeAppService.cs

@ -30,8 +30,7 @@ namespace Win_in.Sfs.Basedata.Application;
public class EquipmentPartCodeAppService public class EquipmentPartCodeAppService
: SfsBaseDataWithCodeAppServiceBase<EquipmentPartCode, EquipmentPartCodeDTO, SfsBaseDataRequestInputBase, EquipmentPartCodeEditInput, EquipmentPartCodeImportInput> : SfsBaseDataWithCodeAppServiceBase<EquipmentPartCode, EquipmentPartCodeDTO, SfsBaseDataRequestInputBase, EquipmentPartCodeEditInput, EquipmentPartCodeImportInput>
, IEquipmentPartCodeAppService , IEquipmentPartCodeAppService
{ {
private readonly IEquipmentPartCodeManager _manager; private readonly IEquipmentPartCodeManager _manager;
private new readonly IEquipmentPartCodeRepository _repository; private new readonly IEquipmentPartCodeRepository _repository;
private readonly IExportImportService _importService; private readonly IExportImportService _importService;
@ -101,7 +100,7 @@ public class EquipmentPartCodeAppService
{ {
await base.CheckItemBasicItemCodeAsync(importInput.Code, validationRresult).ConfigureAwait(false); await base.CheckItemBasicItemCodeAsync(importInput.Code, validationRresult).ConfigureAwait(false);
// await base.CheckComponentAndComponentQtyAsync(importInput.Component, importInput.ComponentQty, validationRresult).ConfigureAwait(false); //await base.CheckComponentAndComponentQtyAsync(importInput.Component, importInput.ComponentQty, validationRresult).ConfigureAwait(false);
} }

2
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCap.cs → be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCap.cs

@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Wms.Store.Equipments; namespace Win_in.Sfs.Basedata.Domain;
public class EquipmentLocCap:SfsAggregateRootBase public class EquipmentLocCap:SfsAggregateRootBase

19
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCapManager.cs → be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCapManager.cs

@ -4,18 +4,18 @@ using System.Linq;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp; using Volo.Abp;
using Volo.Abp.Domain.Services; using Volo.Abp.Domain.Services;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Shared.Domain.Shared; using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.Store.Equipments;
namespace Win_in.Sfs.Wms.Store.Domain;
namespace Win_in.Sfs.Basedata.Domain;
public class EquipmentLocCapManager : DomainService, IEquipmentLocCapManager public class EquipmentLocCapManager : DomainService, IEquipmentLocCapManager
{ {
private readonly IEquipmentRecordRepository _repository; private readonly IEquipmentLocCapRepository _repository;
public EquipmentLocCapManager(IEquipmentRecordRepository repository public EquipmentLocCapManager(IEquipmentLocCapRepository repository
) )
{ {
@ -24,17 +24,14 @@ public class EquipmentLocCapManager : DomainService, IEquipmentLocCapManager
} }
public Task ImportDataAsync(List<EquipmentRecord> entities, List<EquipmentRecord> deleteEntities = null)
{
throw new NotImplementedException();
}
public Task ImportDataAsync(List<EquipmentLocCap> entities, List<EquipmentLocCap> deleteEntities = null) public Task ImportDataAsync(List<EquipmentLocCap> entities, List<EquipmentLocCap> deleteEntities = null)
{ {
throw new NotImplementedException(); throw new NotImplementedException();
} }
private async Task SetDetailAsync(List<PurchaseOrderDetail> details)
private async Task SetDetailAsync(List<EquipmentLocCap> details)
{ {
} }

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapManager.cs → be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapManager.cs

@ -1,9 +1,9 @@
using System; using System;
using System.Threading.Tasks; using System.Threading.Tasks;
using Win_in.Sfs.Shared.Domain; using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Wms.Store.Equipments;
namespace Win_in.Sfs.Wms.Store.Domain;
namespace Win_in.Sfs.Basedata.Domain;
public interface IEquipmentLocCapManager : IBulkImportService<EquipmentLocCap> public interface IEquipmentLocCapManager : IBulkImportService<EquipmentLocCap>
{ {

11
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapRepository.cs

@ -0,0 +1,11 @@
using System.Threading.Tasks;
using Volo.Abp.Domain.Services;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.Domain;
public interface IEquipmentLocCapRepository : IDomainService, ISfsBulkRepositoryBase<EquipmentLocCap>
{
Task UpsertAsync(EquipmentLocCap newData);
}

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

@ -74,6 +74,7 @@ public class BasedataEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient<IKittingRepository, KittingEfCoreRepository>(); context.Services.AddTransient<IKittingRepository, KittingEfCoreRepository>();
context.Services.AddTransient<IEquipmentPartCodeRepository, EquipmentPartCodeEfCoreRepository>(); context.Services.AddTransient<IEquipmentPartCodeRepository, EquipmentPartCodeEfCoreRepository>();
context.Services.AddTransient<IEquipmentLocRepository, EquipmentLocEfCoreRepository>(); context.Services.AddTransient<IEquipmentLocRepository, EquipmentLocEfCoreRepository>();
context.Services.AddTransient<IEquipmentLocCapRepository, EquipmentLocCapEfCoreRepository>();
ConfigureEntity(); ConfigureEntity();
} }

24
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentDbContextModelCreatingExtensions.cs

@ -32,6 +32,30 @@ public static class EquipmentDbContextModelCreatingExtensions
//Indexes //Indexes
b.HasIndex(q => new { q.Code }).IsUnique(); b.HasIndex(q => new { q.Code }).IsUnique();
}); });
builder.Entity<EquipmentLocCap>(b =>
{
//Configure table & schema name
b.ToTable(options.TablePrefix + nameof(EquipmentLocCap), options.Schema);
//Configure ABP properties
b.ConfigureByConvention();
//Configure Sfs base properties
b.ConfigureSfsBase();
//Properties
b.Property(q => q.EqptCode).IsRequired().HasMaxLength(SfsPropertyConst.CodeLength).IsRequired(true);
b.Property(q => q.PartCode).HasMaxLength(SfsPropertyConst.CodeLength);
//Relations
//None
//Indexes
b.HasIndex(q => new { q.EqptCode }).IsUnique();
});
} }
} }

36
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentEfCoreRepository.cs

@ -15,10 +15,20 @@ public class EquipmentEfCoreRepository : SfsBaseDataEfCoreRepositoryBase<Basedat
public virtual async Task UpsertAsyncByInterface(Equipment entity) public virtual async Task UpsertAsyncByInterface(Equipment entity)
{ {
var dbSet = await GetDbSetAsync().ConfigureAwait(false); var dbSet = await GetDbSetAsync().ConfigureAwait(false);
var exist = await dbSet.FirstOrDefaultAsync(p => p.Code == entity.Code).ConfigureAwait(false); var exist = await dbSet.FirstOrDefaultAsync(p => p.Code == entity.Code).ConfigureAwait(false);
if (exist == null) if (exist == null)
{ {
var insRet = await InsertAsync(entity).ConfigureAwait(false); var insRet = await InsertAsync(entity).ConfigureAwait(false);
var cap = new EquipmentLocCap() { EqptCode = entity.Code,PartCode=string.Empty,Percent=0, Qty=0 , StdQty=0 };
await DbContext.Set<EquipmentLocCap>().AddAsync(cap).ConfigureAwait(false);
} }
else else
{ {
@ -36,6 +46,15 @@ public class EquipmentEfCoreRepository : SfsBaseDataEfCoreRepositoryBase<Basedat
if (exist == null) if (exist == null)
{ {
var insRet = await InsertAsync(entity).ConfigureAwait(false); var insRet = await InsertAsync(entity).ConfigureAwait(false);
var cap = new EquipmentLocCap() { EqptCode = entity.Code, PartCode = string.Empty, Percent = 0, Qty = 0, StdQty = 0 };
await DbContext.Set<EquipmentLocCap>().AddAsync(cap).ConfigureAwait(false);
} }
else else
{ {
@ -43,24 +62,7 @@ public class EquipmentEfCoreRepository : SfsBaseDataEfCoreRepositoryBase<Basedat
exist.Model = entity.Model; exist.Model = entity.Model;
exist.Type = entity.Type; exist.Type = entity.Type;
exist.LastModificationTime = DateTimeOffset.Now.DateTime; exist.LastModificationTime = DateTimeOffset.Now.DateTime;
} }
// var context = await GetDbContextAsync();
// await context.SingleMergeAsync(entity, options =>
// {
// //业务主键,可以是联合主键
// options.ColumnPrimaryKeyExpression = c => new
// {
// c.Code
// };
// //需要在更新时忽略的属性
// options.IgnoreOnMergeUpdateExpression = c => new
// {
// c.Id,
// c.ManageType,
// };
// });
} }
public virtual async Task InsertAutoSaveAsync(Equipment entity) public virtual async Task InsertAutoSaveAsync(Equipment entity)

66
be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs

@ -0,0 +1,66 @@
using System;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Shared.Domain;
namespace Win_in.Sfs.Basedata.EntityFrameworkCore;
public class EquipmentLocCapEfCoreRepository : SfsBaseDataEfCoreRepositoryBase<BasedataDbContext, EquipmentLocCap>, IEquipmentLocCapRepository, ISfsBulkRepositoryBase<EquipmentLocCap>
{
public EquipmentLocCapEfCoreRepository(IDbContextProvider<BasedataDbContext> dbContextProvider) : base(dbContextProvider)
{
}
public virtual async Task UpsertAsyncByInterface(EquipmentLocCap entity)
{
var dbSet = await GetDbSetAsync().ConfigureAwait(false);
var exist = await dbSet.FirstOrDefaultAsync(p => p.EqptCode == entity.EqptCode).ConfigureAwait(false);
if (exist == null)
{
var insRet = await InsertAsync(entity).ConfigureAwait(false);
}
else
{
exist.Qty = entity.Qty;
exist.StdQty = entity.StdQty;
exist.Percent = entity.Percent;
exist.LastModificationTime = DateTimeOffset.Now.DateTime;
}
}
public virtual async Task UpsertAsync(EquipmentLocCap entity)
{
var dbSet = await GetDbSetAsync().ConfigureAwait(false);
var exist = await dbSet.FirstOrDefaultAsync(p => p.EqptCode == entity.EqptCode).ConfigureAwait(false);
if (exist == null)
{
var insRet = await InsertAsync(entity).ConfigureAwait(false);
}
else
{
exist.Qty = entity.Qty;
exist.StdQty = entity.StdQty;
exist.Percent = entity.Percent;
exist.LastModificationTime = DateTimeOffset.Now.DateTime;
}
}
public virtual async Task InsertAutoSaveAsync(EquipmentLocCap entity)
{
_ = await InsertAsync(entity, true, GetCancellationToken()).ConfigureAwait(false);
}
}

308
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentRecordManager.cs

@ -19,118 +19,118 @@ namespace Win_in.Sfs.Wms.Store.Domain;
public class EquipmentRecordManager : DomainService, IEquipmentRecordManager public class EquipmentRecordManager : DomainService, IEquipmentRecordManager
{ {
private readonly IEquipmentRecordRepository _repository; private readonly IEquipmentRecordRepository _repository;
private readonly IEquipmentLocCapRepository _repositoryCap; // private readonly IEquipmentLocCapRepository _repositoryCap;
private readonly IEquipmentLocAppService _locService; private readonly IEquipmentLocAppService _locService;
private readonly IEquipmentPartCodeAppService _partService; private readonly IEquipmentPartCodeAppService _partService;
public EquipmentRecordManager( public EquipmentRecordManager(
IEquipmentRecordRepository repository, IEquipmentRecordRepository repository,
IEquipmentLocCapRepository repositoryCap, //IEquipmentLocCapRepository repositoryCap,
IEquipmentLocAppService locService, IEquipmentLocAppService locService,
IEquipmentPartCodeAppService partService IEquipmentPartCodeAppService partService
) )
{ {
_locService=locService; _locService=locService;
_repository = repository; _repository = repository;
_repositoryCap = repositoryCap; // _repositoryCap = repositoryCap;
_partService= partService; _partService= partService;
} }
public async Task<List<EquipmentRecordErrorDTO>> Bind(List<EquipmentRecord> p_ls) public async Task<List<EquipmentRecordErrorDTO>> Bind(List<EquipmentRecord> p_ls)
{ {
List<EquipmentRecordErrorDTO> errors=new List<EquipmentRecordErrorDTO>(); List<EquipmentRecordErrorDTO> errors=new List<EquipmentRecordErrorDTO>();
var list= p_ls.GroupBy(p => new { p.EqptCode, p.PartCode }).Select(p=>new { EqptCode= p.Key.EqptCode, PartCode= p.Key.PartCode,SumQty=p.Sum(p=>p.Qty)});//导入零件 // var list= p_ls.GroupBy(p => new { p.EqptCode, p.PartCode }).Select(p=>new { EqptCode= p.Key.EqptCode, PartCode= p.Key.PartCode,SumQty=p.Sum(p=>p.Qty)});//导入零件
var partialErrors1=list.GroupBy(p => p.EqptCode).Where(g =>g.Count()>1).Select(p => new EquipmentRecordErrorDTO() { EqptCode= p.Key,PartCode=string.Empty,Error=$"同器具代码有{p.Count().ToString()}种零件!" }); // var partialErrors1=list.GroupBy(p => p.EqptCode).Where(g =>g.Count()>1).Select(p => new EquipmentRecordErrorDTO() { EqptCode= p.Key,PartCode=string.Empty,Error=$"同器具代码有{p.Count().ToString()}种零件!" });
errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验 // errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验
var ls=p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表 // var ls=p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表
var Locs=_locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系 // var Locs=_locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系
var parts =_partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系 // var parts =_partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系
//零件和器具关系校验 // //零件和器具关系校验
var partErrorQery = from itm in list // var partErrorQery = from itm in list
join itm1 in parts on // join itm1 in parts on
new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode } // new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode }
into temp // into temp
from tm in temp.DefaultIfEmpty() // from tm in temp.DefaultIfEmpty()
where tm == null // where tm == null
select new EquipmentRecordErrorDTO() // select new EquipmentRecordErrorDTO()
{ // {
EqptCode = itm.EqptCode, // EqptCode = itm.EqptCode,
PartCode = itm.PartCode, // PartCode = itm.PartCode,
Error = $"器具零件关系不存在!" // Error = $"器具零件关系不存在!"
}; // };
errors.AddRange(partErrorQery.ToList()); // errors.AddRange(partErrorQery.ToList());
var query= await _repositoryCap.GetQueryableAsync().ConfigureAwait(false); // var query= await _repositoryCap.GetQueryableAsync().ConfigureAwait(false);
var capExistList= query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量 // var capExistList= query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量
var partialErrors2 = from itm in capExistList // var partialErrors2 = from itm in capExistList
join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode // join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode
where itm.PartCode != itm.PartCode // where itm.PartCode != itm.PartCode
select new EquipmentRecordErrorDTO() { // select new EquipmentRecordErrorDTO() {
EqptCode = itm.EqptCode,PartCode=itm.PartCode ,Error=$"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!" // EqptCode = itm.EqptCode,PartCode=itm.PartCode ,Error=$"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!"
}; // };
errors.AddRange(partialErrors2.ToList());//导入记录和容量记录零件不是同一零件 // errors.AddRange(partialErrors2.ToList());//导入记录和容量记录零件不是同一零件
var existList = from itm in list // var existList = from itm in list
join itm1 in capExistList // join itm1 in capExistList
on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode } // on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
select itm; // select itm;
foreach (var itm in existList) // foreach (var itm in existList)
{ // {
var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量 // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
cap.Qty += itm.SumQty;//当前数量 // cap.Qty += itm.SumQty;//当前数量
if (cap.Qty > cap.StdQty) // if (cap.Qty > cap.StdQty)
{ // {
errors.Add(new EquipmentRecordErrorDTO() { EqptCode=itm.EqptCode,PartCode=itm.PartCode,Error=$"超出容量限制!" }); // errors.Add(new EquipmentRecordErrorDTO() { EqptCode=itm.EqptCode,PartCode=itm.PartCode,Error=$"超出容量限制!" });
} // }
} // }
if (errors.Count > 0) // if (errors.Count > 0)
{ // {
return errors; // return errors;
} // }
//新建器具容量 // //新建器具容量
var newList =from itm in list //var newList =from itm in list
join itm1 in capExistList // join itm1 in capExistList
on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode } // on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
into temp1 // into temp1
from tm1 in temp1.DefaultIfEmpty() // from tm1 in temp1.DefaultIfEmpty()
where tm1 == null // where tm1 == null
select itm; // select itm;
List<EquipmentLocCap> newlocList=new List<EquipmentLocCap>(); // List<EquipmentLocCap> newlocList=new List<EquipmentLocCap>();
foreach (var itm in newList) // foreach (var itm in newList)
{ // {
var gpart = parts.FirstOrDefault(p => p.Code == itm.EqptCode && p.PartCode == itm.PartCode); // var gpart = parts.FirstOrDefault(p => p.Code == itm.EqptCode && p.PartCode == itm.PartCode);
var stdQty = gpart.StdQty;//标包 // var stdQty = gpart.StdQty;//标包
var qty = itm.SumQty; // var qty = itm.SumQty;
var cap = new EquipmentLocCap() // var cap = new EquipmentLocCap()
{ // {
EqptCode=itm.EqptCode, // EqptCode=itm.EqptCode,
PartCode=itm.PartCode, // PartCode=itm.PartCode,
Percent=qty/stdQty, // Percent=qty/stdQty,
Qty=qty, // Qty=qty,
StdQty=stdQty, // StdQty=stdQty,
}; // };
cap.SetId(GuidGenerator.Create()); // cap.SetId(GuidGenerator.Create());
newlocList.Add(cap); // newlocList.Add(cap);
} // }
//已存在器具容量变更 // //已存在器具容量变更
foreach (var itm in existList) // foreach (var itm in existList)
{ // {
var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量 // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
cap.Qty = cap.Qty+itm.SumQty;//当前数量 // cap.Qty = cap.Qty+itm.SumQty;//当前数量
cap.Percent = cap.Qty / cap.StdQty; // cap.Percent = cap.Qty / cap.StdQty;
} // }
foreach (var itm in p_ls) // foreach (var itm in p_ls)
{ // {
itm.Type = EnumEquipmentRecordType.Bind; // itm.Type = EnumEquipmentRecordType.Bind;
itm.SetId(GuidGenerator.Create()); // itm.SetId(GuidGenerator.Create());
} // }
await _repositoryCap.InsertManyAsync(newlocList).ConfigureAwait(false); // await _repositoryCap.InsertManyAsync(newlocList).ConfigureAwait(false);
await _repository.InsertManyAsync(p_ls).ConfigureAwait(false); // await _repository.InsertManyAsync(p_ls).ConfigureAwait(false);
return errors; return errors;
@ -143,68 +143,68 @@ public class EquipmentRecordManager : DomainService, IEquipmentRecordManager
public async Task<List<EquipmentRecordErrorDTO>> UnBind(List<EquipmentRecord> p_ls) public async Task<List<EquipmentRecordErrorDTO>> UnBind(List<EquipmentRecord> p_ls)
{ {
List<EquipmentRecordErrorDTO> errors = new List<EquipmentRecordErrorDTO>(); List<EquipmentRecordErrorDTO> errors = new List<EquipmentRecordErrorDTO>();
var list = p_ls.GroupBy(p => new { p.EqptCode, p.PartCode }).Select(p => new { EqptCode = p.Key.EqptCode, PartCode = p.Key.PartCode, SumQty = p.Sum(p => p.Qty) });//导入零件 //var list = p_ls.GroupBy(p => new { p.EqptCode, p.PartCode }).Select(p => new { EqptCode = p.Key.EqptCode, PartCode = p.Key.PartCode, SumQty = p.Sum(p => p.Qty) });//导入零件
var partialErrors1 = list.GroupBy(p => p.EqptCode).Where(g => g.Count() > 1).Select(p => new EquipmentRecordErrorDTO() { EqptCode = p.Key, PartCode = string.Empty, Error = $"同器具代码有{p.Count().ToString()}种零件!" }); //var partialErrors1 = list.GroupBy(p => p.EqptCode).Where(g => g.Count() > 1).Select(p => new EquipmentRecordErrorDTO() { EqptCode = p.Key, PartCode = string.Empty, Error = $"同器具代码有{p.Count().ToString()}种零件!" });
errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验 //errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验
var ls = p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表 //var ls = p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表
var Locs = _locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系 //var Locs = _locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系
var parts = _partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系 //var parts = _partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系
//零件和器具关系校验 ////零件和器具关系校验
var partErrorQery = from itm in list //var partErrorQery = from itm in list
join itm1 in parts on // join itm1 in parts on
new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode } // new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode }
into temp // into temp
from tm in temp.DefaultIfEmpty() // from tm in temp.DefaultIfEmpty()
where tm == null // where tm == null
select new EquipmentRecordErrorDTO() // select new EquipmentRecordErrorDTO()
{ // {
EqptCode = itm.EqptCode, // EqptCode = itm.EqptCode,
PartCode = itm.PartCode, // PartCode = itm.PartCode,
Error = $"器具零件关系不存在!" // Error = $"器具零件关系不存在!"
}; // };
errors.AddRange(partErrorQery.ToList()); //errors.AddRange(partErrorQery.ToList());
var query = await _repositoryCap.GetQueryableAsync().ConfigureAwait(false); //var query = await _repositoryCap.GetQueryableAsync().ConfigureAwait(false);
var capExistList = query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量 //var capExistList = query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量
var partialErrors2 = from itm in capExistList //var partialErrors2 = from itm in capExistList
join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode // join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode
where itm.PartCode != itm.PartCode // where itm.PartCode != itm.PartCode
select new EquipmentRecordErrorDTO() // select new EquipmentRecordErrorDTO()
{ // {
EqptCode = itm.EqptCode, // EqptCode = itm.EqptCode,
PartCode = itm.PartCode, // PartCode = itm.PartCode,
Error = $"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!" // Error = $"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!"
}; // };
errors.AddRange(partialErrors2.ToList());//导入记录和器具容量记录零件不是同一零件 //errors.AddRange(partialErrors2.ToList());//导入记录和器具容量记录零件不是同一零件
var existList = from itm in list //var existList = from itm in list
join itm1 in capExistList // join itm1 in capExistList
on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode } // on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
select itm; // select itm;
foreach (var itm in existList) //foreach (var itm in existList)
{ //{
var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量 // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
cap.Qty =cap.Qty- itm.SumQty;//当前数量 // cap.Qty =cap.Qty- itm.SumQty;//当前数量
if (cap.Qty <0) // if (cap.Qty <0)
{ // {
errors.Add(new EquipmentRecordErrorDTO() { EqptCode = itm.EqptCode, PartCode = itm.PartCode, Error = $"解绑数量小0!" }); // errors.Add(new EquipmentRecordErrorDTO() { EqptCode = itm.EqptCode, PartCode = itm.PartCode, Error = $"解绑数量小0!" });
} // }
} //}
foreach (var itm in existList) //foreach (var itm in existList)
{ //{
var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量 // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
cap.Qty = cap.Qty - itm.SumQty;//当前数量 // cap.Qty = cap.Qty - itm.SumQty;//当前数量
cap.Percent = cap.Qty / cap.StdQty; // cap.Percent = cap.Qty / cap.StdQty;
} //}
foreach (var itm in p_ls) //foreach (var itm in p_ls)
{ //{
itm.Type = EnumEquipmentRecordType.UnBind; // itm.Type = EnumEquipmentRecordType.UnBind;
itm.SetId(GuidGenerator.Create()); // itm.SetId(GuidGenerator.Create());
} //}
await _repository.InsertManyAsync(p_ls).ConfigureAwait(false); //await _repository.InsertManyAsync(p_ls).ConfigureAwait(false);

10
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapRepository.cs

@ -1,10 +0,0 @@
using System.Threading.Tasks;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Wms.Store.Equipments;
namespace Win_in.Sfs.Wms.Store.Domain;
public interface IEquipmentLocCapRepository : ISfsStoreRepositoryBase<EquipmentLocCap>, ISfsBulkRepositoryBase<EquipmentLocCap>
{
Task UpsertAsync(EquipmentLocCap newData);
}

32
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapDbContextModelCreatingExtensions.cs

@ -1,32 +0,0 @@
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore.Modeling;
using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.Equipments;
namespace Win_in.Sfs.Wms.Store.EntityFrameworkCore;
public static class EquipmentLocCapDbContextModelCreatingExtensions
{
public static void ConfigureEquipmentLocCap(this ModelBuilder builder, StoreModelBuilderConfigurationOptions options)
{
builder.Entity<EquipmentLocCap>(b =>
{
//Configure table & schema name
b.ToTable(options.TablePrefix + nameof(EquipmentLocCap), options.Schema);
//Configure ABP properties
b.ConfigureByConvention();
//Configure Sfs base properties
b.ConfigureSfsStoreBase();
b.Property(q => q.EqptCode).HasMaxLength(SfsPropertyConst.CodeLength);
b.Property(q => q.PartCode).HasMaxLength(SfsPropertyConst.CodeLength);
b.HasIndex(q => new { q.EqptCode });
});
}
}

23
be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs

@ -1,23 +0,0 @@
using System.Linq;
using System.Threading.Tasks;
using Microsoft.EntityFrameworkCore;
using Volo.Abp.EntityFrameworkCore;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.Equipments;
namespace Win_in.Sfs.Wms.Store.EntityFrameworkCore;
public class EquipmentLocCapEfCoreRepository : SfsStoreEfCoreRepositoryBase<StoreDbContext, EquipmentLocCap>, IEquipmentLocCapRepository, ISfsBulkRepositoryBase<EquipmentLocCap>
{
public EquipmentLocCapEfCoreRepository(IDbContextProvider<StoreDbContext> dbContextProvider) : base(dbContextProvider)
{
}
public Task UpsertAsync(EquipmentLocCap newData)
{
throw new System.NotImplementedException();
}
}

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

@ -30,7 +30,7 @@ public static class StoreDbContextModelCreatingExtensions
builder.ConfigureWorkOrder(options); builder.ConfigureWorkOrder(options);
builder.ConfigureEquipmentRecord(options); builder.ConfigureEquipmentRecord(options);
builder.ConfigureEquipmentLocCap(options); //builder.ConfigureEquipmentLocCap(options);

Loading…
Cancel
Save