8 changed files with 247 additions and 35 deletions
			
			
		- 
					67src/Shentun.ColumnReferencePlugIns/ColumnReferencePlugInsBase.cs
 - 
					25src/Shentun.Peis.Application.Contracts/ColumnReferences/UpdateColumnReferenceInterfaceDto.cs
 - 
					52src/Shentun.Peis.Application/ColumnReferences/ColumnReferenceAppService.cs
 - 
					3src/Shentun.Peis.Domain/ColumnReferenceCodes/ColumnReferenceCode.cs
 - 
					67src/Shentun.Peis.Domain/ColumnReferenceCodes/ColumnReferenceCodeManager.cs
 - 
					3src/Shentun.Peis.Domain/ColumnReferenceInterfaces/ColumnReferenceInterface.cs
 - 
					61src/Shentun.Peis.Domain/ColumnReferenceInterfaces/ColumnReferenceInterfaceManager.cs
 - 
					4test/Shentun.Peis.Application.Tests/ColumnReferenceAppServiceTest.cs
 
@ -0,0 +1,25 @@ | 
			
		|||||
 | 
				using System; | 
			
		||||
 | 
				using System.Collections.Generic; | 
			
		||||
 | 
				using System.Text; | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				namespace Shentun.Peis.ColumnReferences | 
			
		||||
 | 
				{ | 
			
		||||
 | 
				    public class UpdateColumnReferenceInterfaceDto | 
			
		||||
 | 
				    { | 
			
		||||
 | 
				        /// <summary>
 | 
			
		||||
 | 
				        /// 主键ID
 | 
			
		||||
 | 
				        /// </summary>
 | 
			
		||||
 | 
				        public Guid ColumnReferenceId { get; set; } | 
			
		||||
 | 
				        public UpdateColumnReferenceCodeDto AppCode { get; set; } | 
			
		||||
 | 
				        public List<UpdateColumnReferenceInterfaceCodeDto> InterfaceCodes { get; set; } | 
			
		||||
 | 
				    } | 
			
		||||
 | 
				    public class UpdateColumnReferenceCodeDto | 
			
		||||
 | 
				    { | 
			
		||||
 | 
				        public string CodeValue { get; set; } | 
			
		||||
 | 
				    } | 
			
		||||
 | 
				    public class UpdateColumnReferenceInterfaceCodeDto | 
			
		||||
 | 
				    { | 
			
		||||
 | 
				        public string CodeValue { get; set; } | 
			
		||||
 | 
				    } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				} | 
			
		||||
@ -0,0 +1,67 @@ | 
			
		|||||
 | 
				using Shentun.Peis.Models; | 
			
		||||
 | 
				using System; | 
			
		||||
 | 
				using System.Collections.Generic; | 
			
		||||
 | 
				using System.Linq; | 
			
		||||
 | 
				using System.Text; | 
			
		||||
 | 
				using System.Threading.Tasks; | 
			
		||||
 | 
				using Volo.Abp.Domain.Repositories; | 
			
		||||
 | 
				using Volo.Abp.Domain.Services; | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				namespace Shentun.Peis.ColumnReferenceCodes | 
			
		||||
 | 
				{ | 
			
		||||
 | 
				    public class ColumnReferenceCodeManager : DomainService | 
			
		||||
 | 
				    { | 
			
		||||
 | 
				        private readonly IRepository<ColumnReferenceCode, Guid> _repository; | 
			
		||||
 | 
				        private readonly IRepository<ColumnReferenceInterface, Guid> _columnReferenceInterfaceRepository; | 
			
		||||
 | 
				        public ColumnReferenceCodeManager( | 
			
		||||
 | 
				            IRepository<ColumnReferenceCode, Guid> repository, | 
			
		||||
 | 
				            IRepository<ColumnReferenceInterface, Guid> columnReferenceInterfaceRepository | 
			
		||||
 | 
				            ) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            _repository = repository; | 
			
		||||
 | 
				            _columnReferenceInterfaceRepository = columnReferenceInterfaceRepository; | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        /// <summary>
 | 
			
		||||
 | 
				        /// 创建
 | 
			
		||||
 | 
				        /// </summary>
 | 
			
		||||
 | 
				        /// <param name="entity"></param>
 | 
			
		||||
 | 
				        /// <returns></returns>
 | 
			
		||||
 | 
				        public async Task<ColumnReferenceCode> CreateAsync( | 
			
		||||
 | 
				          ColumnReferenceCode entity | 
			
		||||
 | 
				         ) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            DataHelper.CheckEntityIsNull(entity); | 
			
		||||
 | 
				          | 
			
		||||
 | 
				            return new ColumnReferenceCode( | 
			
		||||
 | 
				                GuidGenerator.Create() | 
			
		||||
 | 
				             ) | 
			
		||||
 | 
				            { | 
			
		||||
 | 
				               ColumnReferenceId = entity.ColumnReferenceId, | 
			
		||||
 | 
				               CodeValue = entity.CodeValue, | 
			
		||||
 | 
				               FilterCodeValue = entity.FilterCodeValue, | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				            }; | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        public async Task UpdateAsync( | 
			
		||||
 | 
				         ColumnReferenceCode sourceEntity, | 
			
		||||
 | 
				         ColumnReferenceCode targetEntity | 
			
		||||
 | 
				        ) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            DataHelper.CheckEntityIsNull(sourceEntity); | 
			
		||||
 | 
				            DataHelper.CheckEntityIsNull(targetEntity); | 
			
		||||
 | 
				            | 
			
		||||
 | 
				            targetEntity.CodeValue = sourceEntity.CodeValue; | 
			
		||||
 | 
				            targetEntity.FilterCodeValue = sourceEntity.FilterCodeValue; | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        public async Task CheckAndDeleteAsync(ColumnReferenceCode entity) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            var columnReferenceInterfaces = await _columnReferenceInterfaceRepository.GetListAsync(o => o.ColumnReferenceCodeId == entity.Id); | 
			
		||||
 | 
				            await _columnReferenceInterfaceRepository.DeleteManyAsync(columnReferenceInterfaces); | 
			
		||||
 | 
				            await _repository.DeleteAsync(entity); | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				    } | 
			
		||||
 | 
				} | 
			
		||||
