using Edu.Model.Entity.Survey; using Edu.Model.ViewModel.Survey; using System; using System.Collections.Generic; using System.Linq; using System.Text; using VT.FW.DB.Dapper; namespace Edu.Repository.Survey { /// <summary> /// 意见调查基础信息仓储类 /// </summary> public class Rb_Education_SurveyRepository : BaseRepository<Rb_Education_Survey> { /// <summary> /// 获取列表 /// </summary> /// <param name="where"></param> /// <returns></returns> public List<Rb_Education_Survey_ViewModel> GetEducationSurveyListRepository(Rb_Education_Survey_ViewModel where) { StringBuilder sb = new StringBuilder(); DynamicParameters parameters = new DynamicParameters(); sb.Append($@"SELECT * FROM Rb_Education_Survey WHERE state=0"); if (where != null) { if (where.RB_Group_Id > 0) { sb.AppendFormat(" AND RB_Group_Id={0}", where.RB_Group_Id); } if (where.IsShow > 0) { sb.AppendFormat(" AND IsShow={0}", where.IsShow); } if (!string.IsNullOrWhiteSpace(where.Title)) { sb.AppendFormat(" AND Title LIKE @Title"); parameters.Add("@Title", "%" + where.Title + "%"); } if (where.SurveyType.HasValue && (int)where.SurveyType > 0) { sb.AppendFormat(" AND SurveyType={0}", (int)where.SurveyType); } if (!string.IsNullOrWhiteSpace(where.QSurveyIDs)) { sb.AppendFormat(" AND ID in({0})", where.QSurveyIDs); } if (!string.IsNullOrEmpty(where.QMainIds)) { sb.AppendFormat(" AND MainId in({0})", where.QMainIds); } if (where.MainId > 0) { sb.AppendFormat(" AND MainId in({0})", where.MainId); } } sb.Append($" ORDER BY {nameof(Rb_Education_Survey.Sort)} ASC"); return Get<Rb_Education_Survey_ViewModel>(sb.ToString(), parameters).ToList(); } /// <summary> /// 意见调查表配置项分页列表 /// </summary> /// <param name="pageIndex"></param> /// <param name="pageSize"></param> /// <param name="rowsCount"></param> /// <param name="where"></param> /// <returns></returns> public List<Rb_Education_Survey_ViewModel> GetEducationSurveyPageRepository(int pageIndex, int pageSize, out long rowsCount, Rb_Education_Survey where) { StringBuilder sb = new StringBuilder(); DynamicParameters parameters = new DynamicParameters(); sb.Append($@"SELECT A.* FROM Rb_Education_Survey AS A WHERE A.state=0"); if (where != null) { if (where.IsShow > -1) { sb.AppendFormat(" AND A.IsShow={0}", where.IsShow); } if (where.SurveyType.HasValue && (int)where.SurveyType > 0) { sb.AppendFormat(" AND A.SurveyType={0}", (int)where.SurveyType); } if (!string.IsNullOrWhiteSpace(where.Title)) { sb.AppendFormat(" AND A.Title LIKE @Title"); parameters.Add("@Title", "%" + where.Title + "%"); } if (where.MainId > 0) { sb.AppendFormat(" AND A.MainId={0} ", where.MainId); } } sb.Append($" ORDER BY {nameof(Rb_Education_Survey.Sort)} ASC"); return GetPage<Rb_Education_Survey_ViewModel>(pageIndex, pageSize, out rowsCount, sb.ToString(), parameters).ToList(); } } }