12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using EMIS.DataLogic.Repositories;
- using System.Linq.Expressions;
- using EMIS.Entities;
- using EMIS.ViewModel.CalendarManage;
- namespace EMIS.DataLogic.Common.CalendarManage
- {
- public class DutyDAL
- {
- public dutyRepository dutyRepository { get; set; }
- public UserRepository userRepository { get; set; }
- public DepartmentRepository departmentRepository { get; set; }
- public DictionaryItemRepository dictionaryItemRepository { get; set; }
- /// <summary>
- /// 读取值班管理信息
- /// </summary>
- /// <param name="exp"></param>
- /// <returns></returns>
- public IQueryable<DutyView> GetDutyQueryable(Expression<Func<EM_duty, bool>> exp)
- {
- var query = from a in dutyRepository.GetList(exp)
- join b in userRepository.Entities on a.UserID equals b.UserID
- join c in departmentRepository.Entities on a.DepartmentID equals c.DepartmentID
- join d in dictionaryItemRepository.Entities on new { a.TimesSegment, DictionaryCode = "CF_TimesSegment" }
- equals new { TimesSegment = d.Value.Value, d.DictionaryCode } into gbsta
- from gicbsta in gbsta.DefaultIfEmpty()
- select new DutyView
- {
- DutyID = a.DutyID,
- UserID = a.UserID,
- LoginID = b.LoginID,
- UserName = b.Name,
- TimesSegment = a.TimesSegment,
- TimesSegmentName = gicbsta.Name,
- DutyTime = a.DutyTime,
- StartHour = a.StartHour,
- StartMinutes = a.StartMinutes,
- StartDate = a.StartHour + ":" + (a.StartMinutes == 0 ? "00" : a.StartMinutes.ToString()),
- EndHour = a.EndHour,
- EndMinutes = a.EndMinutes,
- EndDate = a.EndHour + ":" + (a.EndMinutes == 0 ? "00" : a.EndMinutes.ToString()),
- Description = a.Description,
- CollegeID= c.CollegeID,
- CampusID=c.CF_College.CampusID,
- DepartmentID = a.DepartmentID,
- DepartmentName = c.Name,
- CreateUserID = a.CreateUserID,
- CreateTime = a.CreateTime
- };
- return query;
- }
- }
- }
|