9 changed files with 341 additions and 0 deletions
-
16src/Shentun.WebPeis.Application.Contracts/DiseaseRisks/CreateDiseaseRiskDto.cs
-
23src/Shentun.WebPeis.Application.Contracts/DiseaseRisks/DiseaseRiskDto.cs
-
11src/Shentun.WebPeis.Application.Contracts/DiseaseRisks/DiseaseRiskIdInputDto.cs
-
20src/Shentun.WebPeis.Application.Contracts/DiseaseRisks/UpdateDiseaseRiskDto.cs
-
104src/Shentun.WebPeis.Application/DiseaseRisks/DiseaseRiskAppService.cs
-
6src/Shentun.WebPeis.Application/WebPeisApplicationAutoMapperProfile.cs
-
123src/Shentun.WebPeis.Domain/DiseaseRisks/DiseaseRiskManager.cs
-
20src/Shentun.WebPeis.Domain/DiseaseRisks/UpdateDiseaseRiskSortDragDto.cs
-
18src/Shentun.WebPeis.Domain/DiseaseRisks/UpdateDiseaseRiskSortTopOrBottomInputDto.cs
@ -0,0 +1,16 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class CreateDiseaseRiskDto |
|||
{ |
|||
|
|||
/// <summary>
|
|||
/// 名称
|
|||
/// </summary>
|
|||
public string DiseaseRiskName { get; set; } = null!; |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,23 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class DiseaseRiskDto : AuditedEntityDtoName |
|||
{ |
|||
/// <summary>
|
|||
/// 主键
|
|||
/// </summary>
|
|||
public Guid DiseaseRiskId { get; set; } |
|||
/// <summary>
|
|||
/// 名称
|
|||
/// </summary>
|
|||
|
|||
public string DiseaseRiskName { get; set; } = null!; |
|||
|
|||
public string SimpleCode { get; set; } = null!; |
|||
|
|||
public int DisplayOrder { get; set; } |
|||
} |
|||
} |
|||
@ -0,0 +1,11 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class DiseaseRiskIdInputDto |
|||
{ |
|||
public Guid DiseaseRiskId { get; set; } |
|||
} |
|||
} |
|||
@ -0,0 +1,20 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Text; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class UpdateDiseaseRiskDto |
|||
{ |
|||
/// <summary>
|
|||
/// 主键
|
|||
/// </summary>
|
|||
public Guid DiseaseRiskId { get; set; } |
|||
/// <summary>
|
|||
/// 名称
|
|||
/// </summary>
|
|||
|
|||
public string DiseaseRiskName { get; set; } = null!; |
|||
|
|||
} |
|||
} |
|||
@ -0,0 +1,104 @@ |
|||
using Microsoft.AspNetCore.Authorization; |
|||
using Microsoft.AspNetCore.Mvc; |
|||
using Shentun.WebPeis.Models; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Application.Services; |
|||
using Volo.Abp.Domain.Repositories; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
/// <summary>
|
|||
/// 疾病风险
|
|||
/// </summary>
|
|||
[ApiExplorerSettings(GroupName = "Work")] |
|||
[Authorize] |
|||
public class DiseaseRiskAppService : ApplicationService |
|||
{ |
|||
private readonly IRepository<DiseaseRisk> _diseaseRiskRepository; |
|||
private readonly DiseaseRiskManager _diseaseRiskManager; |
|||
private readonly CacheService _cacheService; |
|||
|
|||
public DiseaseRiskAppService( |
|||
IRepository<DiseaseRisk> diseaseRiskRepository, |
|||
DiseaseRiskManager diseaseRiskManager, |
|||
CacheService cacheService) |
|||
{ |
|||
_diseaseRiskRepository = diseaseRiskRepository; |
|||
_diseaseRiskManager = diseaseRiskManager; |
|||
_cacheService = cacheService; |
|||
} |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 创建
|
|||
/// </summary>
|
|||
/// <returns></returns>
|
|||
[HttpPost("api/app/DiseaseRisk/Create")] |
|||
public async Task<DiseaseRiskDto> CreateAsync(CreateDiseaseRiskDto input) |
|||
{ |
|||
var createEntity = ObjectMapper.Map<CreateDiseaseRiskDto, DiseaseRisk>(input); |
|||
createEntity.DiseaseRiskId = GuidGenerator.Create(); |
|||
var entity = await _diseaseRiskManager.CreateAsync(createEntity); |
|||
entity = await _diseaseRiskRepository.InsertAsync(entity); |
|||
var dto = ObjectMapper.Map<DiseaseRisk, DiseaseRiskDto>(entity); |
|||
dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId); |
|||
dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId); |
|||
return dto; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 更新
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost("api/app/DiseaseRisk/Update")] |
|||
public async Task<DiseaseRiskDto> UpdateAsync(UpdateDiseaseRiskDto input) |
|||
{ |
|||
var entity = await _diseaseRiskRepository.GetAsync(f => f.DiseaseRiskId == input.DiseaseRiskId); |
|||
var sourceEntity = ObjectMapper.Map<UpdateDiseaseRiskDto, DiseaseRisk>(input); |
|||
_diseaseRiskManager.UpdateAsync(sourceEntity, entity); |
|||
entity = await _diseaseRiskRepository.UpdateAsync(entity); |
|||
var dto = ObjectMapper.Map<DiseaseRisk, DiseaseRiskDto>(entity); |
|||
dto.CreatorName = await _cacheService.GetSurnameAsync(dto.CreatorId); |
|||
dto.LastModifierName = await _cacheService.GetSurnameAsync(dto.LastModifierId); |
|||
return dto; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 删除
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost("api/app/DiseaseRisk/Delete")] |
|||
public async Task DeleteAsync(DiseaseRiskIdInputDto input) |
|||
{ |
|||
await _diseaseRiskManager.CheckAndDeleteAsync(input.DiseaseRiskId); |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改排序 置顶,置底
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost("api/app/DiseaseRisk/UpdateSortTopOrBottom")] |
|||
public async Task UpdateSortTopOrBottomAsync(UpdateDiseaseRiskSortTopOrBottomInputDto input) |
|||
{ |
|||
await _diseaseRiskManager.UpdateSortTopOrBottomAsync(input.DiseaseRiskId, input.SortType); |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 修改排序 拖拽
|
|||
/// </summary>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
[HttpPost("api/app/DiseaseRisk/UpdateSortDragAsync")] |
|||
public async Task UpdateSortDragAsync(UpdateDiseaseRiskSortDragDto input) |
|||
{ |
|||
await _diseaseRiskManager.UpdateSortDragAsync(input); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,123 @@ |
|||
using Shentun.Utilities; |
|||
using Shentun.WebPeis.Models; |
|||
using Shentun.WebPeis.Questions; |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
using Volo.Abp.Domain.Entities; |
|||
using Volo.Abp.Domain.Repositories; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class DiseaseRiskManager |
|||
{ |
|||
|
|||
private readonly IRepository<DiseaseRisk> _diseaseRiskRepository; |
|||
|
|||
public DiseaseRiskManager( |
|||
IRepository<DiseaseRisk> diseaseRiskRepository |
|||
) |
|||
{ |
|||
_diseaseRiskRepository = diseaseRiskRepository; |
|||
} |
|||
|
|||
/// <summary>
|
|||
/// 创建
|
|||
/// </summary>
|
|||
/// <returns></returns>
|
|||
public async Task<DiseaseRisk> CreateAsync(DiseaseRisk entity) |
|||
{ |
|||
DataHelper.CheckEntityIsNull(entity); |
|||
//DataHelper.CheckStringIsNull(entity.QuestionTypeName, "名称");
|
|||
|
|||
return new DiseaseRisk |
|||
{ |
|||
DiseaseRiskId = entity.DiseaseRiskId, |
|||
DiseaseRiskName = entity.DiseaseRiskName, |
|||
SimpleCode = LanguageConverter.GetPYSimpleCode(entity.DiseaseRiskName), |
|||
DisplayOrder = await EntityHelper.CreateMaxDisplayOrder<DiseaseRisk>(_diseaseRiskRepository) |
|||
}; |
|||
} |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 更新
|
|||
/// </summary>
|
|||
/// <param name="sourceEntity"></param>
|
|||
/// <param name="targetEntity"></param>
|
|||
/// <returns></returns>
|
|||
public void UpdateAsync( |
|||
DiseaseRisk sourceEntity, |
|||
DiseaseRisk targetEntity |
|||
) |
|||
{ |
|||
DataHelper.CheckEntityIsNull(sourceEntity); |
|||
DataHelper.CheckEntityIsNull(targetEntity); |
|||
//DataHelper.CheckStringIsNull(sourceEntity.QuestionTypeName, "名称");
|
|||
|
|||
targetEntity.DiseaseRiskName = sourceEntity.DiseaseRiskName; |
|||
targetEntity.SimpleCode = LanguageConverter.GetPYSimpleCode(sourceEntity.DiseaseRiskName); |
|||
} |
|||
|
|||
|
|||
|
|||
/// <summary>
|
|||
/// 删除
|
|||
/// </summary>
|
|||
/// <param name="DiseaseRiskId"></param>
|
|||
/// <returns></returns>
|
|||
/// <exception cref="UserFriendlyException"></exception>
|
|||
public async Task CheckAndDeleteAsync(Guid DiseaseRiskId) |
|||
{ |
|||
|
|||
//var questionEnt = await _questionRepository.FirstOrDefaultAsync(m => m.QuestionTypeId == QuestionTypeId);
|
|||
//if (questionEnt != null)
|
|||
//{
|
|||
// throw new UserFriendlyException($"问卷类别已被使用,不能删除");
|
|||
//}
|
|||
|
|||
await _diseaseRiskRepository.DeleteAsync(d => d.DiseaseRiskId == DiseaseRiskId); |
|||
|
|||
} |
|||
|
|||
|
|||
/// <summary>
|
|||
/// 修改排序 置顶,置底
|
|||
/// </summary>
|
|||
/// <param name="id">需要修改的ID</param>
|
|||
/// <param name="SortType">修改方式:1 置顶 2 置底</param>
|
|||
/// <returns></returns>
|
|||
public async Task UpdateSortTopOrBottomAsync(Guid DiseaseRiskId, int SortType) |
|||
{ |
|||
var entity = await _diseaseRiskRepository.GetAsync(f => f.DiseaseRiskId == DiseaseRiskId); |
|||
await EntityHelper.UpdateSortTopOrBottomAsync(_diseaseRiskRepository, entity, SortType); |
|||
} |
|||
|
|||
|
|||
|
|||
/// <summary>
|
|||
/// 修改排序 拖拽
|
|||
/// </summary>
|
|||
/// <typeparam name="TEntity"></typeparam>
|
|||
/// <param name="repository"></param>
|
|||
/// <param name="input"></param>
|
|||
/// <returns></returns>
|
|||
public async Task UpdateSortDragAsync(UpdateDiseaseRiskSortDragDto input) |
|||
{ |
|||
var entitylist = await _diseaseRiskRepository.GetListAsync(o => input.ItemList.Select(s => s.DiseaseRiskId).Contains(o.DiseaseRiskId)); |
|||
|
|||
foreach (var entity in entitylist) |
|||
{ |
|||
foreach (var item in input.ItemList) |
|||
{ |
|||
if (item.DiseaseRiskId == entity.DiseaseRiskId) |
|||
entity.DisplayOrder = item.DisplayOrder; |
|||
} |
|||
} |
|||
|
|||
await _diseaseRiskRepository.UpdateManyAsync(entitylist); |
|||
} |
|||
} |
|||
} |
|||
@ -0,0 +1,20 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class UpdateDiseaseRiskSortDragDto |
|||
{ |
|||
public List<UpdateDiseaseRiskSortDragDetail> ItemList { get; set; } |
|||
} |
|||
|
|||
|
|||
public class UpdateDiseaseRiskSortDragDetail |
|||
{ |
|||
public Guid DiseaseRiskId { get; set; } |
|||
public int DisplayOrder { get; set; } |
|||
} |
|||
} |
|||
@ -0,0 +1,18 @@ |
|||
using System; |
|||
using System.Collections.Generic; |
|||
using System.Linq; |
|||
using System.Text; |
|||
using System.Threading.Tasks; |
|||
|
|||
namespace Shentun.WebPeis.DiseaseRisks |
|||
{ |
|||
public class UpdateDiseaseRiskSortTopOrBottomInputDto |
|||
{ |
|||
public Guid DiseaseRiskId { get; set; } |
|||
|
|||
/// <summary>
|
|||
/// 修改方式:1 置顶 2 置底
|
|||
/// </summary>
|
|||
public int SortType { get; set; } |
|||
} |
|||
} |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue