public UsersController(Users view) { this.view = view; this.userModel = new Models.User(); this.roleModel = new Models.Role(); this.sectorModel = new Models.Sector(); this.operatorModel = new Models.Operator(); this.doctorModel = new Models.Doctor(); this.nurseModel = new Models.Nurse(); }
/** * Controller to submit user information */ public async void handleSubmit() { try { Cursor.Current = Cursors.WaitCursor; int role = (int)this.view.CBox.comboBox.SelectedValue; string email = this.view.FormEmailTxtBox.Text; string password = this.view.FormPasswordTxtBox.Text; string firstName = this.view.FormFirstNameTxtBox.Text; string lastName = this.view.FormLastNameTxtBox.Text; string dob = this.view.FormDOBPicker.Value.ToString(DateTimeFormats.MYSQL_DATE); string phoneNumber = this.view.FormPhoneNumberTxtBox.Text; string address = this.view.FormAddressTxtBox.Text; int specialization = (int)this.view.SpecializationCBox.comboBox.SelectedValue; // Check if one role is selected if (role < 1) { MessageBox.Show("Nuk është zgjedhur roli!", "Problem", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } // Create user userModel = new Models.User(); long createdUserId = await userModel.createUser(email, password, role); // Create objects based on selected role if (this.view.SelectedRole == Roles.OPERATOR) { operatorModel = new Models.Operator(); long createdOperatorId = await operatorModel.createOperator( firstName, lastName, dob, createdUserId ); } else if (this.view.SelectedRole == Roles.DOCTOR) { employeeModel = new Models.Employee(); long createdEmployeeId = await employeeModel.createEmployee( firstName, lastName, phoneNumber, address, dob, createdUserId ); doctorModel = new Models.Doctor(); await doctorModel.createDoctor(specialization, createdEmployeeId); } else if (this.view.SelectedRole == Roles.NURSE) { employeeModel = new Models.Employee(); long createdEmployeeId = await employeeModel.createEmployee( firstName, lastName, phoneNumber, address, dob, createdUserId ); nurseModel = new Models.Nurse(); await nurseModel.createNurse(createdEmployeeId); } this.handleRoleSelection(); Cursor.Current = Cursors.Arrow; MessageBox.Show("Përdoruesi u shtua me sukses!", "Sukses", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception e) { string caption = "Problem në shkrim"; MessageBox.Show(e.Message, caption, MessageBoxButtons.OK, MessageBoxIcon.Error); } }