|
|
|
using AutoMapper;
|
|
|
|
using Elight.Entity;
|
|
|
|
using Elight.Entity.APPDto.Lawyer;
|
|
|
|
using Elight.Entity.AppMode.Lawyer;
|
|
|
|
using Elight.Logic;
|
|
|
|
using Elight.Utility.Code;
|
|
|
|
using Elight.Utility.logs;
|
|
|
|
using java.util;
|
|
|
|
using Microsoft.AspNetCore.Authorization;
|
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
using SqlSugar;
|
|
|
|
using System.Text;
|
|
|
|
using static _24Hour.Controllers.Common.LawyerArchivesController;
|
|
|
|
|
|
|
|
namespace _24Hour.Controllers.Common
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// 律师服务
|
|
|
|
/// </summary>
|
|
|
|
[ApiController]
|
|
|
|
[Route("api/LawyerUnAuthorize")]
|
|
|
|
public class LawyerArchivesUnAuthorizeController : Controller
|
|
|
|
{
|
|
|
|
#region Identity
|
|
|
|
private readonly SqlSugarClient _db;//数据库
|
|
|
|
private readonly ILogger<LawyerArchivesController> logger;//日志
|
|
|
|
|
|
|
|
private readonly IMapper mapper;
|
|
|
|
public LawyerArchivesUnAuthorizeController(ILogger<LawyerArchivesController> _logger, SqlSugarClient db, IMapper _mapper)
|
|
|
|
{
|
|
|
|
this.logger = _logger;
|
|
|
|
_db = db;
|
|
|
|
this.mapper = _mapper;
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 一体机查询所有的未完成的预约信息
|
|
|
|
/// </summary>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet("GetAllArchivesUncompleted")]
|
|
|
|
public async Task<Result<IEnumerable<LawyerArchivesDto>>> GetAllArchivesUncompleted(string unitcode)
|
|
|
|
{
|
|
|
|
var res = new Result<IEnumerable<LawyerArchivesDto>>();
|
|
|
|
var list = await _db.Queryable<LawyerArchives>()
|
|
|
|
.Where(x => x.IsDeleted == 0)
|
|
|
|
.Where(x => x.status != 2 && x.permissibleEndTime > DateTime.Now)
|
|
|
|
.Where(x => x.unitcode == unitcode)
|
|
|
|
.Where(x => x.IsDeleted == 0)
|
|
|
|
.ToListAsync();
|
|
|
|
var data = mapper.Map<IEnumerable<LawyerArchivesDto>>(list);
|
|
|
|
res.result = data;
|
|
|
|
res.IsSucceed = true;
|
|
|
|
return res;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
|
|
/// 获取卷宗下所有的文件信息
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="jzid"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost("GetJzFileInfo")]
|
|
|
|
public async Task<Result> GetJzFileInfo(IEnumerable<string> jzids)
|
|
|
|
{
|
|
|
|
var result = new Result();
|
|
|
|
var list = await _db.Queryable<JZJBXX>()
|
|
|
|
.Includes(x => x.jzml, q => q.jzwj)
|
|
|
|
.Where(x => jzids.Contains(x.Id))
|
|
|
|
.ToListAsync();
|
|
|
|
var dtos = mapper.Map<List<JZJBXXDto>>(list);
|
|
|
|
var listdata = dtos.Select(x => new
|
|
|
|
{
|
|
|
|
jzid = x.Id,
|
|
|
|
files = x.jzml.OrderBy(x => x.mlsxh)
|
|
|
|
.SelectMany(e => e.jzwj.OrderBy(x => x.wjsxh))
|
|
|
|
.Select((q) => new
|
|
|
|
{
|
|
|
|
order = q.wjsxh,
|
|
|
|
fileid = q.Id,
|
|
|
|
filepath = q.jpgwjlj
|
|
|
|
}).OrderBy(x => x.order)
|
|
|
|
}).ToList();
|
|
|
|
|
|
|
|
result.result = listdata;
|
|
|
|
result.IsSucceed = true;
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
|
|
/// 上传一体机的文件缓存状态
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="dic"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost("UploadWJDownloadStatus")]
|
|
|
|
public async Task<Result> UploadWJDownloadStatus(IEnumerable<LawyerArchivesDto> dtos)
|
|
|
|
{
|
|
|
|
var result = new Result();
|
|
|
|
try
|
|
|
|
{
|
|
|
|
_db.BeginTran();
|
|
|
|
var updatelist = await _db.Queryable<LawyerArchives>().In(q => q.jzlbxxId, dtos.Select(x => x.jzlbxxId).ToList()).ToListAsync();
|
|
|
|
updatelist.ForEach(q =>
|
|
|
|
{
|
|
|
|
var value = dtos.FirstOrDefault(x => x.jzlbxxId == q.jzlbxxId);
|
|
|
|
q.downloadedCount = value?.downloadedCount;
|
|
|
|
});
|
|
|
|
var num = await _db.Updateable(updatelist).ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "更新成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 解密字符串信息
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="basestr"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("DecodeData")]
|
|
|
|
public Task<Result<string>> DecodeData(DecodeQRDataModel data)
|
|
|
|
{
|
|
|
|
Result<string> result = new();
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var qrdata = data.QRData;
|
|
|
|
var count = data.QRData.Length;
|
|
|
|
var a = count % 4;
|
|
|
|
if (a != 0)
|
|
|
|
{
|
|
|
|
|
|
|
|
for (int i = 0; i < a; i++)
|
|
|
|
{
|
|
|
|
qrdata += "=";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
result.result = Encoding.UTF8.GetString(Convert.FromBase64String(qrdata));
|
|
|
|
result.IsSucceed = true;
|
|
|
|
return Task.FromResult(result);
|
|
|
|
}
|
|
|
|
catch (Exception ex)
|
|
|
|
{
|
|
|
|
logger.LogError(ex, "");
|
|
|
|
result.IsSucceed = false;
|
|
|
|
return Task.FromResult(result);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|