示例#1
0
        public void TestRejectDean()
        {
            Dean testDean = new Dean();
            int  i        = testDean.DeanReject(1);

            Assert.AreEqual(1, i);
        }
示例#2
0
        public async Task <IActionResult> Edit(int id, [Bind("Dean_id,MobileNo,FirstName,LastName,Deparment,FreeLeave")] Dean dean)
        {
            if (id != dean.Dean_id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(dean);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!DeanExists(dean.Dean_id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(dean));
        }
示例#3
0
        /*
         * Create By 蒋予飞
         * 通过ID获取教务
         */
        public Dean getDeanById(string id)
        {
            DeanDBContext deanDB = new DeanDBContext();
            Dean          dean   = deanDB.deans.Find(id);

            return(dean);
        }
示例#4
0
 public string addDean(string name, string number, string major, string passwd)
 {
     //string rel = "";
     try
     {
         int     majorId = int.Parse(major);
         DeanDao deanDao = new DeanDao();
         Dean    dean    = new Dean();
         if (deanDao.getDeanById(number) != null)
         {
             return("fail:已存在该工号的教务老师");
         }
         dean.name     = name;
         dean.id       = number;
         dean.majorId  = majorId;
         dean.password = CryptoUtil.Md5Hash(passwd);
         int rel = deanDao.addDean(dean);
         if (rel == 1)
         {
             return("success");
         }
         else
         {
             return("fail:数据连接错误");
         }
     }
     catch (Exception e)
     {
         LogUtil.writeLogToFile(e, Request);
         return("fail:" + e.Message);
     }
 }
示例#5
0
        private void DeanProfile()
        {
            Dean dean = (Dean)person;

            Post_Field.Text           = "Декан";
            Facylty_Box.Visibility    = Visibility.Visible;
            Facylty_Box.SelectedIndex = FacultyBoxList.FindIndex(item => item == dean.Faculty);
        }
示例#6
0
        private async void GetCourseByDean()
        {
            BitmapImage bmp    = new BitmapImage();
            Stream      stream = await WebConnection.Connect_for_stream("http://dean.pku.edu.cn/student/yanzheng.php?act=init");

            if (stream == null)
            {
                Constants.BoxPage.ShowMessage("获取验证码失败!");
                return;
            }
            var ran_stream = await Util.StreamToRandomAccessStream(stream);

            bmp.SetSource(ran_stream);
            IMGverify.Source = bmp;
            PRGRScourse.ProgressStart();
            ContentDialogResult res = await DLGverify.ShowAsync();

            if (res != ContentDialogResult.Primary)
            {
                this.IsEnabled = true;
                PRGRScourse.ProgressEnd();
                return;
            }
            String str = await Dean.get_session_id(VerifyCode);

            if (str == "")
            {
                return;
            }

            /**
             * 下面这段注释的代码可能是用来获取自选课程的,不是dean
             */
            //List<Parameters> list = new List<Parameters>();
            //list.Add(new Parameters("token", Constants.token));
            //list.Add(new Parameters("phpsessid", str));
            //Parameters parameter = await WebConnection.Connect(Constants.domain + "/services/pkuhelper/course.php", list);
            Parameters parameter = await WebConnection.Connect("http://dean.pku.edu.cn/student/newXkInfo_1105.php?PHPSESSID=" + str, null);

            if (parameter != null && parameter.name == "200")
            {
                CourseUtil.DecodeDeanHtml(parameter.value);
                CourseUtil.SaveCourses("DeanCourses", CourseUtil.DeanCourses);
                if (Constants.CourseUseCustom)
                {
                    await CourseUtil.GetCustomCourses(str);
                }
                ShowCourse();
                this.IsEnabled = true;
                PRGRScourse.ProgressEnd();
            }
            else
            {
                Util.DealWithDisconnect(parameter);
                this.IsEnabled = true;
                PRGRScourse.ProgressEnd();
            }
        }
示例#7
0
 public void LogOff()
 {
     LoggedAccount = null;
     LoggedDean    = null;
     LoggedRector  = null;
     LoggedTeacher = null;
     LoggedStudent = null;
     LoggedPerson  = null;
 }
示例#8
0
        public void TestAssocSignDean()
        {
            Dean testDean = new Dean();

            testDean.ClearValuesForTesting(1);
            int i = testDean.AssocDeanSign(1, "12");

            Assert.AreEqual(1, i);
        }
示例#9
0
        public void Add(DeanDTO dean)
        {
            if (dean == null)
            {
                throw new ValidationException("Декан не найден.", "");
            }
            Dean addingDean = AutoMap <DeanDTO, Dean> .Map(dean);

            Database.Deans.Add(addingDean);
            Database.Commit();
        }
示例#10
0
        public async Task <IActionResult> Create([Bind("Dean_id,MobileNo,FirstName,LastName,Deparment,FreeLeave")] Dean dean)
        {
            if (ModelState.IsValid)
            {
                _context.Add(dean);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(dean));
        }
        public string doLogin(string userId, string passwd, int role)
        {
            string retStr = "fail:登录失败,用户不存在或密码错误";

            switch (role)
            {
            case 1:
                StudentDao studentDao = new StudentDao();
                Student    student    = studentDao.getStudentById(userId);
                string     s          = CryptoUtil.Md5Hash(passwd);
                if (student != null && passwd == student.password)
                {
                    Response.Cookies.Add(createCookie(userId, student.name, passwd, "student", 24 * 60));
                    retStr = "success:/Student/Index";
                }
                break;

            case 2:
                ProfessorDao professorDao = new ProfessorDao();
                Professor    professor    = professorDao.getProfessorById(userId);
                if (professor != null && passwd == professor.password)
                {
                    Response.Cookies.Add(createCookie(userId, professor.name, passwd, "professor", 24 * 60));
                    retStr = "success:/professor/Index";
                }

                break;

            case 3:
                DeanDao deanDao = new DeanDao();
                Dean    dean    = deanDao.getDeanById(userId);
                if (dean != null && passwd == dean.password)
                {
                    Response.Cookies.Add(createCookie(userId, dean.name, passwd, "dean", 24 * 60));
                    retStr = "success:/dean/Student";
                }
                break;

            case 4:
                AdminDao adminDao = new AdminDao();
                Admin    admin    = adminDao.getAdminById(userId);
                if (admin != null && passwd == admin.password)
                {
                    Response.Cookies.Add(createCookie(userId, admin.name, passwd, "admin", 24 * 60));
                    retStr = "success:/admin/Index";
                }
                break;

            default:
                break;
            }
            return(retStr);
        }
示例#12
0
 private void EditeDean_Event(Dean dean)
 {
     if (dean != null)
     {
         GridsFrame.Navigate(new ProfilePage(dean, dbl, ProfilePage.ProfilePageType.Edit));
     }
     else
     {
         ProfilePage addprofilepage = new ProfilePage(dean, dbl, ProfilePage.ProfilePageType.NewDean);
         addprofilepage.Added_Event += Add_Event;
         GridsFrame.Navigate(addprofilepage);
     }
 }
示例#13
0
 /*
  * Create By 蒋予飞
  * 添加教务
  */
 public int addDean(Dean dean)
 {
     try
     {
         DeanDBContext deanDB = new DeanDBContext();
         deanDB.deans.Add(dean);
         return(deanDB.SaveChanges());
     }
     catch (Exception e)
     {
         return(-1);
     }
 }
示例#14
0
 /*
  * Create By 蒋予飞
  * 按教务ID更新密码
  */
 public int changeDeanPasswdById(string id, string password)
 {
     try
     {
         DeanDBContext deanDB = new DeanDBContext();
         Dean          dean   = deanDB.deans.Find(id);
         dean.password = password;
         return(deanDB.SaveChanges());
     }
     catch (Exception e)
     {
         return(-1);
     }
 }
示例#15
0
 /*
  * Create By 蒋予飞
  * 通过ID删除教务
  */
 public int deleteDeanById(string id)
 {
     try
     {
         DeanDBContext deanDB = new DeanDBContext();
         Dean          dean   = deanDB.deans.Find(id);
         deanDB.deans.Remove(dean);
         return(deanDB.SaveChanges());
     }
     catch (Exception e)
     {
         return(-1);
     }
 }
示例#16
0
        private Dean AddDean()
        {
            Dean dean = new Dean();

            if (Facylty_Box.SelectedIndex != -1)
            {
                dean.Faculty = FacultyBoxList[Facylty_Box.SelectedIndex];
                return(dean);
            }
            else
            {
                FacultyNullableError.Visibility = Visibility.Visible;
                return(null);
            }
        }
示例#17
0
        public Dean ValidateDean(int?deanId)
        {
            if (deanId == null || deanId == 0)
            {
                throw new ValidationException("Задан неверный Id декана.", "");
            }
            Dean findingDean = _database.Deans.GetById((int)deanId);

            try
            {
                return(ValidateDean(findingDean));
            }
            catch (ValidationException)
            {
                throw;
            }
        }
示例#18
0
 /*
  * Create By 蒋予飞
  * 更新教务信息
  */
 public int updateDean(Dean indean)
 {
     try
     {
         DeanDBContext deanDB = new DeanDBContext();
         Dean          dean   = deanDB.deans.Find(indean.id);
         dean.name     = indean.name;
         dean.password = indean.password;
         dean.majorId  = indean.majorId;
         dean.remark   = indean.remark;
         return(deanDB.SaveChanges());
     }
     catch (Exception e)
     {
         return(-1);
     }
 }
示例#19
0
        /*
         * Create By 高晔
         * 验证用户身份,通过用户id,加密后的密码和角色验证
         */
        public string certifyUser(string userId, string encryptedPasswd, string role)
        {
            switch (role)
            {
            case "student":
                StudentDao studentDao = new StudentDao();
                Student    student    = studentDao.getStudentById(userId);
                if (student != null && encryptedPasswd == student.password)
                {
                    return("success");
                }
                break;

            case "professor":
                ProfessorDao professorDao = new ProfessorDao();
                Professor    professor    = professorDao.getProfessorById(userId);
                if (professor != null && encryptedPasswd == professor.password)
                {
                    return("success");
                }
                break;

            case "dean":
                DeanDao deanDao = new DeanDao();
                Dean    dean    = deanDao.getDeanById(userId);
                if (dean != null && encryptedPasswd == dean.password)
                {
                    return("success");
                }
                break;

            case "admin":
                AdminDao adminDao = new AdminDao();
                Admin    admin    = adminDao.getAdminById(userId);
                if (admin != null && encryptedPasswd == admin.password)
                {
                    return("success");
                }
                break;

            default:
                break;
            }
            return("fail");
        }
示例#20
0
        private void EditeDean()
        {
            Dean dean = (Dean)person;

            foreach (Faculty f in dbl.GiveFaculties())
            {
                if (f.Name == Facylty_Box.Text)
                {
                    dean.Faculty = f;
                    dbl.ChangeObject(dean);
                    Success.Visibility = Visibility.Visible;
                }
                else
                {
                    NullableError.Visibility = Visibility.Visible;
                }
            }
        }
示例#21
0
        public static void Main(string[] args)
        {
            Student  student  = new Student(4, true, "Albert", "Albertovich", 89, "man", "Dnipro", "compute programming");
            Dean     dean     = new Dean("Danil", "Novikov", 21, "Computer", "man", "Dnipro", 4, 3, true);
            Lecturer lecturer = new Lecturer("Aust", "Fin", 32, "Computer", "man", "Dnipro", 2, 5, true);
            Rector   rector   = new Rector("Octer", "Maus", 45, "Computer", "woman", "Odessa", 1, 21, true);

            lecturer.LeadLection();
            lecturer.GiveMyDetails();
            dean.DismissLecturer(lecturer);
            lecturer.GiveMyDetails();

            student.GiveMyDetails();
            dean.ExpelStudent(student);
            student.GiveMyDetails();

            rector.DismissDean(dean);
            dean.GiveMyDetails();
        }
示例#22
0
        private static void Main()
        {
            // Setup Chain of Responsibility
            Approver provost   = new Provost(null);
            Approver dean      = new Dean(provost);
            Approver deptChair = new DepartmentChair(dean);

            // Approve candidates
            //GraduateAssistant p = new GraduateAssistant("201500001", 3.8, "Sally Jones");
            //deptChair.ApproveGA(p);

            //var p = new GraduateAssistant("201500002", 3.4, "Adam Bing");
            //deptChair.ApproveGA(p);

            //var p = new GraduateAssistant("201500003", 3.0, "Lucas Jade");
            //deptChair.ApproveGA(p);

            var p = new GraduateAssistant("201500004", 2.9, "Joe Smith");

            deptChair.ApproveGA(p);
        }
示例#23
0
 public void Delete(int?id)
 {
     try
     {
         Dean deleteDean = ValidateModule.ValidateDean(id);
         var  faculty    = Database.Faculties.GetById(deleteDean.FacultyId);
         faculty.DeanId = null;
         Database.Faculties.Edit(faculty);
         if (deleteDean.IsTeacher)
         {
             new TeacherService(Database).Delete(id);
         }
         else
         {
             Database.Deans.Delete(deleteDean);
             Database.Commit();
         }
     }
     catch (ValidationException)
     {
         throw;
     }
 }
示例#24
0
        private void AddDean_Click(object sender, RoutedEventArgs e)
        {
            Dean NewDean = null;

            DeanEdite_Event(NewDean);
        }
示例#25
0
        public string addDeans(HttpPostedFileBase file)
        {
            DeanDao deandao   = new DeanDao();
            var     severPath = this.Server.MapPath("/ExcelFiles/");

            if (!Directory.Exists(severPath))
            {
                Directory.CreateDirectory(severPath);
            }
            var       savePath = Path.Combine(severPath, file.FileName);
            Dean      dean     = null;
            Workbook  workbook = new Workbook();
            Worksheet sheet    = null;

            string result = "fail:";
            int    addres = 0;
            bool   flag   = false;//表中出现插入错误

            Response.ContentType = "application/json";
            Response.Charset     = "utf-8";

            try
            {
                if (string.Empty.Equals(file.FileName) || (".xls" != Path.GetExtension(file.FileName) && ".xlsx" != Path.GetExtension(file.FileName)))
                {
                    throw new Exception("文件格式不正确");
                }

                file.SaveAs(savePath);
                workbook.LoadFromFile(savePath);
                sheet = workbook.Worksheets[0];
                int    row = sheet.Rows.Length;    //获取不为空的行数
                int    col = sheet.Columns.Length; //获取不为空的列数
                string tempId;
                string tempName;
                string tempMajor;
                string tempPasswd;

                int         idcol       = -11;
                int         namecol     = -11;
                int         majorcol    = -11;
                int         passwdcol   = -11;
                int         idrow       = -11;
                CellRange[] cellrange   = sheet.Cells;
                int         rangelength = cellrange.Length;
                for (int i = 0; i < row; i++)
                {
                    for (int j = 0; j < col; j++)
                    {
                        tempId = cellrange[i * col + j].Value;
                        if (tempId.Equals("工号"))
                        {
                            idcol = j;
                            idrow = i + 1;
                        }
                        if (tempId.Equals("姓名"))
                        {
                            namecol = j;
                        }
                        if (tempId.Equals("专业方向"))
                        {
                            majorcol = j;
                        }
                        if (tempId.Equals("密码"))
                        {
                            passwdcol = j;
                        }
                    }
                    if (idcol >= 0 && namecol >= 0 && majorcol >= 0 && passwdcol >= 0)
                    {
                        break;
                    }
                }

                if (idcol < 0 || namecol < 0)
                {
                    throw new Exception("表格格式不正确");
                }
                MajorDao     majorDao = new MajorDao();
                List <Major> majors   = majorDao.listAllMajor();


                for (int i = idrow; i < row; i++)
                {
                    tempId     = cellrange[i * col + idcol].Value;
                    tempName   = cellrange[i * col + namecol].Value;
                    tempMajor  = cellrange[i * col + majorcol].Value;
                    tempPasswd = cellrange[i * col + passwdcol].Value;
                    if (tempName != "")
                    {
                        if (deandao.getDeanById(tempId) != null)
                        {
                            flag    = true;
                            result += "已存在教师:id:" + tempId + " 姓名:" + tempName + " 专业:" + tempId + "\n";
                            continue;
                        }
                        dean      = new Dean();
                        dean.id   = tempId;
                        dean.name = tempName;
                        bool majorExist = false;
                        foreach (Major m in majors)
                        {
                            if (m.name == tempMajor)
                            {
                                dean.majorId = m.id;
                                majorExist   = true;
                            }
                        }
                        if (!majorExist)
                        {
                            result += "无法识别名为‘" + tempMajor + "’的专业名称:id:" + tempId + " 姓名:" + tempName + " 专业:" + tempId + "\n";
                            flag    = true;
                            continue;
                        }

                        dean.password = CryptoUtil.Md5Hash(tempPasswd);

                        addres = deandao.addDean(dean);
                        if (addres < 1)
                        {
                            throw new Exception("数据库链接异常");
                        }
                    }
                }
            }
            catch (Exception e)
            {
                LogUtil.writeLogToFile(e, Request);
                return("{\"error\":\"" + e.Message + "\"}");
            }
            finally
            {
                workbook.Dispose();
                sheet    = null;
                workbook = null;
            }
            if (flag)
            {
                return("{\"error\":\"" + result + "\"}");
            }
            return("{" +
                   "\"initialPreview\":" +
                   "[\"<div style=\\\"text-align:center;padding:50px 25px;color:#00a65a\\\"><i class=\\\"fa fa-check-square-o\\\" style=\\\"font-size:60px;opacity:0.6\\\"></i><p style=\\\"padding-top:10px;font-size:18px\\\">添加成功</p></div>\"]" +
                   "}");
        }
示例#26
0
        protected override void Seed(SAAContext db)
        {
            University u1 = new University {
                Name = "БГТУ"
            };
            Rector r1 = new Rector {
                SurName = "Войтов", Name = "Игорь", MidleName = "Витальевич", PhoneNumber = "+375-17-226-14-32", University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            Teacher t1 = new Teacher {
                SurName = "Ловенецкая", Name = "Елена", MidleName = "Ивановна", PhoneNumber = "+375-17-327-10-20", University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Teacher t2 = new Teacher {
                SurName = "Доморад", Name = "Алексей", MidleName = "Анатольевич", PhoneNumber = "+375-17-322-11-53", University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Teacher t3 = new Teacher {
                SurName = "Шишло", Name = "Сергей", MidleName = "Валерьевич", PhoneNumber = "+375-17-421-13-33", University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Teacher t4 = new Teacher {
                SurName = "Пустовалова", Name = "Наталья", MidleName = "Николаевна", PhoneNumber = "+375-17-327-43-76", University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };


            Faculty f1 = new Faculty {
                Name = "Информационных технологий", University = u1
            };
            Dean d1 = new Dean {
                SurName = "Шиман", Name = "Дмитрий", MidleName = "Васильевич", PhoneNumber = "+375-17-399-33-89", Faculty = f1, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            Specialty sp1_1 = new Specialty {
                Name = "Информационные системы и технологии", Faculty = f1, University = u1
            };
            Group g1 = new Group {
                Course = 1, Number = 1, Specialty = sp1_1, Faculty = f1, University = u1
            };
            Student s1 = new Student {
                SurName = "Иванов", Name = "Иван", MidleName = "Иванович", PhoneNumber = "+375-14-136-24-12", CardNumber = "123141", Group = g1, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s2 = new Student {
                SurName = "Торкун", Name = "Василий", MidleName = "Александрович", PhoneNumber = "+375-11-116-14-13", CardNumber = "123142", Group = g1, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s3 = new Student {
                SurName = "Заболотин", Name = "Дмитрий", MidleName = "Васильевич", PhoneNumber = "+375-12-126-22-54", CardNumber = "123143", Group = g1, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s4 = new Student {
                SurName = "Горбачёв", Name = "Денис", MidleName = "Павлович", PhoneNumber = "+375-31-355-32-12", CardNumber = "123144", Group = g1, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s5 = new Student {
                SurName = "Захарёв", Name = "Иван", MidleName = "Никифорович", PhoneNumber = "+375-12-563-24-55", CardNumber = "123145", Group = g1, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            Specialty sp1_2 = new Specialty {
                Name = "Программное обеспечение информационных технологий", Faculty = f1, University = u1
            };
            Group g2 = new Group {
                Course = 2, Number = 5, Specialty = sp1_2, Faculty = f1, University = u1
            };
            Student s6 = new Student {
                SurName = "Понаморёв", Name = "Никита", MidleName = "Васильевич", PhoneNumber = "+375-33-303-77-06", CardNumber = "123146", Group = g2, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s7 = new Student {
                SurName = "Донцова", Name = "Александра", MidleName = "Потаповна", PhoneNumber = "+375-11-533-14-55", CardNumber = "123147", Group = g2, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s8 = new Student {
                SurName = "Павлов", Name = "Иван", MidleName = "Александрович", PhoneNumber = "+375-12-579-67-88", CardNumber = "123148", Group = g2, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s9 = new Student {
                SurName = "Тарасов", Name = "Захар", MidleName = "Викторович", PhoneNumber = "+375-12-658-78-99", CardNumber = "123149", Group = g2, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s10 = new Student {
                SurName = "Захарёв", Name = "Рустам", MidleName = "Викторович", PhoneNumber = "+375-12-776-89-55", CardNumber = "123150", Group = g2, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            Group g3 = new Group {
                Course = 1, Number = 4, Specialty = sp1_2, Faculty = f1, University = u1
            };
            Student s11 = new Student {
                SurName = "Исаченков", Name = "Василий", MidleName = "Иванович", PhoneNumber = "+375-11-656-64-12", CardNumber = "123151", Group = g3, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s12 = new Student {
                SurName = "Васильев", Name = "Тарас", MidleName = "Павлович", PhoneNumber = "+375-88-166-28-82", CardNumber = "123152", Group = g3, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s13 = new Student {
                SurName = "Дудкин", Name = "Николай", MidleName = "Фёдорович", PhoneNumber = "+375-14-157-98-02", CardNumber = "123153", Group = g3, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s14 = new Student {
                SurName = "Ивашкин", Name = "Андрей", MidleName = "Олегович", PhoneNumber = "+375-14-100-20-10", CardNumber = "123154", Group = g3, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s15 = new Student {
                SurName = "Турецкий", Name = "Гавриил", MidleName = "Андреевич", PhoneNumber = "+375-17-197-94-12", CardNumber = "123155", Group = g3, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            Faculty f2 = new Faculty {
                Name = "Принттехнологий и медиакоммуникаций", University = u1
            };
            Dean d2 = new Dean {
                SurName = "Долгова", Name = "Татьяна", MidleName = "Александровна", PhoneNumber = "+375-17-327-71-98", Faculty = f2, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            Specialty sp2_1 = new Specialty {
                Name = "Издательское дело", Faculty = f2, University = u1
            };
            Group g4 = new Group {
                Course = 3, Number = 2, Specialty = sp2_1, Faculty = f2, University = u1
            };
            Student s16 = new Student {
                SurName = "Советская", Name = "Елизовета", MidleName = "Ивановна", PhoneNumber = "+375-14-658-90-12", CardNumber = "123156", Group = g4, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s17 = new Student {
                SurName = "Горбачёва", Name = "Нина", MidleName = "Павловна", PhoneNumber = "+375-14-567-24-09", CardNumber = "123157", Group = g4, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s18 = new Student {
                SurName = "Сергеева", Name = "Полина", MidleName = "Андреевна", PhoneNumber = "+375-14-456-24-98", CardNumber = "123158", Group = g4, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s19 = new Student {
                SurName = "Перусенко", Name = "Надежда", MidleName = "Викторовна", PhoneNumber = "+375-67-890-09-12", CardNumber = "123159", Group = g4, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };
            Student s20 = new Student {
                SurName = "Куприк", Name = "Оксана", MidleName = "Васильевна", PhoneNumber = "+375-45-136-07-56", CardNumber = "123160", Group = g4, University = u1, Account = new Account {
                    Login = "******", Password = "******", Email = "*****@*****.**"
                }
            };

            db.Universitys.Add(u1);
            db.Rectors.Add(r1);
            db.Facultys.AddRange(new List <Faculty> {
                f1, f2
            });
            db.Specialtys.AddRange(new List <Specialty> {
                sp1_1, sp1_2, sp2_1
            });
            db.Deans.AddRange(new List <Dean> {
                d1, d2
            });
            db.Groups.AddRange(new List <Group> {
                g1, g2, g3, g4
            });
            db.Teachers.AddRange(new List <Teacher> {
                t1, t2, t3, t4
            });
            db.Students.AddRange(new List <Student> {
                s1, s2, s3, s4, s5, s6, s7, s8, s9, s10, s11, s12, s13, s14, s15, s16, s17, s18, s19, s20
            });

            db.SaveChanges();
        }
示例#27
0
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            bool   error = false;
            string hash  = Data.GetMd5Hash(new MD5Cng(), passwordTb.Password);

            if (user is Dean)
            {
                Dean dean = null;
                if (String.IsNullOrEmpty(loginTb.Text) || (Data.Context.Deans.Where(d => d.Login == user.Login).FirstOrDefault() != null && user.Login != loginTb.Text))
                {
                    loginTb.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if ((dean = Data.Context.Deans.Where(d => d.Login == user.Login && d.Password == hash).FirstOrDefault()) == null || String.IsNullOrEmpty(passwordTb.Password))
                {
                    passwordTb.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if (String.IsNullOrEmpty(newPassword.Password))
                {
                    newPassword.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if (String.IsNullOrEmpty(repeatNewPassword.Password) || newPassword.Password != newPassword.Password)
                {
                    repeatNewPassword.BorderBrush = Brushes.Red;
                    error = true;
                }

                if (error)
                {
                    return;
                }

                dean.Login    = loginTb.Text;
                dean.Password = Data.GetMd5Hash(new MD5Cng(), newPassword.Password);
                user.Login    = dean.Login;
                user.Password = dean.Password;
            }
            else if (user is Secretary)
            {
                Secretary secretary = null;
                if (String.IsNullOrEmpty(loginTb.Text) || (Data.Context.Deans.Where(d => d.Login == user.Login).FirstOrDefault() != null && user.Login != loginTb.Text))
                {
                    loginTb.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if ((secretary = Data.Context.Secretaries.Where(d => d.Login == user.Login && d.Password == hash).FirstOrDefault()) == null || String.IsNullOrEmpty(passwordTb.Password))
                {
                    passwordTb.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if (String.IsNullOrEmpty(newPassword.Password))
                {
                    newPassword.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if (String.IsNullOrEmpty(repeatNewPassword.Password) || newPassword.Password != newPassword.Password)
                {
                    repeatNewPassword.BorderBrush = Brushes.Red;
                    error = true;
                }

                if (error)
                {
                    return;
                }

                secretary.Login    = loginTb.Text;
                secretary.Password = Data.GetMd5Hash(new MD5Cng(), newPassword.Password);
                user.Login         = secretary.Login;
                user.Password      = secretary.Password;
            }
            else if (user is Teacher)
            {
                Teacher teacher = null;
                if (String.IsNullOrEmpty(loginTb.Text) || (Data.Context.Deans.Where(d => d.Login == user.Login).FirstOrDefault() != null && user.Login != loginTb.Text))
                {
                    loginTb.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if ((teacher = Data.Context.Teachers.Where(d => d.Login == user.Login && d.Password == hash).FirstOrDefault()) == null || String.IsNullOrEmpty(passwordTb.Password))
                {
                    passwordTb.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if (String.IsNullOrEmpty(newPassword.Password))
                {
                    newPassword.BorderBrush = Brushes.Red;
                    error = true;
                }
                else if (String.IsNullOrEmpty(repeatNewPassword.Password) || newPassword.Password != newPassword.Password)
                {
                    repeatNewPassword.BorderBrush = Brushes.Red;
                    error = true;
                }

                if (error)
                {
                    return;
                }

                teacher.Login    = loginTb.Text;
                teacher.Password = Data.GetMd5Hash(new MD5Cng(), newPassword.Password);
                user.Login       = teacher.Login;
                user.Password    = teacher.Password;
                Data.Context.SaveChanges();
            }
            Close();
        }
示例#28
0
        private void Add_Button_Click(object sender, RoutedEventArgs e)
        {
            bool LoginExists = false;

            NullableError.Visibility        = Visibility.Hidden;
            LoginError.Visibility           = Visibility.Hidden;
            FacultyNullableError.Visibility = Visibility.Hidden;
            CardNumberError.Visibility      = Visibility.Hidden;
            GroupNullableError.Visibility   = Visibility.Hidden;
            foreach (Account a in dbl.GiveAccounts())
            {
                if (a.Login == Login_Field.Text)
                {
                    LoginExists = true;
                }
            }
            if (!LoginExists && Login_Field.Text.Length > 0 && SurName_Field.Text.Length > 0 && Name_Field.Text.Length > 0 && MidleName_Field.Text.Length > 0 && Phone_Field.Text.Length > 0 && Passwod_Field.Text.Length > 0 && Email_Field.Text.Length > 0 && EmailError.Visibility != Visibility.Visible)
            {
                if (person is Student)
                {
                    Student student = new Student();
                    student = AddStudent();
                    if (student != null)
                    {
                        student.Account = new Account {
                            Login = Login_Field.Text, Password = Passwod_Field.Text, Email = Email_Field.Text
                        };
                        student.SurName     = SurName_Field.Text;
                        student.Name        = Name_Field.Text;
                        student.MidleName   = MidleName_Field.Text;
                        student.PhoneNumber = Phone_Field.Text;
                        student.University  = dbl.LoggedPerson.University;
                        dbl.AddPerson(student);
                        Added_Event();
                    }
                }
                else if (person is Teacher)
                {
                    Teacher teacher = new Teacher();
                    teacher = AddTeacher();
                    if (teacher != null)
                    {
                        teacher.Account = new Account {
                            Login = Login_Field.Text, Password = Passwod_Field.Text, Email = Email_Field.Text
                        };
                        teacher.SurName     = SurName_Field.Text;
                        teacher.Name        = Name_Field.Text;
                        teacher.MidleName   = MidleName_Field.Text;
                        teacher.PhoneNumber = Phone_Field.Text;
                        teacher.University  = dbl.LoggedPerson.University;
                        dbl.AddPerson(teacher);
                        Added_Event();
                    }
                }
                else if (person is Dean)
                {
                    Dean dean = new Dean();
                    dean = AddDean();
                    if (dean != null)
                    {
                        dean.Account = new Account {
                            Login = Login_Field.Text, Password = Passwod_Field.Text, Email = Email_Field.Text
                        };
                        dean.SurName     = SurName_Field.Text;
                        dean.Name        = Name_Field.Text;
                        dean.MidleName   = MidleName_Field.Text;
                        dean.PhoneNumber = Phone_Field.Text;
                        dean.University  = dbl.LoggedPerson.University;
                        dbl.AddPerson(dean);
                        Added_Event();
                    }
                }
                else
                {
                    Rector rector = new Rector();
                    rector.Account = new Account {
                        Login = Login_Field.Text, Password = Passwod_Field.Text, Email = Email_Field.Text
                    };
                    rector.SurName     = SurName_Field.Text;
                    rector.Name        = Name_Field.Text;
                    rector.MidleName   = MidleName_Field.Text;
                    rector.PhoneNumber = Phone_Field.Text;
                    rector.University  = person.University;
                    dbl.AddPerson(rector);
                    RectorAdded_Event(rector);
                }
            }
            else if (LoginExists)
            {
                LoginError.Visibility = Visibility.Visible;
            }
            else
            {
                NullableError.Visibility = Visibility.Visible;
            }
        }
示例#29
0
        static void Main(string[] args)
        {
            ConsoleKeyInfo pressedKey;

            Console.WriteLine("Создание базы студентов...");
            Console.WriteLine("");

            string[] teachers = File.ReadAllLines("Teachers.txt");
            string[] students = File.ReadAllLines("Students.txt");
            string[] groups   = File.ReadAllLines("Groups.txt");

            foreach (string teacherStr in teachers)
            {
                string teacherName = teacherStr.Split(':')[0];
                string teacherType = teacherStr.Split(':')[1];

                Teacher teacher = new Teacher();
                teacher.TeacherName = teacherName;
                teacher.TeacherType = teacherType;
                UniverBase.AddTeacher(teacher);
            }

            foreach (string studentsStr in students)
            {
                Student student = new Student();
                student.StudentName = studentsStr;
                UniverBase.AddStudent(student);
            }

            foreach (string groupStr in groups)
            {
                Group group = new Group();
                group.GroupName = groupStr;
                UniverBase.AddGroup(group);
            }

            Console.WriteLine($"В базе преподователей: {UniverBase.GetTeachersCount()}");
            Console.WriteLine($"В базе студентов: {UniverBase.GetStudentsCount()}");
            Console.WriteLine($"Создано групп: {UniverBase.GetGoupsCount()}");
            Console.WriteLine(new string('-', 50));

            Console.WriteLine("Декану необходимо распределить учащихся по группам, а группам назначить преподователей.");
            Console.WriteLine("Нажмите \"Y\", чтобы позвать декана, нажмите \"N\", чтобы его не звать и оставить всё как есть.");
            pressedKey = Console.ReadKey(true);

            switch (pressedKey.Key.ToString())
            {
            case "Y":
                Dean.SortUniver();

                var wholeGroup = UniverBase.GetWholeGroups;

                Console.WriteLine("Нажмите \"Y\", чтобы посмотреть что сделал декан или \"N\", чтобы оставить всё как есть.");
                pressedKey = Console.ReadKey(true);

                switch (pressedKey.Key.ToString())
                {
                case "Y":
                    foreach (Group group in wholeGroup)
                    {
                        string[] studentName = group.GetStudents();
                        foreach (string student in studentName)
                        {
                            Console.WriteLine($"Группа: {group.GroupName}, преподователь: {group.TeacherName}, Студент: {student}");
                        }
                    }
                    break;

                case "N":
                    break;

                default:
                    break;
                }
                break;

            case "N":
                break;

            default:
                break;
            }

            Console.ReadKey();
        }
        public string changePassword(string oldpasswd, string newpasswd)
        {
            HttpCookie accountCookie = Request.Cookies["Account"];
            string     retStr        = "";

            try
            {
                switch (accountCookie["role"])
                {
                case "student":
                    StudentDao studentDao = new StudentDao();
                    Student    student    = studentDao.getStudentById(accountCookie["userId"]);
                    if (student != null && student.password == oldpasswd)
                    {
                        studentDao.changePasswdById(student.id, newpasswd);
                        retStr = "success";
                    }
                    else
                    {
                        retStr = "fail:用户不存在或密码错误";
                    }
                    return(retStr);

                case "professor":
                    ProfessorDao professorDao = new ProfessorDao();
                    Professor    professor    = professorDao.getProfessorById(accountCookie["userId"]);
                    if (professor != null && professor.password == oldpasswd)
                    {
                        professorDao.changePasswordById(professor.id, newpasswd);
                        retStr = "success";
                    }
                    else
                    {
                        retStr = "fail:用户不存在或密码错误";
                    }
                    return(retStr);

                case "dean":
                    DeanDao deanDao = new DeanDao();
                    Dean    dean    = deanDao.getDeanById(accountCookie["userId"]);
                    if (dean != null && dean.password == oldpasswd)
                    {
                        deanDao.changeDeanPasswdById(dean.id, newpasswd);
                        retStr = "success";
                    }
                    else
                    {
                        retStr = "fail:用户不存在或密码错误";
                    }
                    return(retStr);

                case "admin":
                    AdminDao adminDao = new AdminDao();
                    Admin    admin    = adminDao.getAdminById(accountCookie["userId"]);
                    if (admin != null && admin.password == oldpasswd)
                    {
                        adminDao.changePasswdById(admin.id, newpasswd);
                        retStr = "success";
                    }
                    else
                    {
                        retStr = "fail:用户不存在或密码错误";
                    }
                    return(retStr);

                default:
                    return("fail:没有权限");
                }
            }
            catch (Exception)
            {
                throw;
            }
        }