예제 #1
0
        public async Task <IActionResult> Details(int?id)
        {
            _dbReadService.IncludeEntityNavigation <Request>();
            if (id == null)
            {
                return(NotFound());
            }

            _dbReadService.IncludeEntityNavigation <Request>();

            var note = await _dbReadService.GetSingleRecordAsync <Note>(s => s.Id.Equals(id));

            if (note == null)
            {
                return(NotFound());
            }

            var productRelation = await _dbReadService.GetSingleRecordAsync <Request>(s => s.Id.Equals(RequestDto.RequestId));

            if (productRelation != null)
            {
                ViewData["ProductId"] = productRelation.ProductId;
            }

            return(View(note));
        }
예제 #2
0
        public async Task <IActionResult> Details(int?id)
        {
            if (!id.HasValue)
            {
                return(NotFound());
            }

            _dbReadService.IncludeEntityNavigation <Product>();
            _dbReadService.IncludeEntityNavigation <Store>();
            _dbReadService.IncludeEntityNavigation <RequestType>();
            _dbReadService.IncludeEntityNavigation <StatusType>();
            _dbReadService.IncludeEntityNavigation <Supplier>();

            var request = await _dbReadService.GetSingleRecordAsync <Request>(s => s.Id.Equals(id));

            if (request == null)
            {
                return(NotFound());
            }

            RequestDto.RequestId          = request.Id;
            RequestDto.RequestDescription = request.RequestDescription;

            var notes = await _dbReadService.GetAllRecordsAsync <Note>(s => s.RequestId.Equals(id));

            if (notes != null)
            {
                ViewData["NoteId"] = notes;
            }

            return(View(request));
        }
예제 #3
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var supplier = await _dbReadService.GetSingleRecordAsync <Supplier>(s => s.Id.Equals(id));

            if (supplier == null)
            {
                return(NotFound());
            }

            return(View(supplier));
        }
예제 #4
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var note = await _dbRead.GetSingleRecordAsync <Note>(n => n.Id.Equals(id));

            if (note == null)
            {
                return(NotFound());
            }

            return(View(note));
        }
예제 #5
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var store = await _dbReadService.GetSingleRecordAsync <Store>(u => u.Id.Equals(id));

            if (store == null)
            {
                return(NotFound());
            }

            return(View(store));
        }
예제 #6
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var containerSizeType = await _dbReadService.GetSingleRecordAsync <ContainerSizeType>(u => u.Id.Equals(id));

            if (containerSizeType == null)
            {
                return(NotFound());
            }

            return(View(containerSizeType));
        }
예제 #7
0
        public async Task <IActionResult> Index(int?Id)
        {
            if (Id != null)
            {
                noteId = (int)Id;
            }

            _dbRead.IncludeEntityNavigation <Note>();
            var noteList = await _dbRead.GetAllRecordsAsync <NoteListItem>(n => n.NoteId.Equals(Id));

            var originalNote = await _dbRead.GetSingleRecordAsync <Note>(n => n.Id.Equals(Id));

            ViewData["NoteTitle"] = !string.IsNullOrEmpty(originalNote.Title);
            ViewData["NoteText"]  = !string.IsNullOrEmpty(originalNote.Text);
            ViewData["NoteId"]    = originalNote.Id;
            return(View(noteList));
        }
예제 #8
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            _dbRead.IncludeEntityNavigation <Family>();
            var userProfile = await _dbRead.GetSingleRecordAsync <UserProfile>(u => u.Id.Equals(id));

            if (userProfile == null)
            {
                return(NotFound());
            }

            return(View(userProfile));
        }
예제 #9
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            _dbReadService.IncludeEntityNavigation <Supplier>();
            var user = await _dbReadService.GetSingleRecordAsync <User>(u => u.Id.Equals(id));

            if (user == null)
            {
                return(NotFound());
            }

            return(View(user));
        }
