using Edu.Common.Enum;
using Edu.Model.Entity.WeChat;
using Edu.Model.ViewModel.WeChat;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using VT.FW.DB.Dapper;
namespace Edu.Repository.WeChat
{
///
/// 投稿素材仓储层
///
public class RB_Contribute_MediumRepository : BaseRepository
{
///
/// 获取分页列表
///
///
///
///
///
///
public List GetPageList(int pageIndex,int pageSize,out long count, RB_Contribute_Medium_ViewModel demodel)
{
DynamicParameters parameters = new DynamicParameters();
string where = $@" 1=1 and r.{nameof(RB_Contribute_Medium_ViewModel.Status)} =0";
if (demodel.Group_Id > 0)
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.MediaGroupId > 0)
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.MediaGroupId)} ={demodel.MediaGroupId}";
}
if (demodel.Type > 0)
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.Type)} ={(int)demodel.Type}";
}
if (!string.IsNullOrEmpty(demodel.MediaName))
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.MediaName)} like @Content";
parameters.Add("Content", "%" + demodel.MediaName + "%");
}
string sql = $@"
SELECT * From RB_Contribute_Medium r
WHERE {where}
ORDER BY r.Id DESC ";
return GetPage(pageIndex, pageSize, out count, sql, parameters).ToList();
}
///
/// 获取列表
///
///
///
public List GetList(RB_Contribute_Medium_ViewModel demodel)
{
DynamicParameters parameters = new DynamicParameters();
string where = $@" 1=1 and r.{nameof(RB_Contribute_Medium_ViewModel.Status)} =0";
if (demodel.Group_Id > 0)
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.Group_Id)} ={demodel.Group_Id}";
}
if (demodel.MediaGroupId > 0)
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.MediaGroupId)} ={demodel.MediaGroupId}";
}
if (!string.IsNullOrEmpty(demodel.MediumIds))
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.Id)} in({demodel.MediumIds})";
}
if (!string.IsNullOrEmpty(demodel.MediaName))
{
where += $@" and r.{nameof(RB_Contribute_Medium_ViewModel.MediaName)} like @Content";
parameters.Add("Content", "%" + demodel.MediaName + "%");
}
string sql = $@"
SELECT * From RB_Contribute_Medium r
WHERE {where}
ORDER BY r.Id DESC ";
return Get(sql, parameters).ToList();
}
}
}