public IActionResult Index()
 {
     if (Identity != null)
     {
         var user = usersService.GetUserByUsername(Identity.Username);
         Model["Username"] = user?.Username;
         Model["UserId"]   = user?.Id;
         var packages = new List <PackageViewModel>();
         if (Identity.Roles.Contains(Role.Admin.ToString()))
         {
             packages = packagesService.GetAllPackages()
                        .Select(p => new PackageViewModel()
             {
                 Id          = p.Id,
                 Description = p.Description,
                 Status      = p.Status.ToString()
             }).ToList();
             PopulatePackageLists(packages);
             return(View("Index-Admin"));
         }
         if (Identity.Roles.Contains(Role.User.ToString()))
         {
             packages = packagesService.GetAllPackagesForUser(user?.Username)
                        .Select(p => new PackageViewModel()
             {
                 Id          = p.Id,
                 Description = p.Description,
                 Status      = p.Status.ToString()
             }).ToList();
             PopulatePackageLists(packages);
             return(View("Index-User"));
         }
     }
     return(View());
 }
        public async Task <HttpResponseMessage> GetAllPackages()
        {
            httpResponseMessage = new HttpResponseMessage();
            var response = await _IPackagesService.GetAllPackages();

            response.Message    = CustomErrorMessages.INTERNAL_ERROR;
            httpResponseMessage = Request.CreateResponse(HttpStatusCode.OK, response);
            return(httpResponseMessage);
        }
        public IActionResult Pending()
        {
            var pendingPackages = packagesService.GetAllPackages()
                                  .Where(p => p.Status == Status.Pending)
                                  .ToArray();
            var packagesTable = new List <PackagePendingViewModel>();

            for (int i = 0; i < pendingPackages.Length; i++)
            {
                var package      = pendingPackages[i];
                var packageModel = new PackagePendingViewModel()
                {
                    Number          = i + 1,
                    Id              = package.Id,
                    Description     = package.Description,
                    Weight          = $"{package.Weight:G3} KG",
                    ShippingAddress = package.ShippingAddress,
                    Recipient       = package.Recipient.Username
                };
                packagesTable.Add(packageModel);
            }
            Model["Packages"] = packagesTable;
            return(View());
        }
Ejemplo n.º 4
0
 public IEnumerable <PackageGetModel> GetAllPackages(string filter)
 {
     return(packagesService.GetAllPackages(filter));
 }