/// <summary> /// Add a new book /// </summary> /// <param name="isbn"></param> /// <param name="sPublisherNumber"></param> /// <param name="sPublisherName"></param> /// <param name="sBookTitle"></param> /// <param name="BindingTypeNumber"></param> /// <returns></returns> public Book AddBook(string isbn, string sPublisherNumber, string sPublisherName, string sBookTitle, string BindingTypeNumber = "") { SDSPortalApplication app = new SDSPortalApplication(); Book _book = new Book(); _book.DATE_ADDED = DateTime.Now; _book.BOOK_IDENTIFICATION_TYPE = "ISBN"; _book.BOOK_NUMBER = isbn; _book.PUBLISHER_NUMBER = sPublisherNumber; _book.PUBLISHER_NAME = sPublisherName; _book.DATE_ADDED = DateTime.Now; _book.BOOK_IDENTIFICATION_TYPE = "ISBN"; _book.BOOK_TITLE = sBookTitle; _book.BINDING_TYPE_NUMBER = BindingTypeNumber; using (SDSEntities objSDS = new SDSEntities()) { SDS_BOOK objBook = (from B in objSDS.SDS_BOOK where B.BOOK_NUMBER == _book.BOOK_NUMBER && B.PUBLISHER_NUMBER == _book.PUBLISHER_NUMBER select B).FirstOrDefault(); if (objBook == null) { LogWriter.LogWriter.WriteEntry("Publisher Numbers :" + sPublisherNumber); _book.Add(app.SDSConnection); } else { _book.BOOK_ID = objBook.BOOK_ID; } } return(_book); }
/// <summary> /// Insert a new book inner work /// </summary> /// <param name="bookInstanceID"></param> /// <param name="productID"></param> /// <param name="sInnerFileName"></param> /// <param name="totalPages"></param> /// <param name="objSewFilesData"></param> /// <param name="sDropFolder"></param> /// <returns></returns> public BookInnerWorkItem AddBookInnerWork(decimal bookInstanceID, decimal productID, string sInnerFileName, string totalPages, SewFilesData objSewFilesData, string sDropFolder) { SDSPortalApplication app = new SDSPortalApplication(); BookInnerWorkItem _bookinner = new BookInnerWorkItem(); //Saving Journal Inner Information/////////////////////////////////////////// _bookinner.BOOK_INSTANCE_ID = bookInstanceID; _bookinner.ITEM_FILE_PATH = string.Format(sDropFolder + "{0}" + "Product_" + productID.ToString() + "{1}", "\\", "\\Inner"); _bookinner.ITEM_FILE_NAME = sInnerFileName; _bookinner.ITEM_FILE_TYPE = "PDF"; LogWriter.LogWriter.WriteEntry("Inner work pages = " + totalPages); Decimal totPages = 0; if (Decimal.TryParse(totalPages, out totPages) == false) { totPages = 0; } _bookinner.INNER_WORK_NUMBER_OF_PAGES = objSewFilesData.TotalTextPages == "" ? totPages : Decimal.Parse(objSewFilesData.TotalTextPages); _bookinner.ITEM_FILE_DATE = DateTime.Now; _bookinner.DATE_ADDED = DateTime.Now; _bookinner.Add(app.SDSConnection); return(_bookinner); }
/// <summary> /// Insert a new book cover /// </summary> /// <param name="bookInstanceID"></param> /// <param name="productID"></param> /// <param name="sDropFolder"></param> /// <param name="sCoverFileName"></param> /// <returns></returns> public BookCover AddBookCover(decimal bookInstanceID, decimal productID, string sDropFolder, string sCoverFileName) { SDSPortalApplication app = new SDSPortalApplication(); BookCover _bookcover = new BookCover(); _bookcover.DATE_ADDED = DateTime.Now; _bookcover.BOOK_INSTANCE_ID = bookInstanceID; _bookcover.COVER_FILE_PATH = string.Format(sDropFolder + "{0}" + "Product_" + productID.ToString() + "{1}", "\\", "\\Cover"); _bookcover.COVER_FILE_NAME = sCoverFileName; _bookcover.COVER_FILE_TYPE = "PDF"; _bookcover.COVER_FILE_DATE = DateTime.Now; _bookcover.DATE_ADDED = DateTime.Now; _bookcover.Add(app.SDSConnection); return(_bookcover); }
/// <summary> /// Inser authors to a book instance /// </summary> /// <param name="bookInstanceID"></param> /// <param name="authors"></param> public void AddAuthors(decimal bookInstanceID, string authors) { SDSPortalApplication app = new SDSPortalApplication(); BookAuthor _author = new BookAuthor(); _author.DATE_ADDED = DateTime.Now; string[] Authors = authors.TrimEnd(',').Split(','); using (SDSEntities objSDS = new SDSEntities()) { foreach (String sAuthor in Authors) { SDS_BOOK_AUTHOR objAuthor = new SDS_BOOK_AUTHOR(); objAuthor.BOOK_INSTANCE_ID = long.Parse(bookInstanceID.ToString()); objAuthor.AUTHOR_NAME = sAuthor; objAuthor.DATE_ADDED = DateTime.Now; objAuthor.DATE_UPDATED = DateTime.Now; objSDS.SDS_BOOK_AUTHOR.AddObject(objAuthor); objSDS.SaveChanges(); } } }
/// <summary> /// Add a new book instance to that product /// </summary> /// <param name="title"></param> /// <param name="isbn"></param> /// <param name="product_mode"></param> /// <param name="sPublisherNumber"></param> /// <param name="sPublisherName"></param> /// <param name="productID"></param> /// <param name="subtitle"></param> /// <param name="edition"></param> /// <param name="copyRightYear"></param> /// <param name="desc"></param> /// <param name="BindingTypeNumber"></param> /// <returns></returns> public BookInstance AddBookInstance(string title, string isbn, string product_mode, ref string sPublisherNumber, ref string sPublisherName, decimal productID, string subtitle, string edition, string copyRightYear, string desc, string BindingTypeNumber = "") { SDSPortalApplication app = new SDSPortalApplication(); BookInstance _bookinstance = new BookInstance(); string[] sTitle = title.Split('^'); if (sTitle.Length > 0 && sTitle.Length > 1 && product_mode == "existing") { _bookinstance.BOOK_TITLE = sTitle[0]; string[] sBookNumberPublisher = sTitle[1].Split(','); if (sBookNumberPublisher.Length > 1) { sPublisherNumber = sBookNumberPublisher[1]; // GetPublisher(_book.BOOK_NUMBER, "book") ; sPublisherName = _publishersController.GetPublisherName(sPublisherNumber); } } else { _bookinstance.BOOK_TITLE = title; } _bookinstance.PRODUCT_ID = productID; _bookinstance.DATE_ADDED = DateTime.Now; _bookinstance.BOOK_SUBTITLE = subtitle; _bookinstance.BOOK_EDITION = edition; _bookinstance.BOOK_COPYRIGHT_YR = copyRightYear; _bookinstance.DESCRIPTION = desc; Book _book = AddBook(isbn, sPublisherNumber, sPublisherName, _bookinstance.BOOK_TITLE, BindingTypeNumber); _bookinstance.BOOK_ID = _book.BOOK_ID; _bookinstance.Add(app.SDSConnection); return(_bookinstance); }
/// <summary> /// Add Preferences to new Book /// </summary> /// <param name="bookId"></param> /// <param name="covertype"></param> /// <param name="unitOfMeasure"></param> /// <param name="BindingTypeNumber"></param> /// <param name="CoverPaper"></param> /// <param name="CoverFinish"></param> /// <param name="SpineWidth"></param> /// <param name="inner_pagecolor"></param> /// <param name="PrintQuality"></param> /// <param name="TextPaper"></param> /// <param name="pageTrimSize"></param> /// <returns></returns> public SGGS_BOOK_PREFERENCES AddBookPreference(long bookId , string covertype , string unitOfMeasure, string BindingTypeNumber, string CoverClothColor , string CoverPaper, string CoverFinish, string SpineWidth, string SpineStampLeft, string SpineStampCenter, string SpineStampRight , bool inner_pagecolor, string PrintQuality, string TextPaper , string pageTrimSize, long publisherId, long profileId, bool dustJacket, string DustJacketFinish) { decimal MMinInch = Convert.ToDecimal(25.4); SDSPortalApplication app = new SDSPortalApplication(); bool isnew = false; using (SGGSEntities objSGGS = new SGGSEntities()) { SGGS_BOOK_PREFERENCES _bookpreference = objSGGS.SGGS_BOOK_PREFERENCES.Where(P => P.BOOK_ID == bookId).FirstOrDefault(); //Get SLA_NUMBER_OF_PRODUCTION_DAYS by PUBLISHER_ID on SGGS_PUBLISHER_PREFRENCE SGGS_PUBLISHER_PREFRENCE _publisherPreference = objSGGS.SGGS_PUBLISHER_PREFRENCE.Where(PP => PP.PUBLISHER_ID == publisherId).FirstOrDefault(); SGGS_PRODUCTION_PLANT _productionPlan = (from pp in objSGGS.SGGS_PRODUCTION_PLANT join ppp in objSGGS.SGGS_PRINT_PLANT_PROFILE on pp.PRODUCTION_PLANT_ID equals ppp.PRODUCTION_PLANT_ID where ppp.PRINT_PLANT_PROFILE_ID == profileId select pp).FirstOrDefault(); if (_bookpreference == null) { _bookpreference = new SGGS_BOOK_PREFERENCES(); isnew = true; } CoverPaper = CoverPaper.Equals("-1") ? string.Empty : CoverPaper; CoverFinish = CoverFinish.Equals("-1") ? string.Empty : CoverFinish; _bookpreference.BOOK_ID = bookId; _bookpreference.BINDING_TYPE = BindingTypeNumber; _bookpreference.PRINT_QUALITY = PrintQuality; _bookpreference.COVER_CLOTH_COLOR = CoverClothColor.Equals("-1") ? string.Empty : CoverClothColor; _bookpreference.PROFILE_ID = profileId; _bookpreference.SPINE_STAMP_LEFT = SpineStampLeft; _bookpreference.SPINE_STAMP_CENTER = SpineStampCenter; _bookpreference.SPINE_STAMP_RIGHT = SpineStampRight; _bookpreference.POD_PAPER_COVER = CoverPaper; _bookpreference.COVER_FINISH = CoverFinish; _bookpreference.POD_PAPER_INNER_WORK = TextPaper; _bookpreference.ID_PAPER_COVER = CoverPaper; _bookpreference.ID_PAPER_INNER_WORK = TextPaper; _bookpreference.PRODUCTION_PLANT = _productionPlan.PRODUCTION_PLANT_NUMBER; _bookpreference.PRODUCTION_SITE = _publisherPreference.PRODUCTION_SITE; _bookpreference.DUST_JACKET_FINISH = DustJacketFinish; //SPINE_TYPE if (BindingTypeNumber.Equals("PB")) { _bookpreference.SPINE_TYPE = BindingTypeNumber; } else if (BindingTypeNumber.Equals("CF") || BindingTypeNumber.Equals("CL")) { _bookpreference.SPINE_TYPE = "SQ"; } //BARCODE_STRATEGY _bookpreference.BARCODE_STRATEGY = "XXX"; //SLA_NUMBER_OF_PRODUCTION_DAYS _bookpreference.SLA_NUMBER_OF_PRODUCTION_DAYS = _publisherPreference.SLA_NUMBER_OF_PRODUCTION_DAYS; //COVER TYPE if (covertype.Equals("soft")) { _bookpreference.COVER_TYPE = "SC"; } else if (covertype.Equals("hard")) { _bookpreference.COVER_TYPE = "HC"; } if (!string.IsNullOrEmpty(CoverPaper)) { var paperCover = objSGGS.SGGS_PAPER_TYPE.Where(o => o.PAPER_NUMBER == CoverPaper).Select(p => new { PAPER_WEIGHT_CWT = p.PAPER_WEIGHT_CWT, PAPER_WEIGHT_GSM = p.PAPER_WEIGHT_GSM }).FirstOrDefault(); if (paperCover != null) { //insert here the CWT and GSM of cover paper _bookpreference.POD_PAPER_COVER_WEIGHT_GSM = paperCover.PAPER_WEIGHT_GSM; _bookpreference.POD_PAPER_COVER_WEIGHT_CWT = paperCover.PAPER_WEIGHT_CWT; // OP/RP Cover Paper Stock _bookpreference.ID_PAPER_COVER_WEIGHT_GSM = paperCover.PAPER_WEIGHT_GSM; _bookpreference.ID_PAPER_COVER_WEIGHT_CWT = paperCover.PAPER_WEIGHT_CWT; } } if (!string.IsNullOrEmpty(TextPaper)) { var paperText = objSGGS.SGGS_PAPER_TYPE.Where(o => o.PAPER_NUMBER == TextPaper).Select(p => new { PAPER_WEIGHT_CWT = p.PAPER_WEIGHT_CWT, PAPER_WEIGHT_GSM = p.PAPER_WEIGHT_GSM }).FirstOrDefault(); if (paperText != null) { //insert here the CWT and GSM of Text Paper _bookpreference.POD_PAPER_INNER_WORK_WEIGHT_GSM = paperText.PAPER_WEIGHT_GSM; _bookpreference.POD_PAPER_INNER_WORK_WEIGHT_CWT = paperText.PAPER_WEIGHT_CWT; _bookpreference.FINANCIAL_SITE = objSGGS.SGGS_PUBLISHER_FINANCIAL_SITE.Where(p => p.PUBLISHER_ID == publisherId).Select(o => o.FINANCIAL_SITE_NUMBER).FirstOrDefault(); // OP/RP Text Paper Stock _bookpreference.ID_PAPER_INNER_WORK_WEIGHT_CWT = paperText.PAPER_WEIGHT_CWT; _bookpreference.ID_PAPER_INNER_WORK_WEIGHT_GSM = paperText.PAPER_WEIGHT_GSM; } } _bookpreference.DUST_JACKET = dustJacket; _bookpreference.SPINE_WIDTH_TOLERANCE = 3; _bookpreference.TRIM_SIZE_HEIGHT_MM_TOLERANCE = 1; _bookpreference.TRIM_SIZE_WIDTH_MM_TOLERANCE = 1; if (unitOfMeasure.Equals("inch")) { _bookpreference.UNIT_MEASURE = "in"; } else { _bookpreference.UNIT_MEASURE = unitOfMeasure; } if (unitOfMeasure.Equals("mm")) { string[] trimSizeSplit = pageTrimSize.Split('X'); _bookpreference.TRIM_FORMAT = trimSizeSplit[0].Trim() + trimSizeSplit[1].Trim(); _bookpreference.TRIM_FORMAT_WIDTH_MM = Convert.ToDecimal(trimSizeSplit[0].Trim()); _bookpreference.TRIM_FORMAT_HEIGHT_MM = Convert.ToDecimal(trimSizeSplit[1].Trim()); _bookpreference.SPINE_TYPE_WIDTH_MM = Convert.ToDecimal(SpineWidth); _bookpreference.TRIM_FORMAT_WIDTH_IN = Math.Round(Convert.ToDecimal(trimSizeSplit[0].Trim()) / MMinInch, 4); _bookpreference.TRIM_FORMAT_HEIGHT_IN = Math.Round(Convert.ToDecimal(trimSizeSplit[1].Trim()) / MMinInch, 4); _bookpreference.SPINE_TYPE_WIDTH_IN = Math.Round(Convert.ToDecimal(SpineWidth) / MMinInch, 4); } else { string[] trimSizeSplit = pageTrimSize.Split('X'); _bookpreference.TRIM_FORMAT_WIDTH_IN = Convert.ToDecimal(trimSizeSplit[0].Trim()); _bookpreference.TRIM_FORMAT_HEIGHT_IN = Convert.ToDecimal(trimSizeSplit[1].Trim()); _bookpreference.SPINE_TYPE_WIDTH_IN = Convert.ToDecimal(SpineWidth); _bookpreference.TRIM_FORMAT_WIDTH_MM = Math.Round(Convert.ToDecimal(trimSizeSplit[0].Trim()) * MMinInch, 0); _bookpreference.TRIM_FORMAT_HEIGHT_MM = Math.Round(Convert.ToDecimal(trimSizeSplit[1].Trim()) * MMinInch, 0); _bookpreference.SPINE_TYPE_WIDTH_MM = Math.Round(Convert.ToDecimal(SpineWidth) * MMinInch, 0); _bookpreference.TRIM_FORMAT = _bookpreference.TRIM_FORMAT_WIDTH_MM.ToString() + _bookpreference.TRIM_FORMAT_HEIGHT_MM.ToString(); } if (!isnew) { _bookpreference.DATE_UPDATED = DateTime.Now; objSGGS.SaveChanges(); } else { _bookpreference.DATE_ADDED = DateTime.Now; _bookpreference.DATE_UPDATED = DateTime.Now; objSGGS.SGGS_BOOK_PREFERENCES.AddObject(_bookpreference); objSGGS.SaveChanges(); } return(_bookpreference); } }