static void Main(string[] args) { IATE ate = new ATE(); CallHandler handler = new CallHandler(); IBillingSystem bs = new BillingSystem(ate); IContract c1 = ate.SignContract(new Client("Vasya", "Topolev"), TypeOfTariff.Mini); IContract c2 = ate.SignContract(new Client("Petya", "Sosnov"), TypeOfTariff.Maxi); IContract c3 = ate.SignContract(new Client("Gena", "Beresov"), TypeOfTariff.Mini); c1.Client.PutMoney(5000); c1.Client.WithdrawMoney(30); Terminal t1 = ate.NewTerminal(c1); Terminal t2 = ate.NewTerminal(c2); Terminal t3 = ate.NewTerminal(c3); t1.ConnectToATS(); t2.ConnectToATS(); t3.ConnectToATS(); t1.Call(t2.Number); Thread.Sleep(1111); t2.EndCall(); t3.Call(t1.Number); Thread.Sleep(2222); t3.EndCall(); t2.Call(t1.Number); Thread.Sleep(3333); t1.EndCall(); Console.ReadKey(); }
static void Main(string[] args) { IATE aTEx = new ATE(); IBillingSystem bs = new BillingSys(aTEx); IReportCreator report = new ReportCreator(); IContract con1 = aTEx.RegisterContract(new User("Anton", "Goncharuk"), TypeOffTariffPlan.Business); IContract con2 = aTEx.RegisterContract(new User("Olga", "Gordeeva"), TypeOffTariffPlan.Smart); IContract con3 = aTEx.RegisterContract(new User("Alex", "Kulesh"), TypeOffTariffPlan.SmartUnlim); IContract con4 = aTEx.RegisterContract(new User("Misha", "Antonov"), TypeOffTariffPlan.SmartMini); Console.WriteLine(new string('=', 75)); Console.WriteLine("Abonents: =>"); Console.WriteLine(con1.User.FirstName + " " + con1.User.LastName + " " + con1.Number + " " + con1.Tariff.TypeOffTariffPlan + " " + con1.User.Money); Console.WriteLine(con2.User.FirstName + " " + con2.User.LastName + " " + con2.Number + " " + con2.Tariff.TypeOffTariffPlan + " " + con2.User.Money); Console.WriteLine(con3.User.FirstName + " " + con3.User.LastName + " " + con3.Number + " " + con3.Tariff.TypeOffTariffPlan + " " + con3.User.Money); Console.WriteLine(con4.User.FirstName + " " + con4.User.LastName + " " + con4.Number + " " + con4.Tariff.TypeOffTariffPlan + " " + con4.User.Money); Console.WriteLine(new string('=', 75)); con4.ChangeTariff(TypeOffTariffPlan.Business); Console.WriteLine(new string('=', 75)); var ter1 = aTEx.NewTerminal(con1); var ter2 = aTEx.NewTerminal(con2); var ter3 = aTEx.NewTerminal(con3); var ter4 = aTEx.NewTerminal(con4); ter1.ConnectToPort(); ter2.ConnectToPort(); ter3.ConnectToPort(); ter4.ConnectToPort(); ter1.Call(ter2.Number); ter3.Call(ter1.Number); //ter4.DisconnectFromPort(); ter1.Call(ter4.Number); Console.WriteLine(new string('=', 75)); Console.WriteLine("Report by number: {0}", ter1.Number); report.Create(bs.GetReport(ter1.Number), TypeOfSort.SortByDate); Console.WriteLine(new string('=', 75)); //report.Create(bs.GetReport(ter1.Number), TypeOfSort.SortByCallType); //Console.WriteLine(new string('=', 75)); //report.Create(bs.GetReport(ter1.Number), TypeOfSort.SortByNumber); //Console.WriteLine(new string('=', 75)); //report.Create(bs.GetReport(ter1.Number), TypeOfSort.SortByCost); //Console.WriteLine(new string('=', 75)); //Console.WriteLine(con1.User.FirstName + " " + con1.User.LastName + " " + con1.Number + " " + con1.Tariff.TypeOffTariffPlan + " " + con1.User.Money); //Console.WriteLine(con2.User.FirstName + " " + con2.User.LastName + " " + con2.Number + " " + con2.Tariff.TypeOffTariffPlan + " " + con2.User.Money); //Console.WriteLine(con3.User.FirstName + " " + con3.User.LastName + " " + con3.Number + " " + con3.Tariff.TypeOffTariffPlan + " " + con3.User.Money); //Console.WriteLine(con4.User.FirstName + " " + con4.User.LastName + " " + con4.Number + " " + con4.Tariff.TypeOffTariffPlan + " " + con4.User.Money); //Console.WriteLine(new string('=', 75)); }
static void Main(string[] args) { IATE ate = new ATE(); IReportRender render = new ReportRender(); BillingSystem bs = new BillingSystem(ate); IContract c1 = ate.RegisterContract(new Subscriber("John", "Smith"), TariffType.Pro); IContract c2 = ate.RegisterContract(new Subscriber("James", "Bond"), TariffType.Pro); IContract c3 = ate.RegisterContract(new Subscriber("Jansen", "Born"), TariffType.Pro); c1.Subscriber.AddMoney(10); var t1 = ate.GetNewTerminal(c1); var t2 = ate.GetNewTerminal(c2); var t3 = ate.GetNewTerminal(c3); t1.ConnectToPort(); t2.ConnectToPort(); t3.ConnectToPort(); t1.Call(t2.TelephoneNumber); Thread.Sleep(2000); t2.EndCall(); t3.Call(t1.TelephoneNumber); Thread.Sleep(1000); t3.EndCall(); t2.Call(t1.TelephoneNumber); Thread.Sleep(3000); t1.EndCall(); t1.Disconnect(); t2.Disconnect(); t3.Disconnect(); t3.Call(t1.TelephoneNumber); Console.WriteLine(); Console.WriteLine("Sorted records:"); foreach (var item in render.SortCalls(bs.GetReport(t1.TelephoneNumber), TypeSort.SortByCallType)) { Console.WriteLine( "Calls:\n Type {0} |\n Date: {1} |\n Duration: {2:mm:ss} | Cost: {3} | Telephone number: {4}", item.CallType, item.Date, item.Time, item.Cost, item.Number); } Console.ReadKey(); }
public async Task <IActionResult> etatactivite([FromBody] ATE act) { if (ModelState.IsValid) { try { List <EtatActivite> NewTA = new List <EtatActivite>(); List <EtatActivite> TAToDelete = new List <EtatActivite>(); List <EtatActivite> currentTA = new List <EtatActivite>(); List <EtatActivite> TAToAdd = new List <EtatActivite>(); foreach (int id in act.ActivitesIds) { NewTA.Add(new EtatActivite { Etat = _unitOfWork.Etat.GetSingleOrDefault(e => e.Id == act.EtatId), Activite = _unitOfWork.Activite.GetSingleOrDefault(e => e.Id == id) }); } currentTA = _unitOfWork.EtatActivite.Find(e => e.EtatId == act.EtatId).ToList(); TAToAdd = NewTA.Except(currentTA).ToList(); TAToDelete = currentTA.Except(NewTA).ToList(); foreach (var item in TAToDelete) { _unitOfWork.EtatActivite.Remove(item); } await _unitOfWork.SaveChangesAsync(); foreach (var item in TAToAdd) { _unitOfWork.EtatActivite.Add(item); } await _unitOfWork.SaveChangesAsync(); return(Ok("OK")); } catch (Exception ex) { return(BadRequest(ex.Data)); } } else { return(BadRequest(ModelState)); } }
static void Main(string[] args) { IATE ate1 = new ATE(); ITariff tariffFirst = new Tariff("First", 0.1); ITariff tariffSecond = new Tariff("Second", 0.2); Terminal term1 = new Terminal(1); Terminal term2 = new Terminal(2); Terminal term3 = new Terminal(3); Terminal term4 = new Terminal(4); term1.ConnectToPort(ate1.MakeContract(tariffFirst, term1.Id)); term1.ConnectToPort(ate1.MakeContract(tariffFirst, term1.Id)); term2.ConnectToPort(ate1.MakeContract(tariffSecond, term2.Id)); term3.ConnectToPort(ate1.MakeContract(tariffSecond, term3.Id)); term4.ConnectToPort(ate1.MakeContract(tariffFirst, term4.Id)); Console.WriteLine("------"); Console.WriteLine(term1.GetNumber()); Console.WriteLine(term2.GetNumber()); Console.WriteLine(term3.GetNumber()); Console.WriteLine(term4.GetNumber()); Console.WriteLine("------"); term1.Call(term1.GetNumber()); term1.Call(term2.GetNumber()); term3.Call(term4.GetNumber()); Thread.Sleep(4000); term1.EndCall(); term4.EndCall(); Console.WriteLine("------"); term1.GetHistory(); Console.WriteLine("------"); term2.GetHistory(); Console.WriteLine("------"); term3.GetHistory(); Console.ReadKey(); }
public override IEnumerable <AtendimentoPendenteViewModel> BindReport(params object[] param) { int?areaAtendimentoId = null; if (param[0].ToString() != "") { areaAtendimentoId = int.Parse(param[0].ToString()); } using (seguranca_db = new SecurityContext()) { var q = from zapata in ((from cha in db.Chamados.AsEnumerable() join ate in db.Atendimentos on cha.chamadoId equals ate.chamadoId into ATE from ate in ATE.DefaultIfEmpty() join a in db.Associados on cha.associadoId equals a.associadoId join m in db.Medicos on a.associadoId equals m.associadoId join are in db.AreaAtendimentos on cha.areaAtendimentoId equals are.areaAtendimentoId where (areaAtendimentoId == null || cha.areaAtendimentoId == areaAtendimentoId) && cha.situacao == "A" && ate == null select new AtendimentoPendenteViewModel() { associadoId = a.associadoId, nome = a.nome, cpf = a.cpf, crm = m.CRM, email = a.email1, isSindicalizado = a.isSindicalizado, chamadoId = cha.chamadoId, dt_chamado = cha.dt_chamado, dt_chamado2 = cha.dt_chamado.ToString("dd/Mm/yyyy HH:mm"), atraso = SqlMethods.DateDiffDay(cha.dt_chamado, DateTime.Today), areaAtendimentoId = cha.areaAtendimentoId, descricao_areaAtendimento = are.descricao, assunto = cha.assunto, usuarioId = cha.usuarioId, })) select new AtendimentoPendenteViewModel() { associadoId = zapata.associadoId, nome = zapata.nome, cpf = zapata.cpf, crm = zapata.crm, email = zapata.email, isSindicalizado = zapata.isSindicalizado, chamadoId = zapata.chamadoId, dt_chamado = zapata.dt_chamado, dt_chamado2 = zapata.dt_chamado2, atraso = zapata.atraso, areaAtendimentoId = zapata.areaAtendimentoId, descricao_areaAtendimento = zapata.descricao_areaAtendimento, assunto = zapata.assunto, usuarioId = zapata.usuarioId, usuario_nome = (zapata.usuarioId.HasValue ? (from usu in seguranca_db.Usuarios where usu.usuarioId == zapata.usuarioId select usu.nome).FirstOrDefault() : null) }; var z = from zapata in ((from cha in db.Chamados.AsEnumerable() join ate in db.Atendimentos on cha.chamadoId equals ate.chamadoId join a in db.Associados on cha.associadoId equals a.associadoId join m in db.Medicos on a.associadoId equals m.associadoId join are in db.AreaAtendimentos on cha.areaAtendimentoId equals are.areaAtendimentoId where (areaAtendimentoId == null || cha.areaAtendimentoId == areaAtendimentoId) && ate.dt_atendimento == (from ate1 in db.Atendimentos where ate1.chamadoId == cha.chamadoId select ate1.dt_atendimento).Max() && cha.situacao == "A" select new AtendimentoPendenteViewModel() { associadoId = a.associadoId, nome = a.nome, cpf = a.cpf, crm = m.CRM, email = a.email1, isSindicalizado = a.isSindicalizado, chamadoId = cha.chamadoId, dt_chamado = cha.dt_chamado, dt_chamado2 = cha.dt_chamado.ToString("dd/Mm/yyyy HH:mm"), dt_atendimento = ate.dt_atendimento, atraso = SqlMethods.DateDiffDay(cha.dt_chamado, DateTime.Today), areaAtendimentoId = cha.areaAtendimentoId, descricao_areaAtendimento = are.descricao, assunto = cha.assunto, usuarioId = cha.usuarioId })) select new AtendimentoPendenteViewModel() { associadoId = zapata.associadoId, nome = zapata.nome, cpf = zapata.cpf, crm = zapata.crm, email = zapata.email, isSindicalizado = zapata.isSindicalizado, chamadoId = zapata.chamadoId, dt_chamado = zapata.dt_chamado, dt_chamado2 = zapata.dt_chamado2, dt_atendimento = zapata.dt_atendimento, atraso = zapata.atraso, areaAtendimentoId = zapata.areaAtendimentoId, descricao_areaAtendimento = zapata.descricao_areaAtendimento, assunto = zapata.assunto, usuarioId = zapata.usuarioId, usuario_nome = (zapata.usuarioId.HasValue ? (from usu in seguranca_db.Usuarios where usu.usuarioId == zapata.usuarioId select usu.nome).FirstOrDefault() : null) }; return(q.Union(z).OrderBy(m => m.chamadoId).ToList()); } }