return (from merchantsInfo in base.GetIQueryable(x => x.IsLogicDelete == false && x.FID != fid)
join userAccount in UserAccountDal.GetIQueryable(x => x.PrivilegeLevel > 0)
on merchantsInfo.UserAccountID equals userAccount.FID
join merchantsfrom in MerchantsInfoFormDAL.GetIQueryable(x => !x.IsLogicDelete)
on merchantsInfo.FID equals merchantsfrom.MerchantsInfoID into data
from merchants in data.DefaultIfEmpty()
group new { merchants.MerchantsInfoID } by new
{
merchantsInfo.FID,
merchantsInfo.Name,
merchantsInfo.BrandLabel,
merchantsInfo.MainPicture,
merchantsInfo.MerchantsAmountMax,
merchantsInfo.MerchantsAmountMin,
merchantsInfo.MerchantsAmountType,
merchantsInfo.ProjectName,
merchantsInfo.BelongIndustry,
merchantsInfo.BelongIndustryChild,
merchantsInfo.MerchantsArea,
merchantsInfo.MerchantsAreaCity,
merchantsInfo.MerchantsAreaCitySubset,
merchants.MerchantsInfoID
} into g
select new MerchantsModel
{
FID = g.Key.FID,
Name = g.Key.Name,
BrandLabel = g.Key.BrandLabel,
MainPicture = g.Key.MainPicture,
MerchantsAmountMax = g.Key.MerchantsAmountMax,
MerchantsAmountMin = g.Key.MerchantsAmountMin,
MerchantsAmountType = g.Key.MerchantsAmountType,
ProjectName = g.Key.ProjectName,
BelongIndustry = g.Key.BelongIndustry,
BelongIndustryChild = g.Key.BelongIndustryChild,
MerchantsArea = g.Key.MerchantsArea,
MerchantsAreaCity = g.Key.MerchantsAreaCity,
MerchantsAreaCitySubset = g.Key.MerchantsAreaCitySubset,
ApplyNum = g.Key.MerchantsInfoID == null ? 0 : g.Count()
}).Take(row).ToList();
var userMapMessageIsReadListLinq = from um in sys_UserMapMessageService
.GetQueryable(x =>
x.CreatorID == userid ||
x.ReceiverID == userid)
group um by
new
{
um.CreatorID,
um.ReceiverID
} into g
select new UserMapMessageIsReadList
{
Id = g.Max(x => x.Id),
NoReadCount = g.Count(x => !x.IsRead)
};