public IActionResult AddArchive([FromBody] ViewModels.Archive data)
        {
            Models.Archive newArchive = data.FromViewModel();

            // first add the collection.
            ViewModels.Collection c = data.Collection;

            Models.Collection dbCollection = null;

            if (!string.IsNullOrEmpty(c.Id))
            {
                dbCollection = db.GetCollection(new ObjectId(c.Id));
            }
            else
            {
                // try to find it by searching other fields.
                dbCollection = db.GetCollection(c.StartDate, c.EndDate, c.Name);
            }
            if (dbCollection == null)
            {
                Models.Collection newCollection = c.FromViewModel();

                dbCollection = db.CreateCollection(newCollection);
            }

            if (dbCollection != null)
            {
                newArchive.Collection = dbCollection;
            }

            db.CreateArchive(newArchive);

            return(new ObjectResult(newArchive.ToViewModel()));
        }
        public string AddCollection(Models.Collection collection)
        {
            string result = string.Empty;
            AddCollectionRequest request = new AddCollectionRequest
            {
                Collection = new EchoService.DataContracts.Collection
                {
                    ID          = collection.ID,
                    Description = collection.Description,
                    IsPrivate   = collection.IsPrivate,
                    Title       = collection.Title
                }
            };

            using (EchoCollectionClient client = new EchoCollectionClient())
            {
                if (collection.ID == 0)
                {
                    client.SaveCollection(request);
                }
                else
                {
                    client.UpdateCollection(request);
                }
            }

            // TODO: Save to database
            return(string.Format("Collection {0} successfully added", result));
        }
Exemple #3
0
        public IActionResult GetCollection(string collectionId)
        {
            ObjectId id = new ObjectId(collectionId);

            Models.Collection     collection = db.GetCollection(id);
            ViewModels.Collection result     = collection.ToViewModel();
            return(new ObjectResult(result));
        }
        public void InsertTest()
        {
            Models.Collection collection = new Models.Collection();
            collection.MessageTypeId = 9999;

            Collection blCollection = new Collection();
            int        result       = blCollection.Insert(collection);

            Assert.IsTrue(result > 0);
        }
Exemple #5
0
        public int Insert(Models.Collection collection)
        {
            tblCollection newCollection = new tblCollection {
                MessageTypeId = collection.MessageTypeId
            };

            db.Collections.Add(newCollection);

            db.SaveChanges();
            return(newCollection.Id);
        }
        public void DeleteTest()
        {
            Collection dCollection = new Collection();
            List <Models.Collection> collections = new List <Models.Collection>();

            collections = dCollection.Load();
            Models.Collection row = collections.Where(x => x.MessageTypeId == 9999).FirstOrDefault();
            if (row != null)
            {
                bool actual = dCollection.Delete(row.Id);
                Assert.IsTrue(actual);
            }
        }
Exemple #7
0
        public async Task <IActionResult> OnGetAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Collection = await _context.Collections.FirstOrDefaultAsync(m => m.ID == id);

            if (Collection == null)
            {
                return(NotFound());
            }
            return(Page());
        }
Exemple #8
0
        public async Task <IActionResult> OnPostAsync(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            Collection = await _context.Collections.FindAsync(id);

            if (Collection != null)
            {
                _context.Collections.Remove(Collection);
                await _context.SaveChangesAsync();
            }

            return(RedirectToPage("./Index"));
        }
        public static Models.Collection FromViewModel(this ViewModels.Collection viewModel)
        {
            Models.Collection result = null;

            if (viewModel != null)
            {
                result = new Models.Collection();
                if (viewModel.EndDate != null)
                {
                    result.EndDate = viewModel.EndDate;
                }
                if (viewModel.StartDate != null)
                {
                    result.StartDate = viewModel.StartDate;
                }
                if (viewModel.Id != null)
                {
                    result.Id = new ObjectId(viewModel.Id);
                }
                result.Name = viewModel.Name;
            }
            return(result);
        }
        public static ViewModels.Collection ToViewModel(this Models.Collection model)
        {
            ViewModels.Collection result = null;

            if (model != null)
            {
                result = new ViewModels.Collection();
                if (model.EndDate != null)
                {
                    result.EndDate = (DateTime)model.EndDate;
                }
                if (model.StartDate != null)
                {
                    result.StartDate = (DateTime)model.StartDate;
                }
                if (model.Id != null)
                {
                    result.Id = model.Id.ToString();
                }
                result.Name = model.Name;
            }
            return(result);
        }
Exemple #11
0
        //收藏功能
        public ActionResult Collection(string imgId, string userId)
        {
            var res = "";

            //获取当前时间戳
            TimeSpan ts2 = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);

            using (var context = new MyDb2())
            {
                //通过userId查询该用户所有已收藏图片的imgId
                var query = from t in context.Collection
                            where t.UserId == userId
                            select t.ImgID;
                if (query.Count() > 0)
                {
                    //判断是否有本次要收藏的图片的imgId
                    foreach (var v in query)
                    {
                        if (v == imgId)
                        {
                            res = "该图片已收藏!";
                        }
                    }
                    //如果res为空,证明改图片未被该用户收藏过
                    if (res == "")
                    {
                        //操作Collection表,插入新收藏的图片
                        var collection = new Models.Collection();
                        collection.CollectId = Convert.ToInt64(ts2.TotalMilliseconds).ToString();
                        collection.ImgID     = imgId;
                        collection.UserId    = userId;
                        context.Collection.Add(collection);

                        //操作Image表,将被收藏图片的CollectNum属性值加1
                        var query1 = from t in context.Image
                                     where t.ImgId == imgId
                                     select t;
                        if (query1.Count() > 0)
                        {
                            query1.First().CollectNum += 1;
                        }

                        try
                        {
                            context.SaveChanges();
                            return(Content("收藏成功!"));
                        }
                        catch (DbEntityValidationException dbEx)
                        {
                            return(Content("系统错误!"));
                        }
                    }
                    else
                    {
                        return(Content(res));
                    }
                }
                else
                {
                    return(Content("系统错误!"));
                }
            }
        }
Exemple #12
0
        public void UpdateCollection(ObjectId id, Models.Collection c)
        {
            var filter = new BsonDocument("Id", id);

            _db.GetCollection <Models.Collection>("Collections").ReplaceOne(filter, c);
        }
Exemple #13
0
 public Models.Collection CreateCollection(Models.Collection c)
 {
     _db.GetCollection <Models.Collection>("Collections").InsertOne(c);
     return(c);
 }