Exemple #1
0
        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");
            }
        }
Exemple #2
0
        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);
        }
Exemple #5
0
        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");
            }
        }
Exemple #6
0
        public ActionResult DeleteConfirmed(int id)
        {
            AdministrativeStaff administrativeStaff = db.AdministrativeStaffs.Find(id);

            db.AdministrativeStaffs.Remove(administrativeStaff);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemple #7
0
 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));
        }
Exemple #11
0
        // 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));
        }
Exemple #12
0
        // 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));
        }
Exemple #13
0
        // 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
        }
Exemple #14
0
        // 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)
                    {
                    }
                }
            }
        }
Exemple #15
0
        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));
            }
        }
Exemple #16
0
        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);
        }
Exemple #17
0
        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 !!");
            }
        }
Exemple #18
0
        // 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);
        }
Exemple #19
0
        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();
        }
Exemple #20
0
        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);
        }
Exemple #21
0
        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]));
            }
        }
Exemple #23
0
        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));
            }
        }
Exemple #24
0
        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"));
        }
Exemple #25
0
        // 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);
        }
Exemple #26
0
        // 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;
            }
        }
Exemple #27
0
        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);
        }