Files
zszq-trs/YLErpDAL/Modules/BasicDataModule/AssetunitBLL.cs
T
2024-05-09 14:06:26 +08:00

63 lines
1.9 KiB
C#

using BaseOUDAL;
using YLErp.Model;
namespace YLErp.BLL
{
/// <summary>
/// 当前主要用在老版的API
/// </summary>
public class assetunitBLL
{
private readonly YLContext db = new YLContext();
public static List<AssetUnit> GetAllAssetUnitModel()
{
return Modules.DataCacheProvider.GetAssetUnitDataSource().AsQueryable().ToList();
}
/// <summary>
/// 查询assetunit
/// </summary>
public SearchListResult<AssetUnit> SearchList(AssetunitReq req)
{
var query = from source in db.assetunit select source;
if (!string.IsNullOrEmpty(req.Name))
{
query = query.Where(d => d.Name.Contains(req.Name));
}
if (req.NameList != null)
{ query = query.Where(d => req.NameList.Contains(d.Name)); }
if (!string.IsNullOrEmpty(req.BaseCurrency))
{
query = query.Where(d => d.BaseCurrency.Contains(req.BaseCurrency));
}
if (!string.IsNullOrEmpty(req.UserGroup))
{
query = query.Where(d => d.UserGroup.Contains(req.UserGroup));
}
if (req.TraderIdList != null && req.TraderIdList.Count > 0)
{
var ids = query.ToList().Where(d => req.TraderIdList.Intersect(d.TraderIdsInt).Any()).Select(x => x.id);
query = query.Where(d => ids.Contains(d.id));
}
if (string.IsNullOrEmpty(req.sidx))
{
req.sidx = "id";
req.sord = "desc";
}
var retListResult = query.ToSearchList(req);
var groups = db.assetunitgroup.ToList();
retListResult.rows.ToList().ForEach(x => x.GroupName = groups.FirstOrDefault(y => y.id == x.GroupId)?.Name);
return retListResult;
}
}
}