public void AddToPriceList(GridState gridState, IList <Filters.IFilter> filters, int priceListId) { if (!gridState.IsAnyItemMarked) { throw new NoItemMarkedException("No se ha seleccionado ningun Canal de Venta."); } MasterPriceSearchParameters msps = FilterHelper.GetSearchFilters(filters); ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; bool CanSeeAll = PermissionManager.Check(epv); IList priceListIds = null; if (!CanSeeAll) { priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); } epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Distributor); epv.KeyIdentifier = Config.DistributorInactiveStatus; bool isActive = PermissionManager.Check(epv); IList <Distributor> lst = repository.GetSelecteds(msps.Description, msps.Country, msps.PriceList, msps.PaymentTerm, msps.DistributorStatus, gridState, msps.Incoterm, msps.LookupType, msps.Categories[1] as CatalogPage, priceListIds, isActive); foreach (Distributor d in lst) { d.PriceList = new PriceList(priceListId); repository.Save(d); } }
private ICriteria GetByProductCriteria(Product product, PriceList priceList) { ICriteria crit = GetCriteria(); ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; if (PermissionManager.Check(epv) == false) { IList priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); int[] intPriceListIds = new int[priceListIds.Count]; for (int i = 0; i < priceListIds.Count; i++) { intPriceListIds[i] = Convert.ToInt32(priceListIds[i]); } ICriteria critPriceList = crit.CreateCriteria("PriceList"); critPriceList.Add(Expression.In("ID", intPriceListIds)); } crit.CreateCriteria("PriceBase").CreateCriteria("Product").Add(Expression.Eq("ID", product.ID)); if (priceList != null) { crit.Add(Expression.Eq("PriceList", priceList)); } return(crit); }
public IList <Distributor> GetActivesByPriceGroup(PriceGroup pG, int?maxResults) { //Cache Section string cacheKey = null; MembershipHelperUser mhu = MembershipHelper.GetUser(); if (mhu != null) { cacheKey = string.Format("DISTRIBUTORS_{0}_{1}_{2}_{3}", mhu.UserId, typeof(Distributor).ToString(), pG.ID, maxResults); } object result = CacheManager.GetCached(typeof(Distributor), cacheKey); if (result == null) { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; bool CanSeeAll = PermissionManager.Check(epv); IList priceListIds = null; if (!CanSeeAll) { priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); } IList <Distributor> d = repository.GetActivesByPriceGroup(pG, maxResults, priceListIds); CacheManager.AddItem(typeof(Distributor), cacheKey, d); result = d; } return(result as IList <Distributor>); }
public IList <Distributor> GetActivesByPriceList() { ICriteria crit = GetCriteria(); crit.Add(Expression.Eq("DistributorStatus", DistributorStatus.Active)); ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; if (PermissionManager.Check(epv) == false) { IList priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); int[] intPriceListIds = new int[priceListIds.Count]; for (int i = 0; i < priceListIds.Count; i++) { intPriceListIds[i] = Convert.ToInt32(priceListIds[i]); } ICriteria critPriceList = crit.CreateCriteria("PriceList"); critPriceList.Add(Expression.In("ID", intPriceListIds)); } crit.AddOrder(new Order("Name", false)); return(crit.List <Distributor>()); }
private void SetVisibility() { bool enabled = (Mode == EditionMode.Edit || Mode == EditionMode.Create); foreach (Control c in this.Controls) { if (c is WebControl && c.GetType() != typeof(LinkButton) && c.GetType() != typeof(ImageButton) && c.GetType() != typeof(HtmlContainerControl)) { (c as WebControl).Enabled = enabled; } } lnkDetails.Visible = (Mode != EditionMode.View); lnkEdit.Visible = (Mode == EditionMode.View); btnSave.Visible = (Mode != EditionMode.View); //txtListPrice.Visible = enabled; //lblIPL.Visible = enabled; //txtQuantity.Visible = enabled; //lblIQuantity.Visible = enabled; //ddlIncoterm.Visible = enabled; //lblIIncoterm.Visible = enabled; //ddlDeliveryTerm.Visible = enabled; //ddlDeliveryTime.Visible = enabled; //lblIDeliveryTime.Visible = enabled; ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(QuoteRange); epv.KeyIdentifier = Config.CanSeeImportantQuoteData; lblTP.Visible = PermissionManager.Check(epv); lblITp.Visible = PermissionManager.Check(epv); lblGrp.Visible = PermissionManager.Check(epv); lblIGrp.Visible = PermissionManager.Check(epv); lblCtr.Visible = PermissionManager.Check(epv); lblICtr.Visible = PermissionManager.Check(epv); lblIndex.Visible = PermissionManager.Check(epv); lblIIndex.Visible = PermissionManager.Check(epv); if (enabled) { divInsideFields.Attributes["class"] = "showme"; } else { divInsideFields.Attributes["class"] = "hideme"; } }
public override bool ExecuteAction(GridState gs, IList <IFilter> filters, params object[] parameters) { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(ProductListView); epv.KeyIdentifier = Config.CanExportAll; CanExportAll = PermissionManager.Check(epv); ExportToPDF(gs, filters); return(false); }
public IList <Distributor> GetActivesByPriceGroup(PriceGroup pG, int?maxResults) { //Cache Section string cacheKey = null; MembershipHelperUser mhu = MembershipHelper.GetUser(); if (mhu != null) { cacheKey = string.Format("DISTRIBUTORS_{0}_{1}_{2}_{3}", mhu.UserId, typeof(Distributor).ToString(), pG.ID, maxResults); } object result = CacheManager.GetCached(typeof(Distributor), cacheKey); ICriteria crit = GetCriteria(); if (result == null) { crit.Add(Expression.Not(Expression.Eq("DistributorStatus", DistributorStatus.Disable))); ICriteria critPriceList = crit.CreateCriteria("PriceList"); ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; if (PermissionManager.Check(epv) == false) { IList priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); int[] intPriceListIds = new int[priceListIds.Count]; for (int i = 0; i < priceListIds.Count; i++) { intPriceListIds[i] = Convert.ToInt32(priceListIds[i]); } critPriceList.Add(Expression.In("ID", intPriceListIds)); } critPriceList.Add(Expression.Or(Expression.Eq("PriceListStatus", PriceListStatus.Active), Expression.Eq("PriceListStatus", PriceListStatus.New))); critPriceList.Add(Expression.Eq("PriceGroup", pG)); crit.AddOrder(new Order("TimeStamp.CreatedOn", false)); if (maxResults.HasValue) { crit.SetMaxResults(maxResults.Value); } result = crit.List <Distributor>(); CacheManager.AddItem(typeof(Distributor), cacheKey, result); } return(result as IList <Distributor>); }
public IList Check() { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Quote); epv.KeyIdentifier = Config.SeeQuotes; IList quoteIds = null; if (PermissionManager.Check(epv) == false) { quoteIds = PermissionManager.GetPermissionIdentifiers(typeof(Quote), PermissionAction.Create); } return(quoteIds); }
protected void SetVisibility() { bool enabled = (Mode == EditionMode.Edit); foreach (Control c in this.Controls) { if (c is WebControl && c.GetType() != typeof(LinkButton)) { (c as WebControl).Enabled = enabled; } } btnSave.Visible = enabled; lnkDetails.Visible = enabled; if (DistributorId != 0) { lnkEdit.Visible = !enabled; } else { lnkEdit.Visible = enabled; } lnkEdit.Visible = (PermissionManager.Check(lnkEdit) && Mode == EditionMode.View); if (enabled) { txtDiscount.Focus(); } bool importantFieldsVisibility = false; ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Distributor); epv.KeyIdentifier = Config.DistributorFields; importantFieldsVisibility = PermissionManager.Check(epv); ttlProfitYTD.Visible = importantFieldsVisibility; lblProfitYTD.Visible = importantFieldsVisibility; ttlSalePrevYear.Visible = importantFieldsVisibility; lblSalePrevYear.Visible = importantFieldsVisibility; ttlSaleYTD.Visible = importantFieldsVisibility; lblSaleYTD.Visible = importantFieldsVisibility; lnkPriceList.Enabled = !enabled; }
public IList <Distributor> GetActivesByPriceList() { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; IList priceListIds = null; if (PermissionManager.Check(epv) == false) { priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); } return(repository.GetActivesByPriceList(priceListIds)); }
public string GetQuoteMinimumIndex() { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(QuoteRange); epv.KeyIdentifier = Config.BestQuoteRange; if (!PermissionManager.Check(epv)) { return(ControllerManager.Lookup.List(LookupType.IndexCommitment)[0].Description); } else { return("-1"); } }
private ICriteria ListCriteria(string text, Distributor distributor, QuoteStatus?status, Guid?userId) { ICriteria crit = GetCriteria(); //check quote permissions ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Quote); epv.KeyIdentifier = Config.SeeQuotes; if (PermissionManager.Check(epv) == false) { IList quoteIds = PermissionManager.GetPermissionIdentifiers(typeof(Quote), PermissionAction.Create); int[] intQuoteIds = new int[quoteIds.Count]; for (int i = 0; i < quoteIds.Count; i++) { intQuoteIds[i] = Convert.ToInt32(quoteIds[i]); } crit.Add(Expression.In("ID", intQuoteIds)); } if (!string.IsNullOrEmpty(text)) { Disjunction d = new Disjunction(); d.Add(Restrictions.InsensitiveLike("Description", text, MatchMode.Anywhere)); d.Add(Restrictions.InsensitiveLike("Observations", text, MatchMode.Anywhere)); d.Add(Expression.InsensitiveLike("Number", text, MatchMode.Anywhere)); crit.Add(d); } if (distributor != null) { crit.Add(Expression.Eq("Distributor", distributor)); } if (status != null) { crit.Add(Expression.Eq("Status", status)); } if (userId.HasValue) { crit.Add(Expression.Eq("TimeStamp.ModifiedBy", userId)); } return(crit); }
public List <string> GetActives(string name, int count) { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; bool CanSeeAll = PermissionManager.Check(epv); IList priceListIds = null; if (!CanSeeAll) { priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); } return(repository.GetActives(name, count, priceListIds)); }
private ICriteria GetProviderListCriteria(string description, Country country, ProviderStatus?status, Incoterm?saleCondition) { ICriteria crit = GetCriteria(); if (!string.IsNullOrEmpty(description)) { Disjunction d = new Disjunction(); d.Add(Restrictions.InsensitiveLike("Description", description, MatchMode.Anywhere)); d.Add(Restrictions.InsensitiveLike("Name", description, MatchMode.Anywhere)); d.Add(Expression.InsensitiveLike("Code", description, MatchMode.Anywhere)); crit.Add(d); } if (country != null) { ICriteria critCountry = crit.CreateCriteria("Country"); critCountry.Add(Restrictions.Eq("ID", country.ID)); } ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Provider); epv.KeyIdentifier = Config.ProviderInactiveStatus; if (PermissionManager.Check(epv) == false) { crit.Add(Expression.Eq("ProviderStatus", ProviderStatus.Active)); } else if (status != null) { crit.Add(Restrictions.Eq("ProviderStatus", status)); } if (saleCondition != null) { crit.Add(Expression.Eq("SaleConditions", saleCondition)); } return(crit); }
public IList <Distributor> GetDistributors(string name, Country country, PriceList priceList, Lookup paymentTerm, DistributorStatus?status, GridState gridState, out int totalRecords, Lookup saleCondition, Lookup type, CatalogPage page) { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; bool CanSeeAll = PermissionManager.Check(epv); IList priceListIds = null; if (!CanSeeAll) { priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); } epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Distributor); epv.KeyIdentifier = Config.DistributorInactiveStatus; bool isActive = PermissionManager.Check(epv); return(repository.GetDistributors(name, country, priceList, paymentTerm, status, gridState, out totalRecords, saleCondition, type, page, priceListIds, isActive)); }
protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack) { if (!string.IsNullOrEmpty(Request.QueryString["Id"])) { DistributorId = Convert.ToInt32(Request.QueryString["Id"]); dceCreate.DistributorId = DistributorId; dceCreate.Mode = EditionMode.Create; dceCreate.DataBind(); LoadContacts(DistributorId); //permiso para poder crear contacto ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Contact); epv.KeyIdentifier = Config.CanCreateContact; btnNew.Visible = PermissionManager.Check(epv); } } dceCreate.SaveCreation += new CommandEventHandler(dceCreate_SaveCreation); }
public IList <Distributor> GetDistributors() { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; bool CanSeeAll = PermissionManager.Check(epv); IList priceListIds = null; if (!CanSeeAll) { priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); } epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Distributor); epv.KeyIdentifier = Config.DistributorInactiveStatus; bool isActive = PermissionManager.Check(epv); int totalRecords; return(repository.GetDistributors(string.Empty, null, null, null, DistributorStatus.Active, new GridState(new List <int>(), 0, 0, "Name", true, false, DateTime.Now, null), out totalRecords, null, null, null, priceListIds, isActive)); }
public QuoteRange GetRange() { ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(QuoteRange); epv.KeyIdentifier = Config.BestQuoteRange; if (!PermissionManager.Check(epv)) { IList quoteRangeTitles = PermissionManager.GetPermissionIdentifiersFromFunction(typeof(QuoteRange), PermissionAction.Create); IList <QuoteRange> qrLst = new List <QuoteRange>(); for (int i = 0; i < quoteRangeTitles.Count; i++) { qrLst.Add(GetByTitle(quoteRangeTitles[i].ToString())); } return(GetBestRange(qrLst)); } else { return(GetBestRange()); } }
public IList <PriceGroup> GetByPriceLists() { ICriteria crit = GetCriteria(); ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; if (PermissionManager.Check(epv) == false) { IList priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); int[] intPriceListIds = new int[priceListIds.Count]; for (int i = 0; i < priceListIds.Count; i++) { intPriceListIds[i] = Convert.ToInt32(priceListIds[i]); } ICriteria critPriceList = crit.CreateCriteria("PriceLists"); critPriceList.Add(Expression.In("ID", intPriceListIds)); } return(crit.List <PriceGroup>()); }
private ICriteria GetDistributorsCriteria(string name, Country country, PriceList priceList, Lookup paymentTerm, DistributorStatus?status, GridState gridState, Incoterm?saleCondition, Lookup type, CatalogPage page) { ICriteria crit = GetCriteria(); ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Distributor); epv.KeyIdentifier = Config.SeeAllDistributors; if (PermissionManager.Check(epv) == false) { IList priceListIds = PermissionManager.GetPermissionIdentifiers(typeof(PriceList), PermissionAction.Create); int[] intPriceListIds = new int[priceListIds.Count]; for (int i = 0; i < priceListIds.Count; i++) { intPriceListIds[i] = Convert.ToInt32(priceListIds[i]); } ICriteria critDistributor = crit.CreateCriteria("PriceList"); critDistributor.Add(Expression.In("ID", intPriceListIds)); } if (!string.IsNullOrEmpty(name)) { Disjunction d = new Disjunction(); d.Add(Expression.InsensitiveLike("Name", name, MatchMode.Anywhere)); d.Add(Expression.InsensitiveLike("Code", name, MatchMode.Anywhere)); crit.Add(d); } if (country != null) { ICriteria critCountry = crit.CreateCriteria("Country"); critCountry.Add(Expression.Eq("ID", country.ID)); } if (priceList != null) { ICriteria critPriceList = crit.CreateCriteria("PriceList"); critPriceList.Add(Expression.Eq("ID", priceList.ID)); } if (paymentTerm != null) { crit.Add(Expression.Eq("PaymentTerm", paymentTerm)); } if (status != null) { crit.Add(Expression.Eq("DistributorStatus", status)); } else { epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Distributor); epv.KeyIdentifier = Config.DistributorInactiveStatus; if (PermissionManager.Check(epv) == false) { crit.Add(Expression.Eq("DistributorStatus", DistributorStatus.Active)); } } if (saleCondition != null) { crit.Add(Expression.Eq("SaleConditions", saleCondition)); } if (type != null) { crit.Add(Expression.Eq("Type", type)); } if (page != null) { crit.CreateCriteria("PriceList").CreateCriteria("CategoryPages").Add(Expression.Eq("ID", page.ID)); } return(crit); }
private void LoadFields() { Quote q = null; if (QuoteId > 0) { q = ControllerManager.Quote.GetById(QuoteId); } if (q == null || ((q.Status == QuoteStatus.InAssistence || q.Status == QuoteStatus.AssistenceRequired) && "Chequear si no sos administrador" == "Chequear si no sos administrador")) { Response.Redirect("/accessdenied.aspx"); } if (q.Status == QuoteStatus.Sent) { lnkEdit.Visible = false; } else if (!ControllerManager.Quote.ValidateQuote(q)) { Utils.ShowMessage(this.Page, "Se modifico la información de la cotización.", Utils.MessageType.Warning); } ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Quote); epv.KeyIdentifier = Config.SeeQuotes; if (PermissionManager.Check(epv) == false) { PermissionManager.Validate(q); } lblDistributor.Text = q.Distributor.Name; if (!string.IsNullOrEmpty(q.Contacts)) { lblContact.Text = q.Contacts; } else { lblContact.Text = "N/D"; } lblDate.Text = q.TimeStamp.CreatedOn.ToShortDateString(); lblDiscount.Text = q.Distributor.Discount.ToString("#0.00") + "%"; lblVigency.Text = q.Vigency.Description + " dias"; lblQuoteNumber.Text = q.Number; if (q.Distributor.PaymentTerm != null) { lblPaymentCondition.Text = q.Distributor.PaymentTerm.Description; } lblIntroText.Text = q.IntroText.Description; lblCondition.Text = q.Condition.Description; lblStatus.Text = EnumHelper.GetDescription(q.Status); MembershipHelperUser mhu = MembershipHelper.GetUser(q.TimeStamp.CreatedBy); if (q.TimeStamp != null && mhu != null) { lblAutor.Text = mhu.FullName; } //lblObservation.Text = q.Observations; lblObservation.Text = StringFormat.Cut(q.Observations, 100); lblObservation.Attributes["title"] = q.Observations; if (q.Currency != null && q.CurrencyRate != null) { lblCurrency.Text = q.Currency.Description + " (" + q.CurrencyRate.Rate + ")"; } btnGetAssistence.Visible = q.Status == QuoteStatus.Draft; rptQuoteLine.DataSource = q.QuoteItems; rptQuoteLine.DataBind(); lblTotalCount.Text = q.Currency.Description + " " + TotalCount.ToString("0.##"); if (q.QuoteNotifications.Count == 0 || q.Status == QuoteStatus.Rejected) { btnSendPDF.Visible = false; if (q.QuoteNotifications.Count == 0) { Utils.ShowMessage(this.Page, "La cotización no podrá ser enviada por email ya que no tiene contactos asignados.", Utils.MessageType.Warning); } } }
private void LoadFields() { if (PriceListId != 0) { PriceList pl = ControllerManager.PriceList.GetById(PriceListId); //if (!MembershipManager.IsAdministrator()) ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(PriceList); epv.KeyIdentifier = Config.SeePriceLists; if (PermissionManager.Check(epv) == false) { PermissionManager.Validate(pl); } txtName.Text = pl.Name; txtDescripcion.Text = pl.Description; lblDiscount.Text = pl.Discount.ToString("#0.###") + "%"; if (pl.Type != null) { ddlType.SelectedValue = ddlType.Items.FindByValue(pl.Type.ID.ToString()).Value; } else { ddlType.SelectedIndex = 0; } if (pl.SaleCondition != null) { ddlIncoterm.SelectedValue = ddlIncoterm.Items.FindByValue(pl.SaleCondition.ToString()).Value; } else { ddlIncoterm.SelectedIndex = 0; } lblStatus.Text = Resource.Business.GetString(pl.CurrentState.Status.ToString()); if (pl.CurrentState.LastPublishedOn.HasValue) { lblLastPubDate.Text = pl.CurrentState.LastPublishedOn.Value.ToShortDateString(); } else { lblLastPubDate.Text = "N/D"; } if (pl.Frecuency != null) { ddlFrequency.SelectedValue = ddlFrequency.Items.FindByValue(pl.Frecuency.ToString()).Value; } else { ddlFrequency.SelectedIndex = 0; } if (pl.Currency != null) { ddlCurrency.SelectedValue = ddlCurrency.Items.FindByValue(pl.Currency.ID.ToString()).Value; lblCurrency.Text = pl.Currency.Description; } else { ddlCurrency.SelectedIndex = 0; } lblCountry.Text = pl.PriceGroup.Name; lblCountry.Visible = true; } }
private void LoadFields() { if (QuoteId != 0) { Quote q = null; if (QuoteId > 0) { q = ControllerManager.Quote.GetById(QuoteId); Mode = EditionMode.Edit; } //if (!MembershipManager.IsAdministrator()) ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Quote); epv.KeyIdentifier = Config.SeeQuotes; if (PermissionManager.Check(epv) == false) { PermissionManager.Validate(q); } if (q != null) { if (q.Status == QuoteStatus.Sent) { Response.Redirect("/accessdenied.aspx"); } txtDistributor.Text = q.Distributor.Name; txtDescripcion.Text = q.Description; txtObservations.Text = q.Observations; txtEmail.Text = q.Email; txtContact.Text = q.Contact; ddlQuoteCondition.SelectedValue = q.Condition.ID.ToString(); ddlQuoteIntroText.SelectedValue = q.IntroText.ID.ToString(); ddlQuoteVigency.SelectedValue = q.Vigency.ID.ToString(); foreach (QuoteItem item in q.QuoteItems) { PriceMasterList1.GridState.Items.Add(item.PriceBase.ID); PriceMasterList1.HidSelChecks = PriceMasterList1.HidSelChecks + item.PriceBase.ID + ","; HtmlAnchor a = new HtmlAnchor(); a.InnerText = "[x]"; a.Attributes["class"] = "removeItem"; a.Attributes["onclick"] = "removeItem()"; HtmlGenericControl h3 = new HtmlGenericControl("h3"); if (string.IsNullOrEmpty(item.PriceBase.Product.Code)) { h3.InnerText = item.PriceBase.ProviderCode; } else { h3.InnerText = item.PriceBase.Product.Code; } HtmlGenericControl p = new HtmlGenericControl("p"); p.InnerText = item.PriceBase.Product.Model; HtmlGenericControl li = new HtmlGenericControl("li"); li.Attributes["id"] = item.PriceBase.ID.ToString(); li.Controls.Add(a); li.Controls.Add(h3); li.Controls.Add(p); productlist.Controls.Add(li); } if (PriceMasterList1.HidSelChecks.Length > 0) { PriceMasterList1.HidSelChecks = PriceMasterList1.HidSelChecks.Substring(0, PriceMasterList1.HidSelChecks.Length - 1); } //PriceMasterList1.AllowMultipleSelection = false; //PriceMasterList1.QuoteId = q.ID; } } }
private void LoadFields() { Quote q = null; if (QuoteId > 0) { q = ControllerManager.Quote.GetById(QuoteId); } if (q == null) { Response.Redirect("/accessdenied.aspx"); } if (q.Status == QuoteStatus.Sent) { lnkEdit.Visible = false; } ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Quote); epv.KeyIdentifier = Config.SeeQuotes; if (PermissionManager.Check(epv) == false) { PermissionManager.Validate(q); } lblDistributor.Text = q.Distributor.Name; if (!string.IsNullOrEmpty(q.Contact)) { lblContact.Text = q.Contact; } else { lblContact.Text = q.Distributor.Contact; } if (!string.IsNullOrEmpty(q.Email)) { lblMail.Text = q.Email; } else if (!string.IsNullOrEmpty(q.Distributor.Email)) { lblMail.Text = q.Distributor.Email; } else if (!string.IsNullOrEmpty(q.Distributor.AlternativeEmail)) { lblMail.Text = q.Distributor.AlternativeEmail; } else { lblMail.Text = "N/D"; } lblDate.Text = q.TimeStamp.CreatedOn.ToShortDateString(); lblDiscount.Text = q.Distributor.Discount.ToString("#0.00") + "%"; lblVigency.Text = q.Vigency.Description + " dias"; lblQuoteNumber.Text = q.Number; if (q.Distributor.PaymentTerm != null) { lblPaymentCondition.Text = q.Distributor.PaymentTerm.Title; } lblIntroText.Text = q.IntroText.Description; lblCondition.Text = q.Condition.Description; lblStatus.Text = EnumHelper.GetDescription(q.Status); if (q.TimeStamp != null && MembershipHelper.GetUser(q.TimeStamp.CreatedBy) != null) { lblAutor.Text = MembershipHelper.GetUser(q.TimeStamp.CreatedBy).UserName; } //lblObservation.Text = q.Observations; lblObservation.Text = StringFormat.Cut(q.Observations, 100); lblObservation.Attributes["title"] = q.Observations; if (!Page.IsPostBack) { BoundField bf = new BoundField(); bf.DataField = "Code"; bf.HeaderText = Resource.Business.GetString("GridViewColumnCode"); bf.SortExpression = "Code"; GridView1.Columns.Add(bf); bf = new BoundField(); bf.DataField = "Description"; bf.HeaderText = Resource.Business.GetString("GridViewColumnDescription"); bf.SortExpression = "Description"; GridView1.Columns.Add(bf); bf = new BoundField(); bf.DataField = "PriceSell"; bf.HeaderText = Resource.Business.GetString("GridViewColumnPriceSell"); bf.SortExpression = "PriceSell"; GridView1.Columns.Add(bf); bf = new BoundField(); bf.DataField = "PriceList"; bf.HeaderText = Resource.Business.GetString("GridViewColumnPrice"); bf.SortExpression = "PriceList"; GridView1.Columns.Add(bf); bf = new BoundField(); bf.DataField = "LeadTime"; bf.HeaderText = Resource.Business.GetString("GridViewColumnLeadTime"); bf.SortExpression = "LeadTime"; GridView1.Columns.Add(bf); epv = new ExecutePermissionValidator(); epv.ClassType = typeof(QuoteItem); epv.KeyIdentifier = Config.QuoteItemSourceColumn; bf = new BoundField(); bf.DataField = "Source"; bf.HeaderText = Resource.Business.GetString("GridViewColumnSource"); bf.SortExpression = "Source"; bf.Visible = PermissionManager.Check(epv); GridView1.Columns.Add(bf); } GridView1.DataSource = q.QuoteItems; GridView1.DataBind(); if ((string.IsNullOrEmpty(q.Distributor.Email) && string.IsNullOrEmpty(q.Distributor.AlternativeEmail) && string.IsNullOrEmpty(q.Email)) || q.Status == QuoteStatus.Rejected) { btnSendPDF.Visible = false; Utils.ShowMessage(this.Page, "No se podra enviar la cotización por correo ya que el Canal de Ventas no tiene correo electronico asignado.", Utils.MessageType.Warning); } }
private void LoadFields() { if (QuoteId != 0) { Quote q = null; if (QuoteId > 0) { q = ControllerManager.Quote.GetById(QuoteId); Mode = EditionMode.Edit; } //if (!MembershipManager.IsAdministrator()) ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(Quote); epv.KeyIdentifier = Config.SeeQuotes; if (PermissionManager.Check(epv) == false) { PermissionManager.Validate(q); } if (q != null) { if (q.Status == QuoteStatus.Sent) { Response.Redirect("/accessdenied.aspx"); } if (!ControllerManager.Quote.ValidateQuote(q)) { Utils.ShowMessage(this.Page, "Se modifico la información de la cotización.", Utils.MessageType.Warning); } txtDistributor.Text = q.Distributor.Name + "-[" + q.Distributor.Code + "]"; txtDescripcion.Text = q.Description; txtObservations.Text = q.Observations; ContactsUpdate(q.Distributor); string email = string.Empty; string contact = string.Empty; List <IQuoteNotification> toDelete = new List <IQuoteNotification>(); foreach (IQuoteNotification notification in q.QuoteNotifications) { if (notification is QuoteNotification) { email = notification.Email; contact = notification.Name; } else { ListItem li = cblContacts.Items.FindByValue(((ContactQuoteNotification)notification).Contact.ID.ToString()); if (li != null) { li.Selected = true; } else { toDelete.Add(notification); } } } if (toDelete.Count > 0) { foreach (IQuoteNotification notification in toDelete) { q.QuoteNotifications.Remove(notification); } } txtEmail.Text = email; txtContact.Text = contact; ddlQuoteCondition.SelectedValue = q.Condition.ID.ToString(); ddlQuoteIntroText.SelectedValue = q.IntroText.ID.ToString(); ddlQuoteVigency.SelectedValue = q.Vigency.ID.ToString(); foreach (QuoteItem item in q.SortedQuoteItems) { PriceMasterList1.GridState.Items.Add(item.PriceBase.ID); PriceMasterList1.HidSelChecks = PriceMasterList1.HidSelChecks + item.PriceBase.ID + ","; HtmlAnchor a = new HtmlAnchor(); a.InnerText = "[x]"; a.Attributes["class"] = "removeItem"; a.Attributes["onclick"] = "removeItem()"; HtmlGenericControl h3 = new HtmlGenericControl("h3"); if (string.IsNullOrEmpty(item.PriceBase.Product.Code)) { h3.InnerText = item.PriceBase.ProviderCode; } else { h3.InnerText = item.PriceBase.Product.Code; } HtmlGenericControl p = new HtmlGenericControl("p"); p.InnerText = item.PriceBase.Product.Model; HtmlGenericControl li = new HtmlGenericControl("li"); li.Attributes["id"] = item.PriceBase.ID.ToString(); li.Controls.Add(a); li.Controls.Add(h3); li.Controls.Add(p); productlist.Controls.Add(li); } if (PriceMasterList1.HidSelChecks.Length > 0) { PriceMasterList1.HidSelChecks = PriceMasterList1.HidSelChecks.Substring(0, PriceMasterList1.HidSelChecks.Length - 1); } //PriceMasterList1.AllowMultipleSelection = false; //PriceMasterList1.QuoteId = q.ID; if (q.Currency != null) { ddlToCurrency.SelectedValue = ddlToCurrency.Items.FindByValue(q.Currency.ID.ToString()).Value; lblCurrencyRate.Text = ControllerManager.CurrencyRate.GetLast(q.Currency).Rate.ToString("(##0.####)"); } } } }
private void ExportToExcel(GridState gs, IList <IFilter> filters) { Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture; GridView grdProductList = new GridView(); grdProductList.AutoGenerateColumns = false; BoundField bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(95); bf.DataField = "Code"; bf.HeaderText = "Código"; bf.HtmlEncode = false; // bf.DataFormatString = "{0:00000000}"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(600); bf.DataField = "FinalInfo"; bf.HeaderText = "Modelo"; bf.ItemStyle.HorizontalAlign = HorizontalAlign.Left; grdProductList.Columns.Add(bf); //si sos Admin ExecutePermissionValidator epv = new ExecutePermissionValidator(); epv.ClassType = typeof(ProductListView); epv.KeyIdentifier = Config.CanExportAll; bool canExporAll = PermissionManager.Check(epv); if (canExporAll) { bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(150); bf.DataField = "Provider"; bf.HeaderText = "Proveedor"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(50); bf.DataField = "Index"; bf.HeaderText = "Index"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "Type"; bf.HeaderText = "Frecuencia"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(30); bf.DataField = "PricePurchaseCurrency"; bf.HeaderText = "M. TP"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "PricePurchase"; bf.HeaderText = "TP"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(30); bf.DataField = "PriceSuggestCurrency"; bf.HeaderText = "M. GRP"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "PriceSuggest"; bf.HeaderText = "GRP"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(30); bf.DataField = "PriceListCurrency"; bf.HeaderText = "M. PV"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "PriceSell"; bf.HeaderText = "PV"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); } bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(10); bf.DataField = "PriceListCurrency"; bf.HeaderText = "M. PL"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "Price"; bf.HeaderText = "PL"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); if (canExporAll) { bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(30); bf.DataField = "PriceListCurrency"; bf.HeaderText = "M. CTM"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "CTM"; bf.HeaderText = "CTM"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); bf = new BoundField(); bf.ItemStyle.Width = Unit.Pixel(70); bf.DataField = "CTR"; bf.HeaderText = "CTR"; bf.HtmlEncode = false; bf.DataFormatString = "{0:F2}"; grdProductList.Columns.Add(bf); //bf = new BoundField(); //bf.ItemStyle.Width = Unit.Pixel(70); //bf.DataField = "Status"; //bf.HeaderText = "Estado"; //grdProductList.Columns.Add(bf); } //***************// grdProductList.DataSource = GetFiltered(gs, filters); grdProductList.DataBind(); HttpContext.Current.Response.Clear(); HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename=ListadePrecios.xls")); HttpContext.Current.Response.ContentType = "application/ms-excel"; StringWriter sw = new StringWriter(); HtmlTextWriter htw = new HtmlTextWriter(sw); System.Web.UI.WebControls.Table table = new System.Web.UI.WebControls.Table(); table.GridLines = grdProductList.GridLines; //Set the Cell format string codeFormat = @"<style>.cF { mso-number-format:'\@'; }</style>"; // add the header row to the table if (grdProductList.HeaderRow != null) { PrepareControlForExport(grdProductList.HeaderRow); table.Rows.Add(grdProductList.HeaderRow); table.Rows[0].ForeColor = System.Drawing.Color.FromArgb(102, 102, 102); for (int i = 0; i < table.Rows[0].Cells.Count; i++) { table.Rows[0].Cells[i].BackColor = System.Drawing.Color.FromArgb(225, 224, 224); } } // add each of the data rows to the table foreach (GridViewRow row in grdProductList.Rows) { PrepareControlForExport(row); int pos = table.Rows.Add(row); table.Rows[pos].Cells[0].Attributes.Add("class", "cF"); table.Rows[pos].Cells[0].HorizontalAlign = HorizontalAlign.Right; table.Rows[pos].Cells[0].Width = 95; table.Rows[pos].Cells[1].Width = 600; table.Rows[pos].Cells[2].Width = 110; table.Rows[pos].Cells[2].HorizontalAlign = HorizontalAlign.Left; table.Rows[pos].Cells[4].HorizontalAlign = HorizontalAlign.Right; table.Rows[pos].Cells[5].HorizontalAlign = HorizontalAlign.Right; table.Rows[pos].Cells[7].HorizontalAlign = HorizontalAlign.Right; table.Rows[pos].Cells[9].HorizontalAlign = HorizontalAlign.Right; table.Rows[pos].Cells[11].HorizontalAlign = HorizontalAlign.Right; table.Rows[pos].Cells[13].HorizontalAlign = HorizontalAlign.Right; //Set Euro Symbol Correctly if (row.Cells[13].Text == "€") { table.Rows[pos].Cells[13].Text = "€"; } if (canExporAll) { if (row.Cells[5].Text == "€") { table.Rows[pos].Cells[5].Text = "€"; } if (row.Cells[7].Text == "€") { table.Rows[pos].Cells[7].Text = "€"; } if (row.Cells[9].Text == "€") { table.Rows[pos].Cells[9].Text = "€"; } if (row.Cells[11].Text == "€") { table.Rows[pos].Cells[11].Text = "€"; } } table.Rows[pos].Cells[3].Attributes.Add("class", "pF"); table.Rows[pos].Cells[3].Width = 110; } // render the table into the htmlwriter table.RenderControl(htw); // render the htmlwriter into the response adding de style HttpContext.Current.Response.Write(codeFormat + sw.ToString()); HttpContext.Current.Response.End(); }