using AutoMapper; using Elight.Entity; using Elight.Entity.APPDto.Lawyer; using Elight.Entity.AppMode.Lawyer; using Elight.Logic; using Elight.Utility.Code; using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Mvc; using SqlSugar; using System.Text; using static _24Hour.Controllers.Common.LawyerArchivesController; namespace _24Hour.Controllers.Common { /// /// 律师服务 /// [ApiController] [Route("api/LawyerUnAuthorize")] public class LawyerArchivesUnAuthorizeController : Controller { #region Identity private readonly SqlSugarClient _db;//数据库 private readonly ILogger logger;//日志 private readonly IMapper mapper; public LawyerArchivesUnAuthorizeController(ILogger _logger, SqlSugarClient db, IMapper _mapper) { this.logger = _logger; _db = db; this.mapper = _mapper; } #endregion /// /// 一体机查询所有的待查阅的预约信息 /// /// [HttpGet("GetAllArchivesUncompleted")] public async Task>> GetAllArchivesUncompleted(string unitcode) { var res = new Result>(); var list = await _db.Queryable() .Where(x => x.IsDeleted == 0) .Where(x => x.status == 0 && x.permissibleEndTime > DateTime.Now) .Where(x => x.unitcode == unitcode) .ToListAsync(); var data = mapper.Map>(list); res.result = data; res.IsSucceed = true; return res; } /// /// 获取卷宗下所有的文件信息 /// /// /// [HttpPost("GetJzFileInfo")] public async Task GetJzFileInfo(IEnumerable jzids) { var result = new Result(); var list = await _db.Queryable() .Includes(x => x.jzml, q => q.jzwj) .Where(x => jzids.Contains(x.Id)) .ToListAsync(); var dtos = mapper.Map>(list); var listdata = dtos.Select(x => new { jzid = x.Id, files = x.jzml .SelectMany(e => e.jzwj) .Select(q => new { fileid = q.Id, filepath = q.jpgwjlj }) }).ToList(); result.result = listdata; result.IsSucceed = true; return result; } /// /// 解密字符串信息 /// /// /// [HttpPost] [Route("DecodeData")] public Task> DecodeData(DecodeQRDataModel data) { Result result = new(); try { result.result = Encoding.UTF8.GetString(Convert.FromBase64String(data.QRData)); result.IsSucceed = true; return Task.FromResult(result); } catch { result.IsSucceed = false; return Task.FromResult(result); } } } }