You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							123 lines
						
					
					
						
							4.0 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							123 lines
						
					
					
						
							4.0 KiB
						
					
					
				
								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);
							 | 
						|
								        }
							 | 
						|
								    }
							 | 
						|
								}
							 |