From 5175b4aae4b06e5c50b5827c14517dbc4f34dfbd Mon Sep 17 00:00:00 2001
From: zhaoxinyu <89237069@qq.com>
Date: Wed, 13 Mar 2024 16:04:52 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=89=88=E6=9C=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Equipments/DTOs/EquipmentDTO.cs | 5 +-
.../Equipments/Inputs/EquipmentEditInput.cs | 5 +-
.../Equipments/Inputs/EquipmentImportInput.cs | 9 +-
.../Equipments/EquipmentAppService.cs | 224 -------------
.../Equipments/EquipmentPartCodeAppService.cs | 5 +-
.../Equipments/EquipmentLocCap.cs | 2 +-
.../Equipments/EquipmentLocCapManager.cs | 19 +-
.../Equipments/IEquipmentLocCapManager.cs | 4 +-
.../Equipments/IEquipmentLocCapRepository.cs | 11 +
.../BasedataEntityFrameworkCoreModule.cs | 1 +
...uipmentDbContextModelCreatingExtensions.cs | 24 ++
.../Equipments/EquipmentEfCoreRepository.cs | 36 +-
.../EquipmentLocCapEfCoreRepository.cs | 66 ++++
.../Equipments/EquipmentRecordManager.cs | 308 +++++++++---------
.../Equipments/IEquipmentLocCapRepository.cs | 10 -
...tLocCapDbContextModelCreatingExtensions.cs | 32 --
.../EquipmentLocCapEfCoreRepository.cs | 23 --
.../StoreDbContextModelCreatingExtensions.cs | 2 +-
18 files changed, 299 insertions(+), 487 deletions(-)
rename be/Modules/{Store/src/Win_in.Sfs.Wms.Store.Domain => BaseData/src/Win_in.Sfs.Basedata.Domain}/Equipments/EquipmentLocCap.cs (94%)
rename be/Modules/{Store/src/Win_in.Sfs.Wms.Store.Domain => BaseData/src/Win_in.Sfs.Basedata.Domain}/Equipments/EquipmentLocCapManager.cs (52%)
rename be/Modules/{Store/src/Win_in.Sfs.Wms.Store.Domain => BaseData/src/Win_in.Sfs.Basedata.Domain}/Equipments/IEquipmentLocCapManager.cs (81%)
create mode 100644 be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapRepository.cs
create mode 100644 be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
delete mode 100644 be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapRepository.cs
delete mode 100644 be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapDbContextModelCreatingExtensions.cs
delete mode 100644 be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/DTOs/EquipmentDTO.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/DTOs/EquipmentDTO.cs
index f9af753d9..c61f712b2 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/DTOs/EquipmentDTO.cs
+++ b/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.Collections.Generic;
+using Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata;
[Display(Name = "器具基本信息")]
@@ -15,7 +16,7 @@ public class EquipmentDTO : SfsBaseDataDTOBase, IHasCode
/// 类型
///
[Display(Name = "类型")]
- public string Type { get; set; } = string.Empty;
+ public EnumEquipmentType Type { get; set; }
///
/// 器具编号
///
@@ -35,7 +36,7 @@ public class EquipmentDTO : SfsBaseDataDTOBase, IHasCode
/// 型号
///
[Display(Name = "型号")]
- public string Model { get; set; } = string.Empty;
+ public EnumEquipmentModel Model { get; set; }
///
/// 库位编号
///
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentEditInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentEditInput.cs
index 9c00c6a23..e5fe9a2e5 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentEditInput.cs
+++ b/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 Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared;
+using Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata;
namespace Win_in.Sfs.Basedata.Application.Contracts;
@@ -11,7 +12,7 @@ public class EquipmentEditInput : SfsBaseDataCreateOrUpdateInputBase
/// 类型
///
[Display(Name = "类型")]
- public string Type { get; set; } = string.Empty;
+ public EnumEquipmentType Type { get; set; }
///
/// 器具编号
///
@@ -31,7 +32,7 @@ public class EquipmentEditInput : SfsBaseDataCreateOrUpdateInputBase
/// 型号
///
[Display(Name = "型号")]
- public string Model { get; set; } = string.Empty;
+ public EnumEquipmentModel Model { get; set; }
///
/// 库位编号
///
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentImportInput.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentImportInput.cs
index c09872d2a..2894c5c1b 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentImportInput.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application.Contracts/Equipments/Inputs/EquipmentImportInput.cs
@@ -1,8 +1,7 @@
using System;
using System.ComponentModel.DataAnnotations;
-using Win_in.Sfs.Shared.Application.Contracts;
-using Win_in.Sfs.Shared.Domain;
-using Win_in.Sfs.Shared.Domain.Shared;
+
+using Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata;
namespace Win_in.Sfs.Basedata.Application.Contracts;
@@ -13,7 +12,7 @@ public class EquipmentImportInput : SfsBaseDataImportInputBase
/// 类型
///
[Display(Name = "类型")]
- public string Type { get; set; } = string.Empty;
+ public Win_in.Sfs.Shared.Domain.Shared.Enums.Basedata.EnumEquipmentType Type { get; set; }
///
/// 器具编号
///
@@ -33,7 +32,7 @@ public class EquipmentImportInput : SfsBaseDataImportInputBase
/// 型号
///
[Display(Name = "型号")]
- public string Model { get; set; } = string.Empty;
+ public EnumEquipmentModel Model { get; set; }
///
/// 库位编号
///
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentAppService.cs
index 10df8fd9d..be46cb4df 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentAppService.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentAppService.cs
@@ -30,22 +30,18 @@ public class EquipmentAppService
: SfsBaseDataWithCodeAppServiceBase
, IEquipmentAppService
{
- //private readonly ItemValidator _itemValidator;
private readonly IEquipmentManager _manager;
private new readonly IEquipmentRepository _repository;
private readonly IExportImportService _importService;
-
public EquipmentAppService(
IEquipmentRepository repository,
IDistributedCache cache,
IExportImportService importService,
- // ItemValidator itemValidator,
IEquipmentManager manager)
: base(repository, cache)
{
_importService=importService;
_repository = repository;
- //_itemValidator = itemValidator;
_manager = manager;
base.CreatePolicyName = EquipmentPermissions.Create;
base.UpdatePolicyName = EquipmentPermissions.Update;
@@ -54,232 +50,15 @@ public class EquipmentAppService
[HttpPost("check")]
//[Authorize(ErpLocationPermissions.Default)]
-
public virtual async Task CheckAsync(string code, EquipmentCheckInput input)
{
await Task.CompletedTask.ConfigureAwait(false);
}
- //public override async Task ImportAsync([FromForm] SfsImportRequestInput requestInput, [Required] IFormFile file)
- //{
- // List errors = new List();
- // using var ms = new MemoryStream();
- // await file.OpenReadStream().CopyToAsync(ms).ConfigureAwait(false);
- // var inputFileBytes = ms.GetAllBytes();
- // var dtos=_importService.Import(inputFileBytes).ToList();
- // var list=ObjectMapper.Map, List>(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();
- //protected IItemCategoryAppService _itemCategoryApp => LazyServiceProvider.LazyGetRequiredService();
-
- //[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(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);
- // }
- //}
-
- /////
- ///// 检物品状态 是否可用
- /////
- /////
- /////
- /////
- //[HttpGet("check-item-is-available")]
- //public virtual async Task 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;
- //}
-
- ///
- /// 检物品状态 是否可用(不查询数据库 直接根据对象判断)
- ///
- ///
- ///
- //[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 GetAsync(Guid id)
- //{
- // var dto = await base.GetAsync(id).ConfigureAwait(false);
-
- // dto.ItemCategoryDictionary = await GetItemCategory(dto.Code).ConfigureAwait(false);
-
- // return dto;
- //}
-
- ///
- ///
- ///
- ///
- ///
- ///
- //[HttpGet("list-by-name")]
- //public virtual async Task> GetListByNameAsync(string name)
- //{
- // var entities = await _repository.GetListAsync(c => c.Name == name).ConfigureAwait(false);
- // var dtos = ObjectMapper.Map, List>(entities);
- // return dtos;
- //}
-
- //[HttpGet("get-manage-type")]
- //public virtual async Task 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> GetManageTypesAsync(List 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 GetOrAddAsync(EquipmentEditInput input)
- //{
- // 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("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("upsert")]
- //public virtual async Task UpsertAsync(EquipmentEditInput input)
- //{
- // var entity = ObjectMapper.Map(input);
- // await _repository.UpsertAsync(entity).ConfigureAwait(false);
- //}
- //[HttpPost("upsert-interface")]
- //public virtual async Task UpsertAsyncByInterface(EquipmentEditInput input)
- //{
- // var entity = ObjectMapper.Map(input);
- // await _repository.UpsertAsyncByInterface(entity).ConfigureAwait(false);
- //}
-
- //protected override Expression> BuildSearchExpression(string keyWord)
- //{
- // Expression> 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> GetItemCategory(string itemCode)
- //{
- // // var itemCategorys = await this._itemCategoryApp.GetListByItemCode(itemCode).ConfigureAwait(false);
-
- // // return itemCategorys.ToDictionary(x => x.CategoryCode, y => y.Value);
- //}
-
[HttpPost("upsert")]
public virtual async Task UpsertAsync(EquipmentEditInput input)
{
var entity = ObjectMapper.Map(input);
-
await _repository.UpsertAsync(entity).ConfigureAwait(false);
}
@@ -292,8 +71,6 @@ public class EquipmentAppService
{
var entity = ObjectMapper.Map(input);
entity.Code = string.Format("{0}{1}", "Q", entity.Code);
-
-
await _repository.UpsertAsync(entity).ConfigureAwait(false);
var entity1=_repository.WithDetails().FirstOrDefault(p => p.Code == input.Code);
return ObjectMapper.Map(entity1);
@@ -304,5 +81,4 @@ public class EquipmentAppService
}
}
-
}
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentPartCodeAppService.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentPartCodeAppService.cs
index e1f998265..5a9bf75b8 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Application/Equipments/EquipmentPartCodeAppService.cs
+++ b/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
: SfsBaseDataWithCodeAppServiceBase
, IEquipmentPartCodeAppService
-{
-
+{
private readonly IEquipmentPartCodeManager _manager;
private new readonly IEquipmentPartCodeRepository _repository;
private readonly IExportImportService _importService;
@@ -101,7 +100,7 @@ public class EquipmentPartCodeAppService
{
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);
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCap.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCap.cs
similarity index 94%
rename from be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCap.cs
rename to be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCap.cs
index 65f5ffb09..d2e0183c5 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCap.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCap.cs
@@ -5,7 +5,7 @@ using System.Text;
using System.Threading.Tasks;
using Win_in.Sfs.Shared.Domain;
-namespace Win_in.Sfs.Wms.Store.Equipments;
+namespace Win_in.Sfs.Basedata.Domain;
public class EquipmentLocCap:SfsAggregateRootBase
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCapManager.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCapManager.cs
similarity index 52%
rename from be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCapManager.cs
rename to be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCapManager.cs
index 4fe04254a..df81df2c1 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentLocCapManager.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/EquipmentLocCapManager.cs
@@ -4,18 +4,18 @@ using System.Linq;
using System.Threading.Tasks;
using Volo.Abp;
using Volo.Abp.Domain.Services;
-using Win_in.Sfs.Basedata.Application.Contracts;
+
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
{
- 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 entities, List deleteEntities = null)
- {
- throw new NotImplementedException();
- }
-
public Task ImportDataAsync(List entities, List deleteEntities = null)
{
throw new NotImplementedException();
}
- private async Task SetDetailAsync(List details)
+
+
+ private async Task SetDetailAsync(List details)
{
}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapManager.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapManager.cs
similarity index 81%
rename from be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapManager.cs
rename to be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapManager.cs
index 8e5c49158..5a62ee241 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapManager.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapManager.cs
@@ -1,9 +1,9 @@
using System;
using System.Threading.Tasks;
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
{
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapRepository.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Equipments/IEquipmentLocCapRepository.cs
new file mode 100644
index 000000000..6bd79f7bf
--- /dev/null
+++ b/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
+{
+ Task UpsertAsync(EquipmentLocCap newData);
+}
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 4f239caf4..c2fa0071a 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
@@ -74,6 +74,7 @@ public class BasedataEntityFrameworkCoreModule : AbpModule
context.Services.AddTransient();
context.Services.AddTransient();
context.Services.AddTransient();
+ context.Services.AddTransient();
ConfigureEntity();
}
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentDbContextModelCreatingExtensions.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentDbContextModelCreatingExtensions.cs
index 7a78d99cf..cf85b7de0 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentDbContextModelCreatingExtensions.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentDbContextModelCreatingExtensions.cs
@@ -32,6 +32,30 @@ public static class EquipmentDbContextModelCreatingExtensions
//Indexes
b.HasIndex(q => new { q.Code }).IsUnique();
});
+ builder.Entity(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();
+ });
+
+
+
+
}
}
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentEfCoreRepository.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentEfCoreRepository.cs
index 5d0bab8cb..2c56b70d6 100644
--- a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentEfCoreRepository.cs
+++ b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentEfCoreRepository.cs
@@ -15,10 +15,20 @@ public class EquipmentEfCoreRepository : SfsBaseDataEfCoreRepositoryBase p.Code == entity.Code).ConfigureAwait(false);
if (exist == null)
{
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().AddAsync(cap).ConfigureAwait(false);
+
+
}
else
{
@@ -36,6 +46,15 @@ public class EquipmentEfCoreRepository : SfsBaseDataEfCoreRepositoryBase().AddAsync(cap).ConfigureAwait(false);
+
+
+
}
else
{
@@ -43,24 +62,7 @@ public class EquipmentEfCoreRepository : SfsBaseDataEfCoreRepositoryBase
- // {
- // //业务主键,可以是联合主键
- // options.ColumnPrimaryKeyExpression = c => new
- // {
- // c.Code
- // };
- // //需要在更新时忽略的属性
- // options.IgnoreOnMergeUpdateExpression = c => new
- // {
- // c.Id,
- // c.ManageType,
- // };
- // });
}
public virtual async Task InsertAutoSaveAsync(Equipment entity)
diff --git a/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs b/be/Modules/BaseData/src/Win_in.Sfs.Basedata.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
new file mode 100644
index 000000000..2c0124040
--- /dev/null
+++ b/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, IEquipmentLocCapRepository, ISfsBulkRepositoryBase
+{
+ public EquipmentLocCapEfCoreRepository(IDbContextProvider 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);
+ }
+}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentRecordManager.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentRecordManager.cs
index 281383947..cf4486906 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/EquipmentRecordManager.cs
+++ b/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
{
private readonly IEquipmentRecordRepository _repository;
- private readonly IEquipmentLocCapRepository _repositoryCap;
+ // private readonly IEquipmentLocCapRepository _repositoryCap;
private readonly IEquipmentLocAppService _locService;
private readonly IEquipmentPartCodeAppService _partService;
public EquipmentRecordManager(
IEquipmentRecordRepository repository,
- IEquipmentLocCapRepository repositoryCap,
+ //IEquipmentLocCapRepository repositoryCap,
IEquipmentLocAppService locService,
IEquipmentPartCodeAppService partService
)
{
_locService=locService;
_repository = repository;
- _repositoryCap = repositoryCap;
+ // _repositoryCap = repositoryCap;
_partService= partService;
}
public async Task> Bind(List p_ls)
{
List errors=new List();
- 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()}种零件!" });
- errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验
- var ls=p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表
- var Locs=_locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系
- var parts =_partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系
- //零件和器具关系校验
- var partErrorQery = from itm in list
- join itm1 in parts on
- new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode }
- into temp
- from tm in temp.DefaultIfEmpty()
- where tm == null
- select new EquipmentRecordErrorDTO()
- {
- EqptCode = itm.EqptCode,
- PartCode = itm.PartCode,
- Error = $"器具零件关系不存在!"
- };
- errors.AddRange(partErrorQery.ToList());
- var query= await _repositoryCap.GetQueryableAsync().ConfigureAwait(false);
- var capExistList= query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量
-
- var partialErrors2 = from itm in capExistList
- join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode
- where itm.PartCode != itm.PartCode
- select new EquipmentRecordErrorDTO() {
- EqptCode = itm.EqptCode,PartCode=itm.PartCode ,Error=$"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!"
- };
- errors.AddRange(partialErrors2.ToList());//导入记录和容量记录零件不是同一零件
- var existList = from itm in list
- join itm1 in capExistList
- on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
- select itm;
- foreach (var itm in existList)
- {
- var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
- cap.Qty += itm.SumQty;//当前数量
-
- if (cap.Qty > cap.StdQty)
- {
- errors.Add(new EquipmentRecordErrorDTO() { EqptCode=itm.EqptCode,PartCode=itm.PartCode,Error=$"超出容量限制!" });
- }
- }
-
- if (errors.Count > 0)
- {
- return errors;
- }
- //新建器具容量
- var newList =from itm in list
- join itm1 in capExistList
- on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
- into temp1
- from tm1 in temp1.DefaultIfEmpty()
- where tm1 == null
- select itm;
- List newlocList=new List();
- foreach (var itm in newList)
- {
- var gpart = parts.FirstOrDefault(p => p.Code == itm.EqptCode && p.PartCode == itm.PartCode);
- var stdQty = gpart.StdQty;//标包
- var qty = itm.SumQty;
- var cap = new EquipmentLocCap()
-
- {
- EqptCode=itm.EqptCode,
- PartCode=itm.PartCode,
- Percent=qty/stdQty,
- Qty=qty,
- StdQty=stdQty,
- };
- cap.SetId(GuidGenerator.Create());
- newlocList.Add(cap);
- }
- //已存在器具容量变更
+ // 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()}种零件!" });
+ // errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验
+ // var ls=p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表
+ // var Locs=_locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系
+ // var parts =_partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系
+ // //零件和器具关系校验
+ // var partErrorQery = from itm in list
+ // join itm1 in parts on
+ // new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode }
+ // into temp
+ // from tm in temp.DefaultIfEmpty()
+ // where tm == null
+ // select new EquipmentRecordErrorDTO()
+ // {
+ // EqptCode = itm.EqptCode,
+ // PartCode = itm.PartCode,
+ // Error = $"器具零件关系不存在!"
+ // };
+ // errors.AddRange(partErrorQery.ToList());
+ // var query= await _repositoryCap.GetQueryableAsync().ConfigureAwait(false);
+ // var capExistList= query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量
+
+ // var partialErrors2 = from itm in capExistList
+ // join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode
+ // where itm.PartCode != itm.PartCode
+ // select new EquipmentRecordErrorDTO() {
+ // EqptCode = itm.EqptCode,PartCode=itm.PartCode ,Error=$"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!"
+ // };
+ // errors.AddRange(partialErrors2.ToList());//导入记录和容量记录零件不是同一零件
+ // var existList = from itm in list
+ // join itm1 in capExistList
+ // on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
+ // select itm;
+ // foreach (var itm in existList)
+ // {
+ // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
+ // cap.Qty += itm.SumQty;//当前数量
+
+ // if (cap.Qty > cap.StdQty)
+ // {
+ // errors.Add(new EquipmentRecordErrorDTO() { EqptCode=itm.EqptCode,PartCode=itm.PartCode,Error=$"超出容量限制!" });
+ // }
+ // }
+
+ // if (errors.Count > 0)
+ // {
+ // return errors;
+ // }
+ // //新建器具容量
+ //var newList =from itm in list
+ // join itm1 in capExistList
+ // on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
+ // into temp1
+ // from tm1 in temp1.DefaultIfEmpty()
+ // where tm1 == null
+ // select itm;
+ // List newlocList=new List();
+ // foreach (var itm in newList)
+ // {
+ // var gpart = parts.FirstOrDefault(p => p.Code == itm.EqptCode && p.PartCode == itm.PartCode);
+ // var stdQty = gpart.StdQty;//标包
+ // var qty = itm.SumQty;
+ // var cap = new EquipmentLocCap()
+
+ // {
+ // EqptCode=itm.EqptCode,
+ // PartCode=itm.PartCode,
+ // Percent=qty/stdQty,
+ // Qty=qty,
+ // StdQty=stdQty,
+ // };
+ // cap.SetId(GuidGenerator.Create());
+ // newlocList.Add(cap);
+ // }
+ // //已存在器具容量变更
- foreach (var itm in existList)
- {
- var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
- cap.Qty = cap.Qty+itm.SumQty;//当前数量
- cap.Percent = cap.Qty / cap.StdQty;
- }
-
- foreach (var itm in p_ls)
- {
- itm.Type = EnumEquipmentRecordType.Bind;
- itm.SetId(GuidGenerator.Create());
- }
- await _repositoryCap.InsertManyAsync(newlocList).ConfigureAwait(false);
- await _repository.InsertManyAsync(p_ls).ConfigureAwait(false);
+ // foreach (var itm in existList)
+ // {
+ // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
+ // cap.Qty = cap.Qty+itm.SumQty;//当前数量
+ // cap.Percent = cap.Qty / cap.StdQty;
+ // }
+
+ // foreach (var itm in p_ls)
+ // {
+ // itm.Type = EnumEquipmentRecordType.Bind;
+ // itm.SetId(GuidGenerator.Create());
+ // }
+ // await _repositoryCap.InsertManyAsync(newlocList).ConfigureAwait(false);
+ // await _repository.InsertManyAsync(p_ls).ConfigureAwait(false);
return errors;
@@ -143,68 +143,68 @@ public class EquipmentRecordManager : DomainService, IEquipmentRecordManager
public async Task> UnBind(List p_ls)
{
List errors = new List();
- 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()}种零件!" });
- errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验
- var ls = p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表
- var Locs = _locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系
- var parts = _partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系
- //零件和器具关系校验
- var partErrorQery = from itm in list
- join itm1 in parts on
- new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode }
- into temp
- from tm in temp.DefaultIfEmpty()
- where tm == null
- select new EquipmentRecordErrorDTO()
- {
- EqptCode = itm.EqptCode,
- PartCode = itm.PartCode,
- Error = $"器具零件关系不存在!"
- };
- errors.AddRange(partErrorQery.ToList());
- var query = await _repositoryCap.GetQueryableAsync().ConfigureAwait(false);
- var capExistList = query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量
-
- var partialErrors2 = from itm in capExistList
- join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode
- where itm.PartCode != itm.PartCode
- select new EquipmentRecordErrorDTO()
- {
- EqptCode = itm.EqptCode,
- PartCode = itm.PartCode,
- Error = $"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!"
- };
- errors.AddRange(partialErrors2.ToList());//导入记录和器具容量记录零件不是同一零件
- var existList = from itm in list
- join itm1 in capExistList
- on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
- select itm;
- foreach (var itm in existList)
- {
- var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
- cap.Qty =cap.Qty- itm.SumQty;//当前数量
-
- if (cap.Qty <0)
- {
- errors.Add(new EquipmentRecordErrorDTO() { EqptCode = itm.EqptCode, PartCode = itm.PartCode, Error = $"解绑数量小0!" });
- }
- }
-
- foreach (var itm in existList)
- {
- var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
- cap.Qty = cap.Qty - itm.SumQty;//当前数量
- cap.Percent = cap.Qty / cap.StdQty;
- }
-
- foreach (var itm in p_ls)
- {
- itm.Type = EnumEquipmentRecordType.UnBind;
- itm.SetId(GuidGenerator.Create());
- }
+ //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()}种零件!" });
+ //errors.AddRange(partialErrors1.ToList());//同容器放不同零件校验
+ //var ls = p_ls.Select(p => p.EqptCode).Distinct().ToList();//录入的器具记录代码列表
+ //var Locs = _locService.GetEquipmentLocAsync(ls).Result;//获取器具库位关系
+ //var parts = _partService.GetEquipmentPartCodesAsync(ls).Result;//获取器具零件关系
+ ////零件和器具关系校验
+ //var partErrorQery = from itm in list
+ // join itm1 in parts on
+ // new { itm.EqptCode, PartCode = itm.PartCode } equals new { EqptCode = itm1.Code, PartCode = itm1.PartCode }
+ // into temp
+ // from tm in temp.DefaultIfEmpty()
+ // where tm == null
+ // select new EquipmentRecordErrorDTO()
+ // {
+ // EqptCode = itm.EqptCode,
+ // PartCode = itm.PartCode,
+ // Error = $"器具零件关系不存在!"
+ // };
+ //errors.AddRange(partErrorQery.ToList());
+ //var query = await _repositoryCap.GetQueryableAsync().ConfigureAwait(false);
+ //var capExistList = query.Where(p => ls.Contains(p.EqptCode)).ToList();//器具容量
+
+ //var partialErrors2 = from itm in capExistList
+ // join itm1 in list.ToList() on itm.EqptCode equals itm1.EqptCode
+ // where itm.PartCode != itm.PartCode
+ // select new EquipmentRecordErrorDTO()
+ // {
+ // EqptCode = itm.EqptCode,
+ // PartCode = itm.PartCode,
+ // Error = $"录入器具代码{itm.EqptCode}零件代码{itm.PartCode}与器具容量{itm1.EqptCode}零件代码{itm1.PartCode}不符!"
+ // };
+ //errors.AddRange(partialErrors2.ToList());//导入记录和器具容量记录零件不是同一零件
+ //var existList = from itm in list
+ // join itm1 in capExistList
+ // on new { itm.EqptCode, itm.PartCode } equals new { itm1.EqptCode, itm1.PartCode }
+ // select itm;
+ //foreach (var itm in existList)
+ //{
+ // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
+ // cap.Qty =cap.Qty- itm.SumQty;//当前数量
+
+ // if (cap.Qty <0)
+ // {
+ // errors.Add(new EquipmentRecordErrorDTO() { EqptCode = itm.EqptCode, PartCode = itm.PartCode, Error = $"解绑数量小0!" });
+ // }
+ //}
+
+ //foreach (var itm in existList)
+ //{
+ // var cap = capExistList.FirstOrDefault(p => p.EqptCode == itm.EqptCode && p.PartCode == itm.PartCode);//读取当前器具容量
+ // cap.Qty = cap.Qty - itm.SumQty;//当前数量
+ // cap.Percent = cap.Qty / cap.StdQty;
+ //}
+
+ //foreach (var itm in p_ls)
+ //{
+ // itm.Type = EnumEquipmentRecordType.UnBind;
+ // itm.SetId(GuidGenerator.Create());
+ //}
- await _repository.InsertManyAsync(p_ls).ConfigureAwait(false);
+ //await _repository.InsertManyAsync(p_ls).ConfigureAwait(false);
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapRepository.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapRepository.cs
deleted file mode 100644
index 9875da3bf..000000000
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Equipments/IEquipmentLocCapRepository.cs
+++ /dev/null
@@ -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, ISfsBulkRepositoryBase
-{
- Task UpsertAsync(EquipmentLocCap newData);
-}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapDbContextModelCreatingExtensions.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapDbContextModelCreatingExtensions.cs
deleted file mode 100644
index 7055a4055..000000000
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapDbContextModelCreatingExtensions.cs
+++ /dev/null
@@ -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(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 });
-
- });
-
-
- }
-}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
deleted file mode 100644
index 22b627b26..000000000
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/Equipments/EquipmentLocCapEfCoreRepository.cs
+++ /dev/null
@@ -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, IEquipmentLocCapRepository, ISfsBulkRepositoryBase
-{
- public EquipmentLocCapEfCoreRepository(IDbContextProvider dbContextProvider) : base(dbContextProvider)
- {
- }
-
-
-
- public Task UpsertAsync(EquipmentLocCap newData)
- {
- throw new System.NotImplementedException();
- }
-}
diff --git a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContextModelCreatingExtensions.cs b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContextModelCreatingExtensions.cs
index cc1d76eac..7e073a98a 100644
--- a/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContextModelCreatingExtensions.cs
+++ b/be/Modules/Store/src/Win_in.Sfs.Wms.Store.EntityFrameworkCore/StoreDbContextModelCreatingExtensions.cs
@@ -30,7 +30,7 @@ public static class StoreDbContextModelCreatingExtensions
builder.ConfigureWorkOrder(options);
builder.ConfigureEquipmentRecord(options);
- builder.ConfigureEquipmentLocCap(options);
+ //builder.ConfigureEquipmentLocCap(options);