123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335 |
- using Microsoft.AspNetCore.Authorization;
- using Microsoft.AspNetCore.Mvc;
- using Microsoft.Extensions.Logging;
- using Ropin.Inspection.Api.Common;
- using Ropin.Inspection.Model;
- using Ropin.Inspection.Model.Entities;
- using Ropin.Inspection.Service;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Threading.Tasks;
- namespace Ropin.Inspection.Api.Controllers
- {
- [AllowAnonymous]
- public class TsysLicenseController : BaseController
- {
- public ILogger<TsysLicenseController> _logger { get; }
- private readonly ITsysLicenseService _TsysLicenseService;
- /// <summary>
- /// 构造函数
- /// </summary>
- /// <param name="TsysLicenseService"></param>
- /// <param name="logger"></param>
- public TsysLicenseController(ITsysLicenseService TsysLicenseService, ILogger<TsysLicenseController> logger)
- {
- _TsysLicenseService = TsysLicenseService;
- _logger = logger;
- }
- /// <summary>
- /// 通过ID获取许可证信息
- /// </summary>
- /// <param name="id"></param>
- /// <returns></returns>
- [HttpGet("GetLicenseAsync/{id}")]
- public async Task<ApiResult> GetLicenseAsync(Guid id)
- {
- if (Guid.Empty == id)
- {
- return new ApiResult(ReturnCode.GeneralError);
- }
- try
- {
- var content = await _TsysLicenseService.GetByIdAsync(id);
- return new ApiResult<TsysLicenseViewModel>(content);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 获取所有许可证
- /// </summary>
- /// <returns></returns>
- [HttpGet("GetLicensesAsync")]
- public async Task<ApiResult> GetLicensesAsync()
- {
- try
- {
- var contentList = await _TsysLicenseService.GetAllAsync();
- return new ApiResult<IEnumerable<TsysLicenseViewModel>>(contentList);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 根据登录用户组织架构类型获取许可证,管理公司获取所有,其他获取自己的许可证
- /// </summary>
- /// <returns></returns>
- [HttpGet("GetAllByOrgTypeAsync")]
- public async Task<ApiResult> GetAllByOrgTypeAsync()
- {
- try
- {
- var contentList = await _TsysLicenseService.GetAllByOrgTypeAsync();
- return new ApiResult<IEnumerable<TsysLicenseViewModel>>(contentList);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
-
- /// <summary>
- /// 获取所有许可证类型
- /// </summary>
- /// <returns></returns>
- [HttpGet("GetAllLicensesTypeAsync/{name=}")]
- public async Task<ApiResult> GetAllLicensesTypeAsync(string name)
- {
- try
- {
- var contentList = await _TsysLicenseService.GetALLLicenseType();
- if (string.IsNullOrWhiteSpace(name))
- return new ApiResult<IEnumerable<TsysLicenseTypeViewModel>>(contentList);
- else
- return new ApiResult<IEnumerable<TsysLicenseTypeViewModel>>(contentList.Where(x => x.C_Name.Contains(name)));
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 通过许可证类型code获取对应的权限
- /// </summary>
- /// <returns></returns>
- [HttpGet("GetLicensePrivByType/{typeCode}")]
- public async Task<ApiResult> GetLicensePrivByType(string typeCode)
- {
- if (string.IsNullOrEmpty(typeCode))
- {
- return new ApiResult(ReturnCode.ArgsError);
- }
- try
- {
- var content = await _TsysLicenseService.GetLicensePrivByType(typeCode);
- return new ApiResult<TsysLicenseTypePrivViewModel>(content);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 创建许可证类型code对应的权限,更新也用此接口
- /// </summary>
- /// <param name="typeCode"></param>
- /// <param name="privCodes"></param>
- /// <returns></returns>
- [HttpPost("CreateLicensePrivByType/{typeCode}")]
- public async Task<ApiResult> CreateLicensePrivByType(string typeCode,IEnumerable<string> privCodes)
- {
- if (string.IsNullOrEmpty(typeCode) || privCodes == null || !privCodes.Any())
- {
- return new ApiResult(ReturnCode.ArgsError);
- }
- try
- {
- await _TsysLicenseService.CreateLicensePrivByType(typeCode, privCodes);
- return new ApiResult(ReturnCode.Success);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 获取选择的权限
- /// </summary>
- /// <returns></returns>
- [HttpGet("GetLicensePrivBy")]
- public async Task<ApiResult> GetLicensePrivBy()
- {
- try
- {
- var content = await _TsysLicenseService.GetLicensePrivByType(null);
- return new ApiResult<TsysLicenseTypePrivViewModel>(content);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 通过License类型ID取相关权限,返回非树状数据结构
- /// </summary>
- /// <param name="licenseTypeId"></param>
- /// <returns></returns>
- [HttpGet("GetLicensePrivsByTypeIdAsync")]
- public async Task<ApiResult> GetLicensePrivsByTypeIdAsync(string licenseTypeId)
- {
- if (string.IsNullOrEmpty(licenseTypeId))
- {
- return new ApiResult(ReturnCode.ArgsError);
- }
- try
- {
- var content = await _TsysLicenseService.GetLicensePrivsByTypeIdAsync(licenseTypeId);
- return new ApiResult<IEnumerable<LicenseTypePrivViewModel>>(content);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 通过许可证名称条件查询
- /// </summary>
- /// <param name="searchModel"></param>
- /// <returns></returns>
- [HttpPost("GetLicensesByAsync")]
- public async Task<ApiResult> GetLicensesByAsync(TsysLicenseSearchModel searchModel)
- {
- if (searchModel == null)
- {
- return new ApiResult(ReturnCode.ArgsError);
- }
- //searchModel.IsPagination = false;
- try
- {
- var contentList = await _TsysLicenseService.GetConditionAsync(searchModel);
- //return new ApiResult<IEnumerable<TsysLicenseViewModel>>(contentList);
- return new ApiResult<PagesModel<TsysLicenseViewModel>>(new PagesModel<TsysLicenseViewModel>(contentList?.ToList(), searchModel));
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- }
- /// <summary>
- /// 创建许可证
- /// </summary>
- /// <param name="content"></param>
- /// <returns></returns>
- [HttpPost("CreateLicenseAsync")]
- public async Task<ApiResult> CreateLicenseAsync(TsysLicenseViewModel content)
- {
- if (content == null)
- {
- return new ApiResult(ReturnCode.ArgsError);
- }
- try
- {
- await _TsysLicenseService.CreateOneAsync(content);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- return new ApiResult(ReturnCode.Success);
- }
- /// <summary>
- /// 删除许可证
- /// </summary>
- /// <param name="id"></param>
- /// <returns></returns>
- [HttpDelete("DeleteLicenseAsync/{id}")]
- public async Task<ApiResult> DeleteLicenseAsync(Guid id)
- {
- if (Guid.Empty == id)
- {
- return new ApiResult(ReturnCode.GeneralError);
- }
- try
- {
- await _TsysLicenseService.DeleteAsync(id);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- return new ApiResult(ReturnCode.Success);
- }
- /// <summary>
- /// 更新许可证
- /// </summary>
- /// <param name="id"></param>
- /// <param name="updateModel"></param>
- /// <returns></returns>
- [HttpPut("UpdateLicenseAsync/{id}")]
- public async Task<ApiResult> UpdateLicenseAsync(Guid id, TsysLicenseUpdateModel updateModel)
- {
- if (Guid.Empty == id)
- {
- return new ApiResult(ReturnCode.GeneralError);
- }
- try
- {
- await _TsysLicenseService.UpdateAsync(id, updateModel);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- return new ApiResult(ReturnCode.Success);
- }
- /// <summary>
- /// 创建许可证类型
- /// </summary>
- /// <param name="content"></param>
- /// <returns></returns>
- [HttpPost("CreateLicenseTypeAsync")]
- public async Task<ApiResult> CreateLicenseTypeAsync(TSYS_LicenseType content)
- {
- if (content == null)
- {
- return new ApiResult(ReturnCode.ArgsError);
- }
- try
- {
- await _TsysLicenseService.CreateLicenseTypeOneAsync(content);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- return new ApiResult(ReturnCode.Success);
- }
- /// <summary>
- /// 更新许可证类型
- /// </summary>
- /// <param name="id"></param>
- /// <param name="updateModel"></param>
- /// <returns></returns>
- [HttpPut("UpdateLicenseTypeAsync/{id}")]
- public async Task<ApiResult> UpdateLicenseTypeAsync(string id, TSYS_LicenseType updateModel)
- {
- if (string.IsNullOrEmpty(id))
- {
- return new ApiResult(ReturnCode.GeneralError);
- }
- try
- {
- await _TsysLicenseService.UpdateLicenseTypeAsync(id, updateModel);
- }
- catch (Exception ex)
- {
- return new ApiResult(ReturnCode.GeneralError, ex.Message);
- }
- return new ApiResult(ReturnCode.Success);
- }
- }
- }
|