예제 #10
0
        private void SendRequestCompletedToStoreManager(Request request)
        {
            var adminUrl        = _configuration.GetValue <string>("AdminWebsite:BaseUrl");
            var requestEditPath = string.Format(_configuration.GetValue <string>("AdminWebsite:RequestEdit"), request.Id);
            var subject         = $"Vandivier Product Request Complete: {request.RequestDescription}";
            var store           = _dbReadService.GetSingleRecordAsync <Store>(s => s.Id.Equals(request.StoreId)).Result;
            var email           = store.StoreSupervisorEmail;

            var body = $"Request {request.RequestDescription} has been completed! <br /><br />" +
                       $"View the request <a href='{adminUrl}{requestEditPath}'>here</a> <br /><br />" +
                       $"Thanks, <br /> Vandivier Management";

            if (email != null)
            {
                Helper.Send(_configuration, subject, body, new List <string>()
                {
                    email
                });
            }
        }
예제 #11
0
        public async Task <IActionResult> Index()
        {
            SessionData.PristineSession();

            if (!_signInManager.IsSignedIn(User))
            {
                return(RedirectToPage("/Account/Login", new { Area = "Identity" }));
            }

            // UserData static class for state
            // Session data persisted on app entry
            UserData.UserId = _signInManager.UserManager.GetUserId(User);
            var userProfile = await _dbRead.GetSingleRecordAsync <UserProfile>(u => u.UserId.Equals(UserData.UserId));

            UserData.UserProfileId = userProfile.Id;

            Family family = new Family();

            if (userProfile.FamilyId != null)
            {
                family = await _dbRead.GetSingleRecordAsync <Family>(f => f.Id.Equals(userProfile.FamilyId));

                UserData.FamilyId = family.Id;
                UserData.FamilyProfileComplete = true;
            }
            else
            {
                UserData.FamilyProfileComplete = false;
            }

            if (userProfile.LastName == null || userProfile.FirstName == null || userProfile.Email == null)
            {
                UserData.UserProfileComplete = false;
            }
            else
            {
                UserData.UserProfileComplete = true;
            }
            return(View());
        }
예제 #12
0
        public async Task <FileContentResult> RenderPhoto(string imageType, int id)
        {
            byte[] imageByteArray = null;
            string contentType    = string.Empty;

            if (imageType != null && imageType == Constants.RenderFamilyImage)
            {
                var photo = await _dbRead.GetSingleRecordAsync <Family>(p => p.Id.Equals(id));

                imageByteArray = photo.Picture;
                //var image = GetImageFromBytes(photo.Picture);
                //if (image.Height > 325)
                //{
                //	imageByteArray = ResizeOnRenderImage(image, new Size(325, 325), true);
                //}

                contentType = photo.PictureContentType;
            }

            if (imageType != null && imageType == Constants.RenderProfileImage)
            {
                var photo = await _dbRead.GetSingleRecordAsync <UserProfile>(p => p.Id.Equals(id));

                imageByteArray = photo.Picture;
                contentType    = photo.PictureContentType;
            }

            if (imageType != null && imageType == Constants.RenderMediaImage)
            {
                var photo = await _dbRead.GetSingleRecordAsync <Media>(p => p.Id.Equals(id));

                imageByteArray = photo.Image;
                contentType    = photo.ImageContentType;
            }

            return(File(imageByteArray, contentType));
        }
