public async Task <ActionResult> AddOrUpdateStudent(
            [FromForm] StudentPostModel studentPostModel,
            [FromQuery] bool add)
        {
            if (!ModelState.IsValid)
            {
                ViewBag.Header = add ? ControllerConstants.AddStudentHeader : ControllerConstants.UpdateStudentHeader;
                await _viewBagDataProvider.InitFacultiesAndSpecialities(ViewBag);

                return(View(studentPostModel));
            }

            var student = _studentPostModelMapper.Map(studentPostModel);

            if (add)
            {
                await _studentService.AddAsync(student);
            }
            else
            {
                await _studentService.UpdateAsync(student);
            }

            return(RedirectToAction("Index"));
        }
Пример #2
0
        public StudentViewModel Create(StudentPostModel model)
        {
            if (model.FirstName.Contains(" "))
            {
                return(new StudentViewModel {
                    FirstName = "validation PL error", LastName = "Errorovich"
                });
            }
            var studentModel = new StudentModel
            {
                FirstName    = model.FirstName,
                LastName     = model.LastName,
                InsuranceNum = model.LicenseNum
            };

            var createResult = _studentsService.Create(studentModel);

            var result = new StudentViewModel
            {
                Id        = createResult.Id,
                FirstName = createResult.FirstName,
                LastName  = createResult.LastName
            };

            return(result);
        }
Пример #3
0
        public void AddStudent(StudentPostModel newPostStModel)
        {
            if ((newPostStModel.Age <= 0) || (newPostStModel.Payments == null))
            {
                Console.WriteLine("Input error");
                return;
            }
            var service = new StudentService();

            List <PaymentModel> mappedPayments = new List <PaymentModel>();

            foreach (var item in newPostStModel.Payments)
            {
                mappedPayments.Add(new PaymentModel()
                {
                    Date = item.Date, Value = item.Value
                });
            }

            StudentModel studModelToAdd = new StudentModel()
            {
                FirstName = newPostStModel.FirstName,
                Lastname  = newPostStModel.Lastname,
                Age       = newPostStModel.Age,
                Payments  = mappedPayments
            };

            service.AddStudent(studModelToAdd);
        }
Пример #4
0
        public static void StudentsTest()
        {
            var repository        = new StudentDapperRepository();
            var licenseRepository = new LicenseEFRepository();
            var service           = new StudentService(repository, licenseRepository);
            var controller        = new StudentsController(service);

            var studentPostModel = new StudentPostModel {
                FirstName = "Puzo", LastName = "Moe", LicenseNum = 100
            };

            controller.Create(studentPostModel);

            var students = controller.GetAll();
        }
 public Student Map(StudentPostModel entity)
 {
     return(new Student
     {
         StudentId = entity.StudentId,
         IdentificationCode = entity.IdentificationCode,
         StudentTicketInfo = new StudentTicketInfo(entity.StudentTicketId, new Faculty {
             FacultyId = entity.FacultyId
         }, new Speciality {
             SpecialityId = entity.SpecialityId
         }, entity.Course, entity.OnBudget),
         StartOfLearningDate = entity.StartOfLearningDate,
         CommunicationInfo = new CommunicationInfo(entity.Email, entity.PhoneNumber),
         PassportInfo = new PassportInfo(entity.PassportIdentifier, entity.FirstName, entity.LastName, entity.FathersName, entity.BirthDate)
     });
 }
Пример #6
0
        public void Create(StudentPostModel student)
        {
            var studentModel = new StudentModel()
            {
                FirstName = student.FirstName,
                Lastname  = student.LastName,
                Age       = student.Age,
                Payments  = student.Payments.Select(p => new PaymentModel
                {
                    Date  = p.Date,
                    Value = p.Value
                })
            };
            var service = new StudentService();

            service.CreateStudent(studentModel);
        }
        public async Task <ActionResult> AddOrUpdateStudent([FromQuery] bool add, [FromQuery] int?studentId)
        {
            await _viewBagDataProvider.InitFacultiesAndSpecialities(ViewBag);

            StudentPostModel model;

            if (add)
            {
                model          = new StudentPostModel();
                ViewBag.Header = ControllerConstants.AddStudentHeader;
            }
            else
            {
                var student = await _studentService.GetById(studentId.GetValueOrDefault());

                model          = _studentToPostModelMapper.Map(student);
                ViewBag.Header = ControllerConstants.UpdateStudentHeader;
            }

            return(View(model));
        }
Пример #8
0
        public static void Main(string[] args)
        {
            var ctrl = new StudentsController();

            DateTime date1 = new DateTime(2017, 7, 20);
            DateTime date2 = new DateTime(2018, 8, 22);
            DateTime date3 = new DateTime(2019, 2, 12);
            DateTime date4 = new DateTime(2015, 5, 9);

            PaymentPostModel payment1 = new PaymentPostModel()
            {
                Date = date1, Value = 100
            };
            PaymentPostModel payment2 = new PaymentPostModel()
            {
                Date = date2, Value = 120
            };
            PaymentPostModel payment3 = new PaymentPostModel()
            {
                Date = date3, Value = 110
            };
            PaymentPostModel payment4 = new PaymentPostModel()
            {
                Date = date4, Value = 90
            };

            List <PaymentPostModel> paymentList1 = new List <PaymentPostModel>()
            {
                payment1, payment2
            };
            List <PaymentPostModel> paymentList2 = new List <PaymentPostModel>()
            {
                payment3, payment4
            };
            List <PaymentPostModel> paymentList3 = new List <PaymentPostModel>()
            {
                payment1
            };
            List <PaymentPostModel> paymentList4 = new List <PaymentPostModel>()
            {
                payment4
            };

            StudentPostModel stToAdd_1 = new StudentPostModel()
            {
                FirstName = "Ivan", Lastname = "Ivanov", Age = 20, Payments = paymentList1
            };
            StudentPostModel stToAdd_2 = new StudentPostModel()
            {
                FirstName = "Petr", Lastname = "Petrov", Age = 20, Payments = paymentList2
            };
            StudentPostModel stToAdd_3 = new StudentPostModel()
            {
                FirstName = "Homer", Lastname = "Simson", Age = 45, Payments = paymentList3
            };
            StudentPostModel stToAdd_4 = new StudentPostModel()
            {
                FirstName = "Burt", Lastname = "Simson", Age = 20, Payments = paymentList4
            };

            ctrl.AddStudent(stToAdd_1);
            ctrl.AddStudent(stToAdd_2);
            ctrl.AddStudent(stToAdd_3);
            ctrl.AddStudent(stToAdd_4);

            int minimumTotal  = 150;
            var stPayLessThan = ctrl.GetStudentWhichPayLessThan(minimumTotal);

            if (stPayLessThan != null)
            {
                Console.WriteLine($"Student(s), who paid less, than {minimumTotal}");
                foreach (var item in stPayLessThan)
                {
                    Console.WriteLine($"Student {item.FullName} paid in total {item.Total}");
                }
            }

            Console.WriteLine("Finish work");


            Console.ReadKey();

            //var student = ctrl.GetById(1);
        }