修改查询
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
parent
33c27cccc2
commit
aec6757748
|
@ -10,6 +10,8 @@ using IRaCIS.Core.Domain.Models;
|
||||||
using IRaCIS.Core.Domain.Share;
|
using IRaCIS.Core.Domain.Share;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using Microsoft.EntityFrameworkCore;
|
using Microsoft.EntityFrameworkCore;
|
||||||
|
using NPOI.SS.Formula.Functions;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
namespace IRaCIS.Core.Application.Services
|
namespace IRaCIS.Core.Application.Services
|
||||||
{
|
{
|
||||||
|
@ -221,87 +223,167 @@ namespace IRaCIS.Core.Application.Services
|
||||||
|
|
||||||
var trialInfo = await (_trialRepository.Where(t => t.Id == inQuery.TrialId, ignoreQueryFilters: true).Select(t => new { t.TrialFinishedTime, t.TrialStatusStr }).FirstNotNullAsync());
|
var trialInfo = await (_trialRepository.Where(t => t.Id == inQuery.TrialId, ignoreQueryFilters: true).Select(t => new { t.TrialFinishedTime, t.TrialStatusStr }).FirstNotNullAsync());
|
||||||
|
|
||||||
//系统文档查询
|
|
||||||
var systemDocumentQueryable = from needConfirmedUserType in _systemDocNeedConfirmedUserTypeRepository.Where(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId, ignoreQueryFilters: true)
|
|
||||||
.WhereIf(trialInfo.TrialFinishedTime != null, u => u.SystemDocument.CreateTime < trialInfo.TrialFinishedTime)
|
|
||||||
.WhereIf(!_userInfo.IsAdmin, t => t.SystemDocument.IsDeleted == false || (t.SystemDocument.IsDeleted == true && t.SystemDocument.SystemDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.IdentityUserId)))
|
|
||||||
|
|
||||||
join trialUser in _trialUserRoleRepository.Where(t => t.TrialId == inQuery.TrialId && t.UserRole.IdentityUserId == _userInfo.IdentityUserId)
|
#region 统一用户修改
|
||||||
on needConfirmedUserType.NeedConfirmUserTypeId equals trialUser.UserRole.UserTypeId
|
|
||||||
join confirm in _systemDocConfirmedUserRepository.Where() on new { ConfirmUserId = trialUser.UserId, SystemDocumentId = needConfirmedUserType.SystemDocumentId } equals new { confirm.ConfirmUserId, confirm.SystemDocumentId } into cc
|
|
||||||
from confirm in cc.DefaultIfEmpty()
|
|
||||||
select new UnionDocumentWithConfirmInfoView()
|
|
||||||
{
|
|
||||||
IsSystemDoc = true,
|
|
||||||
|
|
||||||
Id = needConfirmedUserType.SystemDocument.Id,
|
var systemDocQuery =
|
||||||
CreateTime = needConfirmedUserType.SystemDocument.CreateTime,
|
from sysDoc in _systemDocumentRepository.WhereIf(trialInfo.TrialFinishedTime != null, u => u.CreateTime < trialInfo.TrialFinishedTime)
|
||||||
IsDeleted = needConfirmedUserType.SystemDocument.IsDeleted,
|
from trialUser in _trialIdentityUserRepository.Where(t => t.TrialId == inQuery.TrialId && t.IdentityUserId == _userInfo.IdentityUserId && t.TrialUserRoleList.Any(t => sysDoc.NeedConfirmedUserTypeList.Any(c => c.NeedConfirmUserTypeId == t.UserRole.UserTypeId)), false, false)
|
||||||
SignViewMinimumMinutes = needConfirmedUserType.SystemDocument.SignViewMinimumMinutes,
|
|
||||||
Name = needConfirmedUserType.SystemDocument.Name,
|
|
||||||
Path = needConfirmedUserType.SystemDocument.Path,
|
|
||||||
FileTypeId = needConfirmedUserType.SystemDocument.FileTypeId,
|
|
||||||
FileType = _userInfo.IsEn_Us ? needConfirmedUserType.SystemDocument.FileType.Value : needConfirmedUserType.SystemDocument.FileType.ValueCN,
|
|
||||||
UpdateTime = needConfirmedUserType.SystemDocument.UpdateTime,
|
|
||||||
|
|
||||||
FullFilePath = needConfirmedUserType.SystemDocument.Path,
|
join confirm in _systemDocConfirmedUserRepository.Where() on new { ConfirmUserId = trialUser.IdentityUserId, SystemDocumentId = sysDoc.Id } equals new { confirm.ConfirmUserId, confirm.SystemDocumentId } into cc
|
||||||
|
from confirm in cc.DefaultIfEmpty()
|
||||||
|
select new UnionDocumentWithConfirmInfoView()
|
||||||
|
{
|
||||||
|
IsSystemDoc = true,
|
||||||
|
|
||||||
//IsConfirmed = confirm.ConfirmTime != null,
|
Id = sysDoc.Id,
|
||||||
ConfirmUserId = confirm.ConfirmUserId,
|
CreateTime = sysDoc.CreateTime,
|
||||||
ConfirmTime = confirm.ConfirmTime,
|
IsDeleted = sysDoc.IsDeleted,
|
||||||
RealName = trialUser.UserRole.FullName,
|
SignViewMinimumMinutes = sysDoc.SignViewMinimumMinutes,
|
||||||
UserName = trialUser.UserRole.IdentityUser.UserName,
|
Name = sysDoc.Name,
|
||||||
|
Path = sysDoc.Path,
|
||||||
|
FileType = _userInfo.IsEn_Us ? sysDoc.FileType.Value : sysDoc.FileType.ValueCN,
|
||||||
|
FileTypeId = sysDoc.FileTypeId,
|
||||||
|
UpdateTime = sysDoc.UpdateTime,
|
||||||
|
//IsConfirmed = confirm.ConfirmTime != null,
|
||||||
|
|
||||||
|
ConfirmUserId = confirm.ConfirmUserId,
|
||||||
|
ConfirmTime = confirm.ConfirmTime,
|
||||||
|
|
||||||
|
RealName = trialUser.IdentityUser.FullName,
|
||||||
|
UserName = trialUser.IdentityUser.UserName,
|
||||||
|
|
||||||
IdentityUserTypeList = trialUser.TrialUser.TrialUserRoleList.Select(t => t.UserRole.UserTypeRole.UserTypeShortName),
|
//UserTypeId = trialUser.UserRole.UserTypeId,
|
||||||
|
//UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName,
|
||||||
|
|
||||||
//DocNeedSignUserTypeList = needConfirmedUserType.SystemDocument.NeedConfirmedUserTypeList.Select(t => t.UserTypeRole.UserTypeShortName).ToList(),
|
FullFilePath = sysDoc.Path
|
||||||
|
};
|
||||||
//UserTypeId = trialUser.UserRole.UserTypeId,
|
|
||||||
//UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName
|
|
||||||
};
|
|
||||||
|
|
||||||
//项目文档查询
|
//项目文档查询
|
||||||
var trialDocQueryable = from trialDoc in _trialDocumentRepository.AsQueryable(true).Where(t => t.TrialId == inQuery.TrialId)
|
var trialDocQuery = from trialDoc in _trialDocumentRepository.Where(t => t.TrialId == inQuery.TrialId)
|
||||||
.WhereIf(!_userInfo.IsAdmin, t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId))
|
from trialUser in _trialIdentityUserRepository.Where(t => t.TrialId == inQuery.TrialId && t.IdentityUserId == _userInfo.IdentityUserId && t.TrialUserRoleList.Any(t => trialDoc.NeedConfirmedUserTypeList.Any(c => c.NeedConfirmUserTypeId == t.UserRole.UserTypeId)), false, false)
|
||||||
.WhereIf(!_userInfo.IsAdmin, t => t.IsDeleted == false || (t.IsDeleted == true && t.TrialDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.IdentityUserId)))
|
join confirm in _trialDocConfirmedUserRepository.Where(t => t.TrialDocument.TrialId == inQuery.TrialId) on
|
||||||
|
new { trialUser.IdentityUserId, TrialDocumentId = trialDoc.Id } equals new { IdentityUserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc
|
||||||
|
from confirm in cc.DefaultIfEmpty()
|
||||||
|
select new UnionDocumentWithConfirmInfoView()
|
||||||
|
{
|
||||||
|
IsSystemDoc = false,
|
||||||
|
|
||||||
join trialUser in _trialUserRoleRepository.Where(t => t.TrialId == inQuery.TrialId && t.UserRole.IdentityUserId == _userInfo.IdentityUserId) on trialDoc.TrialId equals trialUser.TrialId
|
Id = trialDoc.Id,
|
||||||
join confirm in _trialDocConfirmedUserRepository.Where(t => t.TrialDocument.TrialId == inQuery.TrialId) on
|
CreateTime = trialDoc.CreateTime,
|
||||||
new { trialUser.UserId, TrialDocumentId = trialDoc.Id } equals new { UserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc
|
IsDeleted = trialDoc.IsDeleted,
|
||||||
from confirm in cc.DefaultIfEmpty()
|
SignViewMinimumMinutes = trialDoc.SignViewMinimumMinutes,
|
||||||
select new UnionDocumentWithConfirmInfoView()
|
Name = trialDoc.Name,
|
||||||
{
|
Path = trialDoc.Path,
|
||||||
Id = trialDoc.Id,
|
FileTypeId = trialDoc.FileTypeId,
|
||||||
IsSystemDoc = false,
|
FileType = _userInfo.IsEn_Us ? trialDoc.FileType.Value : trialDoc.FileType.ValueCN,
|
||||||
CreateTime = trialDoc.CreateTime,
|
UpdateTime = trialDoc.UpdateTime,
|
||||||
FullFilePath = trialDoc.Path,
|
//IsConfirmed= confirm.ConfirmTime!=null,
|
||||||
IsDeleted = trialDoc.IsDeleted,
|
|
||||||
Name = trialDoc.Name,
|
|
||||||
Path = trialDoc.Path,
|
|
||||||
FileTypeId = trialDoc.FileTypeId,
|
|
||||||
FileType = _userInfo.IsEn_Us ? trialDoc.FileType.Value : trialDoc.FileType.ValueCN,
|
|
||||||
UpdateTime = trialDoc.UpdateTime,
|
|
||||||
SignViewMinimumMinutes = trialDoc.SignViewMinimumMinutes,
|
|
||||||
|
|
||||||
//IsConfirmed = confirm.ConfirmTime != null,
|
|
||||||
ConfirmUserId = confirm.ConfirmUserId,
|
|
||||||
ConfirmTime = confirm.ConfirmTime,
|
|
||||||
RealName = trialUser.UserRole.FullName,
|
|
||||||
UserName = trialUser.UserRole.IdentityUser.UserName,
|
|
||||||
|
|
||||||
//UserTypeId = trialUser.UserRole.UserTypeId,
|
|
||||||
//UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName
|
|
||||||
|
|
||||||
|
|
||||||
IdentityUserTypeList = trialUser.TrialUser.TrialUserRoleList.Select(t => t.UserRole.UserTypeRole.UserTypeShortName).ToList(),
|
|
||||||
|
|
||||||
//DocNeedSignUserTypeList = trialDoc.NeedConfirmedUserTypeList.Select(t => t.UserTypeRole.UserTypeShortName).ToList(),
|
ConfirmUserId = confirm.ConfirmUserId,
|
||||||
};
|
ConfirmTime = confirm.ConfirmTime,
|
||||||
|
RealName = trialUser.IdentityUser.FullName,
|
||||||
|
UserName = trialUser.IdentityUser.UserName,
|
||||||
|
|
||||||
|
//UserTypeId = trialUser.UserRole.UserTypeId,
|
||||||
|
//UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName,
|
||||||
|
|
||||||
|
FullFilePath = trialDoc.Path
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#region 废弃
|
||||||
|
|
||||||
|
////系统文档查询
|
||||||
|
//var systemDocumentQueryable = from needConfirmedUserType in _systemDocNeedConfirmedUserTypeRepository.Where(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId, ignoreQueryFilters: true)
|
||||||
|
// .WhereIf(trialInfo.TrialFinishedTime != null, u => u.SystemDocument.CreateTime < trialInfo.TrialFinishedTime)
|
||||||
|
// .WhereIf(!_userInfo.IsAdmin, t => t.SystemDocument.IsDeleted == false || (t.SystemDocument.IsDeleted == true && t.SystemDocument.SystemDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.IdentityUserId)))
|
||||||
|
|
||||||
|
// join trialUser in _trialUserRoleRepository.Where(t => t.TrialId == inQuery.TrialId && t.UserRole.IdentityUserId == _userInfo.IdentityUserId)
|
||||||
|
// on needConfirmedUserType.NeedConfirmUserTypeId equals trialUser.UserRole.UserTypeId
|
||||||
|
// join confirm in _systemDocConfirmedUserRepository.Where() on new { ConfirmUserId = trialUser.UserId, SystemDocumentId = needConfirmedUserType.SystemDocumentId } equals new { confirm.ConfirmUserId, confirm.SystemDocumentId } into cc
|
||||||
|
// from confirm in cc.DefaultIfEmpty()
|
||||||
|
// select new UnionDocumentWithConfirmInfoView()
|
||||||
|
// {
|
||||||
|
// IsSystemDoc = true,
|
||||||
|
|
||||||
|
// Id = needConfirmedUserType.SystemDocument.Id,
|
||||||
|
// CreateTime = needConfirmedUserType.SystemDocument.CreateTime,
|
||||||
|
// IsDeleted = needConfirmedUserType.SystemDocument.IsDeleted,
|
||||||
|
// SignViewMinimumMinutes = needConfirmedUserType.SystemDocument.SignViewMinimumMinutes,
|
||||||
|
// Name = needConfirmedUserType.SystemDocument.Name,
|
||||||
|
// Path = needConfirmedUserType.SystemDocument.Path,
|
||||||
|
// FileTypeId = needConfirmedUserType.SystemDocument.FileTypeId,
|
||||||
|
// FileType = _userInfo.IsEn_Us ? needConfirmedUserType.SystemDocument.FileType.Value : needConfirmedUserType.SystemDocument.FileType.ValueCN,
|
||||||
|
// UpdateTime = needConfirmedUserType.SystemDocument.UpdateTime,
|
||||||
|
|
||||||
|
// FullFilePath = needConfirmedUserType.SystemDocument.Path,
|
||||||
|
|
||||||
|
// //IsConfirmed = confirm.ConfirmTime != null,
|
||||||
|
// ConfirmUserId = confirm.ConfirmUserId,
|
||||||
|
// ConfirmTime = confirm.ConfirmTime,
|
||||||
|
// RealName = trialUser.UserRole.FullName,
|
||||||
|
// UserName = trialUser.UserRole.IdentityUser.UserName,
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// IdentityUserTypeList = trialUser.TrialUser.TrialUserRoleList.Select(t => t.UserRole.UserTypeRole.UserTypeShortName),
|
||||||
|
|
||||||
|
// //DocNeedSignUserTypeList = needConfirmedUserType.SystemDocument.NeedConfirmedUserTypeList.Select(t => t.UserTypeRole.UserTypeShortName).ToList(),
|
||||||
|
|
||||||
|
// //UserTypeId = trialUser.UserRole.UserTypeId,
|
||||||
|
// //UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName
|
||||||
|
// };
|
||||||
|
|
||||||
|
////项目文档查询
|
||||||
|
//var trialDocQueryable = from trialDoc in _trialDocumentRepository.AsQueryable(true).Where(t => t.TrialId == inQuery.TrialId)
|
||||||
|
// .WhereIf(!_userInfo.IsAdmin, t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == _userInfo.UserTypeId))
|
||||||
|
// .WhereIf(!_userInfo.IsAdmin, t => t.IsDeleted == false || (t.IsDeleted == true && t.TrialDocConfirmedUserList.Any(t => t.ConfirmUserId == _userInfo.IdentityUserId)))
|
||||||
|
|
||||||
|
// join trialUser in _trialUserRoleRepository.Where(t => t.TrialId == inQuery.TrialId && t.UserRole.IdentityUserId == _userInfo.IdentityUserId) on trialDoc.TrialId equals trialUser.TrialId
|
||||||
|
// join confirm in _trialDocConfirmedUserRepository.Where(t => t.TrialDocument.TrialId == inQuery.TrialId) on
|
||||||
|
// new { trialUser.UserId, TrialDocumentId = trialDoc.Id } equals new { UserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc
|
||||||
|
// from confirm in cc.DefaultIfEmpty()
|
||||||
|
// select new UnionDocumentWithConfirmInfoView()
|
||||||
|
// {
|
||||||
|
// Id = trialDoc.Id,
|
||||||
|
// IsSystemDoc = false,
|
||||||
|
// CreateTime = trialDoc.CreateTime,
|
||||||
|
// FullFilePath = trialDoc.Path,
|
||||||
|
// IsDeleted = trialDoc.IsDeleted,
|
||||||
|
// Name = trialDoc.Name,
|
||||||
|
// Path = trialDoc.Path,
|
||||||
|
// FileTypeId = trialDoc.FileTypeId,
|
||||||
|
// FileType = _userInfo.IsEn_Us ? trialDoc.FileType.Value : trialDoc.FileType.ValueCN,
|
||||||
|
// UpdateTime = trialDoc.UpdateTime,
|
||||||
|
// SignViewMinimumMinutes = trialDoc.SignViewMinimumMinutes,
|
||||||
|
|
||||||
|
// //IsConfirmed = confirm.ConfirmTime != null,
|
||||||
|
// ConfirmUserId = confirm.ConfirmUserId,
|
||||||
|
// ConfirmTime = confirm.ConfirmTime,
|
||||||
|
// RealName = trialUser.UserRole.FullName,
|
||||||
|
// UserName = trialUser.UserRole.IdentityUser.UserName,
|
||||||
|
|
||||||
|
// //UserTypeId = trialUser.UserRole.UserTypeId,
|
||||||
|
// //UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName
|
||||||
|
|
||||||
|
|
||||||
|
// IdentityUserTypeList = trialUser.TrialUser.TrialUserRoleList.Select(t => t.UserRole.UserTypeRole.UserTypeShortName).ToList(),
|
||||||
|
|
||||||
|
// //DocNeedSignUserTypeList = trialDoc.NeedConfirmedUserTypeList.Select(t => t.UserTypeRole.UserTypeShortName).ToList(),
|
||||||
|
// };
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region 报错 奇怪的bug
|
#region 报错 奇怪的bug
|
||||||
var unionQuery = systemDocumentQueryable.Union(trialDocQueryable)/*.Distinct()*/
|
var unionQuery = systemDocQuery.Union(trialDocQuery)
|
||||||
.WhereIf(!string.IsNullOrEmpty(inQuery.Name), t => t.Name.Contains(inQuery.Name))
|
.WhereIf(!string.IsNullOrEmpty(inQuery.Name), t => t.Name.Contains(inQuery.Name))
|
||||||
.WhereIf(inQuery.FileTypeId != null, t => t.FileTypeId == inQuery.FileTypeId)
|
.WhereIf(inQuery.FileTypeId != null, t => t.FileTypeId == inQuery.FileTypeId)
|
||||||
.WhereIf(inQuery.IsSign == true, t => t.ConfirmTime != null)
|
.WhereIf(inQuery.IsSign == true, t => t.ConfirmTime != null)
|
||||||
|
@ -375,10 +457,9 @@ namespace IRaCIS.Core.Application.Services
|
||||||
|
|
||||||
var trialDocQuery = from trialDoc in _trialDocumentRepository.Where(t => t.TrialId == inQuery.TrialId)
|
var trialDocQuery = from trialDoc in _trialDocumentRepository.Where(t => t.TrialId == inQuery.TrialId)
|
||||||
.WhereIf(inQuery.UserTypeId != null, t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == inQuery.UserTypeId))
|
.WhereIf(inQuery.UserTypeId != null, t => t.NeedConfirmedUserTypeList.Any(t => t.NeedConfirmUserTypeId == inQuery.UserTypeId))
|
||||||
join trialUser in _trialIdentityUserRepository.Where(t => t.TrialId == inQuery.TrialId)
|
from trialUser in _trialIdentityUserRepository.Where(t => t.TrialId == inQuery.TrialId && t.TrialUserRoleList.Any(t => trialDoc.NeedConfirmedUserTypeList.Any(c => c.NeedConfirmUserTypeId == t.UserRole.UserTypeId)), false, false)
|
||||||
.WhereIf(inQuery.UserId != null, t => t.IdentityUserId == inQuery.UserId)
|
.WhereIf(inQuery.UserId != null, t => t.IdentityUserId == inQuery.UserId)
|
||||||
|
|
||||||
on trialDoc.TrialId equals trialUser.TrialId
|
|
||||||
|
|
||||||
join confirm in _trialDocConfirmedUserRepository.Where(t => t.TrialDocument.TrialId == inQuery.TrialId) on
|
join confirm in _trialDocConfirmedUserRepository.Where(t => t.TrialDocument.TrialId == inQuery.TrialId) on
|
||||||
new { trialUser.IdentityUserId, TrialDocumentId = trialDoc.Id } equals new { IdentityUserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc
|
new { trialUser.IdentityUserId, TrialDocumentId = trialDoc.Id } equals new { IdentityUserId = confirm.ConfirmUserId, confirm.TrialDocumentId } into cc
|
||||||
|
@ -412,57 +493,47 @@ namespace IRaCIS.Core.Application.Services
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
//var result = from sysDoc in _systemDocumentRepository.AsQueryable()
|
|
||||||
// from trialUser in _trialIdentityUserRepository.AsQueryable() // 无条件笛卡尔积
|
|
||||||
|
|
||||||
|
|
||||||
// select new
|
var systemDocQuery =
|
||||||
// {
|
from sysDoc in _systemDocumentRepository.WhereIf(trialInfo.TrialFinishedTime != null, u => u.CreateTime < trialInfo.TrialFinishedTime)
|
||||||
|
from trialUser in _trialIdentityUserRepository.Where(t => t.TrialId == inQuery.TrialId && t.TrialUserRoleList.Any(t => sysDoc.NeedConfirmedUserTypeList.Any(c => c.NeedConfirmUserTypeId == t.UserRole.UserTypeId)), false, false)
|
||||||
|
.WhereIf(inQuery.UserId != null, t => t.IdentityUserId == inQuery.UserId)
|
||||||
|
|
||||||
// Table2Id = sysDoc,
|
join confirm in _systemDocConfirmedUserRepository.Where() on new { ConfirmUserId = trialUser.IdentityUserId, SystemDocumentId = sysDoc.Id } equals new { confirm.ConfirmUserId, confirm.SystemDocumentId } into cc
|
||||||
// };
|
from confirm in cc.DefaultIfEmpty()
|
||||||
|
select new UnionDocumentWithConfirmInfoView()
|
||||||
|
{
|
||||||
|
IsSystemDoc = true,
|
||||||
|
|
||||||
|
Id = sysDoc.Id,
|
||||||
|
CreateTime = sysDoc.CreateTime,
|
||||||
|
IsDeleted = sysDoc.IsDeleted,
|
||||||
|
SignViewMinimumMinutes = sysDoc.SignViewMinimumMinutes,
|
||||||
|
Name = sysDoc.Name,
|
||||||
|
Path = sysDoc.Path,
|
||||||
|
FileType = _userInfo.IsEn_Us ? sysDoc.FileType.Value : sysDoc.FileType.ValueCN,
|
||||||
|
FileTypeId = sysDoc.FileTypeId,
|
||||||
|
UpdateTime = sysDoc.UpdateTime,
|
||||||
|
//IsConfirmed = confirm.ConfirmTime != null,
|
||||||
|
|
||||||
|
ConfirmUserId = confirm.ConfirmUserId,
|
||||||
|
ConfirmTime = confirm.ConfirmTime,
|
||||||
|
|
||||||
//var systemDocQuery =
|
RealName = trialUser.IdentityUser.FullName,
|
||||||
// from sysDoc in _systemDocumentRepository.AsQueryable()
|
UserName = trialUser.IdentityUser.UserName,
|
||||||
// from trialUser in _trialIdentityUserRepository.Where(t => t.TrialId == inQuery.TrialId)
|
|
||||||
|
|
||||||
// join confirm in _systemDocConfirmedUserRepository.Where() on new { ConfirmUserId = trialUser.IdentityUserId, SystemDocumentId = sysDoc.Id } equals new { confirm.ConfirmUserId, confirm.SystemDocumentId } into cc
|
//UserTypeId = trialUser.UserRole.UserTypeId,
|
||||||
// //from confirm in cc.DefaultIfEmpty()
|
//UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName,
|
||||||
// select new UnionDocumentWithConfirmInfoView()
|
|
||||||
// {
|
|
||||||
// IsSystemDoc = true,
|
|
||||||
|
|
||||||
// Id = sysDoc.Id,
|
FullFilePath = sysDoc.Path
|
||||||
// CreateTime = sysDoc.CreateTime,
|
};
|
||||||
// IsDeleted = sysDoc.IsDeleted,
|
|
||||||
// SignViewMinimumMinutes = sysDoc.SignViewMinimumMinutes,
|
|
||||||
// Name = sysDoc.Name,
|
|
||||||
// Path = sysDoc.Path,
|
|
||||||
// FileType = _userInfo.IsEn_Us ? sysDoc.FileType.Value : sysDoc.FileType.ValueCN,
|
|
||||||
// FileTypeId = sysDoc.FileTypeId,
|
|
||||||
// UpdateTime = sysDoc.UpdateTime,
|
|
||||||
// //IsConfirmed = confirm.ConfirmTime != null,
|
|
||||||
|
|
||||||
// ConfirmUserId = confirm.ConfirmUserId,
|
var unionQuery = trialDocQuery.Union(systemDocQuery).IgnoreQueryFilters().Where(t => !(t.IsDeleted == true && t.ConfirmUserId == null))
|
||||||
// ConfirmTime = confirm.ConfirmTime,
|
.WhereIf(!string.IsNullOrEmpty(inQuery.Name), t => t.Name.Contains(inQuery.Name))
|
||||||
|
.WhereIf(inQuery.FileTypeId != null, t => t.FileTypeId == inQuery.FileTypeId)
|
||||||
// RealName = trialUser.IdentityUser.FullName,
|
.WhereIf(inQuery.IsConfirmed == true, t => t.ConfirmTime != null)
|
||||||
// UserName = trialUser.IdentityUser.UserName,
|
.WhereIf(inQuery.IsConfirmed == false, t => t.ConfirmTime == null)
|
||||||
|
.WhereIf(inQuery.IsDeleted != null, t => t.IsDeleted == inQuery.IsDeleted);
|
||||||
// //UserTypeId = trialUser.UserRole.UserTypeId,
|
|
||||||
// //UserTypeShortName = trialUser.UserRole.UserTypeRole.UserTypeShortName,
|
|
||||||
|
|
||||||
// FullFilePath = sysDoc.Path
|
|
||||||
// };
|
|
||||||
|
|
||||||
//var unionQuery = trialDocQuery.Union(systemDocQuery).IgnoreQueryFilters().Where(t => !(t.IsDeleted == true && t.ConfirmUserId == null))
|
|
||||||
// .WhereIf(!string.IsNullOrEmpty(inQuery.Name), t => t.Name.Contains(inQuery.Name))
|
|
||||||
// .WhereIf(inQuery.FileTypeId != null, t => t.FileTypeId == inQuery.FileTypeId)
|
|
||||||
// .WhereIf(inQuery.IsConfirmed == true, t => t.ConfirmTime != null)
|
|
||||||
// .WhereIf(inQuery.IsConfirmed == false, t => t.ConfirmTime == null)
|
|
||||||
// .WhereIf(inQuery.IsDeleted != null, t => t.IsDeleted == inQuery.IsDeleted);
|
|
||||||
|
|
||||||
var result = await trialDocQuery.ToPagedListAsync(inQuery);
|
var result = await trialDocQuery.ToPagedListAsync(inQuery);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue