|
- using Dapper;
- using Learun.DataBase.Repository;
- using Learun.Util;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Linq;
- using System.Text;
-
- namespace Learun.Application.TwoDevelopment.EducationalAdministration
- {
- /// <summary>
- /// 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园
- /// Copyright (c) 2013-2018 北京泉江科技有限公司
- /// 创 建:超级管理员
- /// 日 期:2019-05-24 15:40
- /// 描 述:学生请假记录
- /// </summary>
- public class StuAttendanceLeaveService : RepositoryFactory
- {
- #region 获取数据
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <param name="queryJson">查询参数</param>
- /// <returns></returns>
- public IEnumerable<StuAttendanceLeaveEntity> GetPageList(Pagination pagination, string queryJson)
- {
- try
- {
- var strSql = new StringBuilder();
- strSql.Append("SELECT ");
- strSql.Append(@"
- t.ID,
- t.AcademicYearNo,
- t.Semester,
- t.StuNo,
- t.StuName,
- t.Grade,
- t.DeptNo,
- t.DeptName,
- t.MajorNo,
- t.MajorName,
- t.ClassNo,
- t.ClassName,
- t.LessonNo,
- t.LessonName,
- t.TeachClassNo,
- t.LessonSortNo,
- t.LessonSortName,
- t.LessonDate,
- t.LessonTime,
- t.LeaveType,
- t.EmpNo,
- t.Remark,
- t.IsCheck,
- t.TecRemark
- ");
- strSql.Append(" FROM StuAttendanceLeave t ");
- strSql.Append(" WHERE 1=1 ");
- var queryParam = queryJson.ToJObject();
- // 虚拟参数
- var dp = new DynamicParameters(new { });
- if (!queryParam["StartTime"].IsEmpty() && !queryParam["EndTime"].IsEmpty())
- {
- dp.Add("startTime", queryParam["StartTime"].ToDate(), DbType.DateTime);
- dp.Add("endTime", queryParam["EndTime"].ToDate(), DbType.DateTime);
- strSql.Append(" AND ( t.LessonDate >= @startTime AND t.LessonDate <= @endTime ) ");
- }
- if (!queryParam["LessonName"].IsEmpty())
- {
- dp.Add("LessonName", "%" + queryParam["LessonName"].ToString() + "%", DbType.String);
- strSql.Append(" AND t.LessonName Like @LessonName ");
- }
- if (!queryParam["Grade"].IsEmpty())
- {
- dp.Add("Grade", "%" + queryParam["Grade"].ToString() + "%", DbType.String);
- strSql.Append(" AND t.Grade Like @Grade ");
- }
- if (!queryParam["StuName"].IsEmpty())
- {
- dp.Add("StuName", "%" + queryParam["StuName"].ToString() + "%", DbType.String);
- strSql.Append(" AND t.StuName Like @StuName ");
- }
- if (!queryParam["EmpNo"].IsEmpty())
- {
- dp.Add("EmpNo", "%" + queryParam["EmpNo"].ToString() + "%", DbType.String);
- strSql.Append(" AND t.EmpNo Like @EmpNo ");
- }
- var result = this.BaseRepository("CollegeMIS").FindList<StuAttendanceLeaveEntity>(strSql.ToString(), dp, pagination);
- //var result = this.BaseRepository("CollegeMIS").FindList<StuAttendanceLeaveEntity>(strSql.ToString(), dp, pagination);
- //获取登录帐号
- var userInfo = LoginUserInfo.Get();
- //获取当前帐号所管理的班级
- var classes = this.BaseRepository("CollegeMIS").FindList<ClassInfoEntity>(a => a.ClassDiredctorNo == userInfo.account).Select(a => a.ClassNo);
- var list = result.Where(a => classes.Contains(a.ClassNo)).ToList();
- return list;
- //var stuSelectLessons = this.BaseRepository("CollegeMIS").FindList<StuSelectLessonListEntity>(a => a.EmpNo == userInfo.account).ToList();
- ////获取当前教师所教的课程
- //var lessons = stuSelectLessons.GroupBy(a => a.LessonNo).Select(a => a.Key).ToList();
- ////获取要上当前教师所教课程的学生
- //var students = stuSelectLessons.GroupBy(a => a.StuNo).Select(a => a.Key).ToList();
- //var list2 = result.Where(a => students.Contains(a.StuNo))
- // .Where(a => lessons.Contains(a.LessonNo)).ToList();
- //list.AddRange(list2);
- //return list.Distinct().ToList();
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
-
- /// <summary>
- /// 获取页面显示列表数据
- /// <summary>
- /// <param name="queryJson">查询参数</param>
- /// <returns></returns>
- public IEnumerable<StuAttendanceLeaveEntity> GetList(string queryJson)
- {
- try
- {
- var strSql = new StringBuilder();
- strSql.Append("SELECT ");
- strSql.Append(@"
- t.ID,
- t.AcademicYearNo,
- t.Semester,
- t.StuNo,
- t.StuName,
- t.Grade,
- t.DeptNo,
- t.DeptName,
- t.MajorNo,
- t.MajorName,
- t.ClassNo
- ");
- strSql.Append(" FROM StuAttendanceLeave t ");
- strSql.Append(" WHERE 1=1 ");
- var queryParam = queryJson.ToJObject();
- // 虚拟参数
- var dp = new DynamicParameters(new { });
- var result = this.BaseRepository("CollegeMIS").FindList<StuAttendanceLeaveEntity>(strSql.ToString(), dp);
- //获取登录帐号
- var userInfo = LoginUserInfo.Get();
- //获取当前帐号所管理的班级
- var classes = this.BaseRepository("CollegeMIS").FindList<ClassInfoEntity>(a => a.ClassDiredctorNo == userInfo.account).Select(a => a.ClassNo);
- var list = result.Where(a => classes.Contains(a.ClassNo)).ToList();
- return list;
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- internal void Check(string keyValue, string checkValue)
- {
- try
- {
- var entity = this.BaseRepository("CollegeMIS").FindEntity<StuAttendanceLeaveEntity>(a => a.ID == keyValue);
- if (null != entity)
- {
- entity.IsCheck = checkValue;
- }
- entity.Modify(keyValue);
-
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
-
- }
- }
-
- public List<StuAttendanceLeaveEntity> GetList()
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindList<StuAttendanceLeaveEntity>().ToList();
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 获取StuAttendanceLeave表实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public StuAttendanceLeaveEntity GetStuAttendanceLeaveEntity(string keyValue)
- {
- try
- {
- return this.BaseRepository("CollegeMIS").FindEntity<StuAttendanceLeaveEntity>(keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- #endregion
-
- #region 提交数据
-
- /// <summary>
- /// 删除实体数据
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void DeleteEntity(string keyValue)
- {
- try
- {
- this.BaseRepository("CollegeMIS").Delete<StuAttendanceLeaveEntity>(t => t.ID == keyValue);
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void SaveEntity(string keyValue, StuAttendanceLeaveEntity entity)
- {
- try
- {
- entity.UpdateDate = DateTime.Now;
- if (!string.IsNullOrEmpty(keyValue))
- {
- entity.Modify(keyValue);
- this.BaseRepository("CollegeMIS").Update(entity);
- }
- else
- {
- entity.Create();
- this.BaseRepository("CollegeMIS").Insert(entity);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
- /// <summary>
- /// 保存实体数据(新增、修改)
- /// <param name="keyValue">主键</param>
- /// <summary>
- /// <returns></returns>
- public void SaveEntity(UserInfo userInfo, string keyValue, StuAttendanceLeaveEntity entity)
- {
- try
- {
- if (!string.IsNullOrEmpty(keyValue))
- {
- entity.Modify(keyValue, userInfo);
- this.BaseRepository("CollegeMIS").Update(entity);
- }
- else
- {
- entity.Create(userInfo);
- this.BaseRepository("CollegeMIS").Insert(entity);
- }
- }
- catch (Exception ex)
- {
- if (ex is ExceptionEx)
- {
- throw;
- }
- else
- {
- throw ExceptionEx.ThrowServiceException(ex);
- }
- }
- }
-
-
- #endregion
-
- }
- }
|