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 _diseaseRiskRepository; public DiseaseRiskManager( IRepository diseaseRiskRepository ) { _diseaseRiskRepository = diseaseRiskRepository; } /// /// 创建 /// /// public async Task 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(_diseaseRiskRepository) }; } /// /// 更新 /// /// /// /// 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); } /// /// 删除 /// /// /// /// 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); } /// /// 修改排序 置顶,置底 /// /// 需要修改的ID /// 修改方式:1 置顶 2 置底 /// public async Task UpdateSortTopOrBottomAsync(Guid DiseaseRiskId, int SortType) { var entity = await _diseaseRiskRepository.GetAsync(f => f.DiseaseRiskId == DiseaseRiskId); await EntityHelper.UpdateSortTopOrBottomAsync(_diseaseRiskRepository, entity, SortType); } /// /// 修改排序 拖拽 /// /// /// /// /// 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); } } }