/// <summary>
 /// 创建学生
 /// </summary>
 /// <param name="name"></param>
 /// <param name="ClassName"></param>
 /// <param name="GradeName"></param>
 /// <param name="phoneNum"></param>
 /// <param name="image"></param>
 /// <returns></returns>
 public static async Task CreatStudentAsync(int Id, string name, string ClassName, string GradeName, string DeviceSerial, string StudentID = null, string caller = null, string phoneNum = null, string image = null)
 {
     try {
         using (DAL.StudentService stuSvc = new DAL.StudentService()) {
             var Grad    = GradeManager.QueryGrad(GradeName);
             var Classes = ClassManager.QueryClass(ClassName);
             foreach (var item in Classes)
             {
                 if (item.GradeID == Grad.Id)
                 {
                     await stuSvc.CreatAsync(new Student()
                     {
                         Id = Id, Name = name, PhoneNum = phoneNum, Image = image, ClassId = item.Id, ClassName = ClassName, GradeName = GradeName, StudentID = StudentID, DeviceSerial = DeviceSerial
                     }, true);
                 }
                 else
                 {
                     continue;
                 }
             }
         }
     }
     catch (Exception ex) {
         throw new Exception(ex.Message);
     }
 }
        /// <summary>
        /// 分页搜索查询学生对象
        /// </summary>
        /// <param name="SchoolID">学生所属的学校id</param>
        /// <param name="PageSize">一页的数量</param>
        /// <param name="PageIndex">页码</param>
        /// <param name="Name">学生名字</param>
        /// <returns></returns>
        public static StudentDTO QueryCount(int SchoolID, int PageSize, int PageIndex, string Name = null)
        {
            #region 函数注释

            /*
             * 这个函数在做的事情:查询学生对象,分页是必须的,可以加名字搜索
             * 1.通过学校id获取这个学校所有的班
             * 2.定义一个count用于存放总学生的数量,arrlist暂存器,StudentDTO要返回的数据类
             * 4.遍历所有的班级,定义一个temp临时存放学生对象的数组
             * 3.判断要不要搜索名字
             * 5.第一层循环过后temp里面装的是一个班的学生
             * 6.因为没办法将数组合并只好再次遍历学生数组,再一一添加至arraylist
             * 7.合计学生总数量(每个班级都有一个学生数量)
             * 8.arrayList分页
             * 还需:学生Model里面添加班级名和年级名字段
             */
            #endregion
            using (DAL.StudentService student = new DAL.StudentService()) {
                var        result    = ClassManager.QueryClassList(SchoolID);
                int        count     = 0;
                ArrayList  arrayList = new ArrayList();
                StudentDTO dTO       = new StudentDTO();
                foreach (var item in result)
                {
                    List <Student> temp;
                    if (Name != null)
                    {
                        temp = student.GetAll(m => m.ClassId == item.Id && m.IsDelete == false && m.Name == Name, true).ToList();//获取学生列表,temp是一个数组
                    }
                    else
                    {
                        temp = student.GetAll(m => m.ClassId == item.Id && m.IsDelete == false, true).ToList(); //获取学生列表,temp是一个数组
                    }
                    foreach (var students in temp)                                                              //
                    {
                        students.ClassName = item.Name;
                        students.GradeName = item.GradeName;
                        arrayList.Add(students);
                    }
                    count += item.StudentCount;
                }
                dTO.arr   = arrayList.ToArray().Skip(PageIndex * PageSize).Take(PageSize).ToArray();
                dTO.count = count;
                return(dTO);
            }
        }
Exemplo n.º 3
0
 public async Task AddStudents(string departmentId, string classId, string stuId, string stuName, string gender, string telephone, string IDNumber, string pwd, string major)
 {
     using (IDAL.IStudentService Svc = new DAL.StudentService())
     {
         await Svc.CreateAsync(new Student()
         {
             DepartmentId = departmentId,
             ClassId      = classId,
             StuId        = stuId,
             StuName      = stuName,
             Gender       = gender,
             Telephone    = telephone,
             IDNumber     = IDNumber,
             Pwd          = pwd,
             Major        = major,
             ModifyTime   = DateTime.Now
         });
     }
 }
Exemplo n.º 4
0
        public async Task ChangePwd(string userId, int identity, string oldPwd, string newPwd)
        {
            if (identity == 0)
            {
                using (IDAL.IStudentService userSvc = new DAL.StudentService())
                {
                    if (await userSvc.GetAllAsync().AnyAsync(m => m.StuId == userId && m.Pwd == oldPwd))
                    {
                        var user = await userSvc.GetAllAsync().FirstAsync(m => m.StuId == userId);

                        user.Pwd = newPwd;
                        await userSvc.EditAsync(user);
                    }
                }
            }
            else if (identity == 1)
            {
                using (IDAL.ITeacherService userSvc = new DAL.TeacherService())
                {
                    if (await userSvc.GetAllAsync().AnyAsync(m => m.TeaId == userId && m.Pwd == oldPwd))
                    {
                        var user = await userSvc.GetAllAsync().FirstAsync(m => m.TeaId == userId);

                        user.Pwd = newPwd;
                        await userSvc.EditAsync(user);
                    }
                }
            }
            else if (identity == 2)
            {
                using (IDAL.IAdminService userSvc = new DAL.AdminService())
                {
                    if (await userSvc.GetAllAsync().AnyAsync(m => m.AdminId == userId && m.Pwd == oldPwd))
                    {
                        var user = await userSvc.GetAllAsync().FirstAsync(m => m.AdminId == userId);

                        user.Pwd = newPwd;
                        await userSvc.EditAsync(user);
                    }
                }
            }
        }
 /// <summary>
 /// 获取学生的数量
 /// </summary>
 /// <param name="ClassID"></param>
 /// <returns></returns>
 public static int QueryStudentCount(int ClassID)
 {
     using (DAL.StudentService student = new DAL.StudentService()) {
         return(student.GetAll(m => m.ClassId == ClassID && m.IsDelete == false).Count());
     }
 }
Exemplo n.º 6
0
 public int Login(string userId, string pwd, string identity, out Guid id)
 {
     if (identity == "0")  //学生
     {
         using (IDAL.IStudentService userSvc = new DAL.StudentService())
         {
             var user = userSvc.GetAllAsync().FirstOrDefaultAsync(m => m.StuId == userId && m.Pwd == pwd);
             user.Wait();
             var data = user.Result;
             if (data == null)
             {
                 id = new Guid();
                 return(-1);
             }
             else
             {
                 id = data.Id;
                 return(0);
             }
         }
     }
     else if (identity == "1")   //教师
     {
         using (IDAL.ITeacherService userSvc = new DAL.TeacherService())
         {
             var user = userSvc.GetAllAsync().FirstOrDefaultAsync(m => m.TeaId == userId && m.Pwd == pwd);
             user.Wait();
             var data = user.Result;
             if (data == null)
             {
                 id = new Guid();
                 return(-1);
             }
             else
             {
                 id = data.Id;
                 return(1);
             }
         }
     }
     else if (identity == "2")   //管理员
     {
         using (IDAL.IAdminService userSvc = new DAL.AdminService())
         {
             var user = userSvc.GetAllAsync().FirstOrDefaultAsync(m => m.AdminId == userId && m.Pwd == pwd);
             user.Wait();
             var data = user.Result;
             if (data == null)
             {
                 id = new Guid();
                 return(-1);
             }
             else
             {
                 id = data.Id;
                 return(2);
             }
         }
     }
     id = new Guid();
     return(-1);
 }
Exemplo n.º 7
0
 public async Task <Dto.UserInfoDto> GetUserByUserId(string userId, int identity)
 {
     if (identity == 0)
     {
         using (IDAL.IStudentService userSvc = new DAL.StudentService())
         {
             if (await userSvc.GetAllAsync().AnyAsync(m => m.StuId == userId))
             {
                 return(await userSvc.GetAllAsync().Where(m => m.StuId == userId).Select(m =>
                                                                                         new Dto.UserInfoDto()
                 {
                     Id = m.Id,
                     UserId = m.StuId,
                     Identity = identity,
                     Gender = m.Gender,
                     IDNumber = m.IDNumber
                 }).FirstAsync());
             }
         }
     }
     else if (identity == 1)
     {
         using (IDAL.ITeacherService userSvc = new DAL.TeacherService())
         {
             if (await userSvc.GetAllAsync().AnyAsync(m => m.TeaId == userId))
             {
                 return(await userSvc.GetAllAsync().Where(m => m.TeaId == userId).Select(m =>
                                                                                         new Dto.UserInfoDto()
                 {
                     Id = m.Id,
                     UserId = m.TeaId,
                     Identity = identity,
                     Gender = m.Gender,
                     IDNumber = m.IDNumber
                 }).FirstAsync());
             }
         }
     }
     else if (identity == 2)
     {
         using (IDAL.IAdminService userSvc = new DAL.AdminService())
         {
             if (await userSvc.GetAllAsync().AnyAsync(m => m.AdminId == userId))
             {
                 return(await userSvc.GetAllAsync().Where(m => m.AdminId == userId).Select(m =>
                                                                                           new Dto.UserInfoDto()
                 {
                     Id = m.Id,
                     UserId = m.AdminId,
                     Identity = identity,
                     Gender = m.Gender,
                     IDNumber = m.IDNumber
                 }).FirstAsync());
             }
         }
     }
     else
     {
         throw new ArgumentException("账号不存在");
     }
     return(null);
 }