Example #1
0
    /// <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);
    }
Example #2
0
    /// <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);
    }
Example #3
0
    /// <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);
    }
Example #4
0
    /// <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();
            }
        }
    }
Example #5
0
    /// <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);
    }
Example #6
0
    /// <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);
        }
    }