public JsonResult GetCustomProductHelpList()
        {
            int DocTypeId  = (from H in db.SaleEnquiryHeader select H).FirstOrDefault().DocTypeId;
            int DivisionId = (int)System.Web.HttpContext.Current.Session["DivisionId"];
            int SiteId     = (int)System.Web.HttpContext.Current.Session["SiteId"];

            var settings = new SaleEnquirySettingsService(_unitOfWork).GetSaleEnquirySettingsForDucument(DocTypeId, DivisionId, SiteId);

            string[] ProductTypes = null;
            if (!string.IsNullOrEmpty(settings.filterProductTypes))
            {
                ProductTypes = settings.filterProductTypes.Split(",".ToCharArray());
            }
            else
            {
                ProductTypes = new string[] { "NA" };
            }

            string[] Products = null;
            if (!string.IsNullOrEmpty(settings.filterProducts))
            {
                Products = settings.filterProducts.Split(",".ToCharArray());
            }
            else
            {
                Products = new string[] { "NA" };
            }

            string[] ProductGroups = null;
            if (!string.IsNullOrEmpty(settings.filterProductGroups))
            {
                ProductGroups = settings.filterProductGroups.Split(",".ToCharArray());
            }
            else
            {
                ProductGroups = new string[] { "NA" };
            }

            var ProductList = (from Pt in db.FinishedProduct
                               join Vrs in db.ViewRugSize on Pt.ProductId equals Vrs.ProductId into ViewRugSizeTable
                               from ViewRugSizeTab in ViewRugSizeTable.DefaultIfEmpty()
                               where (string.IsNullOrEmpty(settings.filterProductTypes) ? 1 == 1 : ProductTypes.Contains(Pt.ProductGroup.ProductTypeId.ToString())) &&
                               (string.IsNullOrEmpty(settings.filterProducts) ? 1 == 1 : Products.Contains(Pt.ProductId.ToString())) &&
                               (string.IsNullOrEmpty(settings.filterProductGroups) ? 1 == 1 : ProductGroups.Contains(Pt.ProductGroupId.ToString()))
                               orderby Pt.ProductName
                               select new ComboBoxResult
            {
                id = Pt.ProductName.ToString(),
                text = Pt.ProductName,
                AProp1 = "Design : " + Pt.ProductGroup.ProductGroupName,
                AProp2 = "Size : " + ViewRugSizeTab.StandardSizeName,
                TextProp1 = "Colour : " + Pt.Colour.ColourName,
                TextProp2 = "Quality : " + Pt.ProductQuality.ProductQualityName
            }).ToList();

            JsonResult json = Json(new { Success = true, Data = ProductList }, JsonRequestBehavior.AllowGet);

            json.MaxJsonLength = int.MaxValue;
            return(json);
        }
