private void LoadTariff() { TariffPlanModel newTariff = ListViewTariffSelected; /* TariffPlanModel TariffConnected = dbOperation.GetAllServicesConnectedForClient(idUser).Where(i => i.name == extraService.name).FirstOrDefault(); * if (TariffConnected == null) * {*/ dbOperation.UpdateBalanceClient(idUser, -newTariff.costChangeTar); dbOperation.UpdateConnectTariff(idUser, newTariff.id); }
//ctor public TariffVM(int IdUsers) { idUser = IdUsers; ClientModel client = dbOperation.GetItemClient(idUser); if (client.isPhysCl == true) { TariffPlan = new BindableCollection <TariffPlanModel>(dbOperation.GetAllTariffPlanForPhys()); } else { TariffPlan = new BindableCollection <TariffPlanModel>(dbOperation.GetAllTariffPlanForLegal()); } TariffPlanModel ActiveTariff = dbOperation.GetActiveTariff(idUser); ListViewTariffSelected = ActiveTariff; //TariffPlanModel tariff = dbOperation.GetItemTariffPlan(ListViewTariffSelected.name); }
public List <ConnectTariffModel> GetConnectTariffClientForDate(int idClient, DateTime date) { List <ConnectTariff> connect = db.ConnectTariff.ToList().Where(i => i.idClient == idClient && i.dateConnectTariffBegin >= date).ToList(); List <ConnectTariffModel> tariffPlans = new List <ConnectTariffModel>(); foreach (ConnectTariff con in connect) { TariffPlanModel tar = db.TariffPlan.ToList().Select(i => new TariffPlanModel(i)).Where(i => i.id == con.idTariffPlan).FirstOrDefault(); int conMonth; if (con.dateConnectTariffEnd == null) { DateTime dateNow = DateTime.Now; conMonth = 0; while (Convert.ToDateTime(con.dateConnectTariffBegin).AddMonths(1) < dateNow) { conMonth++; } } else { conMonth = 0; while (Convert.ToDateTime(con.dateConnectTariffBegin).AddMonths(1) < con.dateConnectTariffEnd) { conMonth++; } } tariffPlans.Add(new ConnectTariffModel() { name = tar.name, dateConnectTariffBegin = con.dateConnectTariffBegin, dateConnectTariffEnd = con.dateConnectTariffEnd, idClient = con.idClient, connectedMonth = conMonth, cost = tar.subscriptionFee * conMonth + tar.costChangeTar, }); } return(tariffPlans); }
//СОЗДАНИЕ ЗАПИСИ В БАЗЕ ПО МОДЕЛИ public void CreateClient(ClientModel p) { if (p.isPhysCl == true) { db.Client.Add(new Client() { //id = p.id, balance = p.balance, startDate = null, ITN = null, legalAdress = null, nameOrganization = null, isPhysCl = p.isPhysCl, password = p.password, phoneNumber = p.phoneNumber, dateConnect = p.dateConnect, freeGB = p.freeGB, freeMin = p.freeMin, freeSms = p.freeSms, name = p.name, surName = p.surname, dateOfBirth = p.dateOfBirth, numberPassport = p.numberPassport }); TariffPlanModel tariff = GetItemTariffPlan("Base"); db.ConnectTariff.Add(new ConnectTariff() { dateConnectTariffBegin = DateTime.Now, dateConnectTariffEnd = null, idClient = p.id, idTariffPlan = tariff.id, }); } else { db.Client.Add(new Client() { //id = p.id, balance = p.balance, dateOfBirth = null, name = null, numberPassport = null, surName = null, isPhysCl = p.isPhysCl, password = p.password, phoneNumber = p.phoneNumber, dateConnect = p.dateConnect, freeGB = p.freeGB, freeMin = p.freeMin, freeSms = p.freeSms, nameOrganization = p.nameOrganisation, legalAdress = p.legalAdress, ITN = p.ITN, startDate = p.startDate }); TariffPlanModel tariff = GetItemTariffPlan("Base (corporate)"); db.ConnectTariff.Add(new ConnectTariff() { dateConnectTariffBegin = DateTime.Now, dateConnectTariffEnd = null, idClient = p.id, idTariffPlan = tariff.id, }); } Save(); }