Browse Source

汇总项目类别

bjmzak
wxd 2 years ago
parent
commit
b7fcce0bd3
  1. 2
      src/Shentun.Peis.Application.Contracts/Asbitems/CreateAsbitemDto.cs
  2. 11
      src/Shentun.Peis.Application.Contracts/CollectItemTypes/CollectItemTypeIdInputDto.cs
  3. 21
      src/Shentun.Peis.Application/CollectItemTypes/CollectItemTypeAppService.cs
  4. 15
      src/Shentun.Peis.Domain/CollectItemTypes/CollectItemTypeManager.cs
  5. 16
      src/Shentun.Peis.Domain/HelperDto/UpdateSortManyDto.cs

2
src/Shentun.Peis.Application.Contracts/Asbitems/CreateAsbitemDto.cs

@ -42,7 +42,7 @@ namespace Shentun.Peis.Asbitems
/// <summary>
/// 汇总项目类别ID
/// </summary>
public Guid CollectItemType { get; set; }
public Guid CollectItemTypeId { get; set; }
/// <summary>

11
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; }
}
}

21
src/Shentun.Peis.Application/CollectItemTypes/CollectItemTypeAppService.cs

@ -42,12 +42,12 @@ namespace Shentun.Peis.CollectItemTypes
/// <summary>
/// 根据ID查实体内容
/// </summary>
/// <param name="id"></param>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost("api/app/CollectItemType/Get")]
public async Task<CollectItemTypeDto> GetAsync(Guid id)
[HttpPost("api/app/CollectItemType/GetById")]
public async Task<CollectItemTypeDto> GetByIdAsync(CollectItemTypeIdInputDto input)
{
var entity = await _collectItemTypeRepository.GetAsync(id);
var entity = await _collectItemTypeRepository.GetAsync(input.Id);
var entityDto = ObjectMapper.Map<CollectItemType, CollectItemTypeDto>(entity);
entityDto.CreatorName = _cacheService.GetSurnameAsync(entityDto.CreatorId).Result;
entityDto.LastModifierName = _cacheService.GetSurnameAsync(entityDto.LastModifierId).Result;
@ -129,12 +129,12 @@ namespace Shentun.Peis.CollectItemTypes
/// <summary>
/// 删除
/// </summary>
/// <param name="id"></param>
/// <param name="input"></param>
/// <returns></returns>
[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
/// <summary>
/// 修改排序 置顶,置底
/// </summary>
/// <param name="id">需要修改的ID</param>
/// <param name="SortType">修改方式:1 置顶 2 置底</param>
/// <param name="input"></param>
/// <returns></returns>
[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);
}
/// <summary>

15
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<CollectItemType, Guid> _repository;
private readonly IRepository<Asbitem, Guid> _asbitemRepository;
public CollectItemTypeManager(
IRepository<CollectItemType, Guid> repository
)
IRepository<CollectItemType, Guid> repository,
IRepository<Asbitem, Guid> asbitemRepository)
{
_repository = repository;
_asbitemRepository = asbitemRepository;
}
/// <summary>
@ -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, "配置参数");
}
}
}

16
src/Shentun.Peis.Domain/HelperDto/UpdateSortManyDto.cs

@ -54,4 +54,20 @@ namespace Shentun.Peis.HelperDto
public int DisplayOrder { get; set; }
}
/// <summary>
/// 修改排序 置顶,置底
/// </summary>
public class UpdateManySortInput
{
/// <summary>
/// 需要修改的ID
/// </summary>
public Guid Id { get; set; }
/// <summary>
/// 修改方式:1 置顶 2 置底
/// </summary>
public int SortType { get; set; }
}
}
Loading…
Cancel
Save