Esempio n. 1
0
        /// <summary>
        ///     Adding new book;
        ///     ID is formed as the last created incremented by one.
        /// </summary>
        /// <param name="title">new title Book</param>
        public void AddBook(string title)
        {
            var newId   = repository.GetLast() == null ? 1 : repository.GetLast().Id + 1;
            var newBook = new Book {
                Id = newId, Title = title
            };

            repository.Add(newBook);
        }
Esempio n. 2
0
        public async Task <IActionResult> ActionLibrary(Models.Library library)
        {
            bool   status  = false;
            string message = "";

            try
            {
                if (ModelState.IsValid)
                {
                    if (library.ID == 0) //Add new
                    {
                        if (!await _iLibrary.CheckDuplicate(library))
                        {
                            library.CreatedDate = DateTime.Now;
                            var user        = _iUser.FindByID(Convert.ToInt32(HttpContext.User.FindFirstValue(ClaimTypes.Sid))).Result;
                            var libraryType = await _iLibraryType.FindByID((int)library.LibraryTypeID);

                            string testid = HttpContext.User.FindFirst("GUID").ToString();
                            library.CreatedBy   = user;
                            library.CreatedDate = DateTime.Now;
                            if (libraryType.Type.ToLower() == "dataview")// 1:Container,2:Data View. If library has type = 2 then create some default fields for the Data view library
                            {
                                var defaultFields = await _iDefaultField.DefaultFieldCollection();

                                foreach (var dfield in defaultFields)
                                {
                                    Field field = new Field();
                                    field.Name      = dfield.Name;
                                    field.Title     = dfield.Title;
                                    field.FieldType = dfield.FieldType;
                                    if (dfield.Name.ToLower() == "createddate" || (dfield.Name.ToLower() == "createdby"))
                                    {
                                        field.Editable = 0;
                                        field.Visible  = 0;
                                    }
                                    else
                                    {
                                        field.Editable = 1;
                                        field.Visible  = 1;
                                    }

                                    field.Library     = library;
                                    field.LibraryGuid = library.GUID;
                                    await _iField.Add(field);
                                }
                            }
                            await Task.FromResult(_iLibrary.Add(library));

                            status  = true;
                            message = "Library " + library.Title + " has been added!";
                        }
                        else
                        {
                            status  = false;
                            message = "Library " + library.Title + " already exist!";
                        }
                    }
                    else
                    {
                        if (!await _iLibrary.CheckDuplicate(library))
                        {
                            library.EditedBy   = _iUser.FindByID(Convert.ToInt32(HttpContext.User.FindFirstValue(ClaimTypes.Sid))).Result;
                            library.EditedDate = DateTime.Now;
                            await _iLibrary.Edit(library);

                            status  = true;
                            message = "Library " + library.Title + " has been updated!";
                        }
                        else
                        {
                            status  = false;
                            message = "Library " + library.Title + " already exist!";
                        }
                    }
                }
                else
                {
                    message  = "Model State is not valid. ";
                    message += string.Join("; ", ModelState.Values
                                           .SelectMany(x => x.Errors)
                                           .Select(x => x.ErrorMessage));
                    status = false;
                }
            }
            catch (Exception ex)
            {
                status  = false;
                message = ex.Message;
            }
            return(new JsonResult(new { success = status, message = message }));
        }