Пример #1
0
        public ActionResult AgendaArhivaActiuni()
        {
            CRM_Prospectare_Context ctxt  = new CRM_Prospectare_Context();
            Repo_Activitati         repoA = new Repo_Activitati(ctxt);

            // Activitati de arhiva --au stare"Finalizata" sau "Suspendata"
            List <Activitati_Curente> activitatiArhiva = new List <Activitati_Curente>();

            activitatiArhiva = repoA.GetAllWhere(a => GlobaleCRM.sirStariInactive.Contains(a.Stare_Activitate)).ToList();
            List <ActiuneCRM> actiuni_activitatiArhiva = ActiuneCRM.ConversieActivitatiInActiuni(activitatiArhiva);

            var actiuniArhivaOrdonate = actiuni_activitatiArhiva.OrderByDescending(a => a.PrioritateActiune);

            return(View(actiuniArhivaOrdonate));
        }
Пример #2
0
        public ActionResult AgendaZilei()
        {
            // initializare variabile :Repositoty type-- Repo_Activitati, Repo_Prospectare
            CRM_Prospectare_Context ctxt  = new CRM_Prospectare_Context();
            Repo_Activitati         repoA = new Repo_Activitati(ctxt);
            Repo_Prospectare        repoP = new Repo_Prospectare(ctxt);

            // Activitati ce NECESITA REPROGRAMARE !
            List <Activitati_Curente> activitatiDeReprogramat = new List <Activitati_Curente>();

            activitatiDeReprogramat = repoA.GetAllWhere(a => a.Data_Scadenta == GlobaleCRM.DataDeAzi && a.Activitate_Activa == true &&
                                                        GlobaleCRM.sirStariDeReprogramat.Contains(a.Stare_Activitate)).ToList();
            List <ActiuneCRM> actiuni_activitatiDeReprogramat = ActiuneCRM.ConversieActivitatiInActiuni(activitatiDeReprogramat, "Reprogrameaza!");

            // Activitati curente specifice Zilei Curente
            List <Activitati_Curente> activitatiCurente = new List <Activitati_Curente>();

            activitatiCurente = repoA.GetAllWhere(a => a.Data_Scadenta == GlobaleCRM.DataDeAzi && a.Activitate_Activa == true &&
                                                  GlobaleCRM.sirStariActive.Contains(a.Stare_Activitate)).ToList();
            List <ActiuneCRM> actiuni_activitatiCurente = ActiuneCRM.ConversieActivitatiInActiuni(activitatiCurente);

            // Prospecte ce NECESITA REPROGRAMARE !
            var prospecteDeReprogramat = (from a in ctxt.VwDashboardProspects
                                          where a.Stare_Pas == "Neefectuata" && a.Pas_Activ == true

                                          select new ActiuneCRM
            {
                Id = a.Id_Vw,
                TipActiune = TipActiuneCRM.AP,
                NumeActiune = a.Nume_Pas ?? Ac_GridFields.NoDataText,
                SubiectActiune = a.Nume_Prospect ?? Ac_GridFields.NoDataText,
                PrioritateActiune = a.Prioritate_Pas ?? 1,
                OraActiune = a.Ora_Pas,
                DurataActiune = a.Durata_Pas,
                ComentariuActiune = a.Comentariu_Obstacol_Pas,
                MesajActiune = "Reprogrameaza!"
            }).ToList();
            // Activitati Prospectare Programate Curente
            var prospecteCurente = (from a in ctxt.VwDashboardProspects
                                    where a.Data_Scadenta_Pas == GlobaleCRM.DataDeAzi && a.Pas_Activ == true &&
                                    a.Stare_Pas != "Finalizata" && a.Stare_Pas != "Suspendata" && a.Stare_Pas != "Nealocata"

                                    select new ActiuneCRM
            {
                Id = a.Id_Vw,
                TipActiune = TipActiuneCRM.AP,
                NumeActiune = a.Nume_Pas ?? Ac_GridFields.NoDataText,
                SubiectActiune = a.Nume_Prospect ?? Ac_GridFields.NoDataText,
                PrioritateActiune = a.Prioritate_Pas ?? 1,
                OraActiune = a.Ora_Pas,
                DurataActiune = a.Durata_Pas,
                ComentariuActiune = a.Comentariu_Obstacol_Pas,
                MesajActiune = "Actiune " + a.Stare_Pas
            }).ToList();

            // comasare colectii activitati cu prospecte
            var actiuniDeReprogramat = prospecteDeReprogramat.Union(actiuni_activitatiDeReprogramat);
            var actiuniCurente       = actiuni_activitatiCurente.Union(prospecteCurente);
            // daca nu sunt actiuni neefectuate De Reprogramat  se randeaza actiunile curente ale zilei
            var actiunileZilei = actiuniDeReprogramat.Any() ? actiuniDeReprogramat : actiuniCurente;
            // se ordoneaza invers dupa prioritate
            var actiunileZileiOrdonate = actiunileZilei.OrderByDescending(a => a.PrioritateActiune);

            return(View(actiunileZileiOrdonate));
        }