From b7fcce0bd38b1490fc4fe54c269e29e972c83654 Mon Sep 17 00:00:00 2001
From: wxd <123@qq.com>
Date: Fri, 3 May 2024 00:11:18 +0800
Subject: [PATCH] =?UTF-8?q?=E6=B1=87=E6=80=BB=E9=A1=B9=E7=9B=AE=E7=B1=BB?=
=?UTF-8?q?=E5=88=AB?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Asbitems/CreateAsbitemDto.cs | 2 +-
.../CollectItemTypeIdInputDto.cs | 11 ++++++++++
.../CollectItemTypeAppService.cs | 21 +++++++++----------
.../CollectItemTypeManager.cs | 15 ++++++++++---
.../HelperDto/UpdateSortManyDto.cs | 16 ++++++++++++++
5 files changed, 50 insertions(+), 15 deletions(-)
create mode 100644 src/Shentun.Peis.Application.Contracts/CollectItemTypes/CollectItemTypeIdInputDto.cs
diff --git a/src/Shentun.Peis.Application.Contracts/Asbitems/CreateAsbitemDto.cs b/src/Shentun.Peis.Application.Contracts/Asbitems/CreateAsbitemDto.cs
index b047a65..3a232bd 100644
--- a/src/Shentun.Peis.Application.Contracts/Asbitems/CreateAsbitemDto.cs
+++ b/src/Shentun.Peis.Application.Contracts/Asbitems/CreateAsbitemDto.cs
@@ -42,7 +42,7 @@ namespace Shentun.Peis.Asbitems
///
/// 汇总项目类别ID
///
- public Guid CollectItemType { get; set; }
+ public Guid CollectItemTypeId { get; set; }
///
diff --git a/src/Shentun.Peis.Application.Contracts/CollectItemTypes/CollectItemTypeIdInputDto.cs b/src/Shentun.Peis.Application.Contracts/CollectItemTypes/CollectItemTypeIdInputDto.cs
new file mode 100644
index 0000000..8722bd5
--- /dev/null
+++ b/src/Shentun.Peis.Application.Contracts/CollectItemTypes/CollectItemTypeIdInputDto.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Text;
+
+namespace Shentun.Peis.CollectItemTypes
+{
+ public class CollectItemTypeIdInputDto
+ {
+ public Guid Id { get; set; }
+ }
+}
diff --git a/src/Shentun.Peis.Application/CollectItemTypes/CollectItemTypeAppService.cs b/src/Shentun.Peis.Application/CollectItemTypes/CollectItemTypeAppService.cs
index 4f58e8d..6c15e08 100644
--- a/src/Shentun.Peis.Application/CollectItemTypes/CollectItemTypeAppService.cs
+++ b/src/Shentun.Peis.Application/CollectItemTypes/CollectItemTypeAppService.cs
@@ -42,12 +42,12 @@ namespace Shentun.Peis.CollectItemTypes
///
/// 根据ID查实体内容
///
- ///
+ ///
///
- [HttpPost("api/app/CollectItemType/Get")]
- public async Task GetAsync(Guid id)
+ [HttpPost("api/app/CollectItemType/GetById")]
+ public async Task GetByIdAsync(CollectItemTypeIdInputDto input)
{
- var entity = await _collectItemTypeRepository.GetAsync(id);
+ var entity = await _collectItemTypeRepository.GetAsync(input.Id);
var entityDto = ObjectMapper.Map(entity);
entityDto.CreatorName = _cacheService.GetSurnameAsync(entityDto.CreatorId).Result;
entityDto.LastModifierName = _cacheService.GetSurnameAsync(entityDto.LastModifierId).Result;
@@ -129,12 +129,12 @@ namespace Shentun.Peis.CollectItemTypes
///
/// 删除
///
- ///
+ ///
///
[HttpPost("api/app/CollectItemType/Delete")]
- public async Task DeleteAsync(Guid id)
+ public async Task DeleteAsync(CollectItemTypeIdInputDto input)
{
- var entity = await _collectItemTypeRepository.GetAsync(id);
+ var entity = await _collectItemTypeRepository.GetAsync(input.Id);
await _manager.CheckAndDeleteAsync(entity);
}
@@ -142,13 +142,12 @@ namespace Shentun.Peis.CollectItemTypes
///
/// 修改排序 置顶,置底
///
- /// 需要修改的ID
- /// 修改方式:1 置顶 2 置底
+ ///
///
[HttpPost("api/app/CollectItemType/UpdateManySort")]
- public async Task UpdateManySortAsync(Guid id, int SortType)
+ public async Task UpdateManySortAsync(UpdateManySortInput input)
{
- await _manager.UpdateManySortAsync(id, SortType);
+ await _manager.UpdateManySortAsync(input.Id, input.SortType);
}
///
diff --git a/src/Shentun.Peis.Domain/CollectItemTypes/CollectItemTypeManager.cs b/src/Shentun.Peis.Domain/CollectItemTypes/CollectItemTypeManager.cs
index 802f338..74e7b41 100644
--- a/src/Shentun.Peis.Domain/CollectItemTypes/CollectItemTypeManager.cs
+++ b/src/Shentun.Peis.Domain/CollectItemTypes/CollectItemTypeManager.cs
@@ -7,6 +7,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
+using Volo.Abp;
using Volo.Abp.Domain.Entities;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.Domain.Services;
@@ -17,12 +18,15 @@ namespace Shentun.Peis.CollectItemTypes
{
private readonly IRepository _repository;
+ private readonly IRepository _asbitemRepository;
+
public CollectItemTypeManager(
- IRepository repository
- )
+ IRepository repository,
+ IRepository asbitemRepository)
{
_repository = repository;
+ _asbitemRepository = asbitemRepository;
}
///
@@ -66,6 +70,11 @@ namespace Shentun.Peis.CollectItemTypes
public async Task CheckAndDeleteAsync(CollectItemType entity)
{
+ var asbitemEnt = await _asbitemRepository.FirstOrDefaultAsync(m => m.CollectItemTypeId == entity.Id);
+ if (asbitemEnt != null)
+ {
+ throw new UserFriendlyException($"汇总项目类别\"{entity.DisplayName}\"已被组合项目\"{asbitemEnt.DisplayName}\"使用,不能删除");
+ }
await _repository.DeleteAsync(entity);
}
@@ -101,7 +110,7 @@ namespace Shentun.Peis.CollectItemTypes
DataHelper.CheckEntityIsNull(entity);
DataHelper.CheckStringIsNull(entity.DisplayName, "名称");
DataHelper.CheckGuidIsDefaultValue(entity.InvoiceItemTypeId, "配置参数");
-
+
}
}
}
diff --git a/src/Shentun.Peis.Domain/HelperDto/UpdateSortManyDto.cs b/src/Shentun.Peis.Domain/HelperDto/UpdateSortManyDto.cs
index 3c5da08..36f19f8 100644
--- a/src/Shentun.Peis.Domain/HelperDto/UpdateSortManyDto.cs
+++ b/src/Shentun.Peis.Domain/HelperDto/UpdateSortManyDto.cs
@@ -54,4 +54,20 @@ namespace Shentun.Peis.HelperDto
public int DisplayOrder { get; set; }
}
+ ///
+ /// 修改排序 置顶,置底
+ ///
+ public class UpdateManySortInput
+ {
+ ///
+ /// 需要修改的ID
+ ///
+ public Guid Id { get; set; }
+
+ ///
+ /// 修改方式:1 置顶 2 置底
+ ///
+ public int SortType { get; set; }
+ }
+
}