コード例 #1
0
        /// <summary>
        /// Method that adds new trim format to the duplicated print plant profile
        /// </summary>
        /// <returns></returns>
        public bool AddDuplicatedTrimFormats()
        {
            using (var context = new SGGSEntities())
            {
                var trimFormat = new SGGS_SUPPORTED_TRIM_FORMATS
                {
                    SUPPORTED_PAPER_TYPE_ID   = SUPPORTED_PAPER_TYPE,
                    SUPPORTED_BIND_TYPE_ID    = SUPPORTED_BINDING_TYPE,
                    PRINT_PLANT_PROFILE_ID    = PRINT_PLANT_PROFILE_ID,
                    TRIM_FORMAT_ID            = TRIM_FORMAT_ID,
                    TEXT_PAGE_COUNT_MAX       = MAX_PAGES,
                    TEXT_PAGE_COUNT_MIN       = MIN_PAGES,
                    TRIM_FORMAT_MIN_WIDTH     = TRIM_FORMAT_MIN_WIDTH,
                    TRIM_FORMAT_MAX_WIDTH     = TRIM_FORMAT_MAX_WIDTH,
                    TRIM_FORMAT_MAX_HEIGHT    = TRIM_FORMAT_MAX_HEIGHT,
                    TRIM_FORMAT_MIN_HEIGHT    = TRIM_FORMAT_MIN_HEIGHT,
                    OVERRIDE_AUTO_CALCULATION = OVERRIDE_AUTO_CALCULATION,
                    SUPPORTED_PRINT_QUALITY   = SUPPORTED_PRINT_QUALITY_ID
                };


                context.SGGS_SUPPORTED_TRIM_FORMATS.AddObject(trimFormat);
                context.SaveChanges();
                return(true);
            }
        }
コード例 #2
0
        /// <summary>
        /// Method that adds new trim format to the print plant profile
        /// </summary>
        /// <param name="formats">New trim formats added</param>
        /// <returns></returns>
        public bool AddSupportedTrimFormats(IList <TrimFormat> formats, bool supportRanges)
        {
            if (formats.Count <= 0)
            {
                return(false);
            }

            using (var context = new SGGSEntities())
            {
                foreach (var item in formats)
                {
                    var sggsCodePrintQuality = context.SGGS_CODE_PRINT_QUALITY.FirstOrDefault(q => q.PRINT_QUALITY_NUMBER == item.SUPPORTED_PRINT_QUALITY);

                    var trimFormat = new SGGS_SUPPORTED_TRIM_FORMATS
                    {
                        SUPPORTED_PAPER_TYPE_ID   = item.SUPPORTED_PAPER_TYPE,
                        SUPPORTED_BIND_TYPE_ID    = item.SUPPORTED_BINDING_TYPE,
                        PRINT_PLANT_PROFILE_ID    = item.PRINT_PLANT_PROFILE_ID,
                        TRIM_FORMAT_ID            = item.TRIM_FORMAT_ID,
                        TEXT_PAGE_COUNT_MAX       = item.MAX_PAGES,
                        TEXT_PAGE_COUNT_MIN       = item.MIN_PAGES,
                        TRIM_FORMAT_MAX_HEIGHT    = item.TRIM_FORMAT_MAX_HEIGHT,
                        TRIM_FORMAT_MIN_HEIGHT    = item.TRIM_FORMAT_MIN_HEIGHT,
                        TRIM_FORMAT_MIN_WIDTH     = item.TRIM_FORMAT_MIN_WIDTH,
                        TRIM_FORMAT_MAX_WIDTH     = item.TRIM_FORMAT_MAX_WIDTH,
                        OVERRIDE_AUTO_CALCULATION = item.OVERRIDE_AUTO_CALCULATION
                    };
                    if (sggsCodePrintQuality != null)
                    {
                        trimFormat.SUPPORTED_PRINT_QUALITY = sggsCodePrintQuality.PRINT_QUALITY_ID;
                    }

                    if (!CheckTrimFormatIsValid(trimFormat, supportRanges))
                    {
                        context.SGGS_SUPPORTED_TRIM_FORMATS.AddObject(trimFormat);
                    }
                }
                context.SaveChanges();
                return(true);
            }
        }
コード例 #3
0
        /// <summary>
        /// Update TrimFormat
        /// </summary>
        /// <param name="supportedTrimFormatId"></param>
        /// <param name="minPages"></param>
        /// <param name="maxPages"></param>
        /// <param name="minWidth"></param>
        /// <param name="maxWidth"></param>
        /// <param name="minHeight"></param>
        /// <param name="maxHeight"></param>
        /// <param name="overriding"></param>
        /// <param name="supportRanges"></param>
        /// <returns></returns>
        public string UpdatingTrimFormat(long supportedTrimFormatId, string minPages, string maxPages, string minWidth, string maxWidth,
                                         string minHeight, string maxHeight, bool overriding, bool supportRanges)
        {
            using (var context = new SGGSEntities())
            {
                SGGS_SUPPORTED_TRIM_FORMATS dataFound = null;
                var trimFormat = context.SGGS_SUPPORTED_TRIM_FORMATS.FirstOrDefault(x => x.SUPPORTED_TRIM_FORMATS_ID == supportedTrimFormatId);

                if (trimFormat == null)
                {
                    return("notExists");
                }

                if (!supportRanges && overriding)
                {
                    var maxP = Convert.ToInt32(maxPages);
                    var minP = Convert.ToInt32(minPages);

                    dataFound = context.SGGS_SUPPORTED_TRIM_FORMATS.FirstOrDefault(tf =>
                                                                                   tf.SUPPORTED_TRIM_FORMATS_ID != trimFormat.SUPPORTED_TRIM_FORMATS_ID &&
                                                                                   tf.PRINT_PLANT_PROFILE_ID == trimFormat.PRINT_PLANT_PROFILE_ID &&
                                                                                   tf.SUPPORTED_PAPER_TYPE_ID == trimFormat.SUPPORTED_PAPER_TYPE_ID &&
                                                                                   tf.SUPPORTED_BIND_TYPE_ID == trimFormat.SUPPORTED_BIND_TYPE_ID &&
                                                                                   tf.TRIM_FORMAT_ID == trimFormat.TRIM_FORMAT_ID &&
                                                                                   tf.SUPPORTED_PRINT_QUALITY == trimFormat.SUPPORTED_PRINT_QUALITY &&
                                                                                   tf.TEXT_PAGE_COUNT_MAX == maxP &&
                                                                                   tf.TEXT_PAGE_COUNT_MIN == minP &&
                                                                                   tf.TRIM_FORMAT_MIN_WIDTH == null &&
                                                                                   tf.TRIM_FORMAT_MAX_WIDTH == null &&
                                                                                   tf.TRIM_FORMAT_MIN_HEIGHT == null &&
                                                                                   tf.TRIM_FORMAT_MAX_HEIGHT == null &&
                                                                                   tf.OVERRIDE_AUTO_CALCULATION == overriding);

                    if (dataFound == null)
                    {
                        return(Update(supportedTrimFormatId, Convert.ToInt32(minPages), Convert.ToInt32(maxPages), null, null, null, null, overriding));
                    }
                }
                else if (!supportRanges && !overriding)
                {
                    dataFound = context.SGGS_SUPPORTED_TRIM_FORMATS.FirstOrDefault(tf =>
                                                                                   tf.SUPPORTED_TRIM_FORMATS_ID != trimFormat.SUPPORTED_TRIM_FORMATS_ID &&
                                                                                   tf.PRINT_PLANT_PROFILE_ID == trimFormat.PRINT_PLANT_PROFILE_ID &&
                                                                                   tf.SUPPORTED_PAPER_TYPE_ID == trimFormat.SUPPORTED_PAPER_TYPE_ID &&
                                                                                   tf.SUPPORTED_BIND_TYPE_ID == trimFormat.SUPPORTED_BIND_TYPE_ID &&
                                                                                   tf.TRIM_FORMAT_ID == trimFormat.TRIM_FORMAT_ID &&
                                                                                   tf.SUPPORTED_PRINT_QUALITY == trimFormat.SUPPORTED_PRINT_QUALITY &&
                                                                                   tf.TEXT_PAGE_COUNT_MAX == null &&
                                                                                   tf.TEXT_PAGE_COUNT_MIN == null &&
                                                                                   tf.TRIM_FORMAT_MIN_WIDTH == null &&
                                                                                   tf.TRIM_FORMAT_MAX_WIDTH == null &&
                                                                                   tf.TRIM_FORMAT_MIN_HEIGHT == null &&
                                                                                   tf.TRIM_FORMAT_MAX_HEIGHT == null &&
                                                                                   tf.OVERRIDE_AUTO_CALCULATION == overriding);

                    if (dataFound == null)
                    {
                        return(Update(supportedTrimFormatId, null, null, null, null, null, null, overriding));
                    }
                }
                else if (supportRanges && !overriding)
                {
                    var maxW = Math.Round(Convert.ToDecimal(maxWidth), 5);
                    var minW = Math.Round(Convert.ToDecimal(minWidth), 5);
                    var minH = Math.Round(Convert.ToDecimal(minHeight), 5);
                    var maxH = Math.Round(Convert.ToDecimal(maxHeight), 5);

                    dataFound = context.SGGS_SUPPORTED_TRIM_FORMATS.FirstOrDefault(tf =>
                                                                                   tf.SUPPORTED_TRIM_FORMATS_ID != trimFormat.SUPPORTED_TRIM_FORMATS_ID &&
                                                                                   tf.PRINT_PLANT_PROFILE_ID == trimFormat.PRINT_PLANT_PROFILE_ID &&
                                                                                   tf.SUPPORTED_PAPER_TYPE_ID == trimFormat.SUPPORTED_PAPER_TYPE_ID &&
                                                                                   tf.SUPPORTED_BIND_TYPE_ID == trimFormat.SUPPORTED_BIND_TYPE_ID &&
                                                                                   tf.TRIM_FORMAT_ID == null &&
                                                                                   tf.SUPPORTED_PRINT_QUALITY == trimFormat.SUPPORTED_PRINT_QUALITY &&
                                                                                   tf.TEXT_PAGE_COUNT_MAX == null &&
                                                                                   tf.TEXT_PAGE_COUNT_MIN == null &&
                                                                                   tf.TRIM_FORMAT_MIN_WIDTH == minW &&
                                                                                   tf.TRIM_FORMAT_MAX_WIDTH == maxW &&
                                                                                   tf.TRIM_FORMAT_MIN_HEIGHT == minH &&
                                                                                   tf.TRIM_FORMAT_MAX_HEIGHT == maxH &&
                                                                                   tf.OVERRIDE_AUTO_CALCULATION == overriding);

                    if (dataFound == null)
                    {
                        return(Update(supportedTrimFormatId, null, null, Math.Round(Convert.ToDecimal(minWidth), 5), Math.Round(Convert.ToDecimal(maxWidth), 5), Math.Round(Convert.ToDecimal(minHeight), 5),
                                      Math.Round(Convert.ToDecimal(maxHeight), 5), overriding));
                    }
                }


                return(dataFound != null ? "exists" : string.Empty);
            }
        }
コード例 #4
0
        /// <summary>
        /// Check if the new Trim Format exists or the paper type is correct.
        /// </summary>
        /// <param name="format"></param>
        /// <returns></returns>
        public bool CheckTrimFormatIsValid(SGGS_SUPPORTED_TRIM_FORMATS format, bool supportRanges)
        {
            var IsExcluded = false;

            using (var context = new SGGSEntities())
            {
                SGGS_SUPPORTED_TRIM_FORMATS isFound = null;
                if (!supportRanges)
                {
                    isFound = context.SGGS_SUPPORTED_TRIM_FORMATS.Where(
                        tf => tf.PRINT_PLANT_PROFILE_ID == format.PRINT_PLANT_PROFILE_ID &&
                        tf.SUPPORTED_PAPER_TYPE_ID == format.SUPPORTED_PAPER_TYPE_ID &&
                        tf.SUPPORTED_BIND_TYPE_ID == format.SUPPORTED_BIND_TYPE_ID &&
                        tf.TRIM_FORMAT_ID == format.TRIM_FORMAT_ID &&
                        tf.SUPPORTED_PRINT_QUALITY == format.SUPPORTED_PRINT_QUALITY)
                              .Select(s => s).FirstOrDefault();
                }
                else
                {
                    isFound = context.SGGS_SUPPORTED_TRIM_FORMATS.Where(
                        tf => tf.PRINT_PLANT_PROFILE_ID == format.PRINT_PLANT_PROFILE_ID &&
                        tf.SUPPORTED_PAPER_TYPE_ID == format.SUPPORTED_PAPER_TYPE_ID &&
                        tf.SUPPORTED_BIND_TYPE_ID == format.SUPPORTED_BIND_TYPE_ID &&
                        tf.SUPPORTED_PRINT_QUALITY == format.SUPPORTED_PRINT_QUALITY &&
                        tf.TRIM_FORMAT_MAX_HEIGHT == format.TRIM_FORMAT_MAX_HEIGHT &&
                        tf.TRIM_FORMAT_MIN_HEIGHT == format.TRIM_FORMAT_MIN_HEIGHT &&
                        tf.TRIM_FORMAT_MAX_WIDTH == format.TRIM_FORMAT_MAX_WIDTH &&
                        tf.TRIM_FORMAT_MIN_WIDTH == format.TRIM_FORMAT_MIN_WIDTH)
                              .Select(s => s).FirstOrDefault();
                }


                if (isFound != null)
                {
                    if (HttpContext.Current.Session["ExcludedTrimFormats"] == null)
                    {
                        EXCLUDED_PAPER_TYPES = new List <SGGS_SUPPORTED_TRIM_FORMATS>();
                    }
                    else
                    {
                        EXCLUDED_PAPER_TYPES = HttpContext.Current.Session["ExcludedTrimFormats"] as List <SGGS_SUPPORTED_TRIM_FORMATS>;
                    }

                    EXCLUDED_PAPER_TYPES.Add(isFound);
                    HttpContext.Current.Session["ExcludedTrimFormats"] = EXCLUDED_PAPER_TYPES;

                    IsExcluded = true;
                }

                //Check if Supported Paper Type is validates for the Trim Format Quality
                else
                {
                    var suppPaperType = context.SGGS_SUPPORTED_PAPER_TYPE.FirstOrDefault(x => x.SUPPORTED_PAPER_TYPE_ID == format.SUPPORTED_PAPER_TYPE_ID);

                    var trimFormatquality = (from cpq in context.SGGS_CODE_PRINT_QUALITY
                                             where cpq.PRINT_QUALITY_ID == format.SUPPORTED_PRINT_QUALITY
                                             select cpq.PRINT_QUALITY_NUMBER).FirstOrDefault();
                    if (trimFormatquality != null)
                    {
                        if (trimFormatquality.Equals("HQ") && suppPaperType.TEXT_HIGH_QUALITY == false)
                        {
                            if (HttpContext.Current.Session["ExcludedTrimFormats"] == null)
                            {
                                EXCLUDED_PAPER_TYPES = new List <SGGS_SUPPORTED_TRIM_FORMATS>();
                            }
                            else
                            {
                                EXCLUDED_PAPER_TYPES = HttpContext.Current.Session["ExcludedTrimFormats"] as List <SGGS_SUPPORTED_TRIM_FORMATS>;
                            }

                            EXCLUDED_PAPER_TYPES.Add(format);
                            HttpContext.Current.Session["ExcludedTrimFormats"] = EXCLUDED_PAPER_TYPES;
                            IsExcluded = true;
                        }

                        else if (trimFormatquality.Equals("NQ") && suppPaperType.TEXT_NORMAL_QUALITY == false)
                        {
                            if (HttpContext.Current.Session["ExcludedTrimFormats"] == null)
                            {
                                EXCLUDED_PAPER_TYPES = new List <SGGS_SUPPORTED_TRIM_FORMATS>();
                            }
                            else
                            {
                                EXCLUDED_PAPER_TYPES = HttpContext.Current.Session["ExcludedTrimFormats"] as List <SGGS_SUPPORTED_TRIM_FORMATS>;
                            }

                            EXCLUDED_PAPER_TYPES.Add(format);
                            HttpContext.Current.Session["ExcludedTrimFormats"] = EXCLUDED_PAPER_TYPES;

                            IsExcluded = true;
                        }
                    }
                    else if (suppPaperType.TEXT_HIGH_QUALITY == true || suppPaperType.TEXT_NORMAL_QUALITY == true)
                    {
                        if (HttpContext.Current.Session["ExcludedTrimFormats"] == null)
                        {
                            EXCLUDED_PAPER_TYPES = new List <SGGS_SUPPORTED_TRIM_FORMATS>();
                        }
                        else
                        {
                            EXCLUDED_PAPER_TYPES = HttpContext.Current.Session["ExcludedTrimFormats"] as List <SGGS_SUPPORTED_TRIM_FORMATS>;
                        }

                        EXCLUDED_PAPER_TYPES.Add(format);
                        HttpContext.Current.Session["ExcludedTrimFormats"] = EXCLUDED_PAPER_TYPES;

                        IsExcluded = true;
                    }
                }
            }

            return(IsExcluded);
        }