public async Task <StaffCreateViewModel> CreateStaff() { var positions = new List <PositionViewModel>(); var ranks = new List <RankViewModel>(); var SubDepartments = new List <SubDepartmentViewModel>(); foreach (var item in _dataManager.Positiond.GetPositions()) { positions.Add(new PositionViewModel { positionId = item.PositionId, Name = item.Name }); } foreach (var item in await _dataManager.Rank.GetRanks()) { ranks.Add(new RankViewModel { RankId = item.RankId, Name = item.Name }); } foreach (var item in await _dataManager.SubDepartment.GetSubDepartment()) { SubDepartments.Add(new SubDepartmentViewModel { SubDepartmentId = item.SubDepartmentId, Name = item.Name }); } var result = new StaffCreateViewModel { Position = positions, Rank = ranks, SubDepartmen = SubDepartments }; return(result); }
// STAFF REGISTRATION (IF ADMIN) public IActionResult Create() { // sets action for create view form submission ViewData["FormAction"] = "Create"; StaffCreateViewModel model = GetStaffCreateViewModel(); return(View(model)); }
public async Task <IActionResult> CreateStaff(StaffCreateViewModel create) { if (ModelState.IsValid) { await _serviceManager.Staff.SaveToDbStaff(create); } var model = await _serviceManager.Staff.CreateStaff(); return(View(model)); }
public static Person Create(StaffCreateViewModel model, Guid organizationId) { return(new Person() { FirstName = model.FirstName, LastName = model.LastName, DateOfBirth = model.DateOfBirth, OrganizationId = organizationId, }); }
// DISPLAY OPEN FIELDS TO EDIT (IF ADMIN) public IActionResult Edit(int?id) { Staff staff = _context.Staff.Find(id); StaffLink staffLink = _context.StaffLink.Find(id); StaffCreateViewModel model = GetStaffCreateViewModel(); model.Staff = staff; model.Staff.StaffLink = staffLink; return(View(model)); }
public async Task SaveToDbStaff(StaffCreateViewModel staff) { var result = new Staff { First = staff.First, Second = staff.Second, MiddleName = staff.MiddleName, PositionId = staff.PositionId, RankId = staff.RankId, SubDepartmenId = staff.SubDepartmenId }; await _dataManager.Staff.SaveStaff(result); }
public async Task <IActionResult> CreateStaff() { var classes = await _unitOfWork.Classes.GetAsync(x => x.OrganizationId == _organizationId); var organizations = await _unitOfWork.Organizations.GetAsync(); StaffCreateViewModel model = new StaffCreateViewModel() { Classes = classes, Organizations = organizations }; return(View(model)); }
public async Task SaveStaffToDb(StaffCreateViewModel model) { var result = new Staff { StaffId = model.StaffId, First = model.First, Second = model.Second, MiddleName = model.MiddleName, PositionId = model.PositionId, RankId = model.RankId, SubDepartmenId = model.SubDepartmenId }; await _dataManager.Staff.SaveStaff(result); }
public async Task <IActionResult> CreateStaff(StaffCreateViewModel model) { if (ModelState.IsValid) { var person = Person.Create(model, _organizationId.Value); await _unitOfWork.People.Insert(person); var personResult = await _unitOfWork.SaveAsync(); if (personResult.Succeeded) { if (model.Files.Any()) { foreach (var f in model.Files) { var medicalInfo = FileInfo.Create(f, _userId, DAL.Enum.EnumFileType.MedicalInfo, person.Id); await _unitOfWork.FileInfos.Insert(medicalInfo); } await _unitOfWork.SaveFileAsync(); } var staffInfo = StaffInfo.Create(model, _userId); staffInfo.OrganizationId = _organizationId.Value; await _unitOfWork.StaffInfos.Insert(staffInfo); var staffInfoResult = await _unitOfWork.SaveAsync(); if (staffInfoResult.Succeeded) { person.StaffInfoId = staffInfo.Id; foreach (var item in model.ClassId) { var personToClass = PersonToClass.Create(person.Id, item, _userId); await _unitOfWork.PersonToClasses.Insert(personToClass); } await _unitOfWork.SaveAsync(); } } return(Redirect(Request.Headers["Referer"].ToString())); } return(View(model)); }
public async Task <IActionResult> Create(Staff staff) { StaffCreateViewModel model = GetStaffCreateViewModel(); model.Staff = staff; if (!ModelState.IsValid) { return(View(model) .WithWarning("Something's Not Right", "Check the form")); } // Create hashed pw from user input string hashed_pw = SecurePasswordHasherHelper.Hash(staff.Password); // prepare output parameters for SQL query CreateOutputParams( staff, hashed_pw, out SqlParameter messageParam, out SqlParameter staffCreatedParam, out Staff _staff); // attempt registration of new user with UserManager IdentityResult result = await UserManager.CreateAsync(_staff, hashed_pw).ConfigureAwait(false); if (result.Succeeded) { // link role and staffType to newly created user await createStaffLink(staff, _staff).ConfigureAwait(false); staffCreatedParam.Value = 1; // set staff creation success flag } else { // executes stpAssignStaff Stored Procedure as fallback linking method ExecStpAssignStaff(staff, hashed_pw, messageParam, staffCreatedParam); } // determine redirect action return(await ReturnRedirectCreate(staff, messageParam, staffCreatedParam)); }
public static StaffInfo Create(StaffCreateViewModel model, string createdBy) { return(new StaffInfo() { CheckInTime = model.CheckInTime, CheckOutTime = model.CheckOutTime, ChildAbuseCert = model.ChildAbuseCert, CreatedById = createdBy, EmploymentType = model.EmploymentType, FingerPrinting = model.FingerPrinting, FirstAidTraining = model.FirstAidTraining, OrganizationId = model.OrganizationId, PhoneNumber = model.PhoneNumber, PhoneNumberDigitPin = model.PhoneNumberDigitPin, PromedicalFormDueDate = model.PromedicalFormDueDate, Salary = model.Salary, SalaryType = model.SalaryType, Schedule = model.Schedule?.Select(x => Convert.ToInt32(x)).ToList(), Scr = model.Scr, StaffRole = model.StaffRole, }); }
public async Task <IHttpActionResult> Createstaff() { ResponseDataDTO <staff> response = new ResponseDataDTO <staff>(); try { var path = Path.GetTempPath(); if (!Request.Content.IsMimeMultipartContent("form-data")) { throw new HttpResponseException(Request.CreateResponse(HttpStatusCode.UnsupportedMediaType)); } MultipartFormDataStreamProvider streamProvider = new MultipartFormDataStreamProvider(path); await Request.Content.ReadAsMultipartAsync(streamProvider); // save file string fileName = ""; foreach (MultipartFileData fileData in streamProvider.FileData) { fileName = (FileExtension.SaveFileOnDisk(fileData)); } #region ["Check null"] if (streamProvider.FormData["sta_fullname"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Họ và tên không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["sta_username"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Tên đăng nhập không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["sta_password"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Mật khẩu không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["sta_mobile"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Số điện thoại không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["sta_status"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Trạng thái không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["department_id"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Phòng ban không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["position_id"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Chức vụ không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["add_province"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Tinh/Thanh pho không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["add_district"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Quan/Huyen không được để trống"; response.Data = null; return(Ok(response)); } if (streamProvider.FormData["add_ward"] == null) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = "Xa/Phuong không được để trống"; response.Data = null; return(Ok(response)); } #endregion #region ["Check exits"] if (!check_department(Convert.ToInt32(streamProvider.FormData["department_id"]))) { response.Code = HttpCode.NOT_FOUND; response.Message = "Khong co ma phong ban trong csdl!"; response.Data = null; return(Ok(response)); } if (!check_position(Convert.ToInt32(Convert.ToInt32(streamProvider.FormData["position_id"])))) { response.Code = HttpCode.NOT_FOUND; response.Message = "Khong co ma bo phan trong csdl!"; response.Data = null; return(Ok(response)); } if (!check_grouprole(Convert.ToInt32(streamProvider.FormData["group_role_id"]))) { response.Code = HttpCode.NOT_FOUND; response.Message = "Khong co ma nhom quyen trong csdl!"; response.Data = null; return(Ok(response)); } #endregion // get data from formdata những trường bắt buộc StaffCreateViewModel StaffCreateViewModel = new StaffCreateViewModel { sta_fullname = Convert.ToString(streamProvider.FormData["sta_fullname"]), //sta_code = Convert.ToString(streamProvider.FormData["sta_code"]), sta_username = Convert.ToString(streamProvider.FormData["sta_username"]), sta_password = Convert.ToString(streamProvider.FormData["sta_password"]), sta_email = Convert.ToString(streamProvider.FormData["sta_email"]), sta_aboutme = Convert.ToString(streamProvider.FormData["sta_aboutme"]), sta_mobile = Convert.ToString(streamProvider.FormData["sta_mobile"]), sta_identity_card = Convert.ToString(streamProvider.FormData["sta_identity_card"]), sta_address = Convert.ToString(streamProvider.FormData["sta_address"]), sta_hometown = Convert.ToString(streamProvider.FormData["sta_hometown"]), sta_reason_to_end_work = Convert.ToString(streamProvider.FormData["sta_reason_to_end_work"]), sta_note = Convert.ToString(streamProvider.FormData["sta_note"]), department_id = Convert.ToInt32(streamProvider.FormData["department_id"]), group_role_id = Convert.ToInt32(streamProvider.FormData["group_role_id"]), social_id = Convert.ToInt32(streamProvider.FormData["social_id"]), position_id = Convert.ToInt32(streamProvider.FormData["position_id"]), sta_leader_flag = Convert.ToByte(streamProvider.FormData["sta_leader_flag"]), sta_status = Convert.ToByte(streamProvider.FormData["sta_status"]), sta_sex = Convert.ToByte(streamProvider.FormData["sta_sex"]), }; //Kiểm tra các trường rằng buộc if (check_username_email(StaffCreateViewModel.sta_username, StaffCreateViewModel.sta_email)) { response.Code = HttpCode.NOT_FOUND; response.Message = "Da co username '" + StaffCreateViewModel.sta_username + "' hoac email '" + StaffCreateViewModel.sta_email + "' trong csdl"; response.Data = null; return(Ok(response)); } //md5 if (StaffCreateViewModel.sta_email != null) { if (CheckEmail.IsValidEmail(StaffCreateViewModel.sta_email) == false) { response.Message = "Định dạng email không hợp lệ !"; response.Data = null; return(Ok(response)); } } //check_phone_number if (CheckNumber.IsPhoneNumber(StaffCreateViewModel.sta_mobile) == false) { response.Message = "Số điện thoại không hợp lệ"; response.Data = null; return(Ok(response)); } //Bắt các truongf còn lại //check datetime if (streamProvider.FormData["sta_birthday"] == null) { StaffCreateViewModel.sta_birthday = null; } else { StaffCreateViewModel.sta_birthday = Convert.ToDateTime(streamProvider.FormData["sta_birthday"]); } if (streamProvider.FormData["sta_identity_card_date"] == null) { StaffCreateViewModel.sta_identity_card_date = null; } else { StaffCreateViewModel.sta_identity_card_date = Convert.ToDateTime(streamProvider.FormData["sta_identity_card_date"]); } if (streamProvider.FormData["sta_end_work_date"] == null) { StaffCreateViewModel.sta_end_work_date = null; } else { StaffCreateViewModel.sta_end_work_date = Convert.ToDateTime(streamProvider.FormData["sta_end_work_date"]); } if (streamProvider.FormData["sta_start_work_date"] == null) { StaffCreateViewModel.sta_start_work_date = null; } else { StaffCreateViewModel.sta_start_work_date = Convert.ToDateTime(streamProvider.FormData["sta_start_work_date"]); } if (streamProvider.FormData["sta_created_date"] == null) { StaffCreateViewModel.sta_created_date = DateTime.Now; } //Lấy ra bản ghi cuối cùng tạo mã code var x = _staffservice.GetLast(); StaffCreateViewModel.sta_code = Utilis.CreateCode("KH", x.sta_id, 7); // mapping view model to entity var createdstaff = _mapper.Map <staff>(StaffCreateViewModel); createdstaff.sta_thumbnai = fileName; createdstaff.sta_password = StaffCreateViewModel.sta_password; // save new staff _staffservice.Create(createdstaff); var get_last_id = _staffservice.GetLast(); //Create address AddressCreateViewModel addressCreateViewModel = new AddressCreateViewModel { add_province = Convert.ToString(streamProvider.FormData["add_province"]), add_district = Convert.ToString(streamProvider.FormData["add_district"]), add_ward = Convert.ToString(streamProvider.FormData["add_ward"]), }; addressCreateViewModel.staff_id = get_last_id.sta_id; var createAddress = _mapper.Map <address>(addressCreateViewModel); _addressService.Create(createAddress); // return response response.Code = HttpCode.OK; response.Message = MessageResponse.SUCCESS; response.Data = createdstaff; return(Ok(response)); } catch (Exception ex) { response.Code = HttpCode.INTERNAL_SERVER_ERROR; response.Message = ex.Message; response.Data = null; return(Ok(response)); } }