Example #1
0
        private void SearchByUserCommandAction(object obj)
        {
            var user = UserCollection.FirstOrDefault(u => u.Name.Equals(SelectedUser.Name));

            if (user != null)
            {
                var hardwares = AllHardwares.Where(hw => hw.ComputerUserId == user.Id).ToList();
                UserReportCollection.Clear();
                UserReportCollection.AddRange(hardwares.Select(hw => new HardwareReport
                {
                    Category         = hw.Category.ToString(),
                    SerialNo         = hw.SerialNo,
                    HardwareTagNo    = hw.HardwareTagNo,
                    BrandName        = hw.BrandName,
                    Model            = hw.Model,
                    HardwareSerialNo = hw.HardwareSerialNo,
                    ReceiveDate      = hw.ReceiveDate.HasValue ? hw.ReceiveDate.Value.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture) : string.Empty,
                    ComputerUserName = user.Name,
                    Comments         = hw.Comments
                }));
            }
        }
Example #2
0
        private async void UpdateReport()
        {
            try
            {
                var hardwares = await DbHandler.Instance.GetHardwareCollection();

                if (hardwares != null && hardwares.Count > 0)
                {
                    AllHardwares.Clear();
                    AllHardwares.AddRange(hardwares);
                }
                var users = await DbHandler.Instance.GetUserCollection();

                if (users != null && users.Count > 0)
                {
                    //var reports = from user in users
                    //              group user by user.Name into g
                    //              select new UserReport
                    //              {
                    //                  UserName = g.Key,
                    //                  Designation = g.First().Designation,
                    //                  Department = g.First().Department,
                    //                  Hardwares = hardwares.Where(h => h.ComputerUserId.HasValue && h.ComputerUserId.Value == g.First())
                    //              };
                    UserCollection.Clear();
                    UserCollection.AddRange(users);
                }

                var report = from hardware in hardwares
                             group hardware by hardware.Model into g
                             select new HardwareCountReport
                {
                    Category = g.First().Category.ToString(),
                    Model    = g.Key,
                    Count    = g.Count().ToString()
                };
                HardwareCollection.Clear();
                HardwareCollection.AddRange(report);
                ActiveHardwareCollection.Clear();
                ActiveHardwareCollection.AddRange(hardwares.Where(h => h.Status == HardwareStatus.RUNNING)
                                                  .Select(hw => new HardwareReport
                {
                    Category         = hw.Category.ToString(),
                    SerialNo         = hw.SerialNo,
                    HardwareTagNo    = hw.HardwareTagNo,
                    BrandName        = hw.BrandName,
                    Model            = hw.Model,
                    HardwareSerialNo = hw.HardwareSerialNo,
                    ReceiveDate      = hw.ReceiveDate.HasValue ? hw.ReceiveDate.Value.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture) : string.Empty,
                    ComputerUserName = users != null && users.Any(u => hw.ComputerUserId.HasValue && hw.ComputerUserId.Value == u.Id)
                                                        ? users.FirstOrDefault(u => hw.ComputerUserId.Value == u.Id).Name : string.Empty,
                    Comments = hw.Comments
                }));
                InActiveHardwareCollection.Clear();
                InActiveHardwareCollection.AddRange(hardwares.Where(h => h.Status == HardwareStatus.UN_USED)
                                                    .Select(hw => new HardwareReport
                {
                    Category         = hw.Category.ToString(),
                    SerialNo         = hw.SerialNo,
                    HardwareTagNo    = hw.HardwareTagNo,
                    BrandName        = hw.BrandName,
                    Model            = hw.Model,
                    HardwareSerialNo = hw.HardwareSerialNo,
                    ReceiveDate      = hw.ReceiveDate.HasValue ? hw.ReceiveDate.Value.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture) : string.Empty,
                    ComputerUserName = users != null && users.Any(u => hw.ComputerUserId.HasValue && hw.ComputerUserId.Value == u.Id)
                                                        ? users.FirstOrDefault(u => hw.ComputerUserId.Value == u.Id).Name : string.Empty,
                    Comments = hw.Comments
                }));
                InRepairHardwareCollection.Clear();
                InRepairHardwareCollection.AddRange(hardwares.Where(h => h.Status == HardwareStatus.REPAIR_TO_ITD)
                                                    .Select(hw => new HardwareReport
                {
                    Category         = hw.Category.ToString(),
                    SerialNo         = hw.SerialNo,
                    HardwareTagNo    = hw.HardwareTagNo,
                    BrandName        = hw.BrandName,
                    Model            = hw.Model,
                    HardwareSerialNo = hw.HardwareSerialNo,
                    ReceiveDate      = hw.ReceiveDate.HasValue ? hw.ReceiveDate.Value.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture) : string.Empty,
                    ComputerUserName = users != null && users.Any(u => hw.ComputerUserId.HasValue && hw.ComputerUserId.Value == u.Id)
                                                        ? users.FirstOrDefault(u => hw.ComputerUserId.Value == u.Id).Name : string.Empty,
                    Comments = hw.Comments
                }));
                UserReportCollection.Clear();
                UserReportCollection.AddRange(hardwares.Select(hw => new HardwareReport
                {
                    Category         = hw.Category.ToString(),
                    SerialNo         = hw.SerialNo,
                    HardwareTagNo    = hw.HardwareTagNo,
                    BrandName        = hw.BrandName,
                    Model            = hw.Model,
                    HardwareSerialNo = hw.HardwareSerialNo,
                    ReceiveDate      = hw.ReceiveDate.HasValue ? hw.ReceiveDate.Value.ToString("dd.MM.yyyy", CultureInfo.InvariantCulture) : string.Empty,
                    ComputerUserName = users != null && users.Any(u => hw.ComputerUserId.HasValue && hw.ComputerUserId.Value == u.Id)
                ? users.FirstOrDefault(u => hw.ComputerUserId.Value == u.Id).Name : string.Empty,
                    Comments = hw.Comments
                }));
            }
            catch (Exception x)
            {
                Log.Error("Error: ", x);
            }
        }