mh_jy_safe/APT.MicroApi/APT.SC.WebApi/Controllers/Api/SEController/SENewUserDetailController.cs

92 lines
4.3 KiB
C#
Raw Normal View History

2025-08-25 09:56:57 +08:00
using System;
using System.Collections.Generic;
using System.Linq;
using APT.BaseData.Domain.Entities;
using APT.BaseData.Domain.Entities.FM;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.BS;
using APT.MS.Domain.Entities.SE;
using APT.MS.Domain.Enums;
using APT.Utility;
using Microsoft.AspNetCore.Mvc;
namespace APT.SC.WebApi.Controllers.Api.SE
{
[Route("api/SE/SENewUserDetail")]
public class SENewUserDetailController : AuthorizeApiController<T_SE_NEW_USER_DETAIL>
{
/// <summary>
/// 查询
/// </summary>
/// <param name="pageFilter"></param>
/// <returns></returns>
[HttpPost, Route("SEOrderPaged")]
public PagedActionResult<T_SE_NEW_USER_DETAIL> SEOrderPaged([FromBody] KeywordPageFilter pageFilter)
{
//var recordfilter = new BaseFilter(pageFilter.GetOrgId());
//recordfilter.SelectField = new string[] { "USER_ID", "Nav_User.NAME", "Nav_User.CREATE_TIME" };
//var allUser = WitOrderPaged(null, pageFilter);
//var totalUser = GetEntities<T_SE_NEW_USER_DETAIL>(null, pageFilter).OrderByDescending(e => e.Nav_User.CREATE_TIME).Distinct(t => t.USER_ID);
//allUser.Data = totalUser;
//allUser.TotalCount = totalUser.Count();
//return allUser;
return SafeGetPagedData(delegate (PagedActionResult<T_SE_NEW_USER_DETAIL> result)
{
var resultTemp = GetOrderEntities<T_SE_NEW_USER_DETAIL>(e => e.USER_ID.HasValue && !e.IS_DELETED && (e.Nav_User.IS_DELETED || !e.Nav_User.IS_DELETED), pageFilter).Distinct(t => t.USER_ID);
var listUserIDDel = resultTemp.Where(e => e.Nav_User == null && e.USER_ID.HasValue).Select(e => e.USER_ID.Value).ToList();
if (listUserIDDel != null && listUserIDDel.Count() > 0)
{
var fmUserDel = GetEntities_noneBase<T_FM_USER>(e => listUserIDDel.Contains(e.ID) && (!e.IS_DELETED || e.IS_DELETED));
if (fmUserDel != null && fmUserDel.Count() > 0)
{
foreach (var item in resultTemp)
{
if (item.Nav_User == null && item.USER_ID.HasValue)
{
item.Nav_User = fmUserDel.FirstOrDefault(e => e.ID == item.USER_ID.Value);
}
}
}
}
result.Data = resultTemp;
result.TotalCount = resultTemp.Count();
});
2025-08-25 09:56:57 +08:00
}
/// <summary>
/// 获得单条实体数据
/// </summary>
/// <param name="filter">过滤实体</param>
/// <returns></returns>
[HttpPost, Route("Get")]
public JsonActionResult<dynamic> Get([FromBody] KeywordFilter filter)
{
return SafeExecute<dynamic>(() =>
{
dynamic ret = new System.Dynamic.ExpandoObject();
string userId = string.Empty;
var userRule = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "USERID");
if (userRule == null)
userRule = filter.FilterGroup.Rules.FirstOrDefault(t => t.Field == "USER_ID");
userId = userRule.Value.ToString();
IEnumerable<T_SE_NEW_USER_DETAIL> educard = null;
BaseFilter userFilter = null;
if (filter.Include == null || filter.Include.Count() < 1)
{
userFilter = new BaseFilter(filter.GetOrgId());
userFilter.Include = new string[] { "Nav_NewUser.Nav_Department", "Nav_NewUser.Nav_User", "Nav_NewUser.Nav_Content", "Nav_NewUser.Nav_Files.Nav_ImgFile", "Nav_User", "Nav_Department", "Nav_Post", "Nav_Files.Nav_ImgFile" };
educard = GetEntities<T_SE_NEW_USER_DETAIL>(t => t.USER_ID == Guid.Parse(userId) && (t.Nav_NewUser.IS_DELETED || !t.Nav_NewUser.IS_DELETED), userFilter).ToList();
}
else
{
educard = GetEntities<T_SE_NEW_USER_DETAIL>(t => t.USER_ID == Guid.Parse(userId) && (t.Nav_NewUser.IS_DELETED || !t.Nav_NewUser.IS_DELETED), filter).ToList();
}
2025-08-25 09:56:57 +08:00
ret = educard;
return ret;
});
}
}
}