public IList <SchoolYear> GetPreviousSchoolYears(DateTime currentSyStartDate, int schoolId, int count = 1) { var conds = new AndQueryCondition { { SchoolYear.END_DATE_FIELD, currentSyStartDate, ConditionRelation.LessEqual }, { SchoolYear.SCHOOL_REF_FIELD, schoolId, ConditionRelation.Equal } }; var dbQuery = Orm.SimpleSelect <SchoolYear>(conds, count); Orm.OrderBy(dbQuery, nameof(SchoolYear), SchoolYear.END_DATE_FIELD, Orm.OrderType.Desc); return(ReadMany <SchoolYear>(dbQuery)); }
public LessonPlan GetLastDraft(int personId) { var conds = new AndQueryCondition { { Announcement.STATE_FIELD, AnnouncementState.Draft }, { LessonPlan.SCHOOL_SCHOOLYEAR_REF_FIELD, schoolYearId } }; var dbQuery = SelectLessonPlan(conds); var callerIdParam = "callerId"; dbQuery.Sql.AppendFormat($" and ClassRef in (select ClassRef from ClassTeacher where ClassTeacher.PersonRef =@{callerIdParam})"); dbQuery.Parameters.Add(callerIdParam, personId); Orm.OrderBy(dbQuery, LessonPlan.VW_LESSON_PLAN_NAME, Announcement.CREATED_FIELD, Orm.OrderType.Desc); return(ReadOneOrNull <LessonPlan>(dbQuery)); }
public SupplementalAnnouncement GetLastDraft(int personId) { var conds = new AndQueryCondition { { Announcement.STATE_FIELD, AnnouncementState.Draft }, { SupplementalAnnouncement.SCHOOL_SCHOOLYEAR_REF_FIELD, _schoolYearId } }; var dbQuery = SelectSupplementalAnnouncement(conds); var callerIdParam = "callerId"; dbQuery.Sql.AppendFormat($" and ClassRef in (select ClassRef from ClassTeacher where ClassTeacher.PersonRef =@{callerIdParam})"); dbQuery.Parameters.Add(callerIdParam, personId); Orm.OrderBy(dbQuery, SupplementalAnnouncement.VW_SUPPLEMENTAL_ANNOUNCEMENT, Announcement.CREATED_FIELD, Orm.OrderType.Desc); return(ReadOneOrNull <SupplementalAnnouncement>(dbQuery)); }
//common implementation for teacher or admin public virtual ClassAnnouncement GetLastDraft(int personId) { var conds = new AndQueryCondition { { Announcement.STATE_FIELD, AnnouncementState.Draft }, { ClassAnnouncement.SCHOOL_SCHOOLYEAR_REF_FIELD, schoolYearId } }; var dbQuery = SelectClassAnnouncements(ClassAnnouncement.VW_CLASS_ANNOUNCEMENT_NAME, personId); conds.BuildSqlWhere(dbQuery, ClassAnnouncement.VW_CLASS_ANNOUNCEMENT_NAME); dbQuery.Sql.Append(@" and (ClassRef in (select ClassTeacher.ClassRef from ClassTeacher where ClassTeacher.PersonRef = @callerId))"); dbQuery.Parameters.Add("callerId", personId); Orm.OrderBy(dbQuery, ClassAnnouncement.VW_CLASS_ANNOUNCEMENT_NAME, Announcement.CREATED_FIELD, Orm.OrderType.Desc); return(ReadOneOrNull <ClassAnnouncement>(dbQuery)); }