diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/DTOs/PostionLocationDTO.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/DTOs/PostionLocationDTO.cs new file mode 100644 index 000000000..5eb85aa0b --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/DTOs/PostionLocationDTO.cs @@ -0,0 +1,29 @@ +using System.ComponentModel.DataAnnotations; +using Win_in.Sfs.Shared.Domain; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Application.Contracts; + +/// +/// 库位 +/// +[Display(Name = "工作站库位对应关系")] +public class PostionLocationDTO : SfsBaseDataDTOBase, IHasCode, IHasName +{ + [Display(Name = "工作站编号")] + [Required(ErrorMessage = "{0}是必填项")] + public string Code { get; set; } + + /// + /// 名称 + /// + [Display(Name = "名称")] + public string Name { get; set; } + + /// + /// WMS库位 + /// + [Display(Name = "库位")] + [Required(ErrorMessage = "{0}是必填项")] + public string LocationCode { get; set; } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/IPostionLocationAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/IPostionLocationAppService.cs new file mode 100644 index 000000000..4e1b3ba81 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/IPostionLocationAppService.cs @@ -0,0 +1,26 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Mvc; +using Win_in.Sfs.Basedata.tests; +using Win_in.Sfs.Shared.Application.Contracts; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Application.Contracts; + +public interface IPostionLocationAppService + : ISfsBaseDataAppServiceBase + , ISfsGetByCodeAppService + , ISfsUpsertAppService +{ + + + + + + + + + + + +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationCheckInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationCheckInput.cs new file mode 100644 index 000000000..4eb06eb3d --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationCheckInput.cs @@ -0,0 +1,24 @@ +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Application.Contracts; + +public class PostionLocationCheckInput +{ + [Display(Name = "工作站编号")] + + public string Code { get; set; } + + /// + /// 名称 + /// + [Display(Name = "名称")] + public string Name { get; set; } + + /// + /// WMS库位 + /// + [Display(Name = "库位")] + public string LocationCode { get; set; } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationEditInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationEditInput.cs new file mode 100644 index 000000000..7f7cc3f68 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationEditInput.cs @@ -0,0 +1,25 @@ +using System.ComponentModel.DataAnnotations; +using Win_in.Sfs.Shared.Domain; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Application.Contracts; + +public class PostionLocationEditInput : SfsBaseDataCreateOrUpdateInputBase +{ + [Display(Name = "工作站编号")] + [Required(ErrorMessage = "{0}是必填项")] + public string Code { get; set; } + + /// + /// 名称 + /// + [Display(Name = "名称")] + public string Name { get; set; } + + /// + /// WMS库位 + /// + [Display(Name = "库位")] + [Required(ErrorMessage = "{0}是必填项")] + public string LocationCode { get; set; } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationImportInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationImportInput.cs new file mode 100644 index 000000000..d76ae1f53 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/Inputs/PostionLocationImportInput.cs @@ -0,0 +1,28 @@ +using System.ComponentModel.DataAnnotations; +using Win_in.Sfs.Shared.Application.Contracts; +using Win_in.Sfs.Shared.Domain; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Application.Contracts; + +[Display(Name = "库位信息")] +public class PostionLocationImportInput : SfsBaseDataImportInputBase +{ + [Display(Name = "工作站编号")] + [Required(ErrorMessage = "{0}是必填项")] + public string Code { get; set; } + + /// + /// 名称 + /// + [Display(Name = "名称")] + public string Name { get; set; } + + /// + /// WMS库位 + /// + [Display(Name = "库位")] + [Required(ErrorMessage = "{0}是必填项")] + public string LocationCode { get; set; } + +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/PostionLocationPermissions.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/PostionLocationPermissions.cs new file mode 100644 index 000000000..51d996c4c --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/PostionLocations/PostionLocationPermissions.cs @@ -0,0 +1,21 @@ +using Volo.Abp.Authorization.Permissions; +using Win_in.Sfs.Basedata.Domain; + +namespace Win_in.Sfs.Basedata.Application.Contracts; + +public static class PostionLocationPermissions +{ + + public const string Default = BasedataPermissions.GroupName + "." + nameof(PostionLocation); + public const string Create = Default + "." + BasedataPermissions.CreateStr; + public const string Update = Default + "." + BasedataPermissions.UpdateStr; + public const string Delete = Default + "." + BasedataPermissions.DeleteStr; + + public static void AddLPostionLocationPermission(this PermissionGroupDefinition permissionGroup) + { + var lPostionLocationPermission = permissionGroup.AddPermission(Default, BasedataPermissionDefinitionProvider.L(nameof(PostionLocation))); + lPostionLocationPermission.AddChild(Create, BasedataPermissionDefinitionProvider.L(BasedataPermissions.CreateStr)); + lPostionLocationPermission.AddChild(Update, BasedataPermissionDefinitionProvider.L(BasedataPermissions.UpdateStr)); + lPostionLocationPermission.AddChild(Delete, BasedataPermissionDefinitionProvider.L(BasedataPermissions.DeleteStr)); + } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAppService.cs new file mode 100644 index 000000000..18f269f0a --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAppService.cs @@ -0,0 +1,136 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Linq.Expressions; +using System.Threading; +using System.Threading.Tasks; + +using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Mvc; +using Volo.Abp.Application.Dtos; +using Volo.Abp.Caching; +using Volo.Abp.Domain.Repositories; +using Volo.Abp.Validation; +using Win_in.Sfs.Basedata.Application.Contracts; +using Win_in.Sfs.Basedata.Domain; +using Win_in.Sfs.Basedata.Domain.Shared; +using Win_in.Sfs.Shared.Domain.Shared; +using Win_in.Sfs.Shared.Domain; +using Volo.Abp.ObjectMapping; +using Win_in.Sfs.Shared.Application.Contracts; +using Volo.Abp; + +namespace Win_in.Sfs.Basedata.Application; + +[Authorize] +[Route($"{BasedataConsts.RootPath}PostionLocation")] + +public class PostionLocationAppService + : SfsBaseDataWithCodeAppServiceBase + + , IPostionLocationAppService +{ + + private readonly IPostionLocationManager _manager; + private readonly IPostionLocationRepository _repository; + private readonly ILocationAppService _locationAppService; + + + public PostionLocationAppService( + IPostionLocationRepository repository, + IPostionLocationManager manager + , IDistributedCache cache + + , ILocationAppService locationAppService + + + + ) : base(repository, cache) + { + _locationAppService = locationAppService; + _manager = manager; + _repository = repository; + + + //_PostionLocationCapacityAppService = PostionLocationCapacityAppService; + + base.CreatePolicyName = PostionLocationPermissions.Create; + base.UpdatePolicyName = PostionLocationPermissions.Update; + base.DeletePolicyName = PostionLocationPermissions.Delete; + + } + + + + [HttpPost("list")] + public override async Task> GetPagedListByFilterAsync( + SfsBaseDataRequestInputBase sfsRequestInput, + bool includeDetails = false, + CancellationToken cancellationToken = default) + { + Expression> expression = sfsRequestInput.Condition.Filters?.Count > 0 + ? sfsRequestInput.Condition.Filters.ToLambda() + : 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("get-or-add")] + public virtual async Task GetOrAddAsync(PostionLocationEditInput input) + { + await CheckLocationCode(input.LocationCode).ConfigureAwait(false); + var result = await _repository.FirstOrDefaultAsync(p => p.Code == input.Code).ConfigureAwait(false); + if (result == null) + { + var entity = ObjectMapper.Map(input); + result = await _repository.InsertAsync(entity, true).ConfigureAwait(false); + } + var dto = ObjectMapper.Map(result); + return dto; + } + [HttpPost("upsert")] + public async Task UpsertAsync(PostionLocationEditInput input) + { + var entity= await _repository.GetAsync(p=>p.Code == input.Code).ConfigureAwait(false); + + if (entity != null) + { + entity.Name = input.Name; + entity.LocationCode = input.LocationCode; + await _repository.UpdateAsync(entity).ConfigureAwait(false); + } + else + { + entity.Code = input.Code; + entity.LocationCode = input.LocationCode; + entity.Name=input.Name; + await _repository.InsertAsync(entity, true).ConfigureAwait(false); + } + + } + private async Task CheckLocationCode(string p_location) + { + + var list = await _locationAppService.GetByCodeAsync(p_location).ConfigureAwait(false); + if (list == null ) + { + throw new UserFriendlyException($"{p_location}库位编码不存在,请查看库位信息!"); + } + + + } + + +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAutoMapperProfile.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAutoMapperProfile.cs new file mode 100644 index 000000000..702d7c9c9 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/PostionLocations/PostionLocationAutoMapperProfile.cs @@ -0,0 +1,44 @@ +using AutoMapper; +using Volo.Abp.AutoMapper; +using Win_in.Sfs.Basedata.Application.Contracts; +using Win_in.Sfs.Basedata.Domain; + +namespace Win_in.Sfs.Basedata.Application; + +public partial class BasedataApplicationAutoMapperProfile : Profile +{ + private void PostionLocationAutoMapperProfile() + { + CreateMap() + .ReverseMap(); + + CreateMap() + .IgnoreAuditedObjectProperties() + .Ignore(x => x.TenantId) + .Ignore(x => x.ExtraProperties) + .Ignore(x => x.ConcurrencyStamp) + //.Ignore(x => x.EnableMixItem) + //.Ignore(x => x.EnableMixLot) + //.Ignore(x => x.EnableMixStatus) + //.Ignore(x => x.EnableNegative) + //.Ignore(x => x.EnableKeepZero) + //.Ignore(x => x.EnableOpportunityCount) + //.Ignore(x => x.EnablePick) + //.Ignore(x => x.EnableOverPick) + //.Ignore(x => x.EnableWholeStore) + //.Ignore(x => x.EnableBreakStore) + //.Ignore(x => x.EnableShip) + //.Ignore(x => x.EnableReceive) + //.Ignore(x => x.EnableReturnToSupplier) + //.Ignore(x => x.EnableReturnFromCustomer) + //.Ignore(x => x.EnableSplitPallet) + //.Ignore(x => x.EnableSplitBox) + + ; + + CreateMap() + .Ignore(x => x.ReportStatus) + .Ignore(x => x.ReportReason); + + } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/IPostionLocationManager.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/IPostionLocationManager.cs new file mode 100644 index 000000000..8ade57182 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/IPostionLocationManager.cs @@ -0,0 +1,8 @@ +using Volo.Abp.Domain.Services; +using Win_in.Sfs.Shared.Domain; + +namespace Win_in.Sfs.Basedata.Domain; + +public interface IPostionLocationManager : IDomainService, IBulkImportService +{ +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/IPostionLocationRepository.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/IPostionLocationRepository.cs new file mode 100644 index 000000000..ae1671526 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/IPostionLocationRepository.cs @@ -0,0 +1,8 @@ +using Win_in.Sfs.Shared.Domain; + +namespace Win_in.Sfs.Basedata.Domain; + +public interface IPostionLocationRepository : ISfsBaseDataRepositoryBase, ISfsBulkRepositoryBase +{ + +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocation.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocation.cs new file mode 100644 index 000000000..ab0a7cfe5 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocation.cs @@ -0,0 +1,106 @@ +using System.ComponentModel.DataAnnotations; +using Win_in.Sfs.Shared.Domain; +using Win_in.Sfs.Shared.Domain.Entities; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Domain; + +public class PostionLocation : SfsBaseDataAggregateRootBase, IHasCode, IHasName +{ + /// + /// 代码 + /// + [IgnoreUpdate] + [Display(Name ="工作站编号")] + public string Code { get; set; } + + /// + /// 名称 + /// + [Display(Name = "名称")] + public string Name { get; set; } + + /// + /// WMS库位 + /// + [Display(Name ="库位")] + public string LocationCode { get; set; } + + ///// + ///// 库位类型 + ///// + //public EnumLocationType Type { get; set; } + + ///// + ///// ERP系统库位代码 + ///// + //public string ErpLocationCode { get; set; } + + ///// + ///// 仓库代码 + ///// + //public string WarehouseCode { get; set; } + + ///// + ///// 区域代码 + ///// + //public string AreaCode { get; set; } + + ///// + ///// 库位组代码 + ///// + //public string LocationGroupCode { get; set; } + + ///// + ///// 工作组代码 + ///// + //public string WorkGroupCode { get; set; } + + ///// + ///// 货架号 + ///// + //public string ShelfCode { get; set; } + + ///// + ///// 行号 + ///// + //public int RowCode { get; set; } + + ///// + ///// 列号 + ///// + //public int ColumnCode { get; set; } + + ///// + ///// 默认库存状态 + ///// + //public EnumInventoryStatus DefaultInventoryStatus { get; set; } + + ///// + ///// 拣料优先级 + ///// + //public int PickPriority { get; set; } + + ///// + ///// 拣料顺序 + ///// + //public int PickOrder { get; set; } + + //public bool EnableMixItem { get; set; } = true; // 可以混物品 + //public bool EnableMixLot { get; set; } = true; // 可以混批次 + //public bool EnableMixStatus { get; set; } = true; // 可以混状态 + //public bool EnableNegative { get; set; } = true; // 可以负库存 + //public bool EnableKeepZero { get; set; } = true; // 可以保留零库存 + //public bool EnableOpportunityCount { get; set; } = true; // 可以机会盘点 + //public bool EnablePick { get; set; } = true; // 可以领料 + //public bool EnableOverPick { get; set; } = true; // 可以过量领料 + //public bool EnableWholeStore { get; set; } = true; // 可以整包存储 + //public bool EnableBreakStore { get; set; } = true; // 可以散件存储 + //public bool EnableShip { get; set; } = true; // 可以发出 + //public bool EnableReceive { get; set; } = true; // 可以接收 + //public bool EnableReturnToSupplier { get; set; } = true; // 可以退货给供应商 + //public bool EnableReturnFromCustomer { get; set; } = true; // 可以接收客户退货 + //public bool EnableSplitBox { get; set; } = true; //是否可以拆箱 + //public bool EnableSplitPallet { get; set; } = true; //是否可以拆托 + +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocationManager.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocationManager.cs new file mode 100644 index 000000000..c1bc9a184 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/PostionLocations/PostionLocationManager.cs @@ -0,0 +1,48 @@ +using System.Collections.Generic; +using System.Threading.Tasks; +using Volo.Abp.Domain.Services; +using Win_in.Sfs.Shared.Domain.Shared; + +namespace Win_in.Sfs.Basedata.Domain; + +public class PostionLocationManager : DomainService, IPostionLocationManager +{ + private readonly IPostionLocationRepository _repository; + + private readonly IWarehouseRepository _warehourseRepository; + private readonly IAreaRepository _areaRepository; + private readonly ILocationGroupRepository _locationGroupRepository; + private readonly IWorkGroupRepository _workGroupRepository; + + public PostionLocationManager(IPostionLocationRepository repository, IWarehouseRepository warehourseRepository + , IAreaRepository areaRepository + , ILocationGroupRepository locationGroupRepository + , IWorkGroupRepository workGroupRepository + ) + { + _repository = repository; + _warehourseRepository = warehourseRepository; + _areaRepository = areaRepository; + _locationGroupRepository = locationGroupRepository; + _workGroupRepository = workGroupRepository; + + } + + /// + /// 执行导入 + /// + public virtual async Task ImportDataAsync(List mergeEntities, List deleteEntities = null) + { + if (deleteEntities != null && deleteEntities.Count > 0) + { + await _repository.BulkDeleteAsync(deleteEntities).ConfigureAwait(false); + } + + await _repository.BulkMergeAsync(mergeEntities).ConfigureAwait(false); + } + + + + +} + diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContext.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContext.cs index d43aec3d1..0e05cb4c9 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContext.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataDbContext.cs @@ -59,6 +59,8 @@ public class BasedataDbContext : AbpDbContext, IBasedataDbCon public DbSet Equipments { get; set; } public DbSet SplitPackingRecs { get; set; } + public DbSet PostionLocations { get; set; } + public BasedataDbContext(DbContextOptions options) : base(options) diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs index 05750b3c9..6a35c1ebb 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/BasedataEntityFrameworkCoreModule.cs @@ -61,6 +61,7 @@ public class BasedataEntityFrameworkCoreModule : AbpModule context.Services.AddTransient(); context.Services.AddTransient(); context.Services.AddTransient(); + context.Services.AddTransient(); context.Services.AddTransient(); context.Services.AddTransient(); context.Services.AddTransient(); diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PostionLocations/PostionLocationDbContextModelCreatingExtensions.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PostionLocations/PostionLocationDbContextModelCreatingExtensions.cs new file mode 100644 index 000000000..7f66e95b5 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PostionLocations/PostionLocationDbContextModelCreatingExtensions.cs @@ -0,0 +1,31 @@ +using Microsoft.EntityFrameworkCore; +using Volo.Abp.EntityFrameworkCore.Modeling; +using Win_in.Sfs.Basedata.Domain; +using Win_in.Sfs.Shared.Domain.Shared; +using Win_in.Sfs.Shared.EntityFrameworkCore; + +namespace Win_in.Sfs.Basedata.EntityFrameworkCore; + +public static class PostionLocationDbContextModelCreatingExtensions +{ + public static void ConfigurePostionLocation(this ModelBuilder builder, BasedataModelBuilderConfigurationOptions options) + { + builder.Entity(b => + { + //Configure table & schema name + b.ToTable(options.TablePrefix + nameof(Location), options.Schema); + //Configure ABP properties + b.ConfigureByConvention(); + //Configure Sfs base properties + b.ConfigureSfsBase(); + + //Properties + + //Relations + //None + + //Indexes + b.HasIndex(q => new { q.Code }).IsUnique(); + }); + } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PostionLocations/PostionLocationEfCoreRepository.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PostionLocations/PostionLocationEfCoreRepository.cs new file mode 100644 index 000000000..232f50c97 --- /dev/null +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/PostionLocations/PostionLocationEfCoreRepository.cs @@ -0,0 +1,12 @@ +using Volo.Abp.EntityFrameworkCore; +using Win_in.Sfs.Basedata.Domain; +using Win_in.Sfs.Shared.Domain; + +namespace Win_in.Sfs.Basedata.EntityFrameworkCore; + +public class PostionLocationEfCoreRepository : SfsBaseDataEfCoreRepositoryBase, IPostionLocationRepository, ISfsBulkRepositoryBase +{ + public PostionLocationEfCoreRepository(IDbContextProvider dbContextProvider) : base(dbContextProvider) + { + } +} diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Win_in.Sfs.Basedata.EntityFrameworkCore.csproj b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Win_in.Sfs.Basedata.EntityFrameworkCore.csproj index 2ee6ae91f..20fa1b1fe 100644 --- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Win_in.Sfs.Basedata.EntityFrameworkCore.csproj +++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Win_in.Sfs.Basedata.EntityFrameworkCore.csproj @@ -14,7 +14,6 @@ -