@ -0,0 +1,61 @@ | 
			
		|||||
 | 
				using Shentun.Peis.Models; | 
			
		||||
 | 
				using System; | 
			
		||||
 | 
				using System.Collections.Generic; | 
			
		||||
 | 
				using System.Linq; | 
			
		||||
 | 
				using System.Text; | 
			
		||||
 | 
				using System.Threading.Tasks; | 
			
		||||
 | 
				using Volo.Abp.Domain.Repositories; | 
			
		||||
 | 
				using Volo.Abp.Domain.Services; | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				namespace Shentun.Peis.ColumnReferenceInterfaces | 
			
		||||
 | 
				{ | 
			
		||||
 | 
				    public class ColumnReferenceInterfaceManager : DomainService | 
			
		||||
 | 
				    { | 
			
		||||
 | 
				        private readonly IRepository<ColumnReferenceInterface, Guid> _repository; | 
			
		||||
 | 
				        public ColumnReferenceInterfaceManager( | 
			
		||||
 | 
				            IRepository<ColumnReferenceInterface, Guid> repository | 
			
		||||
 | 
				            ) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            _repository = repository; | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        /// <summary>
 | 
			
		||||
 | 
				        /// 创建
 | 
			
		||||
 | 
				        /// </summary>
 | 
			
		||||
 | 
				        /// <param name="entity"></param>
 | 
			
		||||
 | 
				        /// <returns></returns>
 | 
			
		||||
 | 
				        public async Task<ColumnReferenceInterface> CreateAsync( | 
			
		||||
 | 
				          ColumnReferenceInterface entity | 
			
		||||
 | 
				         ) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            DataHelper.CheckEntityIsNull(entity); | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				            return new ColumnReferenceInterface( | 
			
		||||
 | 
				                GuidGenerator.Create() | 
			
		||||
 | 
				             ) | 
			
		||||
 | 
				            { | 
			
		||||
 | 
				                ColumnReferenceCodeId = entity.ColumnReferenceCodeId, | 
			
		||||
 | 
				                InterfaceCodeValue = entity.InterfaceCodeValue | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				            }; | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        public async Task UpdateAsync( | 
			
		||||
 | 
				        ColumnReferenceInterface sourceEntity, | 
			
		||||
 | 
				        ColumnReferenceInterface targetEntity | 
			
		||||
 | 
				       ) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				            DataHelper.CheckEntityIsNull(sourceEntity); | 
			
		||||
 | 
				            DataHelper.CheckEntityIsNull(targetEntity); | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				            targetEntity.InterfaceCodeValue = sourceEntity.InterfaceCodeValue; | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        public async Task CheckAndDeleteAsync(ColumnReferenceInterface entity) | 
			
		||||
 | 
				        { | 
			
		||||
 | 
				           | 
			
		||||
 | 
				            await _repository.DeleteAsync(entity); | 
			
		||||
 | 
				
 | 
			
		||||
 | 
				        } | 
			
		||||
 | 
				    } | 
			
		||||
 | 
				} | 
			
		||||
						Write
						Preview
					
					
					Loading…
					
					Cancel
						Save
					
		Reference in new issue