@ -55,6 +55,7 @@ namespace _24Hour.Controllers.Common
var list = new List < dynamic > ( ) ;
var list = new List < dynamic > ( ) ;
//获取工作台信息
//获取工作台信息
var Stagingdata = await _d b . Queryable < StagingModel > ( ) . Where ( q = > q . IsDelete = = 0 ) . ToArrayAsync ( ) ;
var Stagingdata = await _d b . Queryable < StagingModel > ( ) . Where ( q = > q . IsDelete = = 0 ) . ToArrayAsync ( ) ;
var Userdata = await _d b . Queryable < App_Sys_UserModel > ( ) . Where ( q = > q . usertype = = 0 & & q . unitCode = = _ userdata . unitCode ) . ToArrayAsync ( ) ;
//获取律师服务预约记录
//获取律师服务预约记录
var Lawyerdata = await _d b . Queryable < App_LawyerServicesModel > ( )
var Lawyerdata = await _d b . Queryable < App_LawyerServicesModel > ( )
. WhereIF ( Commondata . state ! = null , x = > x . state = = Commondata . state )
. WhereIF ( Commondata . state ! = null , x = > x . state = = Commondata . state )
@ -62,6 +63,7 @@ namespace _24Hour.Controllers.Common
Lawyerdata . ToList ( ) . ForEach ( q = >
Lawyerdata . ToList ( ) . ForEach ( q = >
{
{
var da = Stagingdata . Where ( x = > x . Id = = q . reservationId ) . FirstOrDefault ( ) ;
var da = Stagingdata . Where ( x = > x . Id = = q . reservationId ) . FirstOrDefault ( ) ;
var userda = Userdata . Where ( x = > x . Id = = q . receptionuser ) . FirstOrDefault ( ) ;
list . Add ( new
list . Add ( new
{
{
type = 0 ,
type = 0 ,
@ -74,7 +76,9 @@ namespace _24Hour.Controllers.Common
sttime = q . receptiontime ,
sttime = q . receptiontime ,
ettime = "" ,
ettime = "" ,
creationtime = q . creationtime ,
creationtime = q . creationtime ,
username = q . createusername
username = q . createusername ,
handleId = q . receptionuser ,
handleuser = userda ? . name
} ) ;
} ) ;
} ) ;
} ) ;
//获取远程会见预约记录
//获取远程会见预约记录
@ -96,7 +100,9 @@ namespace _24Hour.Controllers.Common
ettime = q . ettime ,
ettime = q . ettime ,
state = q . state ,
state = q . state ,
creationtime = q . creationtime ,
creationtime = q . creationtime ,
username = q . createusername
username = q . createusername ,
handleId = q . meetwitId ,
handleuser = q . meetwitname
} ) ;
} ) ;
} ) ;
} ) ;
//获取远程接待预约记录
//获取远程接待预约记录
@ -118,7 +124,9 @@ namespace _24Hour.Controllers.Common
ettime = q . ettime ,
ettime = q . ettime ,
state = q . state ,
state = q . state ,
creationtime = q . creationtime ,
creationtime = q . creationtime ,
username = q . createusername
username = q . createusername ,
handleId = q . meetwitId ,
handleuser = q . meetwitname
} ) ;
} ) ;
} ) ;
} ) ;
list = list . Skip ( Commondata . PageSize * ( Commondata . PageIndex - 1 ) ) . Take ( Commondata . PageSize ) . ToList ( ) ;
list = list . Skip ( Commondata . PageSize * ( Commondata . PageIndex - 1 ) ) . Take ( Commondata . PageSize ) . ToList ( ) ;
@ -207,6 +215,7 @@ namespace _24Hour.Controllers.Common
{
{
type = 0 ,
type = 0 ,
Id = q . Id ,
Id = q . Id ,
daId = da ? . Id ,
title = da ? . title ,
title = da ? . title ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
@ -235,6 +244,7 @@ namespace _24Hour.Controllers.Common
{
{
type = 1 ,
type = 1 ,
Id = q . Id ,
Id = q . Id ,
daId = da ? . Id ,
title = da ? . title ,
title = da ? . title ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
@ -265,6 +275,7 @@ namespace _24Hour.Controllers.Common
{
{
type = 2 ,
type = 2 ,
Id = q . Id ,
Id = q . Id ,
daId = da ? . Id ,
title = da ? . title ,
title = da ? . title ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
@ -284,36 +295,10 @@ namespace _24Hour.Controllers.Common
appurl = ""
appurl = ""
} ) ;
} ) ;
} ) ;
} ) ;
//获取听证服务预约记录
//分页查询--如有预约类型--reservationId可筛选预约类型,预约信息Id--可筛选预约信息
//var Hearingdata = await _db.Queryable<App_HearingModel>()
list = list . WhereIF ( Commondata . reservationId . NotNull ( ) , x = > x . daId = = Commondata . reservationId )
// .WhereIF(Commondata.state!=null, x => x.state == Commondata.state)
. WhereIF ( Commondata . Id . NotNull ( ) , x = > x . Id = = Commondata . Id )
// .Where(q => q.IsDeleted == 0 && q.createuserId == _userdata.Id).ToArrayAsync();
. Skip ( Commondata . PageSize * ( Commondata . PageIndex - 1 ) ) . Take ( Commondata . PageSize ) . ToList ( ) ;
//Hearingdata.ToList().ForEach(q =>
//{
// var da = Stagingdata.Where(x => x.Id == q.reservationId).FirstOrDefault();
// list.Add(new
// {
// Id = q.Id,
// title = da?.title,
// color = da?.color,
// icon = da?.icon,
// name = "",
// phone = q.phone,
// matter = q.reservationlocation,//事由
// objectstr = q.casename,//访问对象(案件名称)
// Code = "",
// state = q.state,//状态
// reason = q.reason,//原因
// sttime = q.reservationtime,
// ettime = q.ettime,
// creationtime = q.creationtime,
// receptionuser = q.meetwitId,
// username = q.meetwitname,
// notes = q.notes,
// appurl = ""
// });
//});
list = list . Skip ( Commondata . PageSize * ( Commondata . PageIndex - 1 ) ) . Take ( Commondata . PageSize ) . ToList ( ) ;
result . IsSucceed = true ;
result . IsSucceed = true ;
result . result = list . ToList ( ) . OrderByDescending ( q = > q . creationtime ) . ToList ( ) ;
result . result = list . ToList ( ) . OrderByDescending ( q = > q . creationtime ) . ToList ( ) ;
@ -451,7 +436,7 @@ namespace _24Hour.Controllers.Common
// username = q.createusername
// username = q.createusername
// });
// });
//});
//});
list = list . Skip ( Commondata . PageSize * ( Commondata . PageIndex - 1 ) ) . Take ( Commondata . PageSize ) . ToList ( ) ;
list = list . WhereIF ( Commondata . matter . NotNull ( ) , q = > q . matter . Contains ( Commondata . matter ) | | q . objectstr . Contains ( Commondata . matter ) ) . Skip ( Commondata . PageSize * ( Commondata . PageIndex - 1 ) ) . Take ( Commondata . PageSize ) . ToList ( ) ;
result . IsSucceed = true ;
result . IsSucceed = true ;
result . result = list . ToList ( ) . OrderByDescending ( q = > q . creationtime ) . ToList ( ) ;
result . result = list . ToList ( ) . OrderByDescending ( q = > q . creationtime ) . ToList ( ) ;
@ -553,8 +538,6 @@ namespace _24Hour.Controllers.Common
# endregion
# endregion
#region 自主查询
#region 自主查询
/// <summary>
/// <summary>
/// app---根据当前登录人查询预约信息--自主查询
/// app---根据当前登录人查询预约信息--自主查询
/// </summary>
/// </summary>
@ -577,9 +560,11 @@ namespace _24Hour.Controllers.Common
list . Add ( new
list . Add ( new
{
{
Id = q . Id ,
Id = q . Id ,
name = da ? . title ,
title = da ? . title ,
path = da ? . path ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
objectstr = q . objectstr ,
matter = q . matter ,
matter = q . matter ,
state = q . state ,
state = q . state ,
sttime = q . receptiontime ,
sttime = q . receptiontime ,
@ -597,10 +582,12 @@ namespace _24Hour.Controllers.Common
list . Add ( new
list . Add ( new
{
{
Id = q . Id ,
Id = q . Id ,
name = da ? . title ,
title = da ? . title ,
path = da ? . path ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
matter = q . name ,
matter = q . name ,
objectstr = "" ,
sttime = q . sttime ,
sttime = q . sttime ,
ettime = q . ettime ,
ettime = q . ettime ,
state = q . state ,
state = q . state ,
@ -617,40 +604,172 @@ namespace _24Hour.Controllers.Common
list . Add ( new
list . Add ( new
{
{
Id = q . Id ,
Id = q . Id ,
name = da ? . title ,
title = da ? . title ,
path = da ? . path ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
matter = q . matter ,
matter = q . matter ,
objectstr = "" ,
sttime = q . sttime ,
sttime = q . sttime ,
ettime = q . ettime ,
ettime = q . ettime ,
state = q . state ,
state = q . state ,
creationtime = q . creationtime
creationtime = q . creationtime
} ) ;
} ) ;
} ) ;
} ) ;
//获取听证服务预约记录
//查询
var Hearingdata = await _d b . Queryable < App_HearingModel > ( )
list = list . ToList ( ) . WhereIF ( Commondata . matter . NotNull ( ) , q = > q . matter . Contains ( Commondata . matter ) | | q . objectstr . Contains ( Commondata . matter ) ) . ToList ( ) ;
result . IsSucceed = true ;
result . result = list . ToList ( ) . OrderByDescending ( q = > q . creationtime ) . ToList ( ) ;
}
catch ( System . Exception ex )
{
_d b . RollbackTran ( ) ;
result . IsSucceed = false ;
result . Message = ex . Message ;
}
_l ogs . WriteSysLogadd ( "所有预约信息" , "所有预约信息" , result , _d b ) ;
return result ;
}
# endregion
#region 数据统计
/// <summary>
/// 预约数据统计
/// </summary>
[HttpPost]
[Route("querystatistics")]
public async Task < Result > querystatistics ( Commonpage Commondata )
{
try
{
var list = new List < dynamic > ( ) ;
//获取工作台信息
var Stagingdata = await _d b . Queryable < StagingModel > ( ) . Where ( q = > q . IsDelete = = 0 ) . ToArrayAsync ( ) ;
var Userdata = await _d b . Queryable < App_Sys_UserModel > ( ) . Where ( q = > q . usertype = = 0 ) . ToArrayAsync ( ) ;
//获取律师服务预约记录
var Lawyerdata = await _d b . Queryable < App_LawyerServicesModel > ( )
. WhereIF ( Commondata . state ! = null , x = > x . state = = Commondata . state )
. WhereIF ( Commondata . state ! = null , x = > x . state = = Commondata . state )
. Where ( q = > q . IsDeleted = = 0 & & q . createuserId = = _ userdata . Id ) . ToArrayAsync ( ) ;
. Where ( q = > q . IsDeleted = = 0 & & q . createuserId = = _ userdata . Id ) . ToArrayAsync ( ) ;
Hearingdata . ToList ( ) . ForEach ( q = >
Lawyer data. ToList ( ) . ForEach ( q = >
{
{
var da = Stagingdata . Where ( x = > x . Id = = q . reservationId ) . FirstOrDefault ( ) ;
var da = Stagingdata . Where ( x = > x . Id = = q . reservationId ) . FirstOrDefault ( ) ;
var userda = Userdata . Where ( x = > x . Id = = q . receptionuser ) . FirstOrDefault ( ) ;
list . Add ( new
list . Add ( new
{
{
type = 0 ,
Id = q . Id ,
Id = q . Id ,
name = da ? . title ,
daId = da ? . Id ,
title = da ? . title ,
color = da ? . color ,
color = da ? . color ,
icon = da ? . icon ,
icon = da ? . icon ,
matter = q . casename ,
name = q . name ,
sttime = q . reservationtime ,
phone = q . phone ,
ettime = "" ,
matter = q . matter , //事由
objectstr = "" , //访问对象(案件名称)
state = q . state ,
state = q . state ,
creationtime = q . creationtime
reason = q . reason ,
sttime = q . receptiontime ,
ettime = "" ,
creationtime = q . creationtime ,
receptionuser = q . receptionuser ,
username = userda ? . name ,
notes = q . notes
} ) ;
} ) ;
} ) ;
} ) ;
//查询
//获取远程会见预约记录
list = list . ToList ( ) . WhereIF ( Commondata . matter . NotNull ( ) , q = > q . matter . Contains ( Commondata . matter ) ) . ToList ( ) ;
var Remotedata = await _d b . 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 ( ) ;
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 ,
state = 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 _d b . 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 ( ) ;
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 = "" ,
state = 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 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.creationtime}" ) . ToString ( "yyyy-MM-dd" ) ) . Select ( x = > new { time = x . Key , value = x . ToList ( ) . Count ( ) } ) ;
//预约状态分组
var satselist = list . ToList ( ) . GroupBy ( q = > q . satse ) . Select ( x = > new { satse = x . Key , value = x . ToList ( ) . Count ( ) } ) . ToList ( ) ;
var satseGroupBy = new List < dynamic > ( ) ;
satselist . ForEach ( x = > {
var satse = "" ;
switch ( x . satse )
{
case 0 :
satse = "待办理" ;
break ;
case 1 :
satse = "已受理" ;
break ;
case 2 :
satse = "拒绝" ;
break ;
case 3 :
satse = "结束" ;
break ;
default :
break ;
}
satseGroupBy . Add ( new { name = satse , value = x . value } ) ;
} ) ;
result . IsSucceed = true ;
result . IsSucceed = true ;
result . result = list . ToList ( ) . OrderByDescending ( q = > q . creationtime ) . ToList ( ) ;
result . result = new { GroupBy , datetme , satseGroupBy } ;
}
}
catch ( System . Exception ex )
catch ( System . Exception ex )