using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; using EMIS.DataLogic.Repositories; using EMIS.Entities; using EMIS.ViewModel.StudentManage.StudentProfile; namespace EMIS.DataLogic.StudentManage.StudentProfile { public class StudentPostPracticeDAL { public StudentPostPracticeRepository StudentPostPracticeRepository { get; set; } public StudentRepository StudentRepository { get; set; } public ClassmajorRepository ClassmajorRepository { get; set; } public GrademajorRepository GrademajorRepository { get; set; } public FacultymajorRepository FacultymajorRepository { get; set; } public CollegeRepository CollegeRepository { get; set; } public CampusRepository CampusRepository { get; set; } public UserRepository UserRepository { get; set; } /// /// 查询对应的学生顶岗实习信息StudentPostPracticeView /// /// /// public IQueryable GetStudentPostPracticeViewQueryable(Expression> expStudentPostPractice) { var query = from stuppra in StudentPostPracticeRepository.GetList(expStudentPostPractice) join stu in StudentRepository.Entities on stuppra.UserID equals stu.UserID join cl in ClassmajorRepository.Entities on stu.ClassmajorID equals cl.ClassmajorID join gr in GrademajorRepository.Entities on cl.GrademajorID equals gr.GrademajorID join fa in FacultymajorRepository.Entities on gr.FacultymajorID equals fa.FacultymajorID join col in CollegeRepository.Entities on fa.CollegeID equals col.CollegeID join cam in CampusRepository.Entities on col.CampusID equals cam.CampusID join us in UserRepository.Entities on stu.UserID equals us.UserID select new StudentPostPracticeView { StudentPostPracticeID = stuppra.StudentPostPracticeID, UserID = stuppra.UserID, StudentNo = us.LoginID, Name = us.Name, SexID = stu.SexID, BirthDate = stu.BirthDate, NationID = stu.NationID, PoliticsID = stu.PoliticsID, InSchoolStatusID = stu.InSchoolStatusID, StudentStatus = stu.StudentStatus, GradeID = gr.GradeID, StandardID = fa.StandardID, EducationID = fa.EducationID, LearningformID = fa.LearningformID, LearnSystem = fa.LearnSystem, ClassNum = cl.ClassNum, ClassmajorID = stu.ClassmajorID, ClassmajorNo = cl.No, ClassmajorName = cl.Name, GrademajorID = cl.GrademajorID, GrademajorCode = gr.Code, GrademajorName = gr.Name, FacultymajorID = gr.FacultymajorID, FacultymajorCode = fa.Code, FacultymajorName = fa.Name, CollegeID = fa.CollegeID, CollegeNo = col.No, CollegeName = col.Name, CampusID = col.CampusID, CampusCode = cam.No, CampusName = cam.Name, PracticePlace = stuppra.PracticePlace, StartYear = stuppra.StartYear, StartMonth = stuppra.StartMonth, EndYear = stuppra.EndYear, EndMonth = stuppra.EndMonth, PracticeMentor = stuppra.PracticeMentor, PracticeContent = stuppra.PracticeContent, SelfAppraise = stuppra.SelfAppraise, RecordStatus = stuppra.RecordStatus, CreateUserID = stuppra.CreateUserID, CreateTime = stuppra.CreateTime, ModifyUserID = stuppra.ModifyUserID, ModifyTime = stuppra.ModifyTime }; return query; } /// /// 查询对应的学生顶岗实习信息StudentPostPracticeView /// /// /// /// public IQueryable GetStudentPostPracticeViewQueryable(Expression> expStudentPostPractice, Expression> expStudent) { var query = from stuppra in StudentPostPracticeRepository.GetList(expStudentPostPractice) join stu in StudentRepository.GetList(expStudent) on stuppra.UserID equals stu.UserID join cl in ClassmajorRepository.Entities on stu.ClassmajorID equals cl.ClassmajorID join gr in GrademajorRepository.Entities on cl.GrademajorID equals gr.GrademajorID join fa in FacultymajorRepository.Entities on gr.FacultymajorID equals fa.FacultymajorID join col in CollegeRepository.Entities on fa.CollegeID equals col.CollegeID join cam in CampusRepository.Entities on col.CampusID equals cam.CampusID join us in UserRepository.Entities on stu.UserID equals us.UserID select new StudentPostPracticeView { StudentPostPracticeID = stuppra.StudentPostPracticeID, UserID = stuppra.UserID, StudentNo = us.LoginID, Name = us.Name, SexID = stu.SexID, BirthDate = stu.BirthDate, NationID = stu.NationID, PoliticsID = stu.PoliticsID, InSchoolStatusID = stu.InSchoolStatusID, StudentStatus = stu.StudentStatus, GradeID = gr.GradeID, StandardID = fa.StandardID, EducationID = fa.EducationID, LearningformID = fa.LearningformID, LearnSystem = fa.LearnSystem, ClassNum = cl.ClassNum, ClassmajorID = stu.ClassmajorID, ClassmajorNo = cl.No, ClassmajorName = cl.Name, GrademajorID = cl.GrademajorID, GrademajorCode = gr.Code, GrademajorName = gr.Name, FacultymajorID = gr.FacultymajorID, FacultymajorCode = fa.Code, FacultymajorName = fa.Name, CollegeID = fa.CollegeID, CollegeNo = col.No, CollegeName = col.Name, CampusID = col.CampusID, CampusCode = cam.No, CampusName = cam.Name, PracticePlace = stuppra.PracticePlace, StartYear = stuppra.StartYear, StartMonth = stuppra.StartMonth, EndYear = stuppra.EndYear, EndMonth = stuppra.EndMonth, PracticeMentor = stuppra.PracticeMentor, PracticeContent = stuppra.PracticeContent, SelfAppraise = stuppra.SelfAppraise, RecordStatus = stuppra.RecordStatus, CreateUserID = stuppra.CreateUserID, CreateTime = stuppra.CreateTime, ModifyUserID = stuppra.ModifyUserID, ModifyTime = stuppra.ModifyTime }; return query; } } }