|
|
|
using AutoMapper;
|
|
|
|
using com.sun.org.apache.xalan.@internal.xsltc.runtime;
|
|
|
|
using com.sun.tools.@internal.xjc.api;
|
|
|
|
using Elight.Entity;
|
|
|
|
using Elight.Entity.SystemModel;
|
|
|
|
using Elight.Logic;
|
|
|
|
using Elight.Utility;
|
|
|
|
using Elight.Utility.Code;
|
|
|
|
using Elight.Utility.Extensions;
|
|
|
|
using Elight.Utility.logs;
|
|
|
|
using java.io;
|
|
|
|
using java.util;
|
|
|
|
using javax.smartcardio;
|
|
|
|
using javax.xml.crypto;
|
|
|
|
using jdk.nashorn.@internal.ir;
|
|
|
|
using Microsoft.AspNetCore.Authorization;
|
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
using Quartz.Logging;
|
|
|
|
using SqlSugar;
|
|
|
|
using sun.security.x509;
|
|
|
|
using System.Drawing.Printing;
|
|
|
|
using System.Security.AccessControl;
|
|
|
|
using static com.sun.tools.@internal.xjc.reader.xmlschema.bindinfo.BIConversion;
|
|
|
|
using static sun.font.LayoutPathImpl;
|
|
|
|
using User = Elight.Utility.User;
|
|
|
|
|
|
|
|
namespace _24Hour.Controllers.Common
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// 通用接口
|
|
|
|
/// </summary>
|
|
|
|
[Authorize]
|
|
|
|
[ApiController]
|
|
|
|
[Route("api/Common")]
|
|
|
|
public class CommonController : Controller
|
|
|
|
{
|
|
|
|
#region Identity
|
|
|
|
private readonly SqlSugarClient _db;//数据库
|
|
|
|
private readonly WriteSysLog _logs;//操作日志
|
|
|
|
private readonly WebSocketController _SocketCon;//WebSocket发送
|
|
|
|
App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
|
|
|
|
private readonly List<App_Sys_UnitModel> _Unitdata;//当前用户
|
|
|
|
private readonly ILogger<LoginController> _logger;//日志
|
|
|
|
private readonly WechatMessagerClient _wechatMessagerClient;
|
|
|
|
private readonly IMapper _mapper;
|
|
|
|
DateTime unixStartTime = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
|
|
|
|
Result result = new Result();
|
|
|
|
public CommonController(IMapper mapper, ILogger<LoginController> logger, SqlSugarClient db, WriteSysLog logs, User user, WebSocketController SocketCon, WechatMessagerClient wechatMessagerClient)
|
|
|
|
{
|
|
|
|
_logger = logger;
|
|
|
|
_db = db;
|
|
|
|
_logs = logs;
|
|
|
|
_userdata = user.Userdata();
|
|
|
|
_SocketCon = SocketCon;
|
|
|
|
_Unitdata = _db.Queryable<App_Sys_UnitModel>().Where(q => q.IsDelete == 0).ToList();
|
|
|
|
_mapper = mapper;
|
|
|
|
_wechatMessagerClient = wechatMessagerClient;
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 最近待办--我的待办---我的预约
|
|
|
|
/// <summary>
|
|
|
|
/// 系统---根据当前登录人单位获取所有预约信息
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("queryreunit")]
|
|
|
|
public async Task<Result> queryreunit(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
RefAsync<int> totalNumber = 0;//总数据
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取单位Id
|
|
|
|
var Unitlist = await _db.Queryable<App_Sys_UnitModel>().ToListAsync();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToListAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
state = q.state,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
username = q.createusername,
|
|
|
|
unitCode = q.unitCode,
|
|
|
|
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
|
|
|
|
handleId = q.receptionuser,
|
|
|
|
handleuser = q.receptionusername,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
annex = q.annex
|
|
|
|
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.name,
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
unitCode = q.unitCode,
|
|
|
|
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
username = q.createusername,
|
|
|
|
handleId = q.meetwitId,
|
|
|
|
handleuser = q.meetwitname,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
unitCode = q.unitCode,
|
|
|
|
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
username = q.createusername,
|
|
|
|
handleId = q.meetwitId,
|
|
|
|
handleuser = q.meetwitname,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 6,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
state = q.state,
|
|
|
|
unitCode = q.unitCode,
|
|
|
|
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
username = q.createusername,
|
|
|
|
handleId = q.meetwitId,
|
|
|
|
handleuser = q.meetwitname,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.witnessrequest,
|
|
|
|
sttime = q.reservationtime,
|
|
|
|
ettime = "",
|
|
|
|
state = q.state,
|
|
|
|
unitCode = q.unitCode,
|
|
|
|
unitName = Unitlist.FirstOrDefault(x => x.unitCode == q.unitCode)?.unitname,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
username = q.lawyeruser,
|
|
|
|
handleId = q.receptionuser,
|
|
|
|
handleuser = q.receptionusername,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//条件查询
|
|
|
|
list = list.WhereIF(Commondata.username.NotNull(), x => $"{x.username}".Contains(Commondata.username))
|
|
|
|
.WhereIF(Commondata.handleuser.NotNull(), x => $"{x.handleuser}".Contains(Commondata.handleuser))
|
|
|
|
.WhereIF(Commondata.StartTime != null && Commondata.EndTime != null, q => q.creationtime >= Commondata.StartTime && q.creationtime < Commondata.EndTime.Value.AddDays(1)).ToList();
|
|
|
|
|
|
|
|
Commondata.RowsCount = list.Count();
|
|
|
|
|
|
|
|
list = list.OrderByDescending(q => q.creationtime).ToList()
|
|
|
|
.Skip(Commondata.PageSize * (Commondata.PageIndex - 1)).Take(Commondata.PageSize).ToList();
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = new { Paging = Commondata, Data = list.ToList() };
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "所有预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 系统---根据预约Id 查询预约信息
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="Id">预约Id</param>
|
|
|
|
/// <param name="type">类型</param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet]
|
|
|
|
[Route("queryreunitId")]
|
|
|
|
public async Task<Result> queryreunitId(string? Id, int type)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
switch (type)
|
|
|
|
{
|
|
|
|
case 0:
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var list = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
|
|
|
|
if (list.Count > 0)
|
|
|
|
{
|
|
|
|
var datalist = _mapper.Map<List<App_LawyerServicesModel>, List<App_LawyerServicesDto>>(list);
|
|
|
|
var unitdal = _Unitdata.Where(q => q.unitCode == datalist.FirstOrDefault()?.unitCode).FirstOrDefault();
|
|
|
|
if (unitdal != null)
|
|
|
|
{
|
|
|
|
datalist.FirstOrDefault().unitName = unitdal.unitname;
|
|
|
|
}
|
|
|
|
|
|
|
|
result.result = datalist.FirstOrDefault();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
result.result = null;
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 1:
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
|
|
|
|
if (Remotedata.Count > 0)
|
|
|
|
{
|
|
|
|
var Remotedatalist = _mapper.Map<List<App_RemoteModel>, List<App_RemoteDto>>(Remotedata);
|
|
|
|
var unitdatote = _Unitdata.Where(q => q.unitCode == Remotedatalist.FirstOrDefault()?.unitCode).FirstOrDefault();
|
|
|
|
if (unitdatote != null)
|
|
|
|
Remotedatalist.FirstOrDefault().unitName = unitdatote.unitname;
|
|
|
|
result.result = Remotedatalist.FirstOrDefault();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 2:
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
|
|
|
|
if (Receptiondata.Count > 0)
|
|
|
|
{
|
|
|
|
var Receptiondatalist = _mapper.Map<List<App_ReceptionModel>, List<App_ReceptionDto>>(Receptiondata);
|
|
|
|
var unitdatR = _Unitdata.Where(q => q.unitCode == Receptiondatalist.FirstOrDefault().unitCode).FirstOrDefault();
|
|
|
|
if (unitdatR != null)
|
|
|
|
Receptiondatalist.FirstOrDefault().unitName = unitdatR.unitname;
|
|
|
|
result.result = Receptiondatalist.FirstOrDefault();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 3:
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
|
|
|
|
if (Hearingdata.Count > 0)
|
|
|
|
{
|
|
|
|
var Hearingdatalist = _mapper.Map<List<App_HearingModel>, List<App_HearingDto>>(Hearingdata);
|
|
|
|
var unitdata = _Unitdata.Where(q => q.unitCode == Hearingdatalist.FirstOrDefault().unitCode).FirstOrDefault();
|
|
|
|
if (unitdata != null)
|
|
|
|
Hearingdatalist.FirstOrDefault().unitName = unitdata.unitname;
|
|
|
|
result.result = Hearingdatalist.FirstOrDefault();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 4:
|
|
|
|
//获取文书签收记录
|
|
|
|
var Documentdata = await _db.Queryable<App_DocumentModel>()
|
|
|
|
.Where(q => q.Id == Id).ToListAsync();
|
|
|
|
if (Documentdata.Count > 0)
|
|
|
|
{
|
|
|
|
var Documentdatalist = _mapper.Map<List<App_DocumentModel>, List<App_DocumentDto>>(Documentdata);
|
|
|
|
var unitda = _Unitdata.Where(q => q.unitCode == Documentdatalist.FirstOrDefault().dwbm).FirstOrDefault();
|
|
|
|
if (unitda != null)
|
|
|
|
Documentdatalist.FirstOrDefault().unitName = unitda.unitname;
|
|
|
|
result.result = Documentdatalist.FirstOrDefault();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 5:
|
|
|
|
//获取云柜记录
|
|
|
|
var CloudCabinetdata = await _db.Queryable<App_CloudCabinetModel>()
|
|
|
|
.Where(q => q.Id == Id).ToListAsync();
|
|
|
|
if (CloudCabinetdata.Count > 0)
|
|
|
|
{
|
|
|
|
var CloudCabinetdatalist = _mapper.Map<List<App_CloudCabinetModel>, List<App_CloudCabinetDto>>(CloudCabinetdata);
|
|
|
|
var unitdat = _Unitdata.Where(q => q.unitCode == CloudCabinetdatalist.FirstOrDefault().dwbm).FirstOrDefault();
|
|
|
|
CloudCabinetdatalist.FirstOrDefault().unitName = unitdat.unitname;
|
|
|
|
result.result = CloudCabinetdatalist.FirstOrDefault();
|
|
|
|
}
|
|
|
|
break;
|
|
|
|
case 6:
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.Id == Id).ToListAsync();
|
|
|
|
if (Confessiondata.Count > 0)
|
|
|
|
result.result = Confessiondata.FirstOrDefault();
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
result.IsSucceed = true;
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "通过Id查询预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
|
|
/// 统计预约申请
|
|
|
|
/// </summary>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet]
|
|
|
|
[Route("CountReservationInfo")]
|
|
|
|
public async Task<Result> CountReservationInfo()
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.Where(x => x.state == 1)
|
|
|
|
.Where(x => x.IsDeleted == 0)
|
|
|
|
.Where(x => x.createuserId == _userdata.Id)
|
|
|
|
.CountAsync();
|
|
|
|
result.result = new
|
|
|
|
{
|
|
|
|
CountApprovedReservation = lawyerdata,
|
|
|
|
};
|
|
|
|
result.IsSucceed = true;
|
|
|
|
}
|
|
|
|
catch (Exception)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
throw;
|
|
|
|
}
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
|
|
/// 检察官待办查询
|
|
|
|
/// </summary>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet]
|
|
|
|
[Route("CountReservationInfoByProsecutor")]
|
|
|
|
public async Task<Result> CountReservationInfoByProsecutor()
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.Where(x => x.state == 0)
|
|
|
|
.Where(x => x.unitCode == _userdata.unitCode)
|
|
|
|
.Where(x => x.IsDeleted == 0)
|
|
|
|
.CountAsync();
|
|
|
|
result.result = new
|
|
|
|
{
|
|
|
|
Count = lawyerdata,
|
|
|
|
};
|
|
|
|
result.IsSucceed = true;
|
|
|
|
}
|
|
|
|
catch (Exception)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
throw;
|
|
|
|
}
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
|
|
/// 修改预约申请状态
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="id"></param>
|
|
|
|
/// <param name="type">律师预约申请=>lawyer</param>
|
|
|
|
/// <param name="state"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpGet]
|
|
|
|
[Route("ChangeReservationState")]
|
|
|
|
public async Task<Result> ChangeReservationState(string id, string type, int state)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = "修改失败";
|
|
|
|
if (type == "lawyer")
|
|
|
|
{
|
|
|
|
var data = await _db.Queryable<App_LawyerServicesModel>().FirstAsync(x => x.Id == id);
|
|
|
|
if (data != null)
|
|
|
|
{
|
|
|
|
data.state = state;
|
|
|
|
_db.BeginTran();
|
|
|
|
var num = await _db.Updateable(data)
|
|
|
|
.UpdateColumns(x => x.state)
|
|
|
|
.ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "修改成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "不支持的修改类型";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (Exception ex)
|
|
|
|
{
|
|
|
|
_logger.LogInformation(ex.Message);
|
|
|
|
result.IsSucceed = false;
|
|
|
|
}
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
//[HttpGet]
|
|
|
|
//[Route("Countreservation")]
|
|
|
|
//public async Task<Result> Countreservation()
|
|
|
|
//{
|
|
|
|
// var lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
// .Where(q => q.IsDeleted == 0)
|
|
|
|
// .Where(q=>q.createuserId==_userdata.Id)
|
|
|
|
// .Select(x => new
|
|
|
|
// {
|
|
|
|
// Id = x.Id,
|
|
|
|
// state=x.state
|
|
|
|
// })
|
|
|
|
// .ToListAsync();
|
|
|
|
// var lawyerwait = lawyerdata.Count(x => x.state == 0);
|
|
|
|
// var lawyeragree = lawyerdata.Count(x => x.state == 1);
|
|
|
|
// var lawyerdisagree = lawyerdata.Count(x => x.state == 2);
|
|
|
|
// var lawyerended = lawyerdata.Count(x => x.state == 3);
|
|
|
|
// result.IsSucceed = true;
|
|
|
|
// result.result = new
|
|
|
|
// {
|
|
|
|
// all= lawyerwait+ lawyeragree + lawyerdisagree + lawyerended
|
|
|
|
// };
|
|
|
|
// return result;
|
|
|
|
//}
|
|
|
|
/// <summary>
|
|
|
|
/// app---根据当前登录人获取所有预约信息--type类型为:0律师服务,1远程会见,2远程接待
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("queryreservation")]
|
|
|
|
public async Task<Result> queryreservation(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.usertype == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.createuserId == _userdata.Id).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
unitCode = Unitdata?.unitCode,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = q.objectstr,//访问对象(案件名称)
|
|
|
|
|
|
|
|
endtime = q.receptionEndtime,
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
partyIDcard = q?.partyIDcard,
|
|
|
|
party = q?.party,
|
|
|
|
state = q.state,
|
|
|
|
reason = q.reason,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = userda?.name,
|
|
|
|
notes = q.notes,
|
|
|
|
annex = q.annex
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.createuserId == _userdata.Id).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
unitCode = Unitdata?.unitCode,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
partyIDcard = "",
|
|
|
|
party = "",
|
|
|
|
endtime = "",
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = "",//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
Code = q.Code,
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
receive = q.createuserId,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = q.appurl,
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.createuserId == _userdata.Id).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
unitCode = Unitdata?.unitCode,
|
|
|
|
partyIDcard = "",
|
|
|
|
party = "",
|
|
|
|
endtime = "",
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
receive = q.createuserId,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.createuserId == _userdata.Id).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 6,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
unitCode = Unitdata?.unitCode,
|
|
|
|
partyIDcard = "",
|
|
|
|
party = "",
|
|
|
|
endtime = "",
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
receive = q.createuserId,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.createuserId == _userdata.Id).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
unitCode = Unitdata?.unitCode,
|
|
|
|
partyIDcard = "",
|
|
|
|
party = "",
|
|
|
|
endtime = "",
|
|
|
|
name = q.lawyeruser,//律师律师名称
|
|
|
|
|
|
|
|
lawyerunit = q.lawyerunit,//律师事务所
|
|
|
|
location = q.location,//预约地点
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
phone = q.contact,//联系方式
|
|
|
|
matter = q.witnessrequest,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.reservationtime,//预约时间
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,//办理人Id
|
|
|
|
username = userda?.name,//办理人名称
|
|
|
|
receive = q.createuserId,//办接收人
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//分页查询--如有预约类型--reservationId可筛选预约类型,预约信息Id--可筛选预约信息
|
|
|
|
list = list.Where(q => q.daId != null).WhereIF(Commondata.matter.NotNull(), x => x.matter.Contains(Commondata.matter) || x.title.Contains(Commondata.matter) || x.name.Contains(Commondata.matter) || x.objectstr.Contains(Commondata.matter) || x.lawyerunit.Contains(Commondata.matter)).OrderByDescending(q => q.creationtime).ToList();
|
|
|
|
Commondata.RowsCount = list.Count();
|
|
|
|
list = list.Skip(Commondata.PageSize * (Commondata.PageIndex - 1)).Take(Commondata.PageSize).ToList();
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = new { Paging = Commondata, Data = list.ToList() };
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "所有预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// app---根据登录人获取所有预约办理信息
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("queryreservationjc")]
|
|
|
|
public async Task<Result> queryreservationjc(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic?>();
|
|
|
|
if (string.IsNullOrEmpty(_userdata.department))
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = list;
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.usertype == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state != 0, x => x.state == Commondata.state)
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
|
|
|
|
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!string.IsNullOrEmpty(_userdata.unitCode), x => x.unitCode == _userdata.unitCode)
|
|
|
|
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
|
|
|
|
.Where(q => q.IsDeleted == 0 /*&& !string.IsNullOrEmpty(q.receptionuser)*/).ToArrayAsync();
|
|
|
|
//.Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.FirstOrDefault(x => x.unitCode == q.unitCode);
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = q.objectstr,//访问对象(案件名称)
|
|
|
|
handleId = q.receptionuser,
|
|
|
|
handleuser = q.receptionusername,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
party = q.party,
|
|
|
|
partyIDcard = q.partyIDcard,
|
|
|
|
endtime = q.receptionEndtime,
|
|
|
|
lawyerunit = Unitdata?.unitname,
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
state = q.state,
|
|
|
|
reason = q.reason,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = userda?.name,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
annex = q.annex
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state != 0, x => x.state == Commondata.state)
|
|
|
|
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
|
|
|
|
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department)
|
|
|
|
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId)).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.FirstOrDefault(x => x.unitCode == q.unitCode);
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = "",//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
|
|
|
|
party = "",
|
|
|
|
partyIDcard = "",
|
|
|
|
endtime = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
lawyerunit = Unitdata?.unitname,
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
Code = q.Code,
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
receive = q.createuserId,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = q.appurl,
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state != 0, x => x.state == Commondata.state)
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
|
|
|
|
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department)
|
|
|
|
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId)).ToArrayAsync();
|
|
|
|
//.Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.FirstOrDefault(x => x.unitCode == q.unitCode);
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
|
|
|
|
party = "",
|
|
|
|
partyIDcard = "",
|
|
|
|
endtime = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
lawyerunit = Unitdata?.unitname,
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
Code = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证服务预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state != 0, x => x.state == Commondata.state)
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
|
|
|
|
// .WhereIF(Commondata.state != null && Commondata.state == 1, x => x.state == 1)
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser == _userdata.department)
|
|
|
|
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser)).ToArrayAsync();
|
|
|
|
//.Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.lawyeruser,//律师律师名称
|
|
|
|
handleId = q.receptionuser,
|
|
|
|
handleuser = q.receptionusername,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
lawyerunit = q.lawyerunit,//律师事务所
|
|
|
|
location = q.location,//预约地点
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
phone = q.contact,//联系方式
|
|
|
|
matter = q.witnessrequest,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
party = "",
|
|
|
|
partyIDcard = "",
|
|
|
|
endtime = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.reservationtime,//预约时间
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,//办理人Id
|
|
|
|
username = userda?.name,//办理人名称
|
|
|
|
receive = q.receptionuser,//办接收人
|
|
|
|
notes = q.notes,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
appurl = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取文书签收记录
|
|
|
|
var Documentdata = await _db.Queryable<App_DocumentModel>()
|
|
|
|
.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.zt.Contains("03"))
|
|
|
|
.WhereIF(Commondata.state != null && Commondata.state == 1, x => x.zt.Contains("1000"))
|
|
|
|
.WhereIF(Commondata.state != null && Commondata.state == 2, x => x.zt.Contains("99") || x.zt.Contains("04"))
|
|
|
|
.Where(q => q.zjhm.Contains(_userdata.cardId)).ToArrayAsync();
|
|
|
|
Documentdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.wsmc,//文书名称
|
|
|
|
lawyerunit = Unitdata?.unitname,//单位
|
|
|
|
location = "",//预约地点
|
|
|
|
phone = "",//联系方式
|
|
|
|
matter = q.ajmc,//案件名称
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
party = "",
|
|
|
|
partyIDcard = "",
|
|
|
|
endtime = "",
|
|
|
|
state = q.zt,//状态
|
|
|
|
reason = "",//原因
|
|
|
|
sttime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),//时间
|
|
|
|
ettime = "",
|
|
|
|
creationtime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),//最新时间
|
|
|
|
receptionuser = "",//办理人Id
|
|
|
|
username = "",//办理人名称
|
|
|
|
receive = "",//办接收人
|
|
|
|
notes = "",
|
|
|
|
appurl = "",
|
|
|
|
yyname = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取云柜记录
|
|
|
|
var CloudCabinetdata = await _db.Queryable<App_CloudCabinetModel>()
|
|
|
|
.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.zt.Contains("00"))
|
|
|
|
.WhereIF(Commondata.state != null && Commondata.state == 1, x => x.zt.Contains("1000"))
|
|
|
|
.WhereIF(Commondata.state != null && Commondata.state == 2, x => x.zt.Contains("99"))
|
|
|
|
.Where(q => (q.sfzh.Contains(_userdata.cardId) || q.lxhm == _userdata.phone)).ToArrayAsync();
|
|
|
|
CloudCabinetdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 5,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = $"{q.cljs}",//材料件数
|
|
|
|
|
|
|
|
party = "",
|
|
|
|
partyIDcard = "",
|
|
|
|
endtime = "",
|
|
|
|
lawyerunit = Unitdata?.unitname,//
|
|
|
|
location = "",//
|
|
|
|
phone = q.lxhm,//联系方式
|
|
|
|
matter = !string.IsNullOrEmpty(q.gjkqmm) ? q.gjkqmm : q.wbkqmm,//取件码
|
|
|
|
objectstr = "",//干警取件码
|
|
|
|
Code = "",
|
|
|
|
state = q.zt,//状态
|
|
|
|
reason = "",
|
|
|
|
sttime = q.cjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.cjsj)).ToString("yyyy-MM-dd HH:mm"),//创建时间
|
|
|
|
ettime = q.qjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.qjsj)).ToString("yyyy-MM-dd HH:mm"),//取件时间
|
|
|
|
creationtime = q.cjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.cjsj)).ToString("yyyy-MM-dd HH:mm"),//创建时间
|
|
|
|
receptionuser = "",
|
|
|
|
username = "",
|
|
|
|
receive = "",
|
|
|
|
notes = "",
|
|
|
|
appurl = "",
|
|
|
|
yyname = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state != 0, x => x.state == Commondata.state)
|
|
|
|
//.WhereIF(Commondata.state != null && Commondata.state == 0, x => x.state == Commondata.state || x.state == 1)
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department)
|
|
|
|
.WhereIF(Commondata.state != 0, x => x.operatorId == _userdata.Id || x.operatorId == null)
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId)).ToArrayAsync();
|
|
|
|
//.Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 6,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
|
|
|
|
party = "",
|
|
|
|
partyIDcard = "",
|
|
|
|
endtime = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
Code = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
appurl = "",
|
|
|
|
annex = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
list = list
|
|
|
|
.WhereIF(!string.IsNullOrEmpty(Commondata.matter), x => x?.matter.Contains(Commondata.matter) || x?.title.Contains(Commondata.matter) || x?.name.Contains(Commondata.matter) || x?.objectstr.Contains(Commondata.matter) || x?.lawyerunit.Contains(Commondata.matter)).OrderByDescending(q => q.creationtime).ToList();
|
|
|
|
Commondata.RowsCount = list.Count();
|
|
|
|
list = list.Skip(Commondata.PageSize * (Commondata.PageIndex - 1)).Take(Commondata.PageSize).ToList();
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = new { Paging = Commondata, Data = list.ToList() };
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "所有预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// app---根据登录人获取所有预约办理信息--首页
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("queryhandle")]
|
|
|
|
public async Task<Result> queryhandle(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.IsDeleted == 0 && q.usertype == 0).ToArrayAsync();
|
|
|
|
if (string.IsNullOrEmpty(_userdata.department))
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = list;
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
//.WhereIF(!string.IsNullOrEmpty(_userdata.department), x => /*x.receptionuser == _userdata.department &&*/ (x.operatorId == _userdata.Id || x.operatorId == null))
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser) && q.state != 2 && q.state != 3 && q.state != 4 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
// .Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
state = q.state,
|
|
|
|
reason = q.reason,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = userda?.name,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = "",//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
Code = q.Code,
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
receive = q.createuserId,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = q.appurl
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
// .Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
Code = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.meetwitId == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.meetwitId) && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
//.Where(q => q.IsDeleted == 0 && q.meetwitId == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 6,
|
|
|
|
Id = q.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
lawyerunit = "",
|
|
|
|
location = "",
|
|
|
|
courtname = "",
|
|
|
|
casetype = "",
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
Code = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
receive = q.createuserId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证服务预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>().WhereIF(!string.IsNullOrEmpty(_userdata.department), x => x.receptionuser == _userdata.department && (x.operatorId == _userdata.Id || x.operatorId == null))
|
|
|
|
.Where(q => q.IsDeleted == 0 && !string.IsNullOrEmpty(q.receptionuser) && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
// .Where(q => q.IsDeleted == 0 && q.receptionuser == _userdata.department && q.state != 2 && q.state != 3).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.lawyeruser,//律师律师名称
|
|
|
|
qrsj = q.acceptancetime,
|
|
|
|
lawyerunit = q.lawyerunit,//律师事务所
|
|
|
|
location = q.location,//预约地点
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = q.operatorName,
|
|
|
|
phone = q.contact,//联系方式
|
|
|
|
matter = q.witnessrequest,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
state = q.state,//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.reservationtime,//预约时间
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,//办理人Id
|
|
|
|
username = userda?.name,//办理人名称
|
|
|
|
receive = q.receptionuser,//办接收人
|
|
|
|
yyname = q.createusername,//预约人名称
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取文书签收记录
|
|
|
|
var Documentdata = await _db.Queryable<App_DocumentModel>()
|
|
|
|
.Where(q => q.zjhm.Contains(_userdata.cardId) && q.zt.Contains("03")).ToArrayAsync();
|
|
|
|
Documentdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.wsmc,//律师律师名称
|
|
|
|
|
|
|
|
lawyerunit = Unitdata?.unitname,//律师事务所
|
|
|
|
location = "",//预约地点
|
|
|
|
phone = "",//联系方式
|
|
|
|
matter = q.ajmc,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
state = q.zt,//状态
|
|
|
|
reason = "",//原因
|
|
|
|
sttime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),//预约时间
|
|
|
|
ettime = "",
|
|
|
|
creationtime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),
|
|
|
|
receptionuser = "",//办理人Id
|
|
|
|
username = "",//办理人名称
|
|
|
|
receive = "",//办接收人
|
|
|
|
notes = "",
|
|
|
|
appurl = "",
|
|
|
|
yyname = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
//获取云柜记录
|
|
|
|
var CloudCabinetdata = await _db.Queryable<App_CloudCabinetModel>()
|
|
|
|
.Where(q => q.sfzh.Contains(_userdata.cardId) || q.lxhm == _userdata.phone && q.zt.Contains("00")).ToArrayAsync();
|
|
|
|
CloudCabinetdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 5,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.cljs,//材料件数
|
|
|
|
lawyerunit = Unitdata?.unitname,//
|
|
|
|
location = "",//
|
|
|
|
phone = q.lxhm,//联系方式
|
|
|
|
matter = !string.IsNullOrEmpty(q.gjkqmm) ? q.gjkqmm : q.wbkqmm,//取件码
|
|
|
|
objectstr = "",
|
|
|
|
Code = "",
|
|
|
|
state = q.zt,//状态
|
|
|
|
reason = "",
|
|
|
|
sttime = q.cjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.cjsj)).ToString("yyyy-MM-dd HH:mm"),//创建时间
|
|
|
|
ettime = q.qjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.qjsj)).ToString("yyyy-MM-dd HH:mm"),//取件时间
|
|
|
|
creationtime = q.cjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.cjsj)).ToString("yyyy-MM-dd HH:mm"),//创建时间
|
|
|
|
receptionuser = "",
|
|
|
|
username = "",
|
|
|
|
receive = "",
|
|
|
|
notes = "",
|
|
|
|
appurl = "",
|
|
|
|
yyname = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
list = list.OrderByDescending(q => q.creationtime).ToList();
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = new { count = list.ToList().Count(), list = list.Take(10).ToList() };
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "所有预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 根据Id分配办理人
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="Id">预约信息Id</param>
|
|
|
|
/// <param name="userId">办理人Id</param>
|
|
|
|
/// <param name="username">办理人</param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("Updateuser")]
|
|
|
|
public async Task<Result> Updateuser(UpdateuserDto dto)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var newmodel = _userdata;
|
|
|
|
if (dto == null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "接受参数失败";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(dto.Id))
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "编号不能为空";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
if (dto.Type == null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "确认时间不能为空";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
//if (string.IsNullOrEmpty(dto.userId))
|
|
|
|
//{
|
|
|
|
// result.IsSucceed = false;
|
|
|
|
// result.result = "用户编号不能为空";
|
|
|
|
// return result;
|
|
|
|
//}
|
|
|
|
//if (dto.time== null)
|
|
|
|
//{
|
|
|
|
// result.IsSucceed = false;
|
|
|
|
// result.result = "确认时间不能为空";
|
|
|
|
// return result;
|
|
|
|
//}
|
|
|
|
//if (dto.state==false && string.IsNullOrEmpty(dto.reason))
|
|
|
|
//{
|
|
|
|
// result.IsSucceed = false;
|
|
|
|
// result.result = "拒绝原因不能为空";
|
|
|
|
// return result;
|
|
|
|
//}
|
|
|
|
//律师服务
|
|
|
|
var Lawyerbol = await _db.Queryable<App_LawyerServicesModel>().Where(q => q.Id == dto.Id).ToListAsync();
|
|
|
|
if (Lawyerbol.Count() > 0)
|
|
|
|
{
|
|
|
|
var Lawyerboldata = Lawyerbol.FirstOrDefault();
|
|
|
|
if (dto.Type == 1)
|
|
|
|
{
|
|
|
|
if (Lawyerboldata.state == 4)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "预约已被取消";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
if (Lawyerboldata.operatorId != null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "预约已受理";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
Lawyerboldata.acceptancetime = dto.time;
|
|
|
|
Lawyerboldata.receptiontime = dto.starttime;
|
|
|
|
Lawyerboldata.receptionEndtime = dto.endtime;
|
|
|
|
Lawyerboldata.reason = dto.reason;
|
|
|
|
Lawyerboldata.state = Convert.ToInt32(dto.state);
|
|
|
|
Lawyerboldata.operatorId = newmodel.Id;
|
|
|
|
Lawyerboldata.operatorName = newmodel.name;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Lawyerboldata.receptionuser = dto.userId;
|
|
|
|
Lawyerboldata.receptionusername = dto.username;
|
|
|
|
}
|
|
|
|
|
|
|
|
var userdata = await _db.Queryable<App_Sys_UserModel>()
|
|
|
|
.Where(q => q.Id == Lawyerboldata.createuserId).ToArrayAsync();
|
|
|
|
_db.BeginTran();
|
|
|
|
var num = await _db.Updateable(Lawyerboldata).UpdateColumns(it => new { it.receptionuser, it.receptionusername, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
//获取单位信息
|
|
|
|
var unitname = _Unitdata.FirstOrDefault(q => q.unitCode == Lawyerboldata.unitCode)?.unitname;
|
|
|
|
await _SocketCon.system(dto.userId);
|
|
|
|
if (dto.Type == 1)
|
|
|
|
{
|
|
|
|
if (dto.state == 1)
|
|
|
|
{
|
|
|
|
//判单预约人是否有微信openId
|
|
|
|
if (!string.IsNullOrEmpty(userdata.FirstOrDefault()?.wechatId))
|
|
|
|
//发送晨成功订阅号消息
|
|
|
|
_wechatMessagerClient.wxts(userdata.FirstOrDefault()?.wechatId, Lawyerboldata?.operatorName, unitname, Lawyerboldata?.receptiontime, Lawyerboldata?.objectstr + "-" + Lawyerboldata?.matter, Lawyerboldata?.reason);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
//判单预约人是否有微信openId
|
|
|
|
if (!string.IsNullOrEmpty(userdata.FirstOrDefault()?.wechatId))
|
|
|
|
//发送拒绝订阅号消息
|
|
|
|
_wechatMessagerClient.sbwxts(userdata.FirstOrDefault()?.wechatId, Lawyerboldata?.operatorName, unitname, Lawyerboldata?.receptiontime, Lawyerboldata?.matter, Lawyerboldata?.reason);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "修改成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//远程会见
|
|
|
|
var RemoteModelbol = await _db.Queryable<App_RemoteModel>().Where(q => q.Id == dto.Id).ToListAsync();
|
|
|
|
if (RemoteModelbol.Count() > 0)
|
|
|
|
{
|
|
|
|
if (dto.Type == 1)
|
|
|
|
{
|
|
|
|
if (RemoteModelbol.FirstOrDefault().operatorId != null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "预约已受理";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
RemoteModelbol.FirstOrDefault().acceptancetime = dto.time;
|
|
|
|
RemoteModelbol.FirstOrDefault().reason = dto.reason;
|
|
|
|
RemoteModelbol.FirstOrDefault().state = Convert.ToInt32(dto.state);
|
|
|
|
RemoteModelbol.FirstOrDefault().operatorId = newmodel.Id;
|
|
|
|
RemoteModelbol.FirstOrDefault().operatorName = newmodel.name;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
RemoteModelbol.FirstOrDefault().meetwitId = dto.userId;
|
|
|
|
RemoteModelbol.FirstOrDefault().meetwitname = dto.username;
|
|
|
|
}
|
|
|
|
_db.BeginTran();
|
|
|
|
var num = await _db.Updateable(RemoteModelbol.FirstOrDefault()).UpdateColumns(it => new { it.meetwitId, it.meetwitname, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "修改成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.Where(q => q.Id == dto.Id).ToArrayAsync();
|
|
|
|
if (Receptiondata.Count() > 0)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (dto.Type == 1)
|
|
|
|
{
|
|
|
|
if (Receptiondata.FirstOrDefault().operatorId != null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "预约已受理";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
Receptiondata.FirstOrDefault().acceptancetime = dto.time;
|
|
|
|
Receptiondata.FirstOrDefault().reason = dto.reason;
|
|
|
|
Receptiondata.FirstOrDefault().state = Convert.ToInt32(dto.state);
|
|
|
|
Receptiondata.FirstOrDefault().operatorId = newmodel.Id;
|
|
|
|
Receptiondata.FirstOrDefault().operatorName = newmodel.name;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Receptiondata.FirstOrDefault().meetwitId = dto.userId;
|
|
|
|
Receptiondata.FirstOrDefault().meetwitname = dto.username;
|
|
|
|
}
|
|
|
|
_db.BeginTran();
|
|
|
|
var num = await _db.Updateable(Receptiondata.FirstOrDefault()).UpdateColumns(it => new { it.meetwitId, it.meetwitname, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "修改成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.Where(q => q.Id == dto.Id).ToArrayAsync();
|
|
|
|
if (Confessiondata.Count() > 0)
|
|
|
|
{
|
|
|
|
if (dto.Type == 1)
|
|
|
|
{
|
|
|
|
if (Confessiondata.FirstOrDefault().operatorId != null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "预约已受理";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
Confessiondata.FirstOrDefault().acceptancetime = dto.time;
|
|
|
|
Confessiondata.FirstOrDefault().reason = dto.reason;
|
|
|
|
Confessiondata.FirstOrDefault().state = Convert.ToInt32(dto.state);
|
|
|
|
Confessiondata.FirstOrDefault().operatorId = newmodel.Id;
|
|
|
|
Confessiondata.FirstOrDefault().operatorName = newmodel.name;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Confessiondata.FirstOrDefault().meetwitId = dto.userId;
|
|
|
|
Confessiondata.FirstOrDefault().meetwitname = dto.username;
|
|
|
|
}
|
|
|
|
_db.BeginTran();
|
|
|
|
var num = await _db.Updateable(Confessiondata.FirstOrDefault()).UpdateColumns(it => new { it.meetwitId, it.meetwitname, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "修改成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.Where(q => q.Id == dto.Id).ToArrayAsync();
|
|
|
|
if (Hearingdata.Count() > 0)
|
|
|
|
{
|
|
|
|
|
|
|
|
if (dto.Type == 1)
|
|
|
|
{
|
|
|
|
if (Hearingdata.FirstOrDefault().operatorId != null)
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.result = "预约已受理";
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
Hearingdata.FirstOrDefault().acceptancetime = dto.time;
|
|
|
|
Hearingdata.FirstOrDefault().reason = dto.reason;
|
|
|
|
Hearingdata.FirstOrDefault().state = Convert.ToInt32(dto.state);
|
|
|
|
Hearingdata.FirstOrDefault().operatorId = newmodel.Id;
|
|
|
|
Hearingdata.FirstOrDefault().operatorName = newmodel.name;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Hearingdata.FirstOrDefault().receptionuser = dto.userId;
|
|
|
|
Hearingdata.FirstOrDefault().receptionusername = dto.username;
|
|
|
|
}
|
|
|
|
_db.BeginTran();
|
|
|
|
var num = await _db.Updateable(Hearingdata.FirstOrDefault()).UpdateColumns(it => new { it.receptionuser, it.receptionusername, it.acceptancetime, it.reason, it.state, it.operatorId, it.operatorName }).ExecuteCommandAsync();
|
|
|
|
_db.CommitTran();
|
|
|
|
if (num > 0)
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = "修改成功";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
LogService.WriteLog(ex, "修改分配办理人");
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("分配办理人", "修改分配办理人", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 自主查询
|
|
|
|
/// <summary>
|
|
|
|
/// app---根据当前登录人查询预约信息--自主查询
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("querylist")]
|
|
|
|
public async Task<Result> querylist(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录--判断单位,查询不同数据信息
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.receptionuser == _userdata.department)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.operatorId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
objectstr = q.objectstr,
|
|
|
|
matter = q.matter,
|
|
|
|
state = q.state,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录--判断单位,查询不同数据信息
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.meetwitId == _userdata.department)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.operatorId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.name,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录--判断单位,查询不同数据信息
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.meetwitId == _userdata.department)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.operatorId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
//获取认罪认罚预约记录--判断单位,查询不同数据信息
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.meetwitId == _userdata.department)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.operatorId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 6,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(!Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.receptionuser == _userdata.department)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.operatorId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.witnessrequest,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.reservationtime,
|
|
|
|
ettime = "",
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取文书签收记录
|
|
|
|
var Documentdata = await _db.Queryable<App_DocumentModel>()
|
|
|
|
.Where(q => q.zjhm.Contains(_userdata.cardId)).ToArrayAsync();
|
|
|
|
Documentdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.wsmc,
|
|
|
|
objectstr = q.ajmc,
|
|
|
|
sttime = "",
|
|
|
|
ettime = "",
|
|
|
|
state = q.zt,
|
|
|
|
creationtime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),//最新时间
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
//获取云柜记录
|
|
|
|
var CloudCabinetdata = await _db.Queryable<App_CloudCabinetModel>()
|
|
|
|
.Where(q => q.sfzh.Contains(_userdata.cardId) || q.lxhm == _userdata.phone).ToArrayAsync();
|
|
|
|
CloudCabinetdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 5,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = !string.IsNullOrEmpty(q.gjkqmm) ? q.gjkqmm : q.wbkqmm,//取件码
|
|
|
|
objectstr = "",
|
|
|
|
sttime = "",
|
|
|
|
ettime = "",
|
|
|
|
state = q.zt,
|
|
|
|
creationtime = q.cjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.cjsj)).ToString("yyyy-MM-dd HH:mm"),//创建时间
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//查询
|
|
|
|
list = list.ToList().WhereIF(Commondata.matter.NotNull(), q => q.matter.Contains(Commondata.matter) || q.objectstr.Contains(Commondata.matter) || q.title.Contains(Commondata.matter)).ToList();
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = list.ToList().OrderByDescending(q => q.creationtime).ToList();
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "所有预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 自主查询一体机
|
|
|
|
/// <summary>
|
|
|
|
/// app---根据当前登录人查询预约信息--自主查询---一体机
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("querylistytj")]
|
|
|
|
public async Task<Result> querylistytj(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录--判断单位,查询不同数据信息
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.unitCode.Contains(Commondata.unitId))
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
objectstr = q.objectstr,
|
|
|
|
matter = q.matter,
|
|
|
|
state = q.state,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录--判断单位,查询不同数据信息
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.unitCode.Contains(Commondata.unitId))
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.name,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录--判断单位,查询不同数据信息
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.unitCode.Contains(Commondata.unitId))
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
//获取认罪认罚预约记录--判断单位,查询不同数据信息
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.unitCode.Contains(Commondata.unitId))
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 6,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.matter,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.WhereIF(Commondata.state != null, x => x.state == Commondata.state)
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.unitCode.Contains(Commondata.unitId))
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.createuserId == _userdata.Id)
|
|
|
|
.Where(q => q.IsDeleted == 0).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.unitCode).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.witnessrequest,
|
|
|
|
objectstr = "",
|
|
|
|
sttime = q.reservationtime,
|
|
|
|
ettime = "",
|
|
|
|
state = q.state,
|
|
|
|
creationtime = q.creationtime
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取文书签收记录
|
|
|
|
var Documentdata = await _db.Queryable<App_DocumentModel>()
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.dwbm.Contains(Commondata.unitId))
|
|
|
|
.Where(q => q.zjhm.Contains(_userdata.cardId)).ToArrayAsync();
|
|
|
|
Documentdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = q.wsmc,
|
|
|
|
objectstr = q.ajmc,
|
|
|
|
sttime = "",
|
|
|
|
ettime = "",
|
|
|
|
state = q.zt,
|
|
|
|
creationtime = unixStartTime.AddMilliseconds(long.Parse(q.zhxgsj)),//最新时间
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
//获取云柜记录
|
|
|
|
var CloudCabinetdata = await _db.Queryable<App_CloudCabinetModel>()
|
|
|
|
.WhereIF(Commondata.unitId.NotNull(), x => x.dwbm.Contains(Commondata.unitId))
|
|
|
|
.Where(q => q.sfzh.Contains(_userdata.cardId) || q.lxhm == _userdata.phone).ToArrayAsync();
|
|
|
|
CloudCabinetdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var Unitdata = _Unitdata.Where(x => x.unitCode == q.dwbm).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 5,
|
|
|
|
Id = q.Id,
|
|
|
|
Unitname = Unitdata?.unitname,
|
|
|
|
title = da?.title,
|
|
|
|
path = da?.path,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
matter = !string.IsNullOrEmpty(q.gjkqmm) ? q.gjkqmm : q.wbkqmm,//取件码
|
|
|
|
objectstr = "",
|
|
|
|
sttime = "",
|
|
|
|
ettime = "",
|
|
|
|
state = q.zt,
|
|
|
|
creationtime = q.cjsj == null ? "" : unixStartTime.AddMilliseconds(long.Parse(q.cjsj)).ToString("yyyy-MM-dd HH:mm"),//创建时间
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//查询
|
|
|
|
list = list.ToList().WhereIF(Commondata.matter.NotNull(), q => q.matter.Contains(Commondata.matter) || q.objectstr.Contains(Commondata.matter) || q.title.Contains(Commondata.matter)).ToList();
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = list.ToList().OrderByDescending(q => q.creationtime).ToList();
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("所有预约信息", "所有预约信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 数据统计
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 预约数据统计---GroupBy预约类型 ---datetme时间 ---satseGroupBy预约状态
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("querystatistics")]
|
|
|
|
public async Task<Result> querystatistics(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.receptionuser).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
statetype = $"{q.state}",
|
|
|
|
reason = q.reason,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
username = userda?.name,
|
|
|
|
notes = q.notes
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = "",//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = q.Code,
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = q.appurl
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.contact,
|
|
|
|
matter = q.witnessrequest,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.reservationtime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
username = q.receptionusername,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
list = list
|
|
|
|
.WhereIF(Commondata.StartTime != null && Commondata.EndTime != null, q => q.sttime >= Commondata.StartTime && q.sttime < Commondata.EndTime.Value.AddDays(1)).OrderByDescending(q => q.sttime).ToList();
|
|
|
|
//预约类型分组统计
|
|
|
|
var GroupBy = list.ToList().GroupBy(q => new { q.daId, q.title }).Select(x => new { name = x.Key.title, value = x.ToList().Count() });
|
|
|
|
//日期分组统计
|
|
|
|
var datetme = list.ToList().GroupBy(q => DateTime.Parse($"{q.sttime}").ToString("yyyy-MM-dd")).Select(x => new { time = x.Key, value = x.ToList().Count() });
|
|
|
|
//预约状态分组
|
|
|
|
var satselist = list.ToList().GroupBy(q => $"{q.statetype}").Select(x => new { statetype = x.Key, value = x.ToList().Count() }).ToList();
|
|
|
|
var satseGroupBy = new List<dynamic>();
|
|
|
|
string[] strnum = new string[] { "0", "1", "2", "3" };
|
|
|
|
string[] str = new string[] { "待办理", "已受理", "拒绝", "结束" };
|
|
|
|
for (int i = 0; i < strnum.Length; i++)
|
|
|
|
{
|
|
|
|
var da = satselist.Where(q => q.statetype == strnum[i]).FirstOrDefault();
|
|
|
|
if (da != null)
|
|
|
|
{
|
|
|
|
satseGroupBy.Add(new { name = str[i], value = da.value });
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
satseGroupBy.Add(new { name = str[i], value = 0 });
|
|
|
|
}
|
|
|
|
}
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = new { GroupBy, datetme, satseGroupBy };
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("数据统计", "统计信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 人员任务量统计
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("querypersonneltask")]
|
|
|
|
public async Task<Result> querypersonneltask(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId != null).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
statetype = $"{q.state}",
|
|
|
|
reason = q.reason,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
username = q.receptionusername,
|
|
|
|
notes = q.notes
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId != null).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = "",//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = q.Code,
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = q.appurl
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId != null).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId != null).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId != null).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.contact,
|
|
|
|
matter = q.witnessrequest,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.reservationtime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
username = q.receptionusername,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
list = list
|
|
|
|
.WhereIF(Commondata.StartTime != null && Commondata.EndTime != null, q => q.sttime >= Commondata.StartTime && q.sttime < Commondata.EndTime.Value.AddDays(1)).OrderByDescending(q => q.sttime).ToList();
|
|
|
|
//人员分组统计
|
|
|
|
var GroupBy = list.ToList().GroupBy(q => new { q.operatorId, q.operatorName }).Select(x => new { name = x.Key.operatorName, value = x.ToList().Count() });
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = GroupBy;
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("数据统计", "统计信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// 单个人员任务统计
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("queryusertask")]
|
|
|
|
public async Task<Result> queryusertask(Commonpage Commondata)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var list = new List<dynamic>();
|
|
|
|
//获取工作台信息
|
|
|
|
var Stagingdata = await _db.Queryable<StagingModel>().Where(q => q.IsDelete == 0).ToArrayAsync();
|
|
|
|
var Userdata = await _db.Queryable<App_Sys_UserModel>().Where(q => q.usertype == 0).ToArrayAsync();
|
|
|
|
//获取律师服务预约记录
|
|
|
|
var Lawyerdata = await _db.Queryable<App_LawyerServicesModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
|
|
|
|
Lawyerdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 0,
|
|
|
|
Id = q.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
statetype = $"{q.state}",
|
|
|
|
reason = q.reason,
|
|
|
|
sttime = q.receptiontime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
username = q.receptionusername,
|
|
|
|
notes = q.notes
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程会见预约记录
|
|
|
|
var Remotedata = await _db.Queryable<App_RemoteModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
|
|
|
|
Remotedata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 1,
|
|
|
|
Id = q.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
daId = da?.Id,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = q.name,
|
|
|
|
phone = q.phone,
|
|
|
|
matter = "",//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = q.Code,
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = q.appurl
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取远程接待预约记录
|
|
|
|
var Receptiondata = await _db.Queryable<App_ReceptionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
|
|
|
|
Receptiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 2,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = q.ettime,
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取认罪认罚预约记录
|
|
|
|
var Confessiondata = await _db.Queryable<App_ConfessionModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
|
|
|
|
Confessiondata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 3,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.phone,
|
|
|
|
matter = q.matter,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.sttime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.meetwitId,
|
|
|
|
username = q.meetwitname,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
//获取听证预约记录
|
|
|
|
var Hearingdata = await _db.Queryable<App_HearingModel>()
|
|
|
|
.Where(q => q.IsDeleted == 0 && q.unitCode == _userdata.unitCode && q.acceptancetime != null && q.operatorId == Commondata.Id).ToArrayAsync();
|
|
|
|
Hearingdata.ToList().ForEach(q =>
|
|
|
|
{
|
|
|
|
var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
|
|
|
|
var userda = Userdata.Where(x => x.Id == q.operatorId).FirstOrDefault();
|
|
|
|
list.Add(new
|
|
|
|
{
|
|
|
|
type = 4,
|
|
|
|
Id = q.Id,
|
|
|
|
daId = da?.Id,
|
|
|
|
operatorId = q.operatorId,
|
|
|
|
operatorName = userda?.name,
|
|
|
|
title = da?.title,
|
|
|
|
color = da?.color,
|
|
|
|
icon = da?.icon,
|
|
|
|
name = "",
|
|
|
|
phone = q.contact,
|
|
|
|
matter = q.witnessrequest,//事由
|
|
|
|
objectstr = "",//访问对象(案件名称)
|
|
|
|
Code = "",
|
|
|
|
statetype = $"{q.state}",//状态
|
|
|
|
reason = q.reason,//原因
|
|
|
|
sttime = q.reservationtime,
|
|
|
|
ettime = "",
|
|
|
|
creationtime = q.creationtime,
|
|
|
|
receptionuser = q.receptionuser,
|
|
|
|
username = q.receptionusername,
|
|
|
|
notes = q.notes,
|
|
|
|
appurl = ""
|
|
|
|
});
|
|
|
|
});
|
|
|
|
list = list
|
|
|
|
.WhereIF(Commondata.StartTime != null && Commondata.EndTime != null, q => q.sttime >= Commondata.StartTime && q.sttime < Commondata.EndTime.Value.AddDays(1)).OrderByDescending(q => q.sttime).ToList();
|
|
|
|
//任务分组统计
|
|
|
|
var GroupBy = list.ToList().GroupBy(q => new { q.daId, q.title }).Select(x => new { name = x.Key.title, value = x.ToList().Count() });
|
|
|
|
//预约状态分组
|
|
|
|
var satselist = list.ToList().GroupBy(q => $"{q.statetype}").Select(x => new { statetype = x.Key, value = x.ToList().Count() }).ToList();
|
|
|
|
var satseGroupBy = new List<dynamic>();
|
|
|
|
string[] strnum = new string[] { "0", "1", "2", "3" };
|
|
|
|
string[] str = new string[] { "待办理", "已受理", "拒绝", "结束" };
|
|
|
|
for (int i = 0; i < strnum.Length; i++)
|
|
|
|
{
|
|
|
|
var da = satselist.Where(q => q.statetype == strnum[i]).FirstOrDefault();
|
|
|
|
if (da != null)
|
|
|
|
{
|
|
|
|
satseGroupBy.Add(new { name = str[i], value = da.value });
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
satseGroupBy.Add(new { name = str[i], value = 0 });
|
|
|
|
}
|
|
|
|
}
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = new { GroupBy, satseGroupBy };
|
|
|
|
|
|
|
|
}
|
|
|
|
catch (System.Exception ex)
|
|
|
|
{
|
|
|
|
_db.RollbackTran();
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = ex.Message;
|
|
|
|
}
|
|
|
|
_logs.WriteSysLogadd("数据统计", "统计信息", result, _db);
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 文件上传
|
|
|
|
|
|
|
|
private string[] AllowedExtensions = new string[] { ".png", ".jpg", ".jpeg", ".bmp", ".zip",".xlsx",".aks"};
|
|
|
|
/// <summary>
|
|
|
|
/// 文件上传--附件
|
|
|
|
/// <param name="file"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
/// </summary>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("Upload_Files")]
|
|
|
|
public async Task<ActionResult> Upload_Files(IFormFile file)
|
|
|
|
{
|
|
|
|
Result outParm = new Result();
|
|
|
|
return await Task.Run(async () =>
|
|
|
|
{
|
|
|
|
if (file.Length <= 0)
|
|
|
|
{
|
|
|
|
outParm.IsSucceed = false;
|
|
|
|
outParm.Message = "请上传文件!";
|
|
|
|
return Json(outParm);
|
|
|
|
}
|
|
|
|
try
|
|
|
|
{
|
|
|
|
var size = Request.Form.Files.Sum(f => f.Length);
|
|
|
|
IFormFile file = Request.Form.Files.FirstOrDefault();
|
|
|
|
var fname = $@"{file.FileName}";
|
|
|
|
var hzname = $"{Path.GetExtension(fname)}";
|
|
|
|
|
|
|
|
|
|
|
|
if (AllowedExtensions.Contains(hzname.ToLower()) == false)
|
|
|
|
{
|
|
|
|
outParm.IsSucceed = false;
|
|
|
|
outParm.Message = "不被允许的文件格式!";
|
|
|
|
return Json(outParm);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _path = Path.Combine("CaseFile", "card", DateTime.Now.ToString("yyyy-MM-dd"));
|
|
|
|
var dic = Path.Combine(Environment.CurrentDirectory, "wwwroot", _path);
|
|
|
|
|
|
|
|
if (!System.IO.Directory.Exists(dic))
|
|
|
|
Directory.CreateDirectory(dic);
|
|
|
|
var filename = $"{DateTime.Now:yyyyMMddHHmmssfff}{Path.GetExtension(fname)}";
|
|
|
|
var filepath = Path.Combine(_path, $"{filename}");
|
|
|
|
var path = Path.Combine(dic, $"{filename}");
|
|
|
|
var __path = Path.Combine(_path, filename);
|
|
|
|
path = System.IO.Path.ChangeExtension(path, "aks");
|
|
|
|
|
|
|
|
using (var ms = new MemoryStream())
|
|
|
|
{
|
|
|
|
await file.CopyToAsync(ms);
|
|
|
|
var Encryptiondata = Elight.Utility.Encrypt.DataEncryption.Encryption(ms.ToArray());
|
|
|
|
await System.IO.File.WriteAllBytesAsync(path, Encryptiondata);
|
|
|
|
}
|
|
|
|
|
|
|
|
__path = System.IO.Path.ChangeExtension(__path, "aks");
|
|
|
|
var repath = "/" + __path.Replace(@"\", @"/");
|
|
|
|
outParm.IsSucceed = true;
|
|
|
|
outParm.result = new
|
|
|
|
{
|
|
|
|
hzname = hzname,
|
|
|
|
url = repath,
|
|
|
|
tile = Path.GetFileNameWithoutExtension(file.FileName),
|
|
|
|
size,
|
|
|
|
DataPath = path,
|
|
|
|
filePath = dic
|
|
|
|
};
|
|
|
|
}
|
|
|
|
catch (Exception e)
|
|
|
|
{
|
|
|
|
outParm.IsSucceed = false;
|
|
|
|
outParm.Message = $"文件上传失败!{e.Message}";
|
|
|
|
}
|
|
|
|
return Json(outParm);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
[HttpGet]
|
|
|
|
[Route("GetImageFile")]
|
|
|
|
public async Task<Result> GetImageFile(string file)
|
|
|
|
{
|
|
|
|
|
|
|
|
Result result = new Result();
|
|
|
|
var urlpath = file.Replace("/", @"\");
|
|
|
|
var path = Path.Combine(Environment.CurrentDirectory, "wwwroot"+urlpath);
|
|
|
|
if (System.IO.File.Exists(path))
|
|
|
|
{
|
|
|
|
var str = Elight.Utility.Encrypt.DataEncryption.Decryptiones(path);
|
|
|
|
result.result = new
|
|
|
|
{
|
|
|
|
BaseStr = str
|
|
|
|
};
|
|
|
|
result.IsSucceed = true;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
result.IsSucceed = false;
|
|
|
|
result.Message = "文件不存在";
|
|
|
|
}
|
|
|
|
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
[HttpPost]
|
|
|
|
[Route("GetImageFiles")]
|
|
|
|
public async Task<Result> GetImageFiles(List<string> file)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
//根据输入url获取base64值
|
|
|
|
var getstr = (string s) =>
|
|
|
|
{
|
|
|
|
var urlpath = s.Replace("/", @"\");
|
|
|
|
var path = Path.Combine(Environment.CurrentDirectory, "wwwroot" + urlpath);
|
|
|
|
if (System.IO.File.Exists(path))
|
|
|
|
{
|
|
|
|
return Elight.Utility.Encrypt.DataEncryption.Decryptiones(path);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
return "";
|
|
|
|
}
|
|
|
|
};
|
|
|
|
//根据输入url获取文件是否存在
|
|
|
|
var getexist = (string s) =>
|
|
|
|
{
|
|
|
|
var urlpath = s.Replace("/", @"\");
|
|
|
|
var path = Path.Combine(Environment.CurrentDirectory, "wwwroot" + urlpath);
|
|
|
|
return System.IO.File.Exists(path);
|
|
|
|
};
|
|
|
|
var data = file.Select(x => new
|
|
|
|
{
|
|
|
|
Item = x,
|
|
|
|
IsExist = getexist(x),
|
|
|
|
BaseStr = getstr(x)
|
|
|
|
});
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.result = data;
|
|
|
|
|
|
|
|
}
|
|
|
|
catch
|
|
|
|
{
|
|
|
|
result.IsSucceed = true;
|
|
|
|
result.Message = "系统错误";
|
|
|
|
}
|
|
|
|
return result;
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
|
|
/// 文件上传--附件
|
|
|
|
/// </summary>
|
|
|
|
/// <param name="file"></param>
|
|
|
|
/// <returns></returns>
|
|
|
|
[HttpPost]
|
|
|
|
[Route("Upload_Files1")]
|
|
|
|
[AllowAnonymous]
|
|
|
|
|
|
|
|
public async Task<ActionResult> Upload_Files1(IFormFile file)
|
|
|
|
{
|
|
|
|
return await Upload_Files(file);
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
}
|
|
|
|
}
|