private async Task ManageMobileDocs(MngMobileDocListsVM lists)
        {
            List <MobileDocs> assigneddocs = new List <MobileDocs>();

            if (lists.AssignedMobileDocs != null)
            {
                assigneddocs = JsonConvert.DeserializeObject <List <MobileDocs> >(lists.AssignedMobileDocs);
            }
            await _unitOfWork.Documents.RemoveAllMobileDocs();



            if (assigneddocs != null)
            {
                await _unitOfWork.Documents.AddMobileDocuments(assigneddocs);
            }
            await _unitOfWork.CompleteAsync();
        }
        public IActionResult ManageMobileDocs()
        {
            List <DocVM> cachedNonMobileDocs = null;
            List <DocVM> mobileDocs          = _unitOfWork.Documents.GetMobileDocuments();
            var          mobileString        = JsonConvert.SerializeObject(mobileDocs.ToArray());

            cachedNonMobileDocs = _memoryCache.GetOrCreate(CacheEntryConstants.DocumentCache, entry =>
            {
                entry.SlidingExpiration = TimeSpan.FromDays(1);
                entry.Priority          = CacheItemPriority.High;
                return(_unitOfWork.Documents.GetNonMobileDocuments());
            }).Where(d => !mobileDocs.Select(m => m.DocId).Contains(d.DocId)).ToList();


            var mngMobiledocLists = new MngMobileDocListsVM
            {
                NonMobileDocs      = cachedNonMobileDocs,
                MobileDocs         = mobileDocs,
                AssignedMobileDocs = mobileString
            };

            //var assignedDocs
            return(View(mngMobiledocLists));
        }
        public async Task <IActionResult> DesignateDocsAsync(MngMobileDocListsVM lists)
        {
            await ManageMobileDocs(lists);

            return(Redirect(Request.Headers["Referer"].ToString()));
        }