コード例 #1
0
        // GET: /SaleEnquirySettingMaster/Create

        public ActionResult Create(int id)//DocTypeId
        {
            if (!UserRoles.Contains("SysAdmin"))
            {
                return(View("~/Views/Shared/InValidSettings.cshtml"));
            }
            var DivisionId = (int)System.Web.HttpContext.Current.Session["DivisionId"];
            var SiteId     = (int)System.Web.HttpContext.Current.Session["SiteId"];
            var settings   = new SaleEnquirySettingsService(_unitOfWork).GetSaleEnquirySettingsForDucument(id, DivisionId, SiteId);

            if (settings == null)
            {
                SaleEnquirySettingsViewModel vm = new SaleEnquirySettingsViewModel();
                vm.DocTypeName = new DocumentTypeService(_unitOfWork).Find(id).DocumentTypeName;
                vm.SiteId      = SiteId;
                vm.DivisionId  = DivisionId;
                vm.DocTypeId   = id;
                PrepareViewBag(vm);
                return(View("Create", vm));
            }
            else
            {
                SaleEnquirySettingsViewModel temp = AutoMapper.Mapper.Map <SaleEnquirySettings, SaleEnquirySettingsViewModel>(settings);
                temp.DocTypeName = new DocumentTypeService(_unitOfWork).Find(id).DocumentTypeName;
                PrepareViewBag(temp);
                return(View("Create", temp));
            }
        }
        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);
        }
コード例 #3
0
        public ActionResult _Create(int Id) //Id ==>Sale Order Header Id
        {
            SaleEnquiryHeader        H = new SaleEnquiryHeaderService(_unitOfWork).GetSaleEnquiryHeader(Id);
            SaleEnquiryLineViewModel s = new SaleEnquiryLineViewModel();

            s.SaleEnquiryHeaderId = H.SaleEnquiryHeaderId;
            s.UnitId         = "PCS";
            ViewBag.DocNo    = H.DocNo;
            ViewBag.Status   = H.Status;
            ViewBag.LineMode = "Create";


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

            s.SaleEnquirySettings = Mapper.Map <SaleEnquirySettings, SaleEnquirySettingsViewModel>(settings);

            var count = _SaleEnquiryLineService.GetSaleEnquiryLineListForIndex(Id).Count();

            if (count > 0)
            {
                s.DealUnitId = _SaleEnquiryLineService.GetSaleEnquiryLineListForIndex(Id).OrderByDescending(m => m.SaleEnquiryLineId).FirstOrDefault().DealUnitId;
            }
            else
            {
                s.DealUnitId = settings.DealUnitId;
            }

            ProductBuyerSettings ProductBuyerSettings = new ProductBuyerSettingsService(_unitOfWork).GetProductBuyerSettings(H.DivisionId, H.SiteId);

            s.ProductBuyerSettings = Mapper.Map <ProductBuyerSettings, ProductBuyerSettingsViewModel>(ProductBuyerSettings);

            var LastTransactionDetail = _SaleEnquiryLineService.GetLastTransactionDetail(Id);

            if (LastTransactionDetail != null)
            {
                if (LastTransactionDetail.BuyerSpecification != null && LastTransactionDetail.BuyerSpecification != "")
                {
                    ViewBag.LastTransaction = LastTransactionDetail.BuyerSpecification;
                }

                if (LastTransactionDetail.BuyerSpecification1 != null && LastTransactionDetail.BuyerSpecification1 != "")
                {
                    ViewBag.LastTransaction = ViewBag.LastTransaction + ", " + LastTransactionDetail.BuyerSpecification1;
                }

                if (LastTransactionDetail.BuyerSpecification2 != null && LastTransactionDetail.BuyerSpecification2 != "")
                {
                    ViewBag.LastTransaction = ViewBag.LastTransaction + ", " + LastTransactionDetail.BuyerSpecification2;
                }

                if (LastTransactionDetail.BuyerSpecification3 != null && LastTransactionDetail.BuyerSpecification3 != "")
                {
                    ViewBag.LastTransaction = ViewBag.LastTransaction + ", " + LastTransactionDetail.BuyerSpecification3;
                }
            }


            PrepareViewBag(H);
            return(PartialView("_Create", s));
        }
コード例 #4
0
        private ActionResult _Modify(int id)
        {
            SaleEnquiryLine         temp     = _SaleEnquiryLineService.GetSaleEnquiryLine(id);
            SaleEnquiryLineExtended Extended = new SaleEnquiryLineExtendedService(_unitOfWork).Find(id);

            if (temp == null)
            {
                return(HttpNotFound());
            }

            #region DocTypeTimeLineValidation
            try
            {
                TimePlanValidation = DocumentValidation.ValidateDocumentLine(new DocumentUniqueId {
                    LockReason = temp.LockReason
                }, User.Identity.Name, out ExceptionMsg, out Continue);
            }
            catch (Exception ex)
            {
                string message = _exception.HandleException(ex);
                TempData["CSEXCL"] += message;
                TimePlanValidation  = false;
            }

            if (!TimePlanValidation)
            {
                TempData["CSEXCL"] += ExceptionMsg;
            }
            #endregion

            if ((TimePlanValidation || Continue))
            {
                ViewBag.LineMode = "Edit";
            }

            SaleEnquiryHeader H = new SaleEnquiryHeaderService(_unitOfWork).GetSaleEnquiryHeader(temp.SaleEnquiryHeaderId);
            ViewBag.DocNo = H.DocNo;
            SaleEnquiryLineViewModel s = Mapper.Map <SaleEnquiryLine, SaleEnquiryLineViewModel>(temp);

            s.BuyerSpecification  = Extended.BuyerSpecification;
            s.BuyerSpecification1 = Extended.BuyerSpecification1;
            s.BuyerSpecification2 = Extended.BuyerSpecification2;
            s.BuyerSpecification3 = Extended.BuyerSpecification3;
            s.BuyerSku            = Extended.BuyerSku;
            s.BuyerUpcCode        = Extended.BuyerUpcCode;


            var settings = new SaleEnquirySettingsService(_unitOfWork).GetSaleEnquirySettingsForDucument(H.DocTypeId, H.DivisionId, H.SiteId);
            s.SaleEnquirySettings = Mapper.Map <SaleEnquirySettings, SaleEnquirySettingsViewModel>(settings);

            ProductBuyerSettings ProductBuyerSettings = new ProductBuyerSettingsService(_unitOfWork).GetProductBuyerSettings(H.DivisionId, H.SiteId);
            s.ProductBuyerSettings = Mapper.Map <ProductBuyerSettings, ProductBuyerSettingsViewModel>(ProductBuyerSettings);

            PrepareViewBag(H);

            return(PartialView("_Create", s));
        }
コード例 #5
0
        // GET: /ProductMaster/Edit/5

        public ActionResult Edit(int id)
        {
            SaleEnquiryLine         temp     = _SaleEnquiryLineService.GetSaleEnquiryLine(id);
            SaleEnquiryLineExtended Extended = new SaleEnquiryLineExtendedService(_unitOfWork).Find(id);


            if (temp == null)
            {
                return(HttpNotFound());
            }


            SaleEnquiryHeader H = new SaleEnquiryHeaderService(_unitOfWork).GetSaleEnquiryHeader(temp.SaleEnquiryHeaderId);

            ViewBag.DocNo = H.DocNo;
            SaleEnquiryLineViewModel s = Mapper.Map <SaleEnquiryLine, SaleEnquiryLineViewModel>(temp);

            s.BuyerSpecification  = Extended.BuyerSpecification;
            s.BuyerSpecification1 = Extended.BuyerSpecification1;
            s.BuyerSpecification2 = Extended.BuyerSpecification2;
            s.BuyerSpecification3 = Extended.BuyerSpecification3;
            s.BuyerSku            = Extended.BuyerSku;
            s.BuyerUpcCode        = Extended.BuyerUpcCode;
            s.SaleEnquiryDocNo    = H.DocNo;
            s.SaleToBuyerId       = H.SaleToBuyerId;
            s.SaleEnquiryHeaderId = H.SaleEnquiryHeaderId;



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

            s.SaleEnquirySettings = Mapper.Map <SaleEnquirySettings, SaleEnquirySettingsViewModel>(settings);

            ProductBuyerSettings ProductBuyerSettings = new ProductBuyerSettingsService(_unitOfWork).GetProductBuyerSettings(H.DivisionId, H.SiteId);

            s.ProductBuyerSettings = Mapper.Map <ProductBuyerSettings, ProductBuyerSettingsViewModel>(ProductBuyerSettings);

            if (temp.DealUnitId == "MT2")
            {
                string SizeinFeet = "";

                using (SqlConnection sqlConnection = new SqlConnection((string)System.Web.HttpContext.Current.Session["DefaultConnectionString"]))
                {
                    sqlConnection.Open();
                    SqlCommand Totalf = new SqlCommand("SELECT Web.FGetSizeinFeet('" + Extended.BuyerSpecification1 + "')", sqlConnection);

                    SizeinFeet = Convert.ToString(Totalf.ExecuteScalar() == DBNull.Value ? "" : Totalf.ExecuteScalar());
                }

                ViewBag.SizeinFeet = "Feet :" + SizeinFeet;
            }

            return(View("Create", s));
        }
コード例 #6
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
            });
        }
        public void CreateSaleOrder(int SaleEnquiryHeaderId)
        {
            SaleEnquiryHeader   EnquiryHeader = new SaleEnquiryHeaderService(_unitOfWork).Find(SaleEnquiryHeaderId);
            SaleEnquirySettings Settings      = new SaleEnquirySettingsService(_unitOfWork).GetSaleEnquirySettingsForDucument(EnquiryHeader.DocTypeId, EnquiryHeader.DivisionId, EnquiryHeader.SiteId);

            SaleOrderHeader OrderHeader = new SaleOrderHeader();

            OrderHeader.DocTypeId           = (int)Settings.SaleOrderDocTypeId;
            OrderHeader.DocDate             = EnquiryHeader.DocDate;
            OrderHeader.DocNo               = EnquiryHeader.DocNo;
            OrderHeader.DivisionId          = EnquiryHeader.DivisionId;
            OrderHeader.SiteId              = EnquiryHeader.SiteId;
            OrderHeader.BuyerOrderNo        = EnquiryHeader.BuyerEnquiryNo;
            OrderHeader.SaleToBuyerId       = EnquiryHeader.SaleToBuyerId;
            OrderHeader.BillToBuyerId       = EnquiryHeader.BillToBuyerId;
            OrderHeader.CurrencyId          = EnquiryHeader.CurrencyId;
            OrderHeader.Priority            = EnquiryHeader.Priority;
            OrderHeader.UnitConversionForId = EnquiryHeader.UnitConversionForId;
            OrderHeader.ShipMethodId        = EnquiryHeader.ShipMethodId;
            OrderHeader.ShipAddress         = EnquiryHeader.ShipAddress;
            OrderHeader.DeliveryTermsId     = EnquiryHeader.DeliveryTermsId;
            OrderHeader.Remark              = EnquiryHeader.Remark;
            OrderHeader.DueDate             = EnquiryHeader.DueDate;
            OrderHeader.ActualDueDate       = EnquiryHeader.ActualDueDate;
            OrderHeader.Advance             = EnquiryHeader.Advance;
            OrderHeader.ReferenceDocId      = EnquiryHeader.SaleEnquiryHeaderId;
            OrderHeader.ReferenceDocTypeId  = EnquiryHeader.DocTypeId;
            OrderHeader.CreatedDate         = DateTime.Now;
            OrderHeader.ModifiedDate        = DateTime.Now;
            OrderHeader.ModifiedDate        = DateTime.Now;
            OrderHeader.ModifiedBy          = User.Identity.Name;
            OrderHeader.Status              = (int)StatusConstants.Submitted;
            OrderHeader.ReviewBy            = User.Identity.Name;
            OrderHeader.ReviewCount         = 1;
            //OrderHeader.LockReason = "Sale order is created for enquiry.Now you can't modify enquiry, changes can be done in sale order.";
            new SaleOrderHeaderService(_unitOfWork).Create(OrderHeader);


            IEnumerable <SaleEnquiryLine> LineList = new SaleEnquiryLineService(_unitOfWork).GetSaleEnquiryLineListForHeader(SaleEnquiryHeaderId).Where(m => m.ProductId != null);
            int i = 0;

            foreach (SaleEnquiryLine Line in LineList)
            {
                SaleOrderLine OrderLine = new SaleOrderLine();
                OrderLine.SaleOrderLineId = i;
                i = i - 1;
                OrderLine.DueDate                  = Line.DueDate;
                OrderLine.ProductId                = Line.ProductId ?? 0;
                OrderLine.Specification            = Line.Specification;
                OrderLine.Dimension1Id             = Line.Dimension1Id;
                OrderLine.Dimension2Id             = Line.Dimension2Id;
                OrderLine.Qty                      = Line.Qty;
                OrderLine.DealQty                  = Line.DealQty;
                OrderLine.DealUnitId               = Line.DealUnitId;
                OrderLine.UnitConversionMultiplier = Line.UnitConversionMultiplier;
                OrderLine.Rate                     = Line.Rate;
                OrderLine.Amount                   = Line.Amount;
                OrderLine.Remark                   = Line.Remark;
                OrderLine.ReferenceDocTypeId       = EnquiryHeader.DocTypeId;
                OrderLine.ReferenceDocLineId       = Line.SaleEnquiryLineId;
                OrderLine.CreatedDate              = DateTime.Now;
                OrderLine.ModifiedDate             = DateTime.Now;
                OrderLine.CreatedBy                = User.Identity.Name;
                OrderLine.ModifiedBy               = User.Identity.Name;
                new SaleOrderLineService(_unitOfWork).Create(OrderLine);

                new SaleOrderLineStatusService(_unitOfWork).CreateLineStatus(OrderLine.SaleOrderLineId);

                Line.LockReason = "Sale order is created for enquiry.Now you can't modify enquiry, changes can be done in sale order.";
                new SaleEnquiryLineService(_unitOfWork).Update(Line);
            }
        }