public ActionResult Validation()
        {
            int          uid    = int.Parse(Session["uid"].ToString());
            demandeconge e      = db.demandeconge.Find(uid);
            string       button = Request["button"];



            switch (button)
            {
            case "Accepté":
                e.ValidationN2     = "accepte";
                e.DateValidationN2 = DateTime.Now;

                db.Entry(e).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "Refusé":
                e.ValidationN2    = "refuse";
                e.ValdationRH     = "*******";
                db.Entry(e).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "Annulé":

                return(RedirectToAction("historique"));

            default:
                return(View());
            }
        }
        public ActionResult modifier()
        {
            int          uid       = int.Parse(Session["modifierID"].ToString());
            demandeconge e         = db.demandeconge.Find(uid);
            string       button    = Request["modifier"];
            string       dateDebut = Request["dateDebut"] + " " + Request["timeDebut"];
            string       dateFin   = Request["dateFin"] + " " + Request["timeFin"];
            DateTime     dc        = DateTime.Now;

            switch (button)
            {
            case "valide":
                e.DateDebut       = Convert.ToDateTime(dateDebut);
                e.DateFin         = Convert.ToDateTime(dateFin);
                e.DateDC          = dc;
                db.Entry(e).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "annule":

                return(RedirectToAction("historique"));

            default:
                return(View());
            }
        }
        public ActionResult validation(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var currentDemande = demandeService.ReadById(id.Value);

            if (currentDemande == null)
            {
                return(HttpNotFound($"this demande ({id}) is not found"));
            }


            demandeconge demandeconge = db.demandeconge.Find(id);

            Session["uid"] = currentDemande.idDemandeConge;

            if (demandeconge == null)
            {
                return(HttpNotFound());
            }

            return(View(demandeconge));
        }
        public ActionResult Imprimer2(int?id)
        {
            //condition pas encore
            if (id == null || db.demandeconge.Find(id).ValidationN1 == "refuse" || db.demandeconge.Find(id).ValidationN2 == "refuse")
            {
                //return RedirectToAction("Index", "Default");
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            var currentDemande = demandeService.ReadById(id.Value);

            if (currentDemande == null || db.demandeconge.Find(id).ValidationN1 == "refuse" || db.demandeconge.Find(id).ValidationN2 == "refuse")
            {
                return(HttpNotFound($"this demande ({id}) is not found"));
            }

            demandeconge demandeconge = db.demandeconge.Find(id);

            Session["uid"] = currentDemande.idDemandeConge;

            if (demandeconge == null || db.demandeconge.Find(id).ValidationN1 == "refuse" || db.demandeconge.Find(id).ValidationN2 == "refuse")
            {
                return(HttpNotFound());
            }

            return(View(demandeconge));
        }
 public int Update(demandeconge updatedDemande)
 {
     //prend les ancien data remplace par nv
     db.demandeconge.Attach(updatedDemande);
     db.Entry(updatedDemande).State = System.Data.Entity.EntityState.Modified;
     return(db.SaveChanges());
 }
        public ActionResult modifier(int?id)
        {
            demandeconge demandeconge = db.demandeconge.Find(id);

            Session["modifierID"] = id;

            return(View());
        }
示例#7
0
        /*   public ActionResult historique()
         * {
         *     var employes = db.demandeconge;
         *     var demandeConge = new List<demandeconge>();
         *
         *
         *     foreach (var item in employes)
         *     {
         *         if (item.ValidationN2 == "accepte" && item.ValidationN1 == "accepte" && item.ValidationRH == "En cours")
         *
         *             demandeConge = db.demandeconge.Include(d => d.employe).Include(d => d.typeconge).ToList();
         *
         *
         *     }
         *     return View(demandeConge.ToList());
         *
         * }*/
        public ActionResult Validation(int?id)
        {
            if (id == null)
            {
                //return RedirectToAction("Index", "Default");
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            var currentDemande = demandeService.ReadById(id.Value);

            if (currentDemande == null)
            {
                return(HttpNotFound($"this demande ({id}) is not found"));
            }

            demandeconge demandeconge = db.demandeconge.Find(id);

            Session["uid"] = currentDemande.idDemandeConge;

            if (demandeconge == null)
            {
                return(HttpNotFound());
            }

            return(View(demandeconge));

            /*
             * var historiqueModel = new HistoriqueModel
             * {
             *  IdDemande = currentDemande.idDemandeConge,
             *  IdType = currentDemande.IdtypeConge,
             *  //Nom = currentDemande.employe.NomComplet,
             *  //matricule = currentDemande.employe.matricule,
             *  DateD = (DateTime)currentDemande.DateDebut,
             *  DateF = (DateTime)currentDemande.DateFin,
             *  Datedc = (DateTime)currentDemande.DateDC,
             *  validation1 = currentDemande.ValidationN1,
             *  validation2 = currentDemande.ValidationN2,
             *  IdEmploye = currentDemande.IdEmploye
             *
             *
             *
             * };
             *
             * return View(historiqueModel);*/
        }
示例#8
0
        public ActionResult Validation()
        {
            int          uid    = int.Parse(Session["uid"].ToString());
            demandeconge e      = db.demandeconge.Find(uid);
            string       button = Request["button"];

            DateTime dateDebut = e.DateDebut.Value;
            DateTime dateFin   = e.DateFin.Value;
            var      dure      = (dateFin - dateDebut).Days;
            var      dureM     = (dateFin - dateDebut).TotalMinutes;

            double du   = Convert.ToDouble(dure) + 1;
            double duM  = Convert.ToDouble(dureM) + 1440;
            double nb   = Convert.ToDouble(e.employe.nbjoursR);
            double nbM  = Convert.ToDouble(e.employe.nbjoursR) * 24 * 60;
            double res  = nb - du;
            double resM = nbM - duM;
            double resJ = resM / 1440;

            //  Session["dur1"] = duM;
            switch (button)
            {
            case "Accepté":
                e.ValidationRH     = "Accepte";
                e.employe.nbjoursR = Convert.ToInt32(res);
                db.Entry(e).State  = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "Refusé":
                e.ValidationRH    = "refuse";
                db.Entry(e).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "Annulé":

                return(RedirectToAction("historique"));

            default:
                return(View());
            }
        }
        public ActionResult Dashboard1()
        {
            Session["Message"] = null;

            //donnée from index (view)
            int uid = int.Parse(Session["idEmploye"].ToString());

            employe e = db.employe.Find(uid);

            demandeconge demande   = new demandeconge();
            string       dateDebut = Request["dateDebut"];
            string       timeDebut = Request["timeDebut"];
            string       dateFin   = Request["dateFin"];
            string       timeFin   = Request["timeFin"];


            string   operation            = Request["operation"].ToString();
            string   marriage             = Request["marriage1"].ToString();
            string   deces                = Request["deces1"].ToString();
            string   typeCongeIdTypeconge = Request.Form["typeCongeIdTypeconge"];
            string   justification        = Request["justification"];
            DateTime dc = DateTime.Now;



            // ---------- Recûperation

            var recup = db.CumulRecup.Include(d => d.employe).Where(p => p.employe.idEmploye == uid).Select(u => new {
                hs = u.CumulHr,
                jf = u.CumulJrF,
                jr = u.CumulJrR
            }).Single();

            double hsA = Convert.ToDouble(recup.hs);

            Session["h"] = hsA;
            TimeSpan ths = TimeSpan.FromHours(hsA);

            double jf = Convert.ToDouble(recup.jf);

            Session["j"] = jf;
            TimeSpan tjf = TimeSpan.FromDays(jf);

            double jR = Convert.ToDouble(recup.jr);

            Session["h"] = hsA;
            TimeSpan tjR = TimeSpan.FromDays(jR);



            //condition de date

            double   jours  = Convert.ToDouble(Session["nbjours"].ToString()) - 1;
            double   joursR = Convert.ToDouble(Session["nbjoursR"].ToString()) - 1;
            TimeSpan t      = TimeSpan.FromDays(jours);  //jurs: nbjours
            TimeSpan tR     = TimeSpan.FromDays(joursR); //jurs: nbjoursR
            TimeSpan t0     = TimeSpan.FromDays(0);      //0
            TimeSpan t10    = TimeSpan.FromDays(9);      //10
            TimeSpan t7     = TimeSpan.FromDays(6);      //7
            TimeSpan t1     = TimeSpan.FromDays(1);      //1
            TimeSpan t2     = TimeSpan.FromDays(2);      //2
            TimeSpan t12    = TimeSpan.FromHours(12);    //pour la demi journée
            TimeSpan t112   = TimeSpan.FromHours(36);    //pour la jour et demi



            //duree
            var l = db.typeconge;

            if (Request["dateDebut"].Equals("") || typeCongeIdTypeconge.Equals(""))
            {
                Session["Message"] = "Remlpir tout les champs svp";
                // ViewBag.Message = "Remlpir tout les champs svp !";
                return(RedirectToAction("Index", "employe"));
            }
            //date debut
            DateTime debut = Convert.ToDateTime(Request["dateDebut"]);


            if (typeCongeIdTypeconge.Equals("Opération chirurgicale") || typeCongeIdTypeconge.Equals("Décès") || typeCongeIdTypeconge.Equals("Mariage"))
            {
                if (debut < dc)
                {
                    Session["Message"] = "Verifier vos choix svp!";
                    return(RedirectToAction("Index", "employe"));
                }
                else if (typeCongeIdTypeconge.Equals("Mariage") && !(marriage.Equals("")))
                {
                    if (marriage.Equals("1"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 4)
                            {
                                int x4 = int.Parse(item.dureeJ) - 1;
                                var df = debut.AddDays(x4);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 4;
                            }
                        }
                    }
                    if (marriage.Equals("2"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 5)
                            {
                                int x5 = int.Parse(item.dureeJ) - 1;
                                var df = debut.AddDays(x5);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 5;
                            }
                        }
                    }
                }

                else if (typeCongeIdTypeconge.Equals("Décès") && !(deces.Equals("")))
                {
                    if (deces.Equals("1"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 6)
                            {
                                int x6 = int.Parse(item.dureeJ) - 1;
                                var df = debut.AddDays(x6);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 6;
                            }
                        }
                    }
                    if (deces.Equals("2"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 7)
                            {
                                int x7 = int.Parse(item.dureeJ) - 1;
                                var df = debut.AddDays(x7);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 7;
                            }
                        }
                    }
                    if (deces.Equals("3"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 8)
                            {
                                int x8 = int.Parse(item.dureeJ) - 1;
                                var df = debut.AddDays(x8);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 8;
                            }
                        }
                    }
                    if (deces.Equals("4"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 9)
                            {
                                int x9 = int.Parse(item.dureeJ) - 1;
                                var df = debut.AddDays(x9);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 9;
                            }
                        }
                    }
                    if (deces.Equals("5"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 10)
                            {
                                int x10 = int.Parse(item.dureeJ) - 1;
                                var df  = debut.AddDays(x10);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 10;
                            }
                        }
                    }
                }
                else if (typeCongeIdTypeconge.Equals("Opération chirurgicale") && !(operation.Equals("")))
                {
                    if (operation.Equals("1"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 20)
                            {
                                int x20 = int.Parse(item.dureeJ) - 1;
                                var df  = debut.AddDays(x20);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 20;
                            }
                        }
                    }
                    if (operation.Equals("2"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 21)
                            {
                                int x21 = int.Parse(item.dureeJ) - 1;
                                var df  = debut.AddDays(x21);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.DateDebut   = Convert.ToDateTime(dateDebut);
                                demande.IdtypeConge = 21;
                            }
                        }
                    }
                }
            }
            else if (typeCongeIdTypeconge.Equals("Naissance"))
            {
                foreach (var item in l)
                {
                    if (item.idtypeConge == 22)
                    {
                        int x22 = int.Parse(item.dureeJ) - 1;
                        var df  = debut.AddDays(x22);
                        demande.DateFin     = Convert.ToDateTime(df);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                        demande.IdtypeConge = 22;
                    }
                }
            }
            else if (typeCongeIdTypeconge.Equals("Circoncision"))
            {
                foreach (var item in l)
                {
                    if (item.idtypeConge == 15)
                    {
                        int x15 = int.Parse(item.dureeJ) - 1;
                        var df  = debut.AddDays(x15);
                        demande.DateFin     = Convert.ToDateTime(df);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                        demande.IdtypeConge = 15;
                    }
                }
            }
            else
            {
                if (Request["dateDebut"].Equals("") || Request["dateFin"].Equals(""))
                {
                    Session["Message"] = "Remlpir tout les champs svp ";
                    return(RedirectToAction("Index", "employe"));
                }
                DateTime fin = Convert.ToDateTime(Request["dateFin"]);

                TimeSpan dateSpan = fin - debut;


                // concatenation-------------------------------------------------------------------------------------------------

                DateTime dtd1     = DateTime.Parse(Request["dateDebut"] + " " + Request["timeDebut"]);
                DateTime dtf1     = DateTime.Parse(Request["dateFin"] + " " + Request["timeFin"]);
                TimeSpan timeSpan = dtf1 - dtd1;


                if (typeCongeIdTypeconge.Equals(""))
                {
                    Session["Message"] = "Selectionner un type de conge svp ";
                    return(RedirectToAction("Index", "employe"));
                }
                else
                if ((debut < dc) || (fin < dc) || (fin < debut))


                {
                    Session["Message"] = "verifier les dates svp";
                    return(RedirectToAction("Index", "employe"));
                }

                else
                {
                    if (typeCongeIdTypeconge.Equals("reliquat") && dateSpan > t0 && dateSpan <= tR)
                    {
                        demande.IdtypeConge = 3;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }
                    else if (typeCongeIdTypeconge.Equals("1 ere tranche") && dateSpan >= t10 && dateSpan <= t) //obj <JR ,obj >=10
                    {
                        demande.IdtypeConge = 1;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);

                        //****
                        var employe = db.employe.Find(uid);
                        if (employe.Sexe.Equals("Homme"))
                        {
                            if (employe.situationFamiliale.Equals("celibataire"))
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "700";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "600";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie"))
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "950";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "800";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 1)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "1250";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1000";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 2)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "1550";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1200";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 3)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "1850";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1400";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 4)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "2150";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1600";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 5)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "2450";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1800";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 6)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "2750";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "2000";
                                }
                            }
                        }
                        else if (employe.Sexe.Equals("Femme"))
                        {
                            if (employe.situationFamiliale.Equals("celibataire"))
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "700";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "600";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie"))
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "700";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "600";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 1)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "1250";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1000";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 2)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "1550";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1200";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 3)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "1850";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1400";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 4)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "2150";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1600";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 5)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "2450";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "1800";
                                }
                            }
                            else if (employe.situationFamiliale.Equals("Marie") && employe.nbEnfants == 6)
                            {
                                if (employe.Classe.Equals("TAMCA"))
                                {
                                    demande.soldeConge = "2750";
                                }
                                else if (employe.Classe.Equals("OE"))
                                {
                                    demande.soldeConge = "2000";
                                }
                            }
                        }



                        //******solde
                    }
                    else if (typeCongeIdTypeconge.Equals("2 eme tranche") && dateSpan >= t7 && dateSpan <= tR)//obj <7(t7) , obj <=jR
                    {
                        demande.IdtypeConge = 2;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }
                    //èèèèèèèèèèèèèèèèèèèè
                    else if (typeCongeIdTypeconge.Equals("1/2 journée") && timeSpan <= t12)
                    {
                        // demande.DateFin = Convert.ToDateTime(dateFin);
                        demande.DateFin     = Convert.ToDateTime(dtf1);
                        demande.DateDebut   = Convert.ToDateTime(dtd1);
                        demande.IdtypeConge = 11;
                    }
                    else if (typeCongeIdTypeconge.Equals("1 journée") && dateSpan == t1)
                    {
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.IdtypeConge = 12;
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }
                    //---------------------------------------
                    else if (typeCongeIdTypeconge.Equals("1.5 journée") && timeSpan <= t112)
                    {
                        //demande.DateFin = Convert.ToDateTime(dateFin);
                        demande.DateFin     = Convert.ToDateTime(dtf1);
                        demande.DateDebut   = Convert.ToDateTime(dtd1);
                        demande.IdtypeConge = 13;
                    }
                    else if (typeCongeIdTypeconge.Equals("2 journée") && dateSpan == t2)
                    {
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.IdtypeConge = 14;
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }



                    else if (typeCongeIdTypeconge.Equals("J.R") && dateSpan <= tjR)
                    {
                        demande.IdtypeConge = 24;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }
                    else if (typeCongeIdTypeconge.Equals("J.F") && dateSpan <= tjf)
                    {
                        demande.IdtypeConge = 25;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }
                    else if (typeCongeIdTypeconge.Equals("heures"))
                    {
                        demande.IdtypeConge = 26;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }
                    else if (typeCongeIdTypeconge.Equals("jours"))
                    {
                        demande.IdtypeConge = 27;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.DateDebut   = Convert.ToDateTime(dateDebut);
                    }

                    // 6666
                    else if (typeCongeIdTypeconge.Equals("H.S") && timeSpan <= ths)
                    {
                        demande.IdtypeConge = 23;
                        demande.DateFin     = Convert.ToDateTime(dtf1);
                        demande.DateDebut   = Convert.ToDateTime(dtd1);
                    }
                    else
                    {
                        Session["Message"] = "Verifier vos donnees svp ";
                        // ViewBag.Message = "Vérifier vos données svp !";
                        return(RedirectToAction("Index", "employe"));
                    }
                }
            }



            demande.ValidationN1 = "En cours";
            demande.ValidationN2 = "En cours";
            demande.ValidationRH = "En cours";

            demande.IdEmploye = uid;



            demande.DateDC        = dc;
            demande.justification = justification;
            demande.Annulation    = "non";



            db.demandeconge.Add(demande);

            db.SaveChanges();



            return(RedirectToAction("historique", "employe"));
        }
示例#10
0
        public ActionResult Annulation()
        {
            int          uid    = int.Parse(Session["uid"].ToString());
            demandeconge e      = db.demandeconge.Find(uid);
            string       button = Request["button"];

            DateTime dateDebut = e.DateDebut.Value;
            DateTime dateFin   = e.DateFin.Value;


            /*   var dure = (dateFin - dateDebut).Days;
             *
             *
             * double du = Convert.ToDouble(dure) + 1;
             * double d = du * 24;
             * double nb = Convert.ToDouble(e.employe.nbHeureR);
             *
             * double res = nb + d;
             */

            var recup = db.CumulRecup.Include(d => d.employe).Where(p => p.employe.idEmploye == e.IdEmploye).Select(u => new {
                hs = u.CumulHr,
                jf = u.CumulJrF,
                jr = u.CumulJrR,
                id = u.IDCumulRecup
            }).Single();

            CumulRecup cr = db.CumulRecup.Find(recup.id);

            double hsA = Convert.ToDouble(cr.CumulHr);

            //en heure
            double jf = Convert.ToDouble(recup.jf);


            double jR = Convert.ToDouble(recup.jr);



            var    dureM = (dateFin - dateDebut).TotalHours + 1;
            var    dureD = (dateFin - dateDebut).Days + 1;
            double duM   = Convert.ToDouble(dureM);
            double nbM   = Convert.ToDouble(e.employe.nbHeureR);
            double resM  = nbM + duM;



            switch (button)
            {
            case "Retour":

                return(RedirectToAction("Index"));

            case "annule":
                if (e.IdtypeConge == 23)
                {
                    double dhs = hsA + dureM;
                    cr.CumulHr = Convert.ToString(dhs);
                }
                else
                if (e.IdtypeConge == 25)
                {
                    double dhs = jf + dureD;
                    string dh  = Convert.ToString(dhs);
                    cr.CumulJrF = float.Parse(dh);
                }
                else
                if (e.IdtypeConge == 24)
                {
                    double dhs = jR + dureD;
                    string dh  = Convert.ToString(dhs);
                    cr.CumulJrR = float.Parse(dh);
                }
                else
                {
                    e.employe.nbHeureR = resM.ToString();
                }



                e.ValdationRH     = "En cours";
                e.ValidationN1    = "En cours";
                e.ValidationN2    = "En cours";
                e.annulation      = "oui";
                db.Entry(e).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));

            default:
                return(View());
            }
        }
示例#11
0
        public ActionResult Dashboard1()
        {
            //donnée from index (view)
            int          uid                  = int.Parse(Session["idEmploye"].ToString());
            employe      e                    = db.employe.Find(uid);
            demandeconge demande              = new demandeconge();
            string       dateDebut            = Request["dateDebut"] + " " + Request["timeDebut"];
            string       dateFin              = Request["dateFin"] + " " + Request["timeFin"];
            string       operation            = Request["operation"].ToString();
            string       marriage             = Request["marriage1"].ToString();
            string       deces                = Request["deces1"].ToString();
            string       typeCongeIdTypeconge = Request.Form["typeCongeIdTypeconge"];
            string       justification        = Request["justification"];
            DateTime     dc                   = DateTime.Now;

            //condition de date

            double   jours  = Convert.ToDouble(Session["nbjours"].ToString()) - 1;
            double   joursR = Convert.ToDouble(Session["nbjoursR"].ToString()) - 1;
            TimeSpan t      = TimeSpan.FromDays(jours);  //jurs: nbjours
            TimeSpan tR     = TimeSpan.FromDays(joursR); //jurs: nbjoursR
            TimeSpan t0     = TimeSpan.FromDays(0);      //0
            TimeSpan t10    = TimeSpan.FromDays(9);      //10
            TimeSpan t7     = TimeSpan.FromDays(6);      //7
            TimeSpan t1     = TimeSpan.FromDays(1);      //1
            TimeSpan t2     = TimeSpan.FromDays(2);      //2
            TimeSpan t12    = TimeSpan.FromHours(12);    //pour la demi journée
            TimeSpan t112   = TimeSpan.FromHours(36);    //pour la jour et demi

            //duree
            var l = db.typeconge;

            if (Request["dateDebut"].Equals("") || typeCongeIdTypeconge.Equals(""))
            {
                Session["demande"] = "Remlpir tout les champs svp !";
                return(RedirectToAction("Index", "Default"));
            }
            //date debut
            DateTime debut = Convert.ToDateTime(Request["dateDebut"]);

            if (typeCongeIdTypeconge.Equals("Opération chirurgicale") || typeCongeIdTypeconge.Equals("Décès") || typeCongeIdTypeconge.Equals("Mariage"))
            {
                if (debut < dc)
                {
                    Session["demande"] = "vérifier les dates svp!";
                    return(RedirectToAction("Index", "Default"));
                }
                else if (typeCongeIdTypeconge.Equals("Mariage") && !(marriage.Equals("")))
                {
                    if (marriage.Equals("1"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 4)
                            {
                                int x4 = int.Parse(item.dureeJ);
                                var df = debut.AddDays(x4);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 4;
                            }
                        }
                    }
                    if (marriage.Equals("2"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 5)
                            {
                                int x5 = int.Parse(item.dureeJ);
                                var df = debut.AddDays(x5);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 5;
                            }
                        }
                    }
                }

                else if (typeCongeIdTypeconge.Equals("Décès") && !(deces.Equals("")))
                {
                    if (deces.Equals("1"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 6)
                            {
                                int x6 = int.Parse(item.dureeJ);
                                var df = debut.AddDays(x6);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 6;
                            }
                        }
                    }
                    if (deces.Equals("2"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 7)
                            {
                                int x7 = int.Parse(item.dureeJ);
                                var df = debut.AddDays(x7);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 7;
                            }
                        }
                    }
                    if (deces.Equals("3"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 8)
                            {
                                int x8 = int.Parse(item.dureeJ);
                                var df = debut.AddDays(x8);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 8;
                            }
                        }
                    }
                    if (deces.Equals("4"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 9)
                            {
                                int x9 = int.Parse(item.dureeJ);
                                var df = debut.AddDays(x9);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 9;
                            }
                        }
                    }
                    if (deces.Equals("5"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 10)
                            {
                                int x10 = int.Parse(item.dureeJ);
                                var df  = debut.AddDays(x10);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 10;
                            }
                        }
                    }
                }
                else if (typeCongeIdTypeconge.Equals("Opération chirurgicale") && !(operation.Equals("")))
                {
                    if (operation.Equals("1"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 20)
                            {
                                int x20 = int.Parse(item.dureeJ);
                                var df  = debut.AddDays(x20);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 20;
                            }
                        }
                    }
                    if (operation.Equals("2"))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 21)
                            {
                                int x21 = int.Parse(item.dureeJ);
                                var df  = debut.AddDays(x21);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 21;
                            }
                        }
                    }
                }
            }
            else
            {
                if (Request["dateDebut"].Equals("") || Request["dateFin"].Equals("") || typeCongeIdTypeconge.Equals(""))
                {
                    Session["demande"] = "Remlpir tout les champs svp !";
                    return(RedirectToAction("Index", "Default"));
                }
                DateTime fin      = Convert.ToDateTime(Request["dateFin"]);
                TimeSpan dateSpan = fin - debut;

                if ((debut < dc) || (fin < dc) || (fin < debut))
                {
                    Session["demande"] = "vérifier les dates svp!";
                    return(RedirectToAction("Index", "Default"));
                }

                else
                {
                    if (typeCongeIdTypeconge.Equals("reliquat") && dateSpan > t0 && dateSpan <= tR)
                    {
                        demande.IdtypeConge = 3;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("1 ere tranche") && dateSpan >= t10 && dateSpan <= t) //obj <JR ,obj >=10
                    {
                        demande.IdtypeConge = 1;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("2 eme tranche") && dateSpan >= t7 && dateSpan <= tR)//obj <7(t7) , obj <=jR
                    {
                        demande.IdtypeConge = 2;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("1/2 journée") && dateSpan <= t12)
                    {
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.IdtypeConge = 11;
                    }
                    else if (typeCongeIdTypeconge.Equals("1 journée") && dateSpan == t1)
                    {
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.IdtypeConge = 12;
                    }
                    else if (typeCongeIdTypeconge.Equals("1.5 journée") && dateSpan <= t112)
                    {
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.IdtypeConge = 13;
                    }
                    else if (typeCongeIdTypeconge.Equals("2 journée") && dateSpan == t2)
                    {
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                        demande.IdtypeConge = 14;
                    }
                    else if (typeCongeIdTypeconge.Equals("Naissance") && !(justification.Equals("")))
                    {
                        foreach (var item in l)
                        {
                            if (item.idtypeConge == 22)
                            {
                                int x22 = int.Parse(item.dureeJ);
                                var df  = debut.AddDays(x22);
                                demande.DateFin     = Convert.ToDateTime(df);
                                demande.IdtypeConge = 22;
                            }
                        }
                    }



                    else if (typeCongeIdTypeconge.Equals("H.S"))
                    {
                        demande.IdtypeConge = 23;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("J.R"))
                    {
                        demande.IdtypeConge = 24;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("J.F"))
                    {
                        demande.IdtypeConge = 25;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("heures"))
                    {
                        demande.IdtypeConge = 26;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else if (typeCongeIdTypeconge.Equals("jours"))
                    {
                        demande.IdtypeConge = 27;
                        demande.DateFin     = Convert.ToDateTime(dateFin);
                    }
                    else
                    {
                        Session["demande"] = "Vérifier vos données svp !";
                        return(RedirectToAction("Index", "DemandeConge"));
                    }
                }
            }
            demande.ValidationN1  = "******";
            demande.ValidationN2  = "En cours";
            demande.ValidationRH  = "En cours";
            demande.IdEmploye     = uid;
            demande.DateDebut     = Convert.ToDateTime(dateDebut);
            demande.DateDC        = dc;
            demande.justification = justification;
            demande.Annulation    = "non";
            db.demandeconge.Add(demande);
            db.SaveChanges();
            return(RedirectToAction("historique", "DemandeConge"));
        }
        public ActionResult Validation()
        {
            int          uid    = int.Parse(Session["uid"].ToString());
            demandeconge e      = db.demandeconge.Find(uid);
            string       button = Request["button"];
            DCTEMP       dc     = new DCTEMP();

            DateTime dateDebut = e.DateDebut.Value;
            DateTime dateFin   = e.DateFin.Value;

            /*var dure = (dateFin - dateDebut).Days;
             * var dureM = (dateFin - dateDebut).TotalMinutes;
             *
             * double du = Convert.ToDouble(dure) + 1;
             * double duM = Convert.ToDouble(dureM) + 1440;
             * double nb = Convert.ToDouble(e.employe.nbHeureR);
             * double nbM = Convert.ToDouble(e.employe.nbHeureR) * 24 * 60;
             * double res = nb - du;
             * double resM = nbM - duM;
             * double resJ = resM / 1440;
             */

            var recup = db.CumulRecup.Include(d => d.employe).Where(p => p.employe.idEmploye == e.IdEmploye).Select(u => new {
                hs = u.CumulHr,
                jf = u.CumulJrF,
                jr = u.CumulJrR,
                id = u.IDCumulRecup
            }).Single();

            CumulRecup cr = db.CumulRecup.Find(recup.id);

            double hsA = Convert.ToDouble(cr.CumulHr);

            //en heure
            double jf = Convert.ToDouble(recup.jf);


            double jR = Convert.ToDouble(recup.jr);



            var    dureM = (dateFin - dateDebut).TotalHours + 1;
            var    dureD = (dateFin - dateDebut).Days + 1;
            double duM   = Convert.ToDouble(dureM);
            double nbM   = Convert.ToDouble(e.employe.nbHeureR);
            double resM  = nbM - duM;



            switch (button)
            {
            case "Accepté":
                if (e.IdtypeConge == 23)
                {
                    double dhs = hsA - dureM;
                    cr.CumulHr = Convert.ToString(dhs);
                }
                else
                if (e.IdtypeConge == 25)
                {
                    double dhs = jf - dureD;
                    string dh  = Convert.ToString(dhs);
                    cr.CumulJrF = float.Parse(dh);
                }
                else
                if (e.IdtypeConge == 24)
                {
                    double dhs = jR - dureD;
                    string dh  = Convert.ToString(dhs);
                    cr.CumulJrR = float.Parse(dh);
                }
                else
                {
                    e.employe.nbHeureR = resM.ToString();
                }
                e.ValdationRH = "accepte";
                if (e.ValidationN1.Equals("En cours"))
                {
                    e.ValidationN1 = "*******";
                }

                e.DateValidationRH = DateTime.Now;

                //DCTEMP
                dc.matricule   = e.employe.matricule;
                dc.DateDebut   = e.DateDebut;
                dc.DateFin     = e.DateFin;
                dc.typeDeConge = e.typeconge.designation;
                dc.Status      = "En att";


                db.Entry(e).State = EntityState.Modified;

                db.DCTEMP.Add(dc);
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "Refusé":
                e.ValdationRH     = "refuse";
                db.Entry(e).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("historique"));

            case "Annulé":

                return(RedirectToAction("historique"));

            default:
                return(View());
            }
        }