예제 #13
0
        public async Task <IActionResult> CreateProduct(int id, [Bind("Id,ProductName,ProductDescription,Upccode,ProductLocation,ProductCost,ProductPrice,SuggestedPrice,PackageSize,ContainerSizeTypeId,ContainerTypeId,OrderWeek,CategoryId,CreatedOn,CreatedBy,UpdatedOn,UpdatedBy,UnitsPerCase,SupplierData")] Product product)
        {
            var requestId = id;

            product.Id = 0;

            if (ModelState.IsValid)
            {
                if (User != null)
                {
                    var userFullName = User.Claims.FirstOrDefault(x => x.Type == $"name").Value;
                    product.CreatedBy = userFullName;
                }

                product.CreatedOn = DateTime.Now;

                _dbWriteService.Add(product);
                await _dbWriteService.SaveChangesAsync();

                _dbReadService.IncludeEntityNavigation <Request>();
                var request = await _dbReadService.GetSingleRecordAsync <Request>(s => s.Id.Equals(requestId));

                request.ProductId = product.Id;
                _dbWriteService.Update(request);
                await _dbWriteService.SaveChangesAsync();

                RequestEmail requestEmail = new RequestEmail(_configuration, _dbReadService);
                requestEmail.SendRequestToStoreManager(request);

                RequestLogHelper logHelper = new RequestLogHelper();
                logHelper.LogRequestChange(request, _context, RequestLogConstants.RequestAddByStaff);
            }
            ViewData["CategoryId"] = new SelectList(_context.Category, "Id", "CategoryName", product.CategoryId);
            ViewData["OrderWeeks"] = new SelectList(new Dictionary <int, int>()
            {
                { 1, 1 }, { 2, 2 }, { 3, 3 }, { 4, 4 }, { 5, 5 }, { 6, 6 }, { 7, 7 }, { 8, 8 }, { 9, 9 }
            }, "Key", "Value", product.OrderWeek);

            return(RedirectToAction("Details", "Requests", new { id = requestId }));
        }
예제 #14
0
        public async Task <IActionResult> Details(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var family = await _dbRead.GetSingleRecordAsync <Family>(f => f.Id.Equals(id));

            if (family == null)
            {
                return(NotFound());
            }

            UserData.FamilyMembers = await _dbRead.GetAllRecordsAsync <UserProfile>(m => !m.FamilyId.Equals(null) && m.FamilyId.Equals(UserData.FamilyId));

            UserData.FamName = family.FamilyLastName;

            return(View(family));
        }
        public async Task <IActionResult> Index(string sort, string search)
        {
            RequestDto.RequestDescription = string.Empty;

            if (search != null)
            {
                Regex rgx = new Regex("[^a-zA-Z0-9 -]");
                search = rgx.Replace(search, "").ToUpper();
            }


            // Intercept sort data
            ViewData["RequestIdParam"]          = sort == "RequestId" ? "requestId_desc" : "RequestId";
            ViewData["RequestDescriptionParam"] = sort == "RequestDescription" ? "requestDescription_desc" : "RequestDescription";
            ViewData["ChangeNoteParam"]         = sort == "ChangeNote" ? "changeNote_desc" : "ChangeNote";
            ViewData["StoreNameParam"]          = sort == "StoreName" ? "store_desc" : "StoreName";
            ViewData["StatusTypeParam"]         = sort == "StatusTypeName" ? "statusTypeName_desc" : "StatusTypeName";
            ViewData["RequestTypeParam"]        = sort == "RequestTypeParam" ? "requestType_desc" : "RequestTypeParam";
            ViewData["ProductNameParam"]        = sort == "ProductNameParam" ? "productName_desc" : "ProductNameParam";
            ViewData["SupplierNameParam"]       = sort == "SupplierNameParam" ? "supplierName_desc" : "SupplierNameParam";
            ViewData["RequestDateParam"]        = sort == "RequestDateParam" ? "requestDate_desc" : "RequestDateParam";
            ViewData["RequesterNameParam"]      = sort == "RequesterNameParam" ? "requesterName_desc" : "RequesterNameParam";
            ViewData["CreatedOnParam"]          = sort == "CreatedOnParam" ? "createdOn_desc" : "CreatedOnParam";
            ViewData["CreatedByParam"]          = sort == "CreatedByParam" ? "createdBy_desc" : "CreatedByParam";
            ViewData["RequestLogIdParam"]       = sort == "RequestLogIdParam" ? "requestLogId_Desc" : "RequestLogIdParam";

            // Intercept search term
            ViewData["FilterParam"] = search;

            // Map log data to view model with readable names
            IEnumerable <RequestLog> logs = await _dbReadService.GetAllRecordsAsync <RequestLog>();

            List <RequestLogFull> requestLogFullList = new List <RequestLogFull>();

            foreach (var item in logs)
            {
                RequestLogFull requestLogFull = null;
                requestLogFull = new RequestLogFull();

                requestLogFull.RequestId             = item.RequestId;
                requestLogFull.ProductId             = item.ProductId;
                requestLogFull.ChangeNote            = item.ChangeNote;
                requestLogFull.RequestDescription    = item.RequestDescription;
                requestLogFull.RequestTypeId         = item.RequestTypeId;
                requestLogFull.StatusTypeId          = item.StatusTypeId;
                requestLogFull.StoreId               = item.StoreId;
                requestLogFull.SupplierId            = item.SupplierId;
                requestLogFull.UserId                = item.UserId;
                requestLogFull.OriginalCreatedOnDate = item.OriginalCreatedOnDate;
                requestLogFull.OriginalCreatedByUser = item.OriginalCreatedByUser;
                requestLogFull.CreatedOn             = item.CreatedOn;
                requestLogFull.CreatedBy             = item.CreatedBy;
                requestLogFull.Id = item.Id;

                var tempProduct = await _dbReadService.GetSingleRecordAsync <Product>(p => item.ProductId != null && p.Id.Equals(item.ProductId));

                if (tempProduct?.ProductName != null)
                {
                    requestLogFull.ProductName = tempProduct.ProductName;
                }

                var tempSupplier = await _dbReadService.GetSingleRecordAsync <Supplier>(p => item.SupplierId != null && p.Id.Equals(item.SupplierId));

                if (tempSupplier?.SupplierName != null)
                {
                    requestLogFull.SupplierName = tempSupplier.SupplierName;
                }

                var tempStore = await _dbReadService.GetSingleRecordAsync <Store>(p => item.StoreId != null && p.Id.Equals(item.StoreId));

                if (tempStore?.StoreName != null)
                {
                    requestLogFull.StoreName = tempStore.StoreName;
                }

                var tempStatus = await _dbReadService.GetSingleRecordAsync <StatusType>(p => item.StatusTypeId != null && p.Id.Equals(item.StatusTypeId));

                if (tempStatus?.StatusTypeName != null)
                {
                    requestLogFull.StatusTypeName = tempStatus.StatusTypeName;
                }

                var tempRequestType = await _dbReadService.GetSingleRecordAsync <RequestType>(p => p.Id.Equals(item.RequestTypeId));

                if (tempRequestType?.RequestTypeName != null)
                {
                    requestLogFull.RequestTypeName = tempRequestType.RequestTypeName;
                }

                requestLogFullList.Add(requestLogFull);
            }

            var requestFullEnumerable = requestLogFullList.AsEnumerable();

            // Execute the search term filter
            if (!String.IsNullOrEmpty(search))
            {
                requestFullEnumerable = requestLogFullList.Where(s => s.RequestDescription != null && s.RequestDescription.ToUpper().Contains(search) ||
                                                                 s.ChangeNote != null && s.ChangeNote.ToUpper().Contains(search)

                                                                 || s.StatusTypeName != null && s.StatusTypeName.ToUpper().Contains(search)

                                                                 || s.RequestTypeName != null && s.RequestTypeName.ToUpper().Contains(search)

                                                                 || s.SupplierName != null && s.SupplierName.ToUpper().Contains(search)

                                                                 || s.StoreName != null && s.StoreName.ToUpper().Contains(search)

                                                                 || s.ProductName != null && s.ProductName.ToUpper().Contains(search)

                                                                 || s.UserId != null && s.UserId.ToUpper().Contains(search)

                                                                 || s.RequestId != null && s.RequestId.ToString().Contains(search)

                                                                 || s.CreatedBy != null && s.CreatedBy.ToUpper().Contains(search)

                                                                 || s.OriginalCreatedByUser != null && s.OriginalCreatedByUser.ToUpper().Contains(search).Equals(null)

                                                                 || s.StatusTypeName != null && s.StatusTypeName.ToUpper().Contains(search));
            }

            // Execute sorting columns
            switch (sort)
            {
            case "requestId_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestId != null).OrderByDescending(s => s.RequestId.ToString()));
                }
                break;

            case "RequestId":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestId != null).OrderBy(s => s.RequestId.ToString()));
                }
                break;

            case "requestDescription_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestDescription != null).OrderByDescending(s => s.RequestDescription.ToString()));
                }
                break;

            case "RequestDescription":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestDescription != null).OrderBy(s => s.RequestDescription.ToString()));
                }
                break;

            case "changeNote_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.ChangeNote != null).OrderByDescending(s => s.ChangeNote.ToString()));
                }
                break;

            case "ChangeNote":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.ChangeNote != null).OrderBy(s => s.ChangeNote.ToString()));
                }
                break;

            case "store_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.StoreName != null).OrderByDescending(s => s.StoreName.ToString()));
                }
                break;

            case "StoreName":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.StoreName != null).OrderBy(s => s.StoreName.ToString()));
                }
                break;

            case "statusTypeName_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.StatusTypeName != null).OrderByDescending(s => s.StatusTypeName.ToString()));
                }
                break;

            case "StatusTypeName":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.StatusTypeName != null).OrderBy(s => s.StatusTypeName.ToString()));
                }
                break;

            case "requestType_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestTypeName != null).OrderByDescending(s => s.RequestTypeName.ToString()));
                }
                break;

            case "RequestTypeParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestTypeName != null).OrderBy(s => s.RequestTypeName.ToString()));
                }
                break;

            case "productName_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.ProductName != null).OrderByDescending(s => s.ProductName.ToString()));
                }
                break;

            case "ProductNameParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.ProductName != null).OrderBy(s => s.ProductName.ToString()));
                }
                break;

            case "supplierName_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.SupplierName != null).OrderByDescending(s => s.SupplierName.ToString()));
                }
                break;

            case "SupplierNameParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.SupplierName != null).OrderBy(s => s.SupplierName.ToString()));
                }
                break;

            case "requestDate_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.OriginalCreatedOnDate != null).OrderByDescending(s => s.OriginalCreatedOnDate.ToString()));
                }
                break;

            case "RequestDateParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.OriginalCreatedOnDate != null).OrderBy(s => s.OriginalCreatedOnDate.ToString()));
                }
                break;

            case "requesterName_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.OriginalCreatedByUser != null).OrderByDescending(s => s.OriginalCreatedByUser.ToString()));
                }
                break;

            case "RequesterNameParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.OriginalCreatedByUser != null).OrderBy(s => s.OriginalCreatedByUser.ToString()));
                }
                break;

            case "createdOn_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.CreatedOn != null).OrderByDescending(s => s.CreatedOn.ToString()));
                }
                break;

            case "CreatedOnParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.CreatedOn != null).OrderBy(s => s.CreatedOn.ToString()));
                }
                break;

            case "createdBy_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.CreatedBy != null).OrderByDescending(s => s.CreatedBy.ToString()));
                }
                break;

            case "CreatedByParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.CreatedBy != null).OrderBy(s => s.CreatedBy.ToString()));
                }
                break;

            case "requestLogId_desc":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestId != null).OrderByDescending(s => s.Id.ToString()));
                }
                break;

            case "RequestLogIdParam":
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.RequestId != null).OrderBy(s => int.Parse(s.Id.ToString())));
                }
                break;

            default:
                if (requestFullEnumerable != null)
                {
                    requestFullEnumerable =
                        new List <RequestLogFull>(requestFullEnumerable.Where(s => s.CreatedOn != null).OrderByDescending(s => s.CreatedOn.ToString()));
                }
                break;
            }

            return(View(requestFullEnumerable.ToList()));
        }
예제 #16
0
        public async Task <IActionResult> Index(int?id)
        {
            ViewData["ProductId"] = id;

            var product = await _dbReadService.GetSingleRecordAsync <Product>(s => s.Id.Equals(id));

            ViewData["ProductName"] = product.ProductName;
            if (product.ProductPrice != null)
            {
                ViewData["ProductPrice"] = Math.Round((decimal)product.ProductPrice, 2);
            }

            _dbReadService.IncludeEntityNavigation <ProductStoreSpecific, Store>();
            var productStoreSpecific = await _dbReadService.GetAllRecordsAsync <ProductStoreSpecific>(s => s.ProductId.Equals(id));

            productStoreSpecific.Reverse();

            return(View(productStoreSpecific));
        }
예제 #17
0
        public async Task <IActionResult> Index(string search)
        {
            _dbReadService.IncludeEntityNavigation <Product>();
            _dbReadService.IncludeEntityNavigation <Store>();
            _dbReadService.IncludeEntityNavigation <RequestType>();
            _dbReadService.IncludeEntityNavigation <StatusType>();
            _dbReadService.IncludeEntityNavigation <Supplier>();

            if (search != null)
            {
                Regex rgx = new Regex("[^a-zA-Z0-9 -]");
                search = rgx.Replace(search, "").ToUpper();
            }



            ViewData["FilterParam"] = search;

            // Restrict by SupplierId
            var b2CUserAuthId = User.FindFirst(ClaimTypes.NameIdentifier).Value;
            var userToEnsure  = await _dbReadService.GetSingleRecordAsync <User>(s => s.AuthId.Equals(b2CUserAuthId));

            UserDto.UserId = userToEnsure.EmailAddress;

            List <Request> requests = new List <Request>();

            if (userToEnsure != null)
            {
                RequestDto.SupplierId = userToEnsure.SupplierId;
            }

            if (RequestDto.SupplierId != 0)
            {
                ViewData["SupplierData"] = RequestDto.SupplierId;
                requests = await _dbReadService.GetAllRecordsAsync <Request>(s => s.SupplierId.Equals(RequestDto.SupplierId));

                requests.Reverse();
            }
            else
            {
                TempData["notifyUser"]   = "******";
                ViewData["SupplierData"] = null;
            }

            RequestDto.RequestId          = null;
            RequestDto.RequestDescription = null;

            var requestsEnumerable = requests.AsEnumerable();

            if (!String.IsNullOrEmpty(search))
            {
                requestsEnumerable = requests.Where(s => s.RequestDescription != null && s.RequestDescription.ToUpper().Contains(search)

                                                    || s.StatusType.StatusTypeName != null && s.StatusType.StatusTypeName.ToUpper().Contains(search)

                                                    || s.RequestType.RequestTypeName != null && s.RequestType.RequestTypeName.ToUpper().Contains(search)

                                                    || s.Store.StoreName != null && s.Store.StoreName.ToUpper().Contains(search)

                                                    || s.ProductId != null && s.Product.ProductName.ToUpper().Contains(search)

                                                    || s.Id.ToString().StartsWith(search)

                                                    || s.Id.ToString().Contains(search)

                                                    || s.CreatedBy != null && s.CreatedBy.ToUpper().Contains(search));
            }

            return(View(requestsEnumerable.ToList()));
        }
예제 #18
0
 public static async Task <UserProfile> GetUserProfileAsync(int userProfileId)
 {
     return(await _dbRead.GetSingleRecordAsync <UserProfile>(m => !m.Id.Equals(null) && m.Id.Equals(userProfileId)));
 }
예제 #19
0
        public async Task <IActionResult> Index(int?id)
        {
            ViewData["ProductId"] = id;
            _dbReadService.IncludeEntityNavigation <Supplier>();
            _dbReadService.IncludeEntityNavigation <Product>();

            var product = await _dbReadService.GetSingleRecordAsync <Product>(s => s.Id.Equals(id));

            ViewData["ProductName"] = product.ProductName;

            var packages = await _dbReadService.GetAllRecordsAsync <ProductPackageType>(s => s.ProductId.Equals(id));

            packages.Reverse();

            return(View(packages));
        }