LqBmzbService.cs 9.25 KB
// using NCC.Common.Core.Manager;
// using NCC.Common.Enum;
// using NCC.Common.Extension;
// using NCC.Common.Filter;
// using NCC.Dependency;
// using NCC.DynamicApiController;
// using NCC.FriendlyException;
// using NCC.Extend.Interfaces.LqBmzb;
// using Mapster;
// using Microsoft.AspNetCore.Mvc;
// using SqlSugar;
// using System;
// using System.Collections.Generic;
// using System.Linq;
// using System.Threading.Tasks;
// using NCC.Extend.Entitys.lq_bmzb;
// using NCC.Extend.Entitys.Dto.LqBmzb;
// using Yitter.IdGenerator;
// using NCC.Common.Helper;
// using NCC.JsonSerialization;
// using NCC.Common.Model.NPOI;
// using NCC.Common.Configuration;
// using NCC.DataEncryption;
// using NCC.ClayObject;

// namespace NCC.Extend.LqBmzb
// {
//     /// <summary>
//     /// 部门管理服务
//     /// </summary>
//     [ApiDescriptionSettings(Tag = "Extend",Name = "LqBmzb", Order = 200)]
//     [Route("api/Extend/[controller]")]
//     public class LqBmzbService : ILqBmzbService, IDynamicApiController, ITransient
//     {
//         private readonly ISqlSugarRepository<LqBmzbEntity> _lqBmzbRepository;
//         private readonly SqlSugarScope _db;
//         private readonly IUserManager _userManager;

//         /// <summary>
//         /// 初始化一个<see cref="LqBmzbService"/>类型的新实例
//         /// </summary>
//         public LqBmzbService(
//             ISqlSugarRepository<LqBmzbEntity> lqBmzbRepository,
//             IUserManager userManager)
//         {
//             _lqBmzbRepository = lqBmzbRepository;            
//             _db = _lqBmzbRepository.Context;
//             _userManager = userManager;
//         }

//         /// <summary>
//         /// 获取部门管理
//         /// </summary>
//         /// <param name="id">参数</param>
//         /// <returns></returns>
//         [HttpGet("{id}")]
//         public async Task<dynamic> GetInfo(string id)
//         {
//             var entity = await _db.Queryable<LqBmzbEntity>().FirstAsync(p => p.Id == id);
//             var output = entity.Adapt<LqBmzbInfoOutput>();
//             return output;
//         }

//         /// <summary>
// 		/// 获取部门管理列表
// 		/// </summary>
// 		/// <param name="input">请求参数</param>
// 		/// <returns></returns>
//         [HttpGet("")]
//         public async Task<dynamic> GetList([FromQuery] LqBmzbListQueryInput input)
//         {
//             var sidx = input.sidx == null ? "id" : input.sidx;
//             var data = await _db.Queryable<LqBmzbEntity>()
//                 .WhereIF(!string.IsNullOrEmpty(input.id), p => p.Id.Contains(input.id))
//                 .WhereIF(!string.IsNullOrEmpty(input.bmmc), p => p.Bmmc.Contains(input.bmmc))
//                 .WhereIF(!string.IsNullOrEmpty(input.bmfl), p => p.Bmfl.Equals(input.bmfl))
//                 .Select(it=> new LqBmzbListOutput
//                 {
//                     id = it.Id,
//                     bmmc=it.Bmmc,
//                     bmfl=it.Bmfl,
//                 }).MergeTable().OrderBy(sidx+" "+input.sort).ToPagedListAsync(input.currentPage, input.pageSize);
//                 return PageResult<LqBmzbListOutput>.SqlSugarPageResult(data);
//         }

//         /// <summary>
//         /// 新建部门管理
//         /// </summary>
//         /// <param name="input">参数</param>
//         /// <returns></returns>
//         [HttpPost("")]
//         public async Task Create([FromBody] LqBmzbCrInput input)
//         {
//             var userInfo = await _userManager.GetUserInfo();
//             var entity = input.Adapt<LqBmzbEntity>();
//             entity.Id = YitIdHelper.NextId().ToString();
//             var isOk = await _db.Insertable(entity).IgnoreColumns(ignoreNullColumn: true).ExecuteCommandAsync();
//             if (!(isOk > 0)) throw NCCException.Oh(ErrorCode.COM1000);
//         }

//         /// <summary>
// 		/// 获取部门管理无分页列表
// 		/// </summary>
// 		/// <param name="input">请求参数</param>
// 		/// <returns></returns>
//         [NonAction]
//         public async Task<dynamic> GetNoPagingList([FromQuery] LqBmzbListQueryInput input)
//         {
//             var sidx = input.sidx == null ? "id" : input.sidx;
//             var data = await _db.Queryable<LqBmzbEntity>()
//                 .WhereIF(!string.IsNullOrEmpty(input.id), p => p.Id.Contains(input.id))
//                 .WhereIF(!string.IsNullOrEmpty(input.bmmc), p => p.Bmmc.Contains(input.bmmc))
//                 .WhereIF(!string.IsNullOrEmpty(input.bmfl), p => p.Bmfl.Equals(input.bmfl))
//                 .Select(it=> new LqBmzbListOutput
//                 {
//                     id = it.Id,
//                     bmmc=it.Bmmc,
//                     bmfl=it.Bmfl,
//                 }).MergeTable().OrderBy(sidx+" "+input.sort).ToListAsync();
//                 return data;
//         }

//         /// <summary>
// 		/// 导出部门管理
// 		/// </summary>
// 		/// <param name="input">请求参数</param>
// 		/// <returns></returns>
//         [HttpGet("Actions/Export")]
//         public async Task<dynamic> Export([FromQuery] LqBmzbListQueryInput input)
//         {
//             var userInfo = await _userManager.GetUserInfo();
//             var exportData = new List<LqBmzbListOutput>();
//             if (input.dataType == 0)
//             {
//                 var data = Clay.Object(await this.GetList(input));
//                 exportData = data.Solidify<PageResult<LqBmzbListOutput>>().list;
//             }
//             else
//             {
//                 exportData = await this.GetNoPagingList(input);
//             }
//             List<ParamsModel> paramList = "[{\"value\":\"部门编号\",\"field\":\"id\"},{\"value\":\"部门名称\",\"field\":\"bmmc\"},{\"value\":\"部门分类\",\"field\":\"bmfl\"},]".ToList<ParamsModel>();           
//             ExcelConfig excelconfig = new ExcelConfig();
//             excelconfig.FileName = "部门管理.xls";
//             excelconfig.HeadFont = "微软雅黑";
//             excelconfig.HeadPoint = 10;
//             excelconfig.IsAllSizeColumn = true;
//             excelconfig.ColumnModel = new List<ExcelColumnModel>();
//             List<string> selectKeyList = input.selectKey.Split(',').ToList();
//             foreach (var item in selectKeyList)
//             {
//                 var isExist = paramList.Find(p => p.field == item);
//                 if (isExist != null)
//                 {
//                     excelconfig.ColumnModel.Add(new ExcelColumnModel() { Column = isExist.field, ExcelColumn = isExist.value });
//                 }
//             }
//             var addPath = FileVariable.TemporaryFilePath + excelconfig.FileName;
//             ExcelExportHelper<LqBmzbListOutput>.Export(exportData, excelconfig, addPath);
//             var fileName = _userManager.UserId + "|" + addPath + "|xls";
//             var output = new
//             {
//                 name = excelconfig.FileName,
//                 url = "/api/File/Download?encryption=" + DESCEncryption.Encrypt(fileName, "NCC")
//             };
//             return output;
//         }

//         /// <summary>
//         /// 批量删除部门管理
//         /// </summary>
//         /// <param name="ids">主键数组</param>
//         /// <returns></returns>
//         [HttpPost("batchRemove")]
//         public async Task BatchRemove([FromBody] List<string> ids)
//         {
//             var entitys = await _db.Queryable<LqBmzbEntity>().In(it => it.Id, ids).ToListAsync();
//             if (entitys.Count > 0)
//             {
//                 try
//                 {
//                     //开启事务
//                     _db.BeginTran();
//                     //批量删除部门管理
//                     await _db.Deleteable<LqBmzbEntity>().In(d => d.Id,ids).ExecuteCommandAsync();
//                     //关闭事务
//                     _db.CommitTran();
//                 }
//                 catch (Exception)
//                 {
//                     //回滚事务
//                     _db.RollbackTran();
//                     throw NCCException.Oh(ErrorCode.COM1002);
//                 }
//             }
//         }

//         /// <summary>
//         /// 更新部门管理
//         /// </summary>
//         /// <param name="id">主键</param>
//         /// <param name="input">参数</param>
//         /// <returns></returns>
//         [HttpPut("{id}")]
//         public async Task Update(string id, [FromBody] LqBmzbUpInput input)
//         {
//             var entity = input.Adapt<LqBmzbEntity>();
//             var isOk = await _db.Updateable(entity).IgnoreColumns(ignoreAllNullColumns: true).ExecuteCommandAsync();
//             if (!(isOk > 0)) throw NCCException.Oh(ErrorCode.COM1001);
//         }

//         /// <summary>
//         /// 删除部门管理
//         /// </summary>
//         /// <returns></returns>
//         [HttpDelete("{id}")]
//         public async Task Delete(string id)
//         {
//             var entity = await _db.Queryable<LqBmzbEntity>().FirstAsync(p => p.Id == id);
//             _ = entity ?? throw NCCException.Oh(ErrorCode.COM1005);
//             var isOk = await _db.Deleteable<LqBmzbEntity>().Where(d => d.Id == id).ExecuteCommandAsync();
//             if (!(isOk > 0)) throw NCCException.Oh(ErrorCode.COM1002);
//         }
//     }
// }