public async Task <IActionResult> Create(StaffViewModel model) { var states = await _stateService.GetStates(); var ranks = RankExtensions.GetRanks(); if (ModelState.IsValid) { var response = await _staffService.AddStaff(model.FirstName, model.LastName, model.MiddleName, model.ArmyNumber, model.PhoneNumber, model.Address, model.Rank, model.State, model.BirthDate, model.RetirementDate); ViewBag.Error = !response.Status; ViewBag.Message = response.Message; ViewBag.States = new SelectList(states, "Key", "Value"); ViewBag.Ranks = new SelectList(ranks, "Key", "Value"); return(View(new StaffViewModel())); } else { ViewBag.Error = true; ViewBag.Message = "Kindly fill the form correctly!"; ViewBag.States = new SelectList(states, "Key", "Value", model.State); ViewBag.Ranks = new SelectList(ranks, "Key", "Value", model.Rank); return(View(model)); } }
public ActionResult <Staff> AddStaff(Staff staff) { var staffs = _service.AddStaff(staff); if (staffs == null) { return(NotFound()); } return(staffs); }
public IActionResult NewStaff([FromBody] Staff staff) { try { var result = staffService.AddStaff(staff); return(Ok(result)); } catch (Exception e) { return(Ok(e.Message)); } }
public ActionResult <StaffAddViewModel> AddStaff(StaffAddViewModel staffAddViewModel) { StaffAddViewModel staffInfoAddViewModel = new StaffAddViewModel(); try { staffInfoAddViewModel = _staffService.AddStaff(staffAddViewModel); } catch (Exception es) { staffInfoAddViewModel._failure = true; staffInfoAddViewModel._message = es.Message; } return(staffInfoAddViewModel); }
public IActionResult AddStaff(StaffViewModel staff) { try { var staffDTO = new StaffDTO { Name = staff.Name, DateWork = staff.DateWork, EmployeeGroupId = staff.EmployeeGroupId, BasicSalary = staff.BasicSalary }; staffService.AddStaff(staffDTO); return(RedirectToAction("Index")); } catch (ValidationException ex) { ModelState.AddModelError(ex.Property, ex.Message); } return(View(staff)); }
public IActionResult AddStaff(AddStaffViewModel model) { if (ModelState.IsValid) { Debug.Assert(model.StaffType != null, "model.StaffType != null"); var error = _staffService.AddStaff(new AddStaffRequest { Password = model.Password, FirstName = model.FirstName, LastName = model.LastName, Email = model.Email, StaffType = model.StaffType.Value, PhoneNumber = model.PhoneNumber, Address = model.Address }); switch (error) { case null: return(RedirectToAction("Index")); case ResponseErrorEnum.EmailAlreadyUsed: ModelState.AddModelError(nameof(model.Email), "This email is already used."); break; default: return(this.InternalServerError()); } } var indexModel = new AdminViewModel(); FillAdminViewModel(indexModel); indexModel.AddStaffViewModel = model; indexModel.OpenAddStaffModal = true; return(View("Index", indexModel)); }
public async Task <IActionResult> Add([FromBody] Staff staff) { return(Ok(await _staffService.AddStaff(staff))); }
//post // api/staff public async Task <ActionResult <bool> > PostStaff(RegisterStaffViewModel model) { // چک کردن معتبر بودن مدل if (!ModelState.IsValid) { // ارسال خطا return(BadRequest("لطفاً فیلد های مشخص شده را تکمیل نمایید")); } // چک کردن یونیک بودن نام کاربری if (await _personService.IsExistUserName(model.UserName)) { // ارسال خطای تکراری بودن نام کاربری در صورت یونیک نبودن return(BadRequest("نام کاربری تکراری میباشد")); } // چک کردن یونیک بودن شماره ملی if (await _personService.IsExistNationalId(model.PersonNationalId)) { // ارسال خطا در صورت تکراری بودن شماره ملی return(BadRequest("شماره ملی تکراری میباشد")); } // چک کردن یونیک بودن ایمیل if (await _personService.IsExistEmail(model.Email)) { // ارسال خطا در صورت یونیک نبودن ایمیل کاربر return(BadRequest("ایمیل وارد شده قبلا ثبت شده است")); } // ایجاد شی از پرسن Person person = new Person() { PersonNational_ID = model.PersonNationalId, FirstName = model.FirstName, LastName = model.LastName, Email = FixedText.FixedEmail(model.Email), FatherName = model.FatherName, Gender = model.Gender, UserName = model.UserName, ShenasNum = model.ShenasNum, ShenasSerial = model.ShenasSerial, NationalCardSerial = model.NationalCardSerial, BirthDate = new DateTime(model.BirthDate, 1, 1), CreateTime = DateTime.Now, LastEditTime = DateTime.Now, IsActive = true, NeedChangePassword = true, Password = PasswordHasher.ComputeSha256Hash($"{model.UserName}seemsys123456") }; // قرار دادن رول 2 برای کاربران خاشع person.Role1 = 2; // اگر مقدار ادمین خاشع برابر ترو باشد if (model.IsAdmin == true) { // رول کاربر برابر یک میشود person.Role2 = 1; } else { person.Role2 = 2; } // ایجاد شی جدید از اسف Staff staff = new Staff() { Address = model.Address, EduDegree = model.EduDegree, EduField = model.EduField, PersonNational_ID = await _personService.AddPerson(person), PositionId = model.PositionId, StaffNumber = model.StaffNumber, TeleNumber = model.TeleNumber }; // ارسال استف به سرویس و متد اد اسف برای ذخیره سازی return(await _staffService.AddStaff(staff)); }