예제 #1
0
        protected void btnLista_Click(object sender, EventArgs e)
        {
            Numeros num = ControllerManager_Alt.Numeros.GetById(Convert.ToInt32(DropDownList3.SelectedValue));

            foreach (ListItem lip in ListBox1.Items)
            {
                if (lip.Selected)
                {
                    PermissionManager.AddEntityPermision(num.GetType(), DropDownList3.SelectedItem.Text, lip.Text);
                }
            }
        }
예제 #2
0
 public QuoteRange Create(string title, Int32 max, Int32 min)
 {
     if (!AlreadyExists(title))
     {
         QuoteRange qr = new QuoteRange();
         PermissionManager.AddEntityPermision(qr.GetType(), title);
         return(Update(qr, title, max, min));
     }
     else
     {
         throw new Exception("Title already exists.");
     }
 }
예제 #3
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            PriceList pl = ControllerManager.PriceList.GetById(PriceListId);

            //IList<UserMember> lstUsers = new List<UserMember>();

            foreach (ListItem liUM in ltUsers.DestinationItems)
            {
                PermissionManager.AddEntityPermision(pl.GetType(), pl.ID.ToString(), liUM.Text);
            }

            foreach (ListItem liUM in ltUsers.SourceItems)
            {
                PermissionManager.RemovePermission(pl.GetType(), pl.ID.ToString(), liUM.Text);
            }

            Response.Redirect("/pricelists/addusers/default.aspx?Id=" + pl.ID);
        }
예제 #4
0
        public Quote AddItems(GridState gridState, IList <Filters.IFilter> filters, int quoteId, string distributorName, string description, string observations, int vigency, int quoteCondition, int quoteIntroText, string email, string contact, out bool canfinal)
        {
            canfinal = true;
            Quote q = new Quote();

            if (quoteId > 0)
            {
                q = GetById(quoteId);
            }

            q.Distributor  = ControllerManager.Distributor.GetByName(distributorName);
            q.Condition    = ControllerManager.Lookup.GetById(quoteCondition);
            q.Description  = description;
            q.IntroText    = ControllerManager.Lookup.GetById(quoteIntroText);
            q.Observations = observations;
            q.Status       = QuoteStatus.Draft;
            q.Vigency      = ControllerManager.Lookup.GetById(vigency);
            q.Email        = email;
            q.Contact      = contact;

            MasterPriceSearchParameters mpsp = FilterHelper.GetSearchFilters(filters);

            //Si no limpiamos los items antes de agregarlos, se ahorraria tiempo y se podria acomodar por fecha de creación.
            //¿Porque se sacan todos?
            q.QuoteItems.Clear();
            List <PriceBase> temppblist = ControllerManager.PriceBase.GetPriceBases(string.Empty, null, null, null, null, null, null, false, gridState.Items, false, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null);

            foreach (PriceBase priceBase in temppblist)
            {
                canfinal = canfinal && AddItem(q, priceBase, string.Empty);
            }

            Save(q);
            CommitChanges();
            q.Number = q.ID.ToString("000000");

            if (quoteId == 0)
            {
                PermissionManager.AddEntityPermision(q.GetType(), q.ID.ToString(), MembershipHelper.GetUser().UserName);
            }

            return(q);
        }
예제 #5
0
        public Quote AddItems(GridState gridState, int quoteId, string distributorName, string description, string observations, int vigency, int quoteCondition, int quoteIntroText, string email, string contact, out bool canfinal, List <int> contactids, int currencyId)
        {
            lstRates = ControllerManager.CurrencyRate.GetArray();

            canfinal = true;
            Currency c = ControllerManager.Currency.GetById(currencyId);
            Quote    q = new Quote();

            if (quoteId > 0)
            {
                q = repository.GetById(quoteId);
            }

            Distributor d = ControllerManager.Distributor.GetByName(distributorName);

            q.Distributor  = d;
            q.Condition    = ControllerManager.Lookup.GetById(quoteCondition);
            q.Description  = description;
            q.IntroText    = ControllerManager.Lookup.GetById(quoteIntroText);
            q.Observations = observations;
            q.Status       = QuoteStatus.Draft;
            q.Vigency      = ControllerManager.Lookup.GetById(vigency);
            q.Currency     = c;
            q.CurrencyRate = ControllerManager.CurrencyRate.GetLast(q.Currency);

            List <Contact> temp = new List <Contact>(d.Contacts);

            AddContactNotifications(q, temp, contactids);
            if (!string.IsNullOrEmpty(email.Trim()))
            {
                AddNotifications(q, contact.Trim(), email.Trim());
            }

            if (q.QuoteNotifications.Count == 0 && !string.IsNullOrEmpty(q.Distributor.Email))
            {
                AddNotifications(q, q.Distributor.Contact, q.Distributor.Email);
            }
            else if (q.QuoteNotifications.Count == 0 && !string.IsNullOrEmpty(q.Distributor.AlternativeEmail))
            {
                AddNotifications(q, q.Distributor.Contact, q.Distributor.AlternativeEmail);
            }

            //Si no limpiamos los items antes de agregarlos, se ahorraria tiempo y se podria acomodar por fecha de creación.
            //¿Porque se sacan todos?
            //q.QuoteItems.Clear();

            List <PriceBase> temppblist = ControllerManager.PriceBase.GetPriceBases(string.Empty, null, null, null, null, null, null, false, gridState.Items, false, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null);

            int i = 1;

            foreach (int item in gridState.Items)
            {
                PriceBase pb = temppblist.Find(delegate(PriceBase record)
                {
                    if (record.ID == item)
                    {
                        return(true);
                    }
                    return(false);
                });
                canfinal = canfinal && AddItem(q, pb, string.Empty, i);
                i++;
            }


            //foreach (PriceBase priceBase in temppblist)
            //    canfinal = canfinal && AddItem(q, priceBase, string.Empty);

            repository.Save(q);
            repository.CommitChange();
            q.Number = q.ID.ToString("000000");

            if (quoteId == 0)
            {
                PermissionManager.AddEntityPermision(q.GetType(), q.ID.ToString(), MembershipHelper.GetUser().UserName);
            }

            return(q);
        }