116 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			C#
		
	
	
			
		
		
	
	
			116 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			C#
		
	
	
| using Admin.NET.Core.Service;
 | |
| using Admin.NET.Application.Const;
 | |
| using Admin.NET.Application.Entity;
 | |
| using Microsoft.AspNetCore.Http;
 | |
| namespace Admin.NET.Application;
 | |
| /// <summary>
 | |
| /// 码包配置服务
 | |
| /// </summary>
 | |
| [ApiDescriptionSettings(ApplicationConst.GroupName, Order = 100)]
 | |
| public class CodePakageConfigurationService : IDynamicApiController, ITransient
 | |
| {
 | |
|     private readonly SqlSugarRepository<CodePakageConfiguration> _rep;
 | |
|     public CodePakageConfigurationService(SqlSugarRepository<CodePakageConfiguration> rep)
 | |
|     {
 | |
|         _rep = rep;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 分页查询码包配置
 | |
|     /// </summary>
 | |
|     /// <param name="input"></param>
 | |
|     /// <returns></returns>
 | |
|     [HttpPost]
 | |
|     [ApiDescriptionSettings(Name = "Page")]
 | |
|     public async Task<SqlSugarPagedList<CodePakageConfigurationOutput>> Page(CodePakageConfigurationInput input)
 | |
|     {
 | |
|         var query = _rep.AsQueryable().Where(a => !a.IsDelete)
 | |
|             .WhereIF(!string.IsNullOrWhiteSpace(input.SearchKey), u =>
 | |
|                 u.Name.Contains(input.SearchKey.Trim())
 | |
|             )
 | |
|             .WhereIF(!string.IsNullOrWhiteSpace(input.Name), u => u.Name.Contains(input.Name.Trim()))
 | |
|             .Select<CodePakageConfigurationOutput>();
 | |
|         return await query.OrderBuilder(input).ToPagedListAsync(input.Page, input.PageSize);
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 增加码包配置
 | |
|     /// </summary>
 | |
|     /// <param name="input"></param>
 | |
|     /// <returns></returns>
 | |
|     [HttpPost]
 | |
|     [ApiDescriptionSettings(Name = "Add")]
 | |
|     public async Task<long> Add(AddCodePakageConfigurationInput input)
 | |
|     {
 | |
|         var entity = input.Adapt<CodePakageConfiguration>();
 | |
|         await _rep.InsertAsync(entity);
 | |
|         return entity.Id;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 删除码包配置
 | |
|     /// </summary>
 | |
|     /// <param name="input"></param>
 | |
|     /// <returns></returns>
 | |
|     [HttpPost]
 | |
|     [ApiDescriptionSettings(Name = "Delete")]
 | |
|     public async Task Delete(DeleteCodePakageConfigurationInput input)
 | |
|     {
 | |
|         var entity = await _rep.GetFirstAsync(u => u.Id == input.Id) ?? throw Oops.Oh(ErrorCodeEnum.D1002);
 | |
|         await _rep.FakeDeleteAsync(entity);   //假删除
 | |
|         //await _rep.DeleteAsync(entity);   //真删除
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 更新码包配置
 | |
|     /// </summary>
 | |
|     /// <param name="input"></param>
 | |
|     /// <returns></returns>
 | |
|     [HttpPost]
 | |
|     [ApiDescriptionSettings(Name = "Update")]
 | |
|     public async Task Update(UpdateCodePakageConfigurationInput input)
 | |
|     {
 | |
|         var entity = input.Adapt<CodePakageConfiguration>();
 | |
|         await _rep.AsUpdateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 获取码包配置
 | |
|     /// </summary>
 | |
|     /// <param name="input"></param>
 | |
|     /// <returns></returns>
 | |
|     [HttpGet]
 | |
|     [ApiDescriptionSettings(Name = "Detail")]
 | |
|     public async Task<CodePakageConfiguration> Detail([FromQuery] QueryByIdCodePakageConfigurationInput input)
 | |
|     {
 | |
|         return await _rep.GetFirstAsync(u => u.Id == input.Id);
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 获取码包配置列表
 | |
|     /// </summary>
 | |
|     /// <returns></returns>
 | |
|     [HttpGet]
 | |
|     [ApiDescriptionSettings(Name = "List")]
 | |
|     public async Task<List<CodePakageConfigurationOutput>> List()
 | |
|     {
 | |
|         var list = await _rep.AsQueryable().Where(a => !a.IsDelete).Select<CodePakageConfigurationOutput>().ToListAsync();
 | |
|         return list;
 | |
|     }
 | |
| 
 | |
|     /// <summary>
 | |
|     /// 获取码包示例
 | |
|     /// </summary>
 | |
|     /// <returns></returns>
 | |
|     [HttpPost]
 | |
|     [ApiDescriptionSettings(Name = "GetExample")]
 | |
|     public async Task<string> GetExample(CodePakageConfigurationOutput codePakage)
 | |
|     {
 | |
|         var result = "";
 | |
| 
 | |
|         return result;
 | |
|     }
 | |
| 
 | |
| }
 | |
| 
 |