Ejemplo n.º 1
0
        // GET: Assignment
        public async Task <ActionResult> Index()
        {
            HttpResponseMessage msg = await ClientEmployee.GetAsync(URLemployees);

            var employees = new List <Employee>();

            if (msg.IsSuccessStatusCode)
            {
                var data = msg.Content.ReadAsStringAsync().Result;
                employees = JsonConvert.DeserializeObject <List <Employee> >(data); //employee data
            }

            AssetTypeManager TypeMng = new AssetTypeManager();
            var Types = TypeMng.GetAssetTypes(); //get asset types

            AssetManager AssetMng = new AssetManager();
            var          Assets   = AssetMng.GetAssets(); //get all assets

            var UnassignedEmployee = employees            //Collection of employee who haven't been assigned any asset
                                     .Where(o => Assets.All(a => o.EmployeeNumber != a.AssignedTo))
                                     .Select(o => new Employee
            {
                Id             = o.Id,
                EmployeeNumber = o.EmployeeNumber,
                FirstName      = o.FirstName,
                LastName       = o.LastName,
                Position       = o.Position,
                Phone          = o.Phone,
                DepartmentId   = o.DepartmentId
            }).ToList();

            var assetTypeList = new List <SelectListItem>();

            foreach (var type in Types)
            {
                assetTypeList.Add(new SelectListItem {
                    Value = type.Id.ToString(), Text = type.Name
                });
            }

            var employeesList = UnassignedEmployee.Select(o => new SelectListItem {
                Value = o.EmployeeNumber, Text = $"{o.FirstName} {o.LastName} (Phone: {o.Phone})"
            });

            AssignmentViewModel ViewModel = new AssignmentViewModel();

            ViewModel.AssetType           = assetTypeList;
            ViewModel.UnassignedEmployees = employeesList;

            return(View(ViewModel));
        }
Ejemplo n.º 2
0
        public async Task <JsonResult> AssetsByEmployee(string name) //string name comes in from Jquery/Ajax method
        {
            HttpResponseMessage msgEmployee = await ClientEmployee.GetAsync(URLemployees);

            var employees = new List <Employee>();

            if (msgEmployee.IsSuccessStatusCode)
            {
                var data = msgEmployee.Content.ReadAsStringAsync().Result;
                employees = JsonConvert.DeserializeObject <List <Employee> >(data);
            }

            HttpResponseMessage msgDepartment = await ClientDepartment.GetAsync(URLdepartments);

            var departments = new List <Department>();

            if (msgDepartment.IsSuccessStatusCode)
            {
                var data = msgDepartment.Content.ReadAsStringAsync().Result;
                departments = JsonConvert.DeserializeObject <List <Department> >(data);
            }

            AssetManager     manager     = new AssetManager();
            AssetTypeManager typeManager = new AssetTypeManager();

            var assets = manager.GetAssets();
            var types  = typeManager.GetAssetTypes();

            var AssetsObjectModels = (from a in assets
                                      join t in types
                                      on a.AssetTypeId equals t.Id
                                      join e in employees
                                      on a.AssignedTo equals e.EmployeeNumber
                                      join d in departments
                                      on e.DepartmentId equals d.Id
                                      where a.AssignedTo == name
                                      select new HomePagePartialViewModel
            {
                AssetDescription = a.Description,
                AssetTypeName = t.Name,
                TagNumber = a.TagNumber,
                SerialNumber = a.SerialNumber,
                EmployeeName = $"{e.FirstName} {e.LastName}",
                DepartmentLocation = d.Location
            }).ToList();

            //return Json collection for ajax method (Index view <script> section)
            return(Json(AssetsObjectModels, "text/json", JsonRequestBehavior.AllowGet));
        }
Ejemplo n.º 3
0
        public async Task <PartialViewResult> AssignedAssets()
        {
            HttpResponseMessage msgEmployee = await ClientEmployee.GetAsync(URLemployees);

            var employees = new List <Employee>();

            if (msgEmployee.IsSuccessStatusCode)
            {
                var data = msgEmployee.Content.ReadAsStringAsync().Result;
                employees = JsonConvert.DeserializeObject <List <Employee> >(data);
            }

            HttpResponseMessage msgDepartment = await ClientDepartment.GetAsync(URLdepartments);

            var departments = new List <Department>();

            if (msgDepartment.IsSuccessStatusCode)
            {
                var data = msgDepartment.Content.ReadAsStringAsync().Result;
                departments = JsonConvert.DeserializeObject <List <Department> >(data);
            }

            AssetManager     manager     = new AssetManager();
            AssetTypeManager typeManager = new AssetTypeManager();

            var assets = manager.GetAssets();
            var types  = typeManager.GetAssetTypes();

            var AssetsObjectModels = (from a in assets
                                      join t in types
                                      on a.AssetTypeId equals t.Id
                                      join e in employees
                                      on a.AssignedTo equals e.EmployeeNumber
                                      join d in departments
                                      on e.DepartmentId equals d.Id
                                      where a.AssignedTo != null
                                      select new HomePagePartialViewModel
            {
                AssetDescription = a.Description,
                AssetTypeName = t.Name,
                TagNumber = a.TagNumber,
                SerialNumber = a.SerialNumber,
                EmployeeName = $"{e.FirstName} {e.LastName}",
                DepartmentLocation = d.Location
            }).ToList();

            return(PartialView("_AssignedAssets", AssetsObjectModels));
        }
 public List <AssetType> GetAssetTypes()
 {
     try
     {
         var objList = new List <AssetType>();
         objList = _assetTypeManager.GetAssetTypes();
         if (objList == null)
         {
             return(new List <AssetType>());
         }
         return(objList);
     }
     catch (Exception ex)
     {
         ErrorManager.LogApplicationError(ex.StackTrace, ex.Source, ex.Message);
         return(new List <AssetType>());
     }
 }
Ejemplo n.º 5
0
        public async Task <ActionResult> Index()
        {
            HttpResponseMessage msg = await ClientEmployee.GetAsync(URLemployees);

            var employees = new List <Employee>();

            if (msg.IsSuccessStatusCode)
            {
                var data = msg.Content.ReadAsStringAsync().Result;
                employees = JsonConvert.DeserializeObject <List <Employee> >(data);
            }

            var mainViewModel = new HomePageFilterOptionsViewModel();
            var employeesList = new List <SelectListItem>();
            var assetTypeList = new List <SelectListItem>();

            AssetTypeManager manager = new AssetTypeManager();
            var AssetTypes           = manager.GetAssetTypes();

            foreach (var em in employees)
            {
                //for employee drop-down list
                employeesList.Add(new SelectListItem {
                    Value = em.EmployeeNumber.ToString(), Text = $"{em.FirstName} {em.LastName}"
                });
            }

            foreach (var type in AssetTypes)
            {
                //for asset type drop-down list
                assetTypeList.Add(new SelectListItem {
                    Value = type.Id.ToString(), Text = type.Name
                });
            }

            mainViewModel.AssetType = assetTypeList;
            mainViewModel.Employees = employeesList;

            return(View(mainViewModel));
        }
Ejemplo n.º 6
0
        public PartialViewResult UnassignedAssets()
        {
            AssetManager     manager     = new AssetManager();
            AssetTypeManager typeManager = new AssetTypeManager();

            var assets = manager.GetAssets();
            var types  = typeManager.GetAssetTypes();

            var AssetsObjectModels = (from a in assets
                                      join t in types
                                      on a.AssetTypeId equals t.Id
                                      where a.AssignedTo == null
                                      select new HomePagePartialViewModel
            {
                AssetDescription = a.Description,
                AssetTypeName = t.Name,
                TagNumber = a.TagNumber,
                SerialNumber = a.SerialNumber,
                EmployeeName = "-",
                DepartmentLocation = "-"
            }).ToList();

            return(PartialView("_UnassignedAssets", AssetsObjectModels));
        }
        // GET: NewAsset
        public async Task <ActionResult> Index()
        {
            HttpResponseMessage msg = await ClientEmployee.GetAsync(URLemployees);

            var employees = new List <Employee>();

            if (msg.IsSuccessStatusCode)
            {
                var data = msg.Content.ReadAsStringAsync().Result;
                employees = JsonConvert.DeserializeObject <List <Employee> >(data);
            }

            AssetTypeManager    TypeMng         = new AssetTypeManager();
            ManufacturerManager ManufacturerMng = new ManufacturerManager();
            ModelManager        ModelMng        = new ModelManager();
            var Types        = TypeMng.GetAssetTypes();
            var Manufaturers = ManufacturerMng.GetManufacturers();
            var Models       = ModelMng.GetModels();

            var TypesList         = new List <SelectListItem>();
            var ManufacturersList = new List <SelectListItem>();
            var ModelsList        = new List <SelectListItem>();
            var EmployeesList     = new List <SelectListItem>();

            foreach (var type in Types)
            {
                TypesList.Add(new SelectListItem {
                    Value = type.Id.ToString(), Text = type.Name
                });
            }

            foreach (var manufacturer in Manufaturers)
            {
                ManufacturersList.Add(new SelectListItem {
                    Value = manufacturer.Id.ToString(), Text = manufacturer.Name
                });
            }

            foreach (var model in Models)
            {
                ModelsList.Add(new SelectListItem {
                    Value = model.Id.ToString(), Text = model.Name
                });
            }

            foreach (var employee in employees)
            {
                //EmployeeNumber is used instead of ID
                EmployeesList.Add(new SelectListItem {
                    Value = employee.EmployeeNumber, Text = $"{employee.FirstName} {employee.LastName}"
                });
            }

            NewAssetViewModel ViewModel = new NewAssetViewModel();

            ViewModel.AssetType    = TypesList;
            ViewModel.Manufacturer = ManufacturersList;
            ViewModel.Model        = ModelsList;
            ViewModel.Employees    = EmployeesList;

            return(View(ViewModel));
        }