示例#1
0
 public void Add(string GameName, ICampaignManager campaign)
 {
     foreach (var game in games)
     {
         if (game.GameName == GameName)
         {
             campaign.Add(game);
         }
     }
 }
示例#2
0
        public void Buy(Player player, GameManager gameManager, ICampaignManager campaignManager)
        {
            double newPriceToPrint = campaignManager.NewPriceToPrintMethod(gameManager);

            Console.WriteLine("The game named " + gameManager.gameName + " was purchased by "
                              + player.Name + " " + player.Surname
                              + "\nGame Price: " + gameManager.gamePrice
                              + "\nCampaign: " + campaignManager.CampaignName
                              + "\nNew Game Price: " + newPriceToPrint);
        }
示例#3
0
 public void CompainGame(List <Game> games, string GameName, ICampaignManager campaign)
 {
     foreach (var game in games)
     {
         if (game.GameName == GameName)
         {
             int ilkFiyat = game.GamePrice;
             campaign.Add(game);
             Console.WriteLine(game.GameName + " " + "Ürününüzün ilk fiyatı: " + ilkFiyat + "\n" + "İndirimli Fiyatı : " + game.GamePrice);
         }
     }
 }
示例#4
0
        public void ActualizaRegistroMarkDone(ICase _caseIdentifier, Interaccion _inx)
        {
            DataRow rowUpdate = null;
            string  connid    = "";
            var     tipo      = _caseIdentifier.MainInteraction.Type;

            switch (tipo)
            {
            case "InteractionVoice":
                if (_caseIdentifier.MainInteraction.HasOutboundChainRecord)
                {
                    ICampaignManager cm = InteractionExtensionCrossnetModule._container.Resolve <ICampaignManager>();
                    IWCampaign       c;

                    for (int i = 0; i < cm.IWCampaigns.Count(); i++)
                    {
                        if (cm.IWCampaigns[i].Mode.Value != null)
                        {
                            _inx.genDialMode = cm.IWCampaigns[i].Mode.Value.ToString();
                        }
                    }


                    if (_inx.genDialMode != null)
                    {
                        if (_inx.genDialMode.Equals("PROGRESSIVE") || _inx.genDialMode.Equals("PREDICTIVE"))
                        {
                            rowUpdate           = InteractionExtensionCrossnetModule._TablaInteraccion.Select("idMarkDone = '" + _caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Id + "'").FirstOrDefault();
                            rowUpdate["Estado"] = "TIPIFICADO";
                        }
                        else
                        {
                            var item3 = _caseIdentifier.MainInteraction.OutboundChainRecord.Records.FirstOrDefault();
                            rowUpdate = InteractionExtensionCrossnetModule._TablaInteraccion.Select("idMarkDone = '" + item3.CallAttemptGUID + "'").FirstOrDefault();
                        }
                    }
                    else
                    {
                        var item2 = _caseIdentifier.MainInteraction.OutboundChainRecord.Records.FirstOrDefault();
                        rowUpdate = InteractionExtensionCrossnetModule._TablaInteraccion.Select("idMarkDone = '" + item2.CallAttemptGUID + "'").FirstOrDefault();
                    }
                }
                else
                if (_caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Profile != null)
                {
                    if (_caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Profile.ToString().Equals("Consult"))
                    {
                        connid = _caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Data.Owner != null?
                                 _caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Data.Owner.ToString() : "";
                    }
                }


                rowUpdate           = InteractionExtensionCrossnetModule._TablaInteraccion.Select("idMarkDone = '" + _caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Id + "'").FirstOrDefault();
                rowUpdate["Estado"] = "TIPIFICADO";
                break;

            case "InteractionPullPreview":
                var item = _caseIdentifier.MainInteraction.OutboundChainRecord.Records.FirstOrDefault();
                rowUpdate           = InteractionExtensionCrossnetModule._TablaInteraccion.Select("idMarkDone = '" + item.CallAttemptGUID + "'").FirstOrDefault();
                rowUpdate["Estado"] = "TIPIFICADO";
                break;

            case "InteractionCallback":
                rowUpdate           = InteractionExtensionCrossnetModule._TablaInteraccion.Select("idMarkDone = '" + _caseIdentifier.MainInteraction.EntrepriseInteractionCurrent.Id + "'").FirstOrDefault();
                rowUpdate["Estado"] = "TIPIFICADO";
                break;
            }
        }
示例#5
0
 public CampaignsController(ICampaignManager campaignManager, ILogger <CampaignsController> logger)
 {
     _campaignManager = campaignManager;
     _logger          = logger;
 }
示例#6
0
 public void Decrease(ICampaignManager campaignManager)
 {
     campaignManager.DecreasePrice();
 }
示例#7
0
 public CampaignController(ICampaignManager campaignManager, IWinnerManager winnerManager)
 {
     _campaignManager = campaignManager;
     _winnerManager = winnerManager;
 }
示例#8
0
 public void Sales(Customer customer, ICampaignManager campaignManager)
 {
     Console.Write(customer.FirstName + " " + customer.LastName + " adlı oyuncuya ");
     campaignManager.CalculateCampaign();
 }
示例#9
0
 public OrderManager(ICampaignManager campaignManager)
 {
     _campaignManager = campaignManager;
 }
        private void ConvierteClase(int idEvento, IMessage evento, IInteraction inx)
        {
            var data = "";

            if (_caseIdentifier.CaseId != null)
            {
                data = _caseIdentifier.CaseId;
            }
            else if (inx.CaseId != null)
            {
                data = _caseIdentifier.CaseId;
            }

            InteractionVoz inxVoz  = new InteractionVoz();
            Campana        campana = new Campana();

            switch (idEvento)
            {
            case EventDialing.MessageId:
                var eventDial = evento as EventDialing;
                inxVoz.CImessage = new CImessage
                {
                    nombreEvento   = eventDial.Name,
                    ani            = eventDial.ANI,
                    dnis           = eventDial.DNIS,
                    CallType       = eventDial.CallType,
                    Connid         = eventDial.ConnID.ToString(),
                    eventId        = eventDial.Id,
                    TransferConnid = eventDial.TransferConnID != null?
                                     eventDial.TransferConnID.ToString() :
                                         "",
                };
                inxVoz.Cinteraction = new CIInteracion
                {
                    CaseId            = inx.CaseId,
                    HasOutboundRecord = inx.HasOutboundChainRecord,
                    Records           = null,
                    type = inx.Type
                };

                inxVoz.CinteractionWebInx = new CIInteracionWeb
                {
                    formulario = null,
                    ParentId   = inx.ParentInteractionId
                };

                if (inxVoz.Cinteraction.HasOutboundRecord)
                {
                    ICampaignManager cm = _container.Resolve <ICampaignManager>();
                    IWCampaign       c;

                    for (int i = 0; i < cm.IWCampaigns.Count(); i++)
                    {
                        if (cm.IWCampaigns[i].Mode.Value != null)
                        {
                            inxVoz.CImessage.DialMode = cm.IWCampaigns[i].Mode.Value.ToString();
                        }
                    }
                }


                var xmlAtachado = Utility.GeneraXMLAtachado(listaAtached, inx);
                if (xmlAtachado != null)
                {
                    inxVoz.ATTACHED = XElement.Parse(xmlAtachado.ToString());
                }
                if (inx.IsMonitoredByMe)
                {
                    inxVoz.CImessage.EsMonitoreada = true;
                }
                break;

            case EventAck.MessageId:
                var eventInvite = evento as EventAck;
                inxVoz.CImessage = new CImessage
                {
                    nombreEvento = eventInvite.Name,
                    ani          = "",
                    dnis         = "",

                    Connid         = inx.InteractionId,
                    eventId        = eventInvite.Id,
                    TransferConnid = ""
                };
                inxVoz.Cinteraction = new CIInteracion
                {
                    CaseId            = inx.CaseId,
                    HasOutboundRecord = inx.HasOutboundChainRecord,
                    Records           = null,
                    type = inx.Type
                };

                inxVoz.CinteractionWebInx = new CIInteracionWeb
                {
                    formulario = null,
                    ParentId   = inx.EntrepriseInteractionCurrent.Id
                };

                if (inxVoz.Cinteraction.HasOutboundRecord)
                {
                    ICampaignManager cm = _container.Resolve <ICampaignManager>();
                    IWCampaign       c;

                    for (int i = 0; i < cm.IWCampaigns.Count(); i++)
                    {
                        if (cm.IWCampaigns[i].Mode.Value != null)
                        {
                            inxVoz.CImessage.DialMode = cm.IWCampaigns[i].Mode.Value.ToString();
                        }
                    }
                }


                var xmlAtachadoInvite = Utility.GeneraXMLAtachado(listaAtached, inx);
                if (xmlAtachadoInvite != null)
                {
                    inxVoz.ATTACHED = XElement.Parse(xmlAtachadoInvite.ToString());
                }
                if (inx.IsMonitoredByMe)
                {
                    inxVoz.CImessage.EsMonitoreada = true;
                }
                break;

            case EventEstablished.MessageId:
                var eventEstablished = evento as EventEstablished;
                inxVoz.CImessage = new CImessage
                {
                    nombreEvento   = eventEstablished.Name,
                    ani            = eventEstablished.ANI,
                    dnis           = eventEstablished.DNIS,
                    CallType       = eventEstablished.CallType,
                    Connid         = eventEstablished.ConnID.ToString(),
                    eventId        = eventEstablished.Id,
                    TransferConnid = eventEstablished.TransferConnID != null?
                                     eventEstablished.TransferConnID.ToString() :
                                         "",
                };
                inxVoz.Cinteraction = new CIInteracion
                {
                    CaseId            = inx.CaseId,
                    HasOutboundRecord = inx.HasOutboundChainRecord,
                    Records           = null,
                    type = inx.Type
                };
                inxVoz.CinteractionWebInx = new CIInteracionWeb
                {
                    formulario = null,
                    ParentId   = inx.ParentInteractionId
                };

                if (inxVoz.Cinteraction.HasOutboundRecord)
                {
                    ICampaignManager cm = _container.Resolve <ICampaignManager>();
                    IWCampaign       c;

                    for (int i = 0; i < cm.IWCampaigns.Count(); i++)
                    {
                        if (cm.IWCampaigns[i].Mode.Value != null)
                        {
                            inxVoz.CImessage.DialMode = cm.IWCampaigns[i].Mode.Value.ToString();
                        }
                        var nombreCampaign = cm.IWCampaigns[i].Name.ToString();
                    }

                    if (inxVoz.CImessage.DialMode.Equals("PROGRESSIVE") || inxVoz.CImessage.DialMode.Equals("PREDICTIVE"))
                    {
                        ConvierteClaseCampana(inx);
                    }
                }

                var xmlAtachad = Utility.GeneraXMLAtachado(listaAtached, inx);
                if (xmlAtachad != null)
                {
                    inxVoz.ATTACHED = XElement.Parse(xmlAtachad.ToString());
                }
                string transferidoOrigen = "";
                if (eventEstablished.UserData.GetAsKeyValueCollection("IWAttachedDataInformation") != null)
                {
                    var ValuesKey = eventEstablished.UserData.GetAsKeyValueCollection("IWAttachedDataInformation");
                    if (ValuesKey.GetValues("GCS_TransferringAgentName") != null)
                    {
                        transferidoOrigen = ValuesKey.GetValues("GCS_TransferringAgentName").FirstOrDefault().ToString();
                    }
                }
                if (inx.IsMonitoredByMe)
                {
                    inxVoz.CImessage.EsMonitoreada = true;
                }

                //if (transferidoOrigen != "" && transferidoOrigen != Agente.UserName)
                //    return;

                break;

            case EventPartyChanged.MessageId:
                var eventPartyChanged = evento as EventPartyChanged;
                inxVoz.CImessage = new CImessage
                {
                    nombreEvento   = eventPartyChanged.Name,
                    ani            = eventPartyChanged.ANI,
                    dnis           = eventPartyChanged.DNIS,
                    CallType       = eventPartyChanged.CallType,
                    Connid         = eventPartyChanged.ConnID.ToString(),
                    eventId        = eventPartyChanged.Id,
                    TransferConnid = eventPartyChanged.PreviousConnID != null?
                                     eventPartyChanged.PreviousConnID.ToString() : "",
                };
                inxVoz.Cinteraction = new CIInteracion
                {
                    CaseId            = inx.CaseId,
                    HasOutboundRecord = inx.HasOutboundChainRecord,
                    Records           = null,
                    type = inx.Type
                };

                inxVoz.CinteractionWebInx = new CIInteracionWeb
                {
                    formulario = null,
                    ParentId   = inx.ParentInteractionId
                };

                if (inx.GetAttachedData("GCS_TransferringAgentName") != null)
                {
                    var agenteTransferencia = inx.GetAttachedData("GCS_TransferringAgentName").ToString();

                    if (!agenteTransferencia.Equals(Agente.UserName))
                    {
                        _metodos.InsertaRegistroMarkDoneModule(inx);
                        return;
                    }
                }
                if (inx.IsMonitoredByMe)
                {
                    inxVoz.CImessage.EsMonitoreada = true;
                }
                break;

            case EventReleased.MessageId:
                var eventReleased = evento as EventReleased;
                inxVoz.CImessage = new CImessage
                {
                    nombreEvento   = eventReleased.Name,
                    ani            = eventReleased.ANI,
                    dnis           = eventReleased.DNIS,
                    CallType       = eventReleased.CallType,
                    Connid         = eventReleased.ConnID.ToString(),
                    eventId        = eventReleased.Id,
                    TransferConnid = eventReleased.TransferConnID != null?
                                     eventReleased.TransferConnID.ToString() :
                                         "",

                                         Release = eventReleased.Extensions.GetAsString("ReleasingParty") != null?
                                                   eventReleased.Extensions.GetAsString("ReleasingParty").ToString() :
                                                       null,
                };
                inxVoz.Cinteraction = new CIInteracion
                {
                    CaseId            = inx.CaseId,
                    HasOutboundRecord = inx.HasOutboundChainRecord,
                    Records           = null,
                    type = inx.Type
                };

                if (inx.EntrepriseInteractionCurrent.Profile != null)
                {
                    if (inx.EntrepriseInteractionCurrent.Profile.ToString().Equals("Transfered"))
                    {
                        inxVoz.CImessage.TransferConnid = inx.EntrepriseInteractionCurrent.Data.Owner != null?
                                                          inx.EntrepriseInteractionCurrent.Data.Owner.ToString() : "";
                    }
                }



                if (inxVoz.Cinteraction.HasOutboundRecord)
                {
                    ICampaignManager cm = _container.Resolve <ICampaignManager>();
                    IWCampaign       c;

                    for (int i = 0; i < cm.IWCampaigns.Count(); i++)
                    {
                        if (cm.IWCampaigns[i].Mode.Value != null)
                        {
                            inxVoz.CImessage.DialMode = cm.IWCampaigns[i].Mode.Value.ToString();
                        }
                    }

                    if (inxVoz.CImessage.DialMode.Equals("PROGRESSIVE") || inxVoz.CImessage.DialMode.Equals("PREDICTIVE"))
                    {
                        ConvierteClaseCampana(inx);
                    }
                }

                if (inxVoz.CImessage.TransferConnid.Equals(inxVoz.CImessage.Connid))
                {
                    inxVoz.CImessage.TransferConnid = eventReleased.TransferConnID != null?
                                                      eventReleased.TransferConnID.ToString() :
                                                          "";
                }
                if (inx.EntrepriseInteractionCurrent.Profile != null)
                {
                    if (inx.EntrepriseInteractionCurrent.Profile.ToString().Equals("Transfered"))
                    {
                        inxVoz.CImessage.TransferredNetworkCallID = 1;
                    }
                }
                if (inx.IsMonitoredByMe)
                {
                    inxVoz.CImessage.TransferConnid = "";
                }

                if (inx.IsMonitoredByMe)
                {
                    inxVoz.CImessage.EsMonitoreada = true;
                }
                break;

            case Platform.Voice.Protocols.TServer.Events.EventUserEvent.MessageId:
                var evetUserEvent = evento as Platform.Voice.Protocols.TServer.Events.EventUserEvent;

                break;

            default:
                return;

                break;
            }


            EResultado resultado = null;

            _metodoApi.InteraccionVoz(out resultado, inxVoz, token);
        }