Ejemplo n.º 1
0
 /// <summary>
 /// Constructor for the TechnicianIncidentsUserControl
 /// </summary>
 public TechnicianIncidentsUserControl()
 {
     InitializeComponent();
     technicianController = new TechnicianController();
     incidentController   = new IncidentController();
     technicianList       = new List <Technician>();
 }
Ejemplo n.º 2
0
 /// <summary>
 /// 0-parameter constructor for the SearchIncidentDialog class
 /// </summary>
 public UpdateIncidentUserControl()
 {
     InitializeComponent();
     incident             = new Incident();
     oldIncident          = new Incident();
     incidentController   = new IncidentController();
     technicianController = new TechnicianController();
 }
Ejemplo n.º 3
0
        private void frmViewServices_Load(object sender, EventArgs e)
        {
            //To be replaced with login
            TechnicianController techCtr = new TechnicianController();

            tech = techCtr.ReadSpecific(8);
            //

            LoadData();
        }
Ejemplo n.º 4
0
        public void Technician_Update_Default_Should_Pass()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = myController.Update("abc");

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 5
0
        public void Technician_Delete_InValid_Data_Bogus_Should_Fail()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = myController.Delete("bogus");

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 6
0
        public void Technician_Delete_Get_Null_Id_Should_Return_Error()
        {
            // Arrange
            var controller = new TechnicianController();

            // Act
            var result = controller.Delete((string)null) as NotFoundResult;

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }
Ejemplo n.º 7
0
        public void Technician_Index_Default_Should_Pass()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = myController.Index();

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 8
0
        public void Technician_Delete_Post_Null_Data_Should_Return_Error()
        {
            // Arrange
            var controller = new TechnicianController();

            // Act
            var result = controller.DeleteConfirmed(null) as RedirectToActionResult;

            // Assert
            Assert.AreEqual("Error", result.ActionName);
        }
Ejemplo n.º 9
0
        public void EditPost_ReturnsActionResult_valid()
        {
            //Arrange
            var repo       = new Mock <IRepository <Technician> >();
            var controller = new TechnicianController(repo.Object);
            int test       = 1;

            //Act
            var result = controller.Edit(test);

            Assert.IsType <ViewResult>(result);
        }
Ejemplo n.º 10
0
        public void Add_Returns_ViewResult()
        {
            //Arrange
            var repo       = new Mock <IRepository <Technician> >();
            var controller = new TechnicianController(repo.Object);

            //Act
            var result = controller.Add();

            //Assert
            Assert.IsType <ViewResult>(result);
        }
Ejemplo n.º 11
0
        public void Technician_Update_Get_Valid_Data_Should_Pass()
        {
            // Arrange
            var myController = new TechnicianController();
            var myData       = BiliWeb.Backend.TechnicianBackend.Instance.Index().FirstOrDefault();

            // Act
            var result = myController.Update(myData.ID) as ViewResult;

            // Assert
            Assert.IsNotNull(result.Model);
        }
        public bool Schedule(ServiceRequest sr)
        {
            TechnicianController techCtr = new TechnicianController();

            List <Package>    packages = sr.ServiceContract.Packages;
            List <Technician> techs    = techCtr.Read();

            Technician     techMin = null;
            Service        serMin  = null;
            RequestAgent   reqAgent;
            List <Service> skills;

            foreach (Package i in packages)
            {
                foreach (Technician j in techs)
                {
                    skills = j.Skills;

                    foreach (Service k in skills)
                    {
                        if (k.Equals(i.Service))
                        {
                            int queueDuration    = GetQueueDuration(j);
                            int queueDurationMin = GetQueueDuration(j);
                            if (techMin != null)
                            {
                                queueDurationMin = GetQueueDuration(techMin);
                            }

                            if (queueDuration <= queueDurationMin)
                            {
                                techMin = j;
                                serMin  = k;
                            }
                        }
                    }
                }

                if (techMin == null)
                {
                    return(false);
                }

                techMin.EmploymentStatus = "Working";
                techCtr.Update(techMin);
                reqAgent = new RequestAgent(serMin, techMin);
                rqCtr.Add(reqAgent, sr);

                return(true);
            }

            return(false);
        }
Ejemplo n.º 13
0
        public void Technician_Update_Get_InValid_ID_Bogus_Should_Fail()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = myController.Update("abc");

            // Reset

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 14
0
        public void Technician_Create_Get_Default_Should_Pass()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = myController.Create();

            // Reset

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 15
0
        public void Technician_Read_Get_Data_Null_Should_Fail()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = myController.Read(null);

            // Reset

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 16
0
        public void Technician_Read_Get_InValid_Data_Null_Should_Fail()
        {
            // Arrange
            var myController = new TechnicianController();

            // Act
            var result = (NotFoundResult)myController.Read(null);

            // Reset

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }
Ejemplo n.º 17
0
        public void Technician_Update_Post_Default_Should_Pass()
        {
            // Arrange
            var myController = new TechnicianController();
            var myData       = new TechnicianModel();

            // Act
            var result = myController.Update(myData);

            // Reset

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 18
0
        public void EditPost_ReturnsViewResult_Invalid()
        {
            //Arrange
            var repo       = new Mock <IRepository <Technician> >();
            var controller = new TechnicianController(repo.Object);

            controller.ModelState.AddModelError("", "TestError");
            int test = 1;

            //Act
            var result = controller.Edit(test);

            Assert.IsType <ViewResult>(result);
        }
Ejemplo n.º 19
0
        public void Technician_Delete_Post_Invalid_Model_Should_Send_Back_For_Edit()
        {
            // Arrange
            var controller = new TechnicianController();
            var data       = new TechnicianModel();

            // Make ModelState Invalid
            controller.ModelState.AddModelError("test", "test");

            // Act
            var result = controller.DeleteConfirmed(data.ID) as NotFoundResult;

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }
Ejemplo n.º 20
0
        public void Technician_Delete_Invalid_Null_Data_Should_Return_Error()
        {
            // Arrange
            var    controller = new TechnicianController();
            string id         = "bogus";

            // Act
            var result = controller.Delete(id) as NotFoundResult;

            // Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }
Ejemplo n.º 21
0
        public void Technician_Create_Post_Invalid_Model_Should_Send_Back_For_Edit()
        {
            // Arrange
            var controller = new TechnicianController();
            var data       = new TechnicianModel();

            // Make ModelState Invalid
            controller.ModelState.AddModelError("test", "test");

            // Act
            var result = controller.Create(data) as RedirectToActionResult;

            // Assert
            Assert.AreEqual("Error", result.ActionName);
        }
Ejemplo n.º 22
0
        private void btnEdit_Click(object sender, EventArgs e)
        {
            Technician     tech   = (Technician)lstTechnicians.SelectedItems[0].Tag;
            List <Service> skills = new TechnicianController().ReadChildren(tech);

            frmEditTechnician form = new frmEditTechnician(tech, skills);
            DialogResult      res  = form.ShowDialog();

            if (res == DialogResult.OK)
            {
                sdLogic.EditTechnician(form.tech, form.skills, skills);
            }

            LoadTechnicians();
        }
Ejemplo n.º 23
0
        public void Technician_Delete_Get_Default_Should_Pass()
        {
            // Arrange
            var controller = new TechnicianController();

            string id = BiliWeb.Backend.DataSourceBackend.Instance.TechnicianBackend.Index().FirstOrDefault().ID;

            // Act
            ViewResult result = controller.Delete(id) as ViewResult;

            // Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.IsNotNull(result);
        }
Ejemplo n.º 24
0
        public void Technician_Delete_Get_Default_Should_Return_Data()
        {
            // Arrange
            var controller = new TechnicianController();

            // Get default student
            var data = BiliWeb.Backend.DataSourceBackend.Instance.TechnicianBackend.Index().FirstOrDefault();

            // Act
            var result = controller.Delete(data.ID, true) as ViewResult;

            // Reset

            // Assert
            Assert.IsNotNull(result.ViewData);
        }
Ejemplo n.º 25
0
        private void btnComplete_Click(object sender, EventArgs e)
        {
            currentServiceRequest.Status = "Resolved";
            RequestController rqCtr = new RequestController();

            rqCtr.Update(currentServiceRequest);

            if (sdLogic.GetQueueDuration(tech) == 0)
            {
                tech.EmploymentStatus = "Open";
                TechnicianController techCtr = new TechnicianController();
                techCtr.Update(tech);
            }

            LoadData();
        }
Ejemplo n.º 26
0
        public void Technician_Delete_Post_Empty_Id_Should_Send_Back_For_Edit()
        {
            // Arrange
            var             controller = new TechnicianController();
            TechnicianModel dataEmpty  = new TechnicianModel
            {
                // Make data.Id empty
                ID = ""
            };

            // Act
            var result = controller.DeleteConfirmed(dataEmpty.ID) as RedirectToActionResult;

            // Assert
            Assert.AreEqual("Error", result.ActionName);
        }
Ejemplo n.º 27
0
        public void Technician_Delete_Post_Valid_Should_Delete()
        {
            // Arrange
            var controller = new TechnicianController();

            // Get default student
            var data = BiliWeb.Backend.DataSourceBackend.Instance.TechnicianBackend.Index().FirstOrDefault();

            // Act
            var result    = controller.DeleteConfirmed(data.ID) as ViewResult;
            var dataExist = BiliWeb.Backend.DataSourceBackend.Instance.TechnicianBackend.Read(data.ID);

            // Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.IsNull(dataExist);
        }
Ejemplo n.º 28
0
        public void Technician_Delete_Post_Default_Should_Return_Index_Page()
        {
            // Arrange
            var controller = new TechnicianController();

            // Get default student
            var             defaultData = BiliWeb.Backend.DataSourceBackend.Instance.TechnicianBackend.Index().FirstOrDefault();
            TechnicianModel data        = new TechnicianModel(defaultData);

            // Act
            var result = controller.DeleteConfirmed(data.ID) as NotFoundResult;

            // Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.AreEqual(404, result.StatusCode);
        }
Ejemplo n.º 29
0
        public void Technician_Update_Post_Valid_Data_Should_Pass()
        {
            // Arrange
            var myController = new TechnicianController();
            var myData       = BiliWeb.Backend.TechnicianBackend.Instance.Index().FirstOrDefault();
            var resultData   = new TechnicianModel(myData)
            {
                FirstName = "New",
                ID        = myData.ID
            };

            // Act
            var result = myController.Update(resultData) as RedirectToActionResult;

            //Reset
            BiliWeb.Backend.DataSourceBackend.Instance.Reset();

            // Assert
            Assert.AreEqual("Index", result.ActionName);
        }
Ejemplo n.º 30
0
        void LoadTechnicians()
        {
            lstTechnicians.Items.Clear();
            List <Technician> technicians = new TechnicianController().Read();
            ServiceRequest    currentRequest;
            List <Service>    skills;
            string            skillSet;
            ListViewItem      lst;

            foreach (Technician i in technicians)
            {
                skills   = i.Skills;
                skillSet = "";

                foreach (Service j in skills)
                {
                    skillSet += j.Description + ", ";
                }

                skillSet = genLogic.TruncList(skillSet);

                lst = new ListViewItem(
                    new string[]
                {
                    i.Name, i.ContactNum, i.EmploymentStatus, skillSet
                });

                if (i.EmploymentStatus == "Working")
                {
                    currentRequest = sdLogic.GetServiceRequest(i);
                    lst.SubItems.Add(currentRequest.Id.ToString());
                }

                lst.Tag = i;

                lstTechnicians.Items.Add(lst);
            }
        }
Ejemplo n.º 31
0
 public static IController<TechnicianDto> GetTechnicianController()
 {
     if (TechnicianController == null)
     {
         TechnicianController = new TechnicianController();
     }
     return TechnicianController;
 }