コード例 #2
0
        public void CreateTraceMap(int ProductGroupId)
        {
            string ColourWaysName = "";
            string SizeName       = "";
            string TraceName      = "";
            string MapName        = "";
            int    i = -1;

            var ProductList = (from P in db.FinishedProduct
                               join Vrs in db.ViewRugSize on P.ProductId equals Vrs.ProductId into ViewRugSizeTable
                               from ViewRugSizeTab in ViewRugSizeTable.DefaultIfEmpty()
                               where P.ProductName == TraceName
                               select new
            {
                ProductId = P.ProductId,
                ProductName = P.ProductName,
                ProductDesignId = P.ProductDesignId,
                StandardSizeId = ViewRugSizeTab.StandardSizeID,
                StencilSizeId = ViewRugSizeTab.StencilSizeId,
                StencilAreaSqFeet = ViewRugSizeTab.StencilSizeArea,
                MapAreaSqFeet = ViewRugSizeTab.MapSizeArea,
                CreatedBy = P.CreatedBy,
            }).ToList();

            foreach (var item in ProductList)
            {
                ColourWaysName = (from H in db.ProductDesigns where H.ProductDesignId == item.ProductDesignId select H).FirstOrDefault().ProductDesignName;
                SizeName       = (from H in db.Size where H.SizeId == item.StandardSizeId select H).FirstOrDefault().SizeName;
                TraceName      = ColourWaysName + "-Trace-" + SizeName;
                MapName        = item.ProductName + "-Map-";

                var temp = (from P in db.Product where P.ProductName == TraceName select P).FirstOrDefault();

                if (temp == null)
                {
                    Product ProductTrace = new Product();
                    ProductTrace.ProductId   = i;
                    ProductTrace.ProductName = TraceName;
                    if (TraceName.Length <= 20)
                    {
                        ProductTrace.ProductCode = TraceName;
                    }
                    else
                    {
                        ProductTrace.ProductCode = TraceName.Substring(0, 20);
                    }

                    ProductTrace.ProductGroupId = new ProductGroupService(_unitOfWork).Find(ProductGroupConstants.Trace).ProductGroupId;
                    ProductTrace.UnitId         = UnitConstants.Pieces;
                    ProductTrace.IsActive       = true;
                    ProductTrace.DivisionId     = (int)System.Web.HttpContext.Current.Session["DivisionId"];
                    ProductTrace.CreatedDate    = DateTime.Now;
                    ProductTrace.ModifiedDate   = DateTime.Now;
                    ProductTrace.CreatedBy      = item.CreatedBy;
                    ProductTrace.ModifiedBy     = item.CreatedBy;
                    ProductTrace.IsActive       = true;

                    ProductTrace.ObjectState = Model.ObjectState.Added;
                    new ProductService(_unitOfWork).Create(ProductTrace);


                    UnitConversion UnitConvTrace = new UnitConversion();
                    UnitConvTrace.CreatedBy           = item.CreatedBy;
                    UnitConvTrace.CreatedDate         = DateTime.Now;
                    UnitConvTrace.ModifiedBy          = item.CreatedBy;
                    UnitConvTrace.ModifiedDate        = DateTime.Now;
                    UnitConvTrace.ProductId           = ProductTrace.ProductId;
                    UnitConvTrace.FromQty             = 1;
                    UnitConvTrace.FromUnitId          = UnitConstants.Pieces;
                    UnitConvTrace.ToUnitId            = UnitConstants.SqFeet;
                    UnitConvTrace.UnitConversionForId = (byte)UnitConversionFors.Standard;
                    UnitConvTrace.ToQty = item.StencilAreaSqFeet ?? 0;
                    new UnitConversionService(_unitOfWork).Create(UnitConvTrace);



                    Product ProductMap = new Product();
                    ProductMap.ProductId   = i - 1;
                    ProductMap.ProductName = MapName;
                    if (MapName.Length <= 20)
                    {
                        ProductMap.ProductCode = MapName;
                    }
                    else
                    {
                        ProductMap.ProductCode = MapName.Substring(0, 20);
                    }
                    ProductMap.ProductGroupId = new ProductGroupService(_unitOfWork).Find(ProductGroupConstants.Map).ProductGroupId;
                    ProductMap.UnitId         = UnitConstants.Pieces;
                    ProductMap.IsActive       = true;
                    ProductMap.DivisionId     = (int)System.Web.HttpContext.Current.Session["DivisionId"];
                    ProductMap.CreatedDate    = DateTime.Now;
                    ProductMap.ModifiedDate   = DateTime.Now;
                    ProductMap.CreatedBy      = item.CreatedBy;
                    ProductMap.ModifiedBy     = item.CreatedBy;
                    ProductMap.IsActive       = true;
                    ProductMap.ObjectState    = Model.ObjectState.Added;
                    new ProductService(_unitOfWork).Create(ProductMap);



                    UnitConversion UnitConvMap = new UnitConversion();
                    UnitConvMap.CreatedBy           = item.CreatedBy;
                    UnitConvMap.CreatedDate         = DateTime.Now;
                    UnitConvMap.ModifiedBy          = item.CreatedBy;
                    UnitConvMap.ModifiedDate        = DateTime.Now;
                    UnitConvMap.ProductId           = ProductMap.ProductId;
                    UnitConvMap.FromQty             = 1;
                    UnitConvMap.FromUnitId          = UnitConstants.Pieces;
                    UnitConvMap.ToUnitId            = UnitConstants.SqFeet;
                    UnitConvMap.UnitConversionForId = (byte)UnitConversionFors.Standard;
                    UnitConvMap.ToQty = item.MapAreaSqFeet ?? 0;
                    new UnitConversionService(_unitOfWork).Create(UnitConvMap);
                }
            }
        }
コード例 #3
0
        public IQueryable <ComboBoxResult> GetCustomProductsHelpList(int Id, string term)
        {
            var SaleEnquiry = new SaleEnquiryHeaderService(_unitOfWork).Find(Id);

            var settings = new SaleEnquirySettingsService(_unitOfWork).GetSaleEnquirySettingsForDucument(SaleEnquiry.DocTypeId, SaleEnquiry.DivisionId, SaleEnquiry.SiteId);

            string[] ProductTypes = null;
            if (!string.IsNullOrEmpty(settings.filterProductTypes))
            {
                ProductTypes = settings.filterProductTypes.Split(",".ToCharArray());
            }
            else
            {
                ProductTypes = new string[] { "NA" };
            }

            string[] Products = null;
            if (!string.IsNullOrEmpty(settings.filterProducts))
            {
                Products = settings.filterProducts.Split(",".ToCharArray());
            }
            else
            {
                Products = new string[] { "NA" };
            }

            string[] ProductGroups = null;
            if (!string.IsNullOrEmpty(settings.filterProductGroups))
            {
                ProductGroups = settings.filterProductGroups.Split(",".ToCharArray());
            }
            else
            {
                ProductGroups = new string[] { "NA" };
            }

            return(from Pt in db.FinishedProduct
                   join Vrs in db.ViewRugSize on Pt.ProductId equals Vrs.ProductId into ViewRugSizeTable from ViewRugSizeTab in ViewRugSizeTable.DefaultIfEmpty()
                   where (string.IsNullOrEmpty(settings.filterProductTypes) ? 1 == 1 : ProductTypes.Contains(Pt.ProductGroup.ProductTypeId.ToString())) &&
                   (string.IsNullOrEmpty(settings.filterProducts) ? 1 == 1 : Products.Contains(Pt.ProductId.ToString())) &&
                   (string.IsNullOrEmpty(settings.filterProductGroups) ? 1 == 1 : ProductGroups.Contains(Pt.ProductGroupId.ToString())) &&
                   (string.IsNullOrEmpty(term) ? 1 == 1 : Pt.ProductName.ToLower().Contains(term.ToLower()))
                   orderby Pt.ProductName
                   select new ComboBoxResult
            {
                id = Pt.ProductId.ToString(),
                text = Pt.ProductName,
                AProp1 = "Design : " + Pt.ProductGroup.ProductGroupName,
                AProp2 = "Size : " + ViewRugSizeTab.StandardSizeName,
                TextProp1 = "Colour : " + Pt.Colour.ColourName,
                TextProp2 = "Quality : " + Pt.ProductQuality.ProductQualityName
            });
        }