public void RetrieveSingleStaff() { string name = "", output = ""; List <Staff> finalResult = new List <Staff>(); object[] result = new object[7]; Console.WriteLine("Enter Details to Search :"); Console.WriteLine("Enter Name :"); name = InputName(); // JsonFileOperation jfile = new JsonFileOperation(); // jfile.RetrieveFromFile<AdministrativeStaff>(name); // XmlFileOperation xfile = new XmlFileOperation(); // xfile.RetrieveFromFile<AdministrativeStaff>(name); DatabaseOperation db = new DatabaseOperation(); finalResult = db.SearchStaff(name, (int)SType.AdministrativeStaff); if (finalResult.Count > 0) { foreach (var items in finalResult) { AdministrativeStaff item = (AdministrativeStaff)items; output = "EmpId : " + item.EmpId + " Name : " + item.Name + " Phone : " + item.Phone + " Email : " + item.Email + " Dob : " + item.Dob + " Designation : " + item.Designation; Console.WriteLine(output + "\n"); } } else { Console.WriteLine("\n List is empty \n"); } }
private Staff _GetStaffFromData(SqlDataReader dataReader) { Staff staff = null; //Creating Specific Staff and reading specific Fields switch ((int)dataReader["StaffTypeID"]) { case (int)StaffType.teachingStaff: staff = new TeachingStaff(); ((TeachingStaff)staff).SubjectName = dataReader["SubjectName"].ToString().Trim(); break; case (int)StaffType.administrativeStaff: staff = new AdministrativeStaff(); ((AdministrativeStaff)staff).Position = dataReader["Position"].ToString().Trim(); break; case (int)StaffType.supportStaff: staff = new SupportStaff(); ((SupportStaff)staff).Role = dataReader["Role"].ToString().Trim(); break; } //Common Fields if (staff != null) { staff.Id = (int)dataReader["StaffID"]; staff.Name = dataReader["Name"].ToString().Trim(); } return(staff); }
public async Task <IActionResult> PutAdministrativeStaff([FromRoute] int id, [FromBody] AdministrativeStaff administrativeStaff) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != administrativeStaff.AdministrativeStaffId) { return(BadRequest()); } _context.Entry(administrativeStaff).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!AdministrativeStaffExists(id)) { return(NotFound()); } else { throw; } } administrativeStaff = _context.AdministrativeStaffs.Include(e => e.College).FirstOrDefault(e => e.AdministrativeStaffId == administrativeStaff.AdministrativeStaffId); return(Ok(administrativeStaff)); }
public static Staff ReadAndCreateStaffFromType() { int staffsType = ReadStaffType(); Staff newStaff; switch (staffsType) { case (int)StaffType.teachingStaff: Console.WriteLine("\n-> Teaching Staff Selected\n"); newStaff = new TeachingStaff(); break; case (int)StaffType.administrativeStaff: Console.WriteLine("\n-> Administrative Staff Selected\n"); newStaff = new AdministrativeStaff(); break; case (int)StaffType.supportStaff: Console.WriteLine("\n-> Support Staff Selected\n"); newStaff = new SupportStaff(); break; default: Console.WriteLine("\n-> Invalid Staff Selected\n"); return(null); } ReadOrUpdateStaffDetails(newStaff); return(newStaff); }
public void RetrieveAllStaff() { string output = ""; List <Staff> finalResult = new List <Staff>(); // JsonFileOperation jfile = new JsonFileOperation(); // jfile.RetrieveAllFromFile<AdministrativeStaff>(); // XmlFileOperation xfile = new XmlFileOperation(); // xfile.RetrieveAllFromFile<AdministrativeStaff>(); try { DatabaseOperation db = new DatabaseOperation(); finalResult = db.RetriveAll((int)SType.AdministrativeStaff); foreach (var items in finalResult) { AdministrativeStaff item = (AdministrativeStaff)items; output = "EmpId : " + item.EmpId + " Name : " + item.Name + " Phone : " + item.Phone + " Email : " + item.Email + " Dob : " + item.Dob + " Designation : " + item.Designation; Console.WriteLine(output + "\n"); } } catch (Exception) { Console.WriteLine("\n List is empty \n"); } }
public ActionResult DeleteConfirmed(int id) { AdministrativeStaff administrativeStaff = db.AdministrativeStaffs.Find(id); db.AdministrativeStaffs.Remove(administrativeStaff); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "Id,Username,FirstName,LastName,CreatedBy,CreatedDate,ModifiedDate,ApplicationUserId")] AdministrativeStaff administrativeStaff) { if (ModelState.IsValid) { db.Entry(administrativeStaff).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.ApplicationUserId = new SelectList(db.AspNetUsers, "Id", "Email", administrativeStaff.ApplicationUserId); return(View(administrativeStaff)); }
public IHttpActionResult GetAdministrativeStaff(int id) { AdministrativeStaff administrativeStaff = db.AdministrativeStaffs.Find(id); if (administrativeStaff == null) { return(NotFound()); } return(Ok(Mapper.Map <AdministrativeStaff, AdminDto>(administrativeStaff))); //return Ok(administrativeStaff); }
public async Task <IActionResult> PostAdministrativeStaff([FromBody] AdministrativeStaff administrativeStaff) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.AdministrativeStaffs.Add(administrativeStaff); await _context.SaveChangesAsync(); administrativeStaff = _context.AdministrativeStaffs.Include(e => e.College).FirstOrDefault(e => e.AdministrativeStaffId == administrativeStaff.AdministrativeStaffId); return(CreatedAtAction("GetAdministrativeStaff", new { id = administrativeStaff.AdministrativeStaffId }, administrativeStaff)); }
public IHttpActionResult DeleteAdministrativeStaff(int id) { AdministrativeStaff administrativeStaff = db.AdministrativeStaffs.Find(id); if (administrativeStaff == null) { return(NotFound()); } db.AdministrativeStaffs.Remove(administrativeStaff); db.SaveChanges(); return(Ok(administrativeStaff)); }
// GET: Admin/AdministrativeStaff/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AdministrativeStaff administrativeStaff = db.AdministrativeStaffs.Find(id); if (administrativeStaff == null) { return(HttpNotFound()); } return(View(administrativeStaff)); }
// GET: Admin/AdministrativeStaff/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AdministrativeStaff administrativeStaff = db.AdministrativeStaffs.Find(id); if (administrativeStaff == null) { return(HttpNotFound()); } ViewBag.ApplicationUserId = new SelectList(db.AspNetUsers, "Id", "Email", administrativeStaff.ApplicationUserId); return(View(administrativeStaff)); }
// function to insert data into user defined table type public void AddStaffToType(List <Staff> StaffList) { DataTable DT = new DataTable(); DT.Columns.Add(new DataColumn("Name", typeof(string))); DT.Columns.Add(new DataColumn("Code", typeof(string))); DT.Columns.Add(new DataColumn("Type", typeof(string))); DT.Columns.Add(new DataColumn("PhoneNumber", typeof(string))); DT.Columns.Add(new DataColumn("DateOfJoin", typeof(DateTime))); DT.Columns.Add(new DataColumn("Subject", typeof(string))); DT.Columns.Add(new DataColumn("Role", typeof(string))); DT.Columns.Add(new DataColumn("Department", typeof(string))); foreach (var staff in StaffList) { DataRow DR = DT.NewRow(); DR["Name"] = staff.Name; DR["Code"] = staff.EmpCode; DR["Type"] = staff.StaffType.ToString(); DR["PhoneNumber"] = staff.ContactNumber; DR["DateOfJoin"] = staff.DateOfJoin; if (StaffTypes.Teaching == staff.StaffType) { TeachingStaff teachingStaff = (TeachingStaff)staff; DR["Subject"] = teachingStaff.Subject; } else if (StaffTypes.Administrative == staff.StaffType) { AdministrativeStaff adminStaff = (AdministrativeStaff)staff; DR["Role"] = adminStaff.Role; } else if (StaffTypes.Support == staff.StaffType) { SupportStaff supportStaff = (SupportStaff)staff; DR["Department"] = supportStaff.Department; } DT.Rows.Add(DR); } InsertStaffs(DT); //calling datatable method here }
// function to update staff info public void UpdateStaff <T>(T obj) where T : Staff { using (SqlConnection con = new SqlConnection(ConnString)) { using (SqlCommand cmd = new SqlCommand("SPUpdateStaff", con)) { cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.AddWithValue("@Id", obj.Id); cmd.Parameters.AddWithValue("@Name", obj.Name); cmd.Parameters.AddWithValue("@Code", obj.EmpCode); cmd.Parameters.AddWithValue("@Type", obj.StaffType.ToString()); cmd.Parameters.AddWithValue("@PhoneNumber", obj.ContactNumber); cmd.Parameters.AddWithValue("@DateOfJoin", obj.DateOfJoin); if (obj is TeachingStaff) { TeachingStaff staff = (TeachingStaff)Convert.ChangeType(obj, obj.GetType()); cmd.Parameters.AddWithValue("@Subject", staff.Subject); cmd.Parameters.AddWithValue("@Role", ""); cmd.Parameters.AddWithValue("@Department", ""); } else if (obj is AdministrativeStaff) { AdministrativeStaff staff = (AdministrativeStaff)Convert.ChangeType(obj, obj.GetType()); cmd.Parameters.AddWithValue("@Role", staff.Role); cmd.Parameters.AddWithValue("@Department", ""); cmd.Parameters.AddWithValue("@Subject", ""); } else { SupportStaff staff = (SupportStaff)Convert.ChangeType(obj, obj.GetType()); cmd.Parameters.AddWithValue("@Department", staff.Department); cmd.Parameters.AddWithValue("@Subject", ""); cmd.Parameters.AddWithValue("@Role", ""); } con.Open(); try { cmd.ExecuteNonQuery(); } catch (SqlException sqlExc) { } } } }
public IActionResult Post([FromBody] Object staff) { bool isExist = false; var jsonString = staff.ToString(); //var temp = (int)JObject.Parse(jsonString)["StaffType"]; //StaffTypes type = (StaffTypes)temp; string temp = (string)JObject.Parse(jsonString)["StaffType"]; StaffTypes type = (StaffTypes)Enum.Parse(typeof(StaffTypes), temp, true); List <Staff> StaffList = new List <Staff>(); if (type == StaffTypes.Teaching) { TeachingStaff obj = JsonConvert.DeserializeObject <TeachingStaff>(jsonString); StaffList.Add(obj); } if (type == StaffTypes.Administrative) { AdministrativeStaff obj = JsonConvert.DeserializeObject <AdministrativeStaff>(jsonString); StaffList.Add(obj); } if (type == StaffTypes.Support) { SupportStaff obj = JsonConvert.DeserializeObject <SupportStaff>(jsonString); StaffList.Add(obj); } DataBaseManager dataBaseManager = new DataBaseManager(); try { isExist = dataBaseManager.CheckCodeExistence(StaffList[0].EmpCode); if (isExist) { return(StatusCode(400)); } else { dataBaseManager.AddStaffToType(StaffList); return(StatusCode(201)); } } catch (Exception e) { return(StatusCode(500)); } }
public List <Staff> Populate(SqlDataReader sqlDataReader, int StaffType) { List <Staff> staffList = new List <Staff>(); while (sqlDataReader.Read()) { if ((int)sqlDataReader.GetValue(9) == 0) { AdministrativeStaff administrative = new AdministrativeStaff(); administrative.EmpId = sqlDataReader.GetValue(0).ToString(); administrative.Name = sqlDataReader.GetValue(1).ToString(); administrative.Phone = sqlDataReader.GetValue(2).ToString(); administrative.Email = sqlDataReader.GetValue(3).ToString(); administrative.Dob = (DateTime)sqlDataReader.GetValue(4); administrative.StaffType = (SType)sqlDataReader.GetValue(8); administrative.Designation = sqlDataReader.GetValue(5).ToString(); staffList.Add(administrative); } else if ((int)sqlDataReader.GetValue(9) == 1) { TeachingStaff teaching = new TeachingStaff(); teaching.EmpId = sqlDataReader.GetValue(0).ToString(); teaching.Name = sqlDataReader.GetValue(1).ToString(); teaching.Phone = sqlDataReader.GetValue(2).ToString(); teaching.Email = sqlDataReader.GetValue(3).ToString(); teaching.Dob = (DateTime)sqlDataReader.GetValue(4); teaching.StaffType = (SType)sqlDataReader.GetValue(8); teaching.Subject = sqlDataReader.GetValue(6).ToString(); staffList.Add(teaching); } else if ((int)sqlDataReader.GetValue(9) == 2) { SupportStaff support = new SupportStaff(); support.EmpId = sqlDataReader.GetValue(0).ToString(); support.Name = sqlDataReader.GetValue(1).ToString(); support.Phone = sqlDataReader.GetValue(2).ToString(); support.Email = sqlDataReader.GetValue(3).ToString(); support.Dob = (DateTime)sqlDataReader.GetValue(4); support.StaffType = (SType)sqlDataReader.GetValue(8); support.Department = sqlDataReader.GetValue(7).ToString(); staffList.Add(support); } } return(staffList); }
public void EditStaff() { string id; RetrieveAllStaff(); Console.WriteLine("Enter details of staff to be edited:"); Console.WriteLine("Enter EmpId :"); id = Console.ReadLine(); AdministrativeStaff admin = new AdministrativeStaff(); // JsonFileOperation jfile = new JsonFileOperation(); // admin = (AdministrativeStaff)jfile.GetObj<AdministrativeStaff>(id, admin); // XmlFileOperation xfile = new XmlFileOperation(); // admin = (AdministrativeStaff)xfile.GetObj<AdministrativeStaff>(id); //Console.WriteLine("Name " + admin.Designation); try { DatabaseOperation db = new DatabaseOperation(); admin = (AdministrativeStaff)db.GetSingleStaff(id, (int)SType.AdministrativeStaff); // Console.WriteLine("Name " + result[0].ToString()); if (admin.Name == null) { Console.WriteLine("\nStaff Not Found !!"); } else { AdministrativeStaff adminEdit = new AdministrativeStaff(); adminEdit.StaffType = SType.AdministrativeStaff; adminEdit.EmpId = admin.EmpId; adminEdit.Name = admin.Name; adminEdit.Phone = admin.Phone; adminEdit.Email = admin.Email; adminEdit.Dob = admin.Dob; adminEdit.Designation = admin.Designation; EditHelp(id, admin, adminEdit); } } catch (Exception e) { Console.WriteLine("\nStaff Not Found !!"); } }
// function to populate objects from the result public static List <Staff> PopulateStaff(SqlDataReader reader) { int id; string name, code, number, subject, role, department; StaffTypes emptType; DateTime dateOfJoin; DataTable dt = new DataTable(); List <Staff> StaffList = new List <Staff>(); while (reader.HasRows) { while (reader.Read()) { var temp = (StaffTypes)Enum.Parse(typeof(StaffTypes), reader["type"].ToString()); name = reader["Name"].ToString(); code = reader["Code"].ToString(); id = (int)reader["Id"]; emptType = temp; number = reader["PhoneNumber"].ToString(); dateOfJoin = (DateTime)reader["DateOfJoin"]; if (StaffTypes.Teaching == temp) { subject = reader["Subject"].ToString(); TeachingStaff obj = new TeachingStaff(name, code, emptType, subject, number, dateOfJoin, id); StaffList.Add(obj); } else if (StaffTypes.Administrative == temp) { role = reader["Role"].ToString(); AdministrativeStaff obj = new AdministrativeStaff(name, code, emptType, role, number, dateOfJoin, id); StaffList.Add(obj); } else if (StaffTypes.Support == temp) { department = reader["Department"].ToString(); SupportStaff obj = new SupportStaff(name, code, emptType, department, number, dateOfJoin, id); StaffList.Add(obj); } } reader.NextResult(); } return(StaffList); }
public ActionResult AdminPanel(string id) { if (id == null) { //return RedirectToAction("MyProfile", "Customers", new { id = customer.Id }); return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } //Customer customer = db.Customers.Find(id); AdministrativeStaff admin = db.AdministrativeStaffs.SingleOrDefault(a => a.ApplicationUserId == id); if (admin == null) { return(HttpNotFound()); } if ((!User.IsInRole(RoleName.Customer) || !User.IsInRole(RoleName.CanManageAll) || !User.IsInRole(RoleName.ServiceProvider) || !User.IsInRole(RoleName.AdministrativeStaff))) { //no role RedirectToAction("RegisterAdmin", "Account"); } var administrativeStaffs = db.AdministrativeStaffs.Include(a => a.AspNetUser); int counta = administrativeStaffs.Count(); ViewBag.CountA = counta.ToString(); var customers = db.Customers.Include(c => c.Id); int countc = customers.Count(); ViewBag.CountC = countc.ToString(); var countcsp = db.ServiceProviders.Count(t => t.ServiceProviderType.Id == ServiceProviderTypeName.SpCooperate); ViewBag.CountCSP = countcsp.ToString(); var countisp = db.ServiceProviders.Count(t => t.ServiceProviderType.Id == ServiceProviderTypeName.SpIndividual); ViewBag.CountISP = countisp.ToString(); var CountComplains = db.Complains.Count(c => c.ActionId == ComplainActionName.NotHandled); ViewBag.countcomplains = CountComplains; return(View("AdminPanel", admin)); //return View(); }
public static List <Staff> PopulateList(List <Staff> StaffList) { int id; string name, code, number, subject, role, department; StaffTypes emptType; DateTime dateOfJoin; List <Staff> staffs = new List <Staff>(); foreach (var staff in StaffList) { id = staff.Id; name = staff.Name; code = staff.EmpCode; number = staff.ContactNumber; emptType = staff.StaffType; dateOfJoin = staff.DateOfJoin; if (StaffTypes.Teaching == emptType) { TeachingStaff teachingStaff = (TeachingStaff)staff; subject = teachingStaff.Subject; TeachingStaff obj = new TeachingStaff(name, code, emptType, subject, number, dateOfJoin, id); staffs.Add(obj); } else if (StaffTypes.Administrative == emptType) { AdministrativeStaff administrativeStaff = (AdministrativeStaff)staff; role = administrativeStaff.Role; AdministrativeStaff obj = new AdministrativeStaff(name, code, emptType, role, number, dateOfJoin, id); staffs.Add(obj); } else if (StaffTypes.Support == emptType) { SupportStaff supportStaff = (SupportStaff)staff; department = supportStaff.Department; SupportStaff obj = new SupportStaff(name, code, emptType, department, number, dateOfJoin, id); staffs.Add(obj); } } return(StaffList); }
public void ViewStaffInfo(Staff staff) { switch (staffTypeChoice) { case 1: TeachingStaff teachingStaff = (TeachingStaff)staff; Console.WriteLine("\n\nID: {0}, Name: {1}, Code: {2}, Type: {3}, Subject: {4}, Contact Number: {5}, Joining Date: {6}", teachingStaff.Id, teachingStaff.Name, teachingStaff.EmpCode, teachingStaff.StaffType, teachingStaff.Subject, teachingStaff.ContactNumber, teachingStaff.DateOfJoin); break; case 2: AdministrativeStaff administrativeStaff = (AdministrativeStaff)staff; Console.WriteLine("\n\nID: {0}, Name: {1}, Code:{2}, Type: {3}, Role: {4}, Contact Number: {5}, Joining Date: {6}", administrativeStaff.Id, administrativeStaff.Name, administrativeStaff.EmpCode, administrativeStaff.StaffType, administrativeStaff.Role, administrativeStaff.ContactNumber, administrativeStaff.DateOfJoin); break; case 3: SupportStaff supportStaff = (SupportStaff)staff; Console.WriteLine("\n\nID: {0}, Name: {1}, Code:{2}, Type: {3}, Department: {4}, Contact Number: {5}, Joining Date: {6}", supportStaff.Id, supportStaff.Name, supportStaff.EmpCode, supportStaff.StaffType, supportStaff.Department, supportStaff.ContactNumber, supportStaff.DateOfJoin); break; default: return; } }
public IActionResult Put(int id, [FromBody] object json) { Staffs.Staffs staff = JsonConvert.DeserializeObject <Staffs.Staffs>(json.ToString()); if (staff.Id != id) { return(BadRequest()); } int index = StaffList.FindIndex(s => (s.Id == id)); //StaffList.Exists if (index == -1) { return(NotFound()); } else { switch (StaffList[index].StaffType) { case StaffType.TEACHINGSTAFF: TeachingStaffs staff_t = JsonConvert.DeserializeObject <TeachingStaffs>(json.ToString()); ((TeachingStaffs)StaffList[index]).UpdateTeaching(staff_t.Name, staff_t.Phone, staff_t.Email, staff_t.ClassName, staff_t.Subject); break; case StaffType.ADMINISTRATIVESTAFF: AdministrativeStaff staff_a = JsonConvert.DeserializeObject <AdministrativeStaff>(json.ToString()); ((AdministrativeStaff)StaffList[index]).UpdateAdministrative(staff_a.Name, staff_a.Phone, staff_a.Email, staff_a.Designation); break; case StaffType.SUPPORTSTAFF: SupportStaffs staff_s = JsonConvert.DeserializeObject <SupportStaffs>(json.ToString()); ((SupportStaffs)StaffList[index]).UpdateSupport(staff_s.Name, staff_s.Phone, staff_s.Email, staff_s.Designation); break; } staffdb.WriteData(StaffList); return(Ok(StaffList[index])); } }
public IActionResult Put(int id, [FromBody] Object staff) { var jsonString = staff.ToString(); //var temp = (int)JObject.Parse(jsonString)["StaffType"]; //StaffTypes type = (StaffTypes)temp; string temp = (string)JObject.Parse(jsonString)["StaffType"]; StaffTypes type = (StaffTypes)Enum.Parse(typeof(StaffTypes), temp, true); DataBaseManager dataBaseManager = new DataBaseManager(); try { if (type == StaffTypes.Teaching) { TeachingStaff obj = JsonConvert.DeserializeObject <TeachingStaff>(jsonString); dataBaseManager.UpdateStaff(obj); return(StatusCode(200)); } if (type == StaffTypes.Administrative) { AdministrativeStaff obj = JsonConvert.DeserializeObject <AdministrativeStaff>(jsonString); dataBaseManager.UpdateStaff(obj); return(StatusCode(200)); } if (type == StaffTypes.Support) { SupportStaff obj = JsonConvert.DeserializeObject <SupportStaff>(jsonString); dataBaseManager.UpdateStaff(obj); return(StatusCode(200)); } return(NotFound()); } catch (Exception e) { return(StatusCode(500)); } }
public void AddStaff() { string bulkOrNot = "n"; do { string designation = ""; int Count = 0, Select, id = 0; bool valid = false; object[] opt = new object[5]; string[] Options; AdministrativeStaff admin = new AdministrativeStaff(); do { opt = EnterValues(); Options = ConfigList("Designation"); Console.WriteLine("Enter Designation :"); do { Console.WriteLine("\nSelect any one option(0 to exit)"); foreach (var val in Options) { Console.WriteLine(++Count + " :" + val); } Count = 0; int.TryParse(Console.ReadLine(), out Select); if (Select == 0) { break; } designation = Options[Select - 1]; break; }while (Select != 0); admin.StaffType = SType.AdministrativeStaff; admin.EmpId = opt[4].ToString(); admin.Name = opt[0].ToString(); admin.Phone = opt[1].ToString(); admin.Email = opt[3].ToString(); admin.Designation = designation; if (!String.IsNullOrEmpty(opt[2].ToString())) { admin.Dob = Convert.ToDateTime(opt[2]); } valid = Validation(admin); if (!valid) { Console.WriteLine("\nDo you want to correct entered values ??(yes-1/No-0)"); id = InputOption(); if (id == 1) { continue; } else { break; } } }while (!valid); if (valid) { // administrativeList.Add(admin); JsonFileOperation jfile = new JsonFileOperation(); jfile.AddToFile <AdministrativeStaff>(admin); XmlFileOperation xfile = new XmlFileOperation(); xfile.AddToFile <AdministrativeStaff>(admin); // DatabaseOperation createtb = new DatabaseOperation(); // createtb.CreateTable(); DatabaseOperation db = new DatabaseOperation(); db.AddBulkData(admin.EmpId, admin.Name, admin.Phone, admin.Email, admin.Dob, (int)admin.StaffType, admin.Designation); //Console.WriteLine("\nValues added are :\n"); //Console.WriteLine("\nName: " + admin.Name + " " + "DOB: " + admin.Dob + " " + "Phone :" + admin.Phone + " " + "Email :" + admin.Email + " Designation: " + admin.Designation); } Console.WriteLine("Add data again : (y/n)\n"); bulkOrNot = Console.ReadLine(); if (bulkOrNot.Equals("n")) { DatabaseOperation database = new DatabaseOperation(); database.ExecuteBulkProc(); break; } }while (bulkOrNot.Equals("y")); }
// function for add staff public void AddStaff() { List <Staff> StaffList = new List <Staff>(); string subject = System.Configuration.ConfigurationManager.AppSettings["subjects"]; string[] subjects = subject.Split(','); bool succeed, flag = false, isCodeExist = false; int index = 1, choice; string addMoreChoice; DataBaseManager dbManager = new DataBaseManager(); do { staffTypeChoice = GetStaffType(); var empType = (StaffTypes)staffTypeChoice; if (staffTypeChoice == counter) { return; } Console.WriteLine($"\n\n----------------------- {empType} Staff -----------------------\n"); do { succeed = false; try { Console.WriteLine("\nEnter Name: "); name = Console.ReadLine(); Validator.ValidateName(name); succeed = true; } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); do { succeed = false; Console.WriteLine("\nEnter Employee code :"); code = Console.ReadLine(); code = code.ToUpper(); isCodeExist = dbManager.CheckCodeExistence(code); if (isCodeExist || StaffList.Exists(x => x.EmpCode == code)) { Console.WriteLine("\nEmp code already exists"); succeed = false; } else { succeed = true; } } while (succeed == false); do { succeed = false; try { Console.WriteLine("\nEnter Contact Number"); number = Console.ReadLine(); Validator.ValidatePhoneNumber(number); succeed = true; } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); do { succeed = false; try { Console.WriteLine("\nEnter Date of Join (dd-mm-yyyy)"); doj = DateTime.Parse(Console.ReadLine()); Validator.ValidateDate(doj); succeed = true; } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); switch (staffTypeChoice) { case 1: do { succeed = false; index = 1; try { Console.WriteLine("\nSelect your choice"); foreach (string item in subjects) { Console.WriteLine($"{index}. {item}"); index++; } if (!Int32.TryParse(Console.ReadLine(), out choice)) { succeed = false; Console.WriteLine("Enter a valid choice"); } else { if (choice <= subjects.Length && choice > 0) { subj = subjects[choice - 1]; succeed = true; } else { Console.WriteLine("Enter a valid choice"); succeed = false; } } } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); TeachingStaff teachingStaff = new TeachingStaff(name, code, empType, subj, number, doj); StaffList.Add(teachingStaff); //dbManager.AddStaff<TeachingStaff>(teachingStaff); break; case 2: do { succeed = false; try { Console.WriteLine("\nEnter Role"); role = Console.ReadLine(); succeed = true; } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); AdministrativeStaff administrativeStaff = new AdministrativeStaff(name, code, empType, role, number, doj); StaffList.Add(administrativeStaff); //dbManager.AddStaff<AdministrativeStaff>(administrativeStaff); break; case 3: do { succeed = false; try { Console.WriteLine("\nEnter Department"); department = Console.ReadLine(); succeed = true; } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); SupportStaff supportStaff = new SupportStaff(name, code, empType, department, number, doj); StaffList.Add(supportStaff); //dbManager.AddStaff<SupportStaff>(supportStaff); break; case 4: // back to main menu break; } Console.WriteLine("Do you want to add more ? (Y/N)"); addMoreChoice = Console.ReadLine(); } while (addMoreChoice == "y" || addMoreChoice == "Y"); dbManager.AddStaffToType(StaffList); }
// function for update staff details public void UpdateStaff() { DataBaseManager dataBaseManager = new DataBaseManager(); DateTime dateInput; bool succeed; string input; string subject = System.Configuration.ConfigurationManager.AppSettings["subjects"]; string[] subjects = subject.Split(','); int index = 1, choice; Console.WriteLine($"\n\n----------------------- Update Staff -----------------------\n"); //Console.WriteLine("\nEnter Emp code of the staff that you want to update"); //string code = Console.ReadLine(); //code = code.ToUpper(); id = getStaffId(); List <Staff> filteredList = new List <Staff>(); filteredList = dataBaseManager.FetchStaffInfo(id); if (filteredList.Exists(x => x.Id == id)) { foreach (var staff in filteredList) { if (staff.Id == id) { //ViewStaffInfo(staff); do { succeed = false; try { Console.WriteLine($"Enter Name ({staff.Name})"); input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) { name = staff.Name; } else { name = input; Validator.ValidateName(name); } succeed = true; staff.Name = name; Console.WriteLine("Name updated succesfully"); } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); do { succeed = false; try { Console.WriteLine($"\nEnter Contact Number ({staff.ContactNumber})"); input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) { number = staff.ContactNumber; } else { number = input; Validator.ValidatePhoneNumber(number); } succeed = true; staff.ContactNumber = number; Console.WriteLine("Contact Number updated succesfully"); } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); do { succeed = false; try { Console.WriteLine($"\nEnter Date of Join ({staff.DateOfJoin}) (dd-mm-yyyy) "); if (!(DateTime.TryParse(Console.ReadLine(), out dateInput))) { doj = staff.DateOfJoin; } else { doj = dateInput; Validator.ValidateDate(doj); } succeed = true; staff.DateOfJoin = doj; Console.WriteLine("Date of Join updated succesfully"); } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); string staffType = staff.StaffType.ToString(); switch (staffType) { case "Teaching": TeachingStaff teachingStaff = (TeachingStaff)staff; do { succeed = false; index = 1; try { Console.WriteLine($"\nSelect language from choice ({teachingStaff.Subject})"); foreach (string item in subjects) { Console.WriteLine($"{index}. {item}"); index++; } if (!Int32.TryParse(Console.ReadLine(), out choice)) { succeed = false; Console.WriteLine("Enter a valid choice"); } else { if (choice <= subjects.Length && choice > 0) { subj = subjects[choice - 1]; succeed = true; teachingStaff.Subject = subj; } else { Console.WriteLine("Enter a valid choice"); succeed = false; } } } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); dataBaseManager.UpdateStaff <TeachingStaff>(teachingStaff); break; case "Administrative": AdministrativeStaff administrativeStaff = (AdministrativeStaff)staff; do { succeed = false; try { Console.WriteLine($"\nEnter Role ({administrativeStaff.Role}) "); input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) { role = administrativeStaff.Role; } else { role = input; Validator.ValidateRole(role); } succeed = true; administrativeStaff.Role = role; Console.WriteLine("Role updated succesfully"); } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); dataBaseManager.UpdateStaff <AdministrativeStaff>(administrativeStaff); break; case "Support": SupportStaff supportStaff = (SupportStaff)staff; do { succeed = false; try { Console.WriteLine($"\nEnter Department ({supportStaff.Department}) "); input = Console.ReadLine(); if (string.IsNullOrEmpty(input)) { department = supportStaff.Department; } else { department = input; Validator.ValidateDepartment(department); } succeed = true; supportStaff.Department = department; Console.WriteLine("Role updated succesfully"); } catch (Exception e) { Console.WriteLine(e.Message); } } while (succeed == false); dataBaseManager.UpdateStaff <SupportStaff>(supportStaff); break; } } } } else { Console.WriteLine("\nStaff Not Found"); return; } }
public void EditHelp(string id, AdministrativeStaff admin, AdministrativeStaff adminEdit) { int option; bool valid = false; string name = "", phone = "", email = "", designation = "", date = ""; string[] Options; int Select, Count = 0; Console.WriteLine("Edit Details of Staff:" + admin.Name); do { Console.WriteLine("Select Values (1/2/3/4/5/6) :\n1.Edit Name\n2.Edit Phone\n3.Edit Dob\n4.Edit Email\n5.Edit Designation\n6.Exit"); option = Convert.ToInt32(Console.ReadLine()); switch (option) { case 1: Console.WriteLine("Enter Name :"); name = Console.ReadLine(); adminEdit.Name = name; valid = Validation(adminEdit); if (valid) { Console.WriteLine(" Name :" + adminEdit.Name); } break; case 2: Console.WriteLine("Enter Phone No:"); phone = Console.ReadLine(); adminEdit.Phone = phone; valid = Validation(adminEdit); if (valid) { Console.WriteLine("Phone No:" + adminEdit.Phone); } break; case 3: Console.WriteLine("Enter date of birth"); date = InputDob(); if (!String.IsNullOrEmpty(date)) { adminEdit.Dob = Convert.ToDateTime(date); } valid = Validation(adminEdit); if (valid) { Console.WriteLine(" Date of birth :" + adminEdit.Dob); } break; case 4: Console.WriteLine("Enter Email"); email = Console.ReadLine(); adminEdit.Email = email; valid = Validation(adminEdit); if (valid) { Console.WriteLine(" Email Address :" + adminEdit.Email); } break; case 5: Options = ConfigList("Designation"); Console.WriteLine("Enter Designation"); do { Console.WriteLine("\nSelect any one option(0 to exit)"); foreach (var val in Options) { Console.WriteLine(++Count + " :" + val); } Count = 0; int.TryParse(Console.ReadLine(), out Select); if (Select == 0) { break; } designation = Options[Select - 1]; break; }while (Select != 0); adminEdit.Designation = designation; valid = Validation(adminEdit); if (valid) { Console.WriteLine("Designation :" + adminEdit.Designation); } break; case 6: valid = Validation(adminEdit); if (!valid) { Console.WriteLine("Values Not Edited"); return; } else if (admin == adminEdit) { return; } else { // JsonFileOperation jfile = new JsonFileOperation(); // jfile.UpdateFile<AdministrativeStaff>(id, adminEdit); // XmlFileOperation xfile = new XmlFileOperation(); // xfile.UpdateFile<AdministrativeStaff>(id, adminEdit); DatabaseOperation db = new DatabaseOperation(); db.UpdateStaff(adminEdit.EmpId, adminEdit.Name, adminEdit.Phone, adminEdit.Email, adminEdit.Dob, (int)adminEdit.StaffType, adminEdit.Designation); Console.WriteLine("Edit Successfull"); return; } default: Console.WriteLine("Invalid Input!!"); break; } }while (option != 6); }