示例#1
0
        public void DeleteTariff(Tariff tariff)
        {
            if (!(Tariffs?.Count > 0)) // список не чуществует или пуст
            {
                return;
            }

            Tariffs.Remove(tariff);
        }
        public IReadOnlyList <AirTariff> GetAirTariffs()
        {
            if (Tariffs == null)
            {
                return(new List <AirTariff>());
            }

            return(Tariffs.OfType <AirTariff>().ToList());
        }
        public IEnumerable <AirTariff> GetAirTariffs()
        {
            if (Tariffs == null)
            {
                return(Enumerable.Empty <AirTariff>());
            }

            return(Tariffs.OfType <AirTariff>());
        }
示例#4
0
        public Tariffs GetTariffs()
        {
            TariffDao tariffDao = new TariffDao();
            Tariffs   tariffs   = new Tariffs();

            tariffs.tariffs = tariffDao.GetAll();

            return(tariffs);
        }
        public ActionResult Cabinet()
        {
            Users    user   = DbContext.Users.ToList().Where(u => u.IdCard.Equals(Session["userId"])).First();
            SimCards card   = DbContext.SimCards.Where(c => c.CustomerId.Equals(user.IdCard)).First();
            Tariffs  tariff = DbContext.Tariffs.ToList().Where(t => t.TariffId == card.TariffId).First();

            ViewBag.Tariff = tariff;
            IEnumerable <SimServices> activations = DbContext.SimServices.ToList().Where(ss => ss.SimId.Equals(card.SimId) && ss.StatusCode == 1);
            List <Services>           services    = new List <Services>();

            foreach (SimServices activation in activations)
            {
                services.Add(DbContext.Services.ToList().Where(s => s.ServiceId == activation.ServiceId).First());
            }
            return(View(services));
        }
示例#6
0
        public void ChangeTariff(Tariffs tariff)
        {
            if (TariffPlan == tariff)
            {
                Notify?.Invoke(this, $"This is your current tariff: {tariff}");
                return;
            }
            DateTime date = DateTime.Now;

            if (date.Subtract(tariffChangeDate).Days > 30)
            {
                TariffPlan       = tariff;
                tariffChangeDate = date;
                Notify?.Invoke(this, $"Your tariff changed: {tariff}");
            }
            else
            {
                Notify?.Invoke(this, $"You can change your tariff plan in {30 - date.Subtract(tariffChangeDate).Days} days");
            }
        }
        public ActionResult ChangeTariff(int id)
        {
            Users   user  = DbContext.Users.ToList().Where(u => u.IdCard.Equals(Session["userId"])).First();
            Tariffs tarif = DbContext.Tariffs.ToList().Where(t => t.TariffId == id).First();

            if (DbContext.SimCards.ToList().Where(c => c.CustomerId.Equals(user.IdCard)).First().TariffId != id)
            {
                DbContext.SimCards.Where(c => c.CustomerId.Equals(user.IdCard)).First().TariffId = id;
                double newBalance = user.Balance - tarif.Price;
                user.Balance = newBalance;
                DbContext.SaveChanges();
                Session["balance"] = newBalance;
                ViewBag.Message    = "You're succesfully changed your tariff to " + tarif.TariffName;
                ViewBag.Status     = "success";
                return(View("Tariffs", DbContext.Tariffs.ToList()));
            }
            ViewBag.Message = "There was an arror during changing a tariff, please try again later";
            ViewBag.Status  = "danger";
            return(View("Tariffs", DbContext.Tariffs.ToList()));
        }
        private void GetTars()
        {
            tarsList.Clear();
            try
            {
                using (OracleConnection connection = new OracleConnection(OracleDatabaseConnection.adminConn))
                {
                    connection.Open();
                    OracleParameter curs = new OracleParameter
                    {
                        ParameterName = "curs",
                        Direction     = ParameterDirection.Output,
                        OracleDbType  = OracleDbType.RefCursor,
                    };

                    using (OracleCommand command = new OracleCommand("getTar"))
                    {
                        command.Connection  = connection;
                        command.CommandType = CommandType.StoredProcedure;
                        command.Parameters.AddRange(new OracleParameter[] { curs });
                        var       reader = command.ExecuteReader();
                        DataTable dt     = new DataTable();
                        dt.Load(reader);

                        foreach (DataRow row in dt.Rows)
                        {
                            tars = new Tariffs(row["Name"].ToString(), row["Price"].ToString());
                            tarsList.Add(tars);
                        }
                    }
                }
            }
            catch (OracleException ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
示例#9
0
 public void AddTariff(Tariff tariff)
 {
     Tariffs ??= new List <Tariff>();
     Tariffs.Add(tariff);
 }
 /// <summary>
 /// Получение тарифа для определённого сегмента услуги, в случае если подобная привязка допустима
 /// </summary>
 /// <param name="segmentID">ИД сегмента в услуге, для которого требуется получить тариф</param>
 /// <returns>Тариф для указанной услуги</returns>
 public BaseTariff GetTariffForSegment(int segmentID)
 {
     return(Tariffs != null?Tariffs.Find(t => t is AirTariff && ((AirTariff)t).SegmentID == segmentID) : null);
 }