using MALDFG_LIBRARY; using MALDFGASSURANCE.Models; using System; using System.Collections.Generic; using System.Data; using System.Data.Entity; using System.IO; using System.Linq; using System.Net; using System.Web.Mvc; namespace MALDFGASSURANCE.Areas.FACTURATION.Controllers { [Authorize(Roles = "Coordonnateur,MedecinConseil")] public class FACTURESController : Controller { private MALDFGEntities db = new MALDFGEntities(); // GET: FACTURATION/FACTURES public ActionResult Index() { var fACTURE = db.FACTURE.Include(f => f.ASSURE).Include(f => f.ETABLISSEMENT).Include(f => f.TYPE_FACTURE); return View(fACTURE.ToList()); } // GET: FACTURATION/FACTURES/AlayseFacture public ActionResult AlayseFacture() { var fACTURE = db.FACTURE.Include(f => f.ASSURE).Include(f => f.ETABLISSEMENT).Include(f => f.TYPE_FACTURE).Where(m => m.ETAT == 1); return View(fACTURE.ToList()); } // GET: FACTURATION/FACTURES/Details/5 public ActionResult Details(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FACTURE fACTURE = db.FACTURE.Find(id); if (fACTURE == null) { return HttpNotFound(); } ViewData["LISTEPRESTATION"] = db.PRESTATIONS.Where(m => m.NUMERO_FACTURE == "" + fACTURE.NUMERO_FACTURE).ToList(); return View(fACTURE); } // GET: FACTURATION/FACTURES/Create public ActionResult Create() { ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } // POST: FACTURATION/FACTURES/Create // Afin de déjouer les attaques par survalidation, activez les propriétés spécifiques auxquelles vous voulez établir une liaison. Pour // plus de détails, consultez https://go.microsoft.com/fwlink/?LinkId=317598. [HttpPost] [ValidateAntiForgeryToken] public ActionResult Create([Bind(Include = "NUMERO_FACTURE,MATRICULE,ID_ETABLISSEMENT,ID_TYPEFACTURE,PHOTO,DATE_EMISSION_FACTURE,MONTANT_TOTAL_FACTURE,IDUTILISATEUR,ETAT,DATECREATION,DATEMODIFICATION,DATESUPPRESSION,NUMFACTURE,PARTASSURE,PARTLDF,NUMBON")] FACTURE fACTURE) { if (db.FACTURE.Where(f => f.NUMBON == fACTURE.NUMBON).Count() < 1) { if (ModelState.IsValid) { String MessageTaux = ""; try { if (Request.Files.Count > 0) { var file = Request.Files[0]; if (file != null && file.ContentLength > 0) { //extension de fichier string[] validFileTypes = { ".pdf", ".png", ".jpg", ".jpeg", ".PDF", ".PNG", ".JPG", ".JPEG" }; string ext = Path.GetExtension(file.FileName); if (string.IsNullOrEmpty(ext) || !validFileTypes.Contains(ext)) { ViewBag.Message = "le fichier veuillez enregistrer PDF, PNG ou JPG "; ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } Random aleatoire = new Random(); int chiffrealeatoire = aleatoire.Next(100, 999); fACTURE.NUMERO_FACTURE = "FACT" + chiffrealeatoire + DateTime.Now.ToString("ddMMyyHHmmss"); var fileName = Path.GetFileName(file.FileName); String nomdufichier = fACTURE.MATRICULE + fACTURE.NUMERO_FACTURE + ext; var path = Path.Combine(Server.MapPath("~/Fichier/FichierFactures"), nomdufichier); file.SaveAs(path); ASSURE aSSURE = db.ASSURE.Find(fACTURE.MATRICULE); MessageTaux = "Taux est null"; int TAUX = Convert.ToInt32(aSSURE.ADHERENT.CATEGORIE_PROFESSIONELLE.TAUXCOUVERTURE.TAUX); if (TAUX > 0) { if (fACTURE.MONTANT_TOTAL_FACTURE == fACTURE.PARTASSURE + fACTURE.PARTLDF) { MessageTaux = "Taux est superieur à Zéro"; fACTURE.DATECREATION = DateTime.Now; fACTURE.TAUX = TAUX; fACTURE.ID_TYPEFACTURE = 1; fACTURE.LIBELLE_ETABLISSEMENT = db.ETABLISSEMENT.Find(fACTURE.ID_ETABLISSEMENT).NOM_ETABLISSEMENT; fACTURE.LDFGSYSTHEME = Convert.ToInt32(Utils.pourcentage(fACTURE.MONTANT_TOTAL_FACTURE, TAUX)); fACTURE.ASSURESYSTHEME = fACTURE.MONTANT_TOTAL_FACTURE - fACTURE.LDFGSYSTHEME; fACTURE.PHOTO = nomdufichier; fACTURE.STATUT = 1; fACTURE.ETAT = 1; db.FACTURE.Add(fACTURE); db.SaveChanges(); ViewBag.Message += "Ajouter avec succes"; return RedirectToAction("CreateFacture/" + fACTURE.NUMERO_FACTURE, "PRESTATIONS"); } else { ViewBag.Message += " PART DE L'ASSURÉ + PART DE LDFG ≠ MONTANT TOTAL DE LA FACTURE "; } } else { ViewBag.Message += "LE TAUX DE COUVERTURE N'EST RENSEIGNER"; } } } } catch (DirectoryNotFoundException ex) { ViewBag.Message += MessageTaux + "Problème d'enregistrement de ficher" + ex; ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } } } else { ViewBag.Message += "le Numero de bon existe deja => Cette facture existe "; } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(fACTURE); } public ActionResult CreateDirect() { ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } [HttpPost] [ValidateAntiForgeryToken] public ActionResult CreateDirect([Bind(Include = "NUMERO_FACTURE,LIBELLE_ETABLISSEMENT,MATRICULE,ID_ETABLISSEMENT,ID_TYPEFACTURE,PHOTO,DATE_EMISSION_FACTURE,MONTANT_TOTAL_FACTURE,IDUTILISATEUR,ETAT,DATECREATION,DATEMODIFICATION,DATESUPPRESSION,NUMFACTURE,PARTASSURE,PARTLDF,NUMBON")] FACTURE fACTURE) { if (ModelState.IsValid) { String MessageTaux = ""; try { if (Request.Files.Count > 0) { var file = Request.Files[0]; if (file != null && file.ContentLength > 0) { //extension de fichier string[] validFileTypes = { ".pdf", ".png", ".jpg", ".jpeg", ".PDF", ".PNG", ".JPG", ".JPEG" }; string ext = Path.GetExtension(file.FileName); if (string.IsNullOrEmpty(ext) || !validFileTypes.Contains(ext)) { ViewBag.Message = "le fichier veuillez enregistrer PDF, PNG ou JPG "; ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } Random aleatoire = new Random(); int chiffrealeatoire = aleatoire.Next(100, 999); fACTURE.NUMERO_FACTURE = "FACT" + chiffrealeatoire + DateTime.Now.ToString("ddMMyyHHmmss"); var fileName = Path.GetFileName(file.FileName); String nomdufichier = fACTURE.MATRICULE + fACTURE.NUMERO_FACTURE + ext; var path = Path.Combine(Server.MapPath("~/Fichier/FichierFactures"), nomdufichier); file.SaveAs(path); ASSURE aSSURE = db.ASSURE.Find(fACTURE.MATRICULE); MessageTaux += "Taux est null"; int TAUX = Convert.ToInt32(aSSURE.ADHERENT.CATEGORIE_PROFESSIONELLE.TAUXCOUVERTURE.TAUX); if (TAUX > 0) { MessageTaux = "Taux est superieur à Zéro"; fACTURE.DATECREATION = DateTime.Now; fACTURE.TAUX = TAUX; //fACTURE.ID_TYPEFACTURE = 2; //fACTURE.ID_ETABLISSEMENT = "1"; fACTURE.PARTLDF = fACTURE.LDFGSYSTHEME = Convert.ToInt32(Utils.pourcentage(fACTURE.MONTANT_TOTAL_FACTURE, TAUX)); fACTURE.PARTASSURE = fACTURE.ASSURESYSTHEME = fACTURE.MONTANT_TOTAL_FACTURE - fACTURE.LDFGSYSTHEME; fACTURE.PHOTO = nomdufichier; fACTURE.STATUT = 1; fACTURE.ETAT = 1; db.FACTURE.Add(fACTURE); db.SaveChanges(); ViewBag.Message += "Ajouter avec succes"; return RedirectToAction("CreateFacture/" + fACTURE.NUMERO_FACTURE, "PRESTATIONS"); } else { ViewBag.Message += "LE TAUX DE COUVERTURE N'EST RENSEIGNER"; } } else { ViewBag.Message += "Veuillez ajouter une facture (copie)"; } } else { ViewBag.Message += "Veuillez ajouter une facture"; } } catch (DirectoryNotFoundException ex) { ViewBag.Message += MessageTaux + "Problème d'enregistrement de ficher" + ex; ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(fACTURE); } // GET: FACTURATION/FACTURES/Edit/5 public ActionResult Edit(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FACTURE fACTURE = db.FACTURE.Find(id); if (fACTURE == null) { return HttpNotFound(); } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(fACTURE); } public ActionResult EditDirect(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FACTURE fACTURE = db.FACTURE.Find(id); if (fACTURE == null) { return HttpNotFound(); } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(fACTURE); } public ActionResult AnalyseEdit(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FACTURE fACTURE = db.FACTURE.Find(id); if (fACTURE == null) { return HttpNotFound(); } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); ViewData["LISTEPRESTATION"] = db.PRESTATIONS.Where(m => m.NUMERO_FACTURE == "" + fACTURE.NUMERO_FACTURE).ToList(); return View(fACTURE); } // POST: FACTURATION/FACTURES/Edit/5 // Afin de déjouer les attaques par survalidation, activez les propriétés spécifiques auxquelles vous voulez établir une liaison. Pour // plus de détails, consultez https://go.microsoft.com/fwlink/?LinkId=317598. [HttpPost] [ValidateAntiForgeryToken] public ActionResult Edit([Bind(Include = "NUMERO_FACTURE,LIBELLE_ETABLISSEMENT,MATRICULE,ID_ETABLISSEMENT,ID_TYPEFACTURE,PHOTO,DATE_EMISSION_FACTURE,MONTANT_TOTAL_FACTURE,IDUTILISATEUR,ETAT,DATECREATION,DATEMODIFICATION,DATESUPPRESSION,NUMFACTURE,PARTASSURE,PARTLDF,NUMBON")] FACTURE fACTURE) { if (ModelState.IsValid) { if (Request.Files.Count > 0) { var file = Request.Files[0]; if (file != null && file.ContentLength > 0) { //extension de fichier string[] validFileTypes = { ".pdf", ".png", ".jpg", ".jpeg", ".PDF", ".PNG", ".JPG", ".JPEG" }; string ext = Path.GetExtension(file.FileName); if (string.IsNullOrEmpty(ext) || !validFileTypes.Contains(ext)) { ViewBag.Message = "le fichier veuillez enregistrer PDF, PNG ou JPG "; ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(); } var fileName = Path.GetFileName(file.FileName); String nomdufichier = fACTURE.MATRICULE + fACTURE.NUMERO_FACTURE + ext; var path = Path.Combine(Server.MapPath("~/Fichier/FichierFactures"), nomdufichier); file.SaveAs(path); } } fACTURE.DATEMODIFICATION = DateTime.Now; fACTURE.IDUTILISATEUR = User.Identity.Name; db.Entry(fACTURE).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewData["LISTEASSURE"] = db.ASSURE.ToList(); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(fACTURE); } [HttpPost] [ValidateAntiForgeryToken] public ActionResult AnalyseEdit([Bind(Include = "NUMERO_FACTURE,MATRICULE,ID_ETABLISSEMENT,ID_TYPEFACTURE,PHOTO,DATE_EMISSION_FACTURE,MONTANT_TOTAL_FACTURE,IDUTILISATEUR,ETAT,DATECREATION,DATEMODIFICATION,DATESUPPRESSION,NUMFACTURE,PARTASSURE,PARTLDF,NUMBON")] FACTURE fACTURE) { if (ModelState.IsValid) { fACTURE.DATEMODIFICATION = DateTime.Now; fACTURE.IDUTILISATEUR = User.Identity.Name; db.Entry(fACTURE).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Index"); } ViewBag.MATRICULE = new SelectList(db.ASSURE, "MATRICULE", "MATRICULE"); ViewBag.ID_ETABLISSEMENT = new SelectList(db.ETABLISSEMENT, "ID_ETABLISSEMENT", "NOM_ETABLISSEMENT"); ViewBag.ID_TYPEFACTURE = new SelectList(db.TYPE_FACTURE, "ID_TYPEFACTURE", "LIBELLE_TYPEFACTURE"); return View(fACTURE); } // GET: FACTURATION/FACTURES/Delete/5 public ActionResult Delete(string id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } FACTURE fACTURE = db.FACTURE.Find(id); if (fACTURE == null) { return HttpNotFound(); } return View(fACTURE); } // POST: FACTURATION/FACTURES/Delete/5 [HttpPost, ActionName("Delete")] [ValidateAntiForgeryToken] public ActionResult DeleteConfirmed(string id) { FACTURE fACTURE = db.FACTURE.Find(id); db.FACTURE.Remove(fACTURE); db.SaveChanges(); return RedirectToAction("Index"); } public ActionResult ValiderPrestation(string id) { PRESTATIONS pRESTATIONS = new PRESTATIONS(); pRESTATIONS = db.PRESTATIONS.Find(id); if (ModelState.IsValid) { pRESTATIONS.VALIDITE_ACTE = 2; pRESTATIONS.AVIS = "ACCEPTER"; pRESTATIONS.NOMBRE_TRAITEMENT_VALIDE = pRESTATIONS.NOMBRE_TRAITEMENT; pRESTATIONS.MONTANT_VALIDE = pRESTATIONS.MONTANT_ORIGINE; /*if (pRESTATIONS.PRIX_UNITATIRE > pRESTATIONS.MONTANT_PLAFOND) { pRESTATIONS.MONTANT_VALIDE = pRESTATIONS.MONTANT_PLAFOND; } else { pRESTATIONS.MONTANT_VALIDE = pRESTATIONS.PRIX_UNITATIRE; }*/ db.Entry(pRESTATIONS).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("AnalyseEdit/" + pRESTATIONS.FACTURE.NUMERO_FACTURE); } return RedirectToAction("AnalyseEdit/" + pRESTATIONS.FACTURE.NUMERO_FACTURE); } public ActionResult RejeterPrestation(string id) { PRESTATIONS pRESTATIONS = new PRESTATIONS(); pRESTATIONS = db.PRESTATIONS.Find(id); if (ModelState.IsValid) { pRESTATIONS.VALIDITE_ACTE = 3; pRESTATIONS.MONTANT_VALIDE = 0; db.Entry(pRESTATIONS).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("AnalyseEdit/" + pRESTATIONS.FACTURE.NUMERO_FACTURE); } return RedirectToAction("AnalyseEdit/" + pRESTATIONS.FACTURE.NUMERO_FACTURE); } public ActionResult TerminerAnalyseFacture(string id) { int sommne = 0; FACTURE fACTURE = new FACTURE(); fACTURE = db.FACTURE.Find(id); try { int nombrePrestationnonTraiter = db.PRESTATIONS.Where(m => m.NUMERO_FACTURE == id).Count(); if (nombrePrestationnonTraiter > 0) { var listeValidation = db.PRESTATIONS.Where(p => p.NUMERO_FACTURE == id).ToList(); foreach (var item1 in listeValidation as IList) { if (item1.VALIDITE_ACTE != 2 & item1.VALIDITE_ACTE != 3) { item1.NOMBRE_TRAITEMENT_VALIDE = item1.NOMBRE_TRAITEMENT; if (item1.PRIX_UNITATIRE < item1.MONTANT_PLAFOND || item1.MONTANT_PLAFOND == 0) { item1.MONTANT_VALIDE = item1.MONTANT_ORIGINE; } else { item1.MONTANT_VALIDE = Convert.ToInt32(item1.MONTANT_PLAFOND * item1.NOMBRE_TRAITEMENT); } item1.VALIDITE_ACTE = 2; } item1.ETAT = 2; db.Entry(fACTURE).State = EntityState.Modified; db.SaveChanges(); // item1.MONTANT_ORIGINE = item1.NOMBRE_TRAITEMENT_VALIDE * item1.MONTANT_VALIDE; } } if (ModelState.IsValid) { sommne = Convert.ToInt32(db.PRESTATIONS.Where(m => m.NUMERO_FACTURE == id).Sum(m => m.MONTANT_VALIDE)); fACTURE.MONTANTVALIDER = sommne; fACTURE.DATEMODIFICATION = DateTime.Now; fACTURE.IDUTILISATEUR = User.Identity.Name; fACTURE.ETAT = 2; fACTURE.STATUT = 2; db.Entry(fACTURE).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("AlayseFacture/"); } } catch (Exception ex) { ViewBag.Message = "veuillez Validez les prestations de cette facture" + ex; return RedirectToAction("AnalyseEdit/" + fACTURE.NUMERO_FACTURE); } return RedirectToAction("AnalyseEdit/" + fACTURE.NUMERO_FACTURE); } // [HttpPost] [ValidateAntiForgeryToken] public ActionResult AvisPrestationEdit([Bind(Include = "ID_PRESTATION,MONTANT_VALIDE,VALIDITE_ACTE,AVIS,OBSERVATION")] PRESTATIONS pRESTATIONS) { PRESTATIONS pRESTATIONSnew = new PRESTATIONS(); pRESTATIONSnew = db.PRESTATIONS.Find(pRESTATIONS.ID_PRESTATION); if (ModelState.IsValid) { pRESTATIONSnew.VALIDITE_ACTE = pRESTATIONS.VALIDITE_ACTE; pRESTATIONSnew.MONTANT_VALIDE = pRESTATIONS.MONTANT_VALIDE; pRESTATIONSnew.OBSERVATION = pRESTATIONS.OBSERVATION; if (pRESTATIONS.VALIDITE_ACTE == 2) { pRESTATIONSnew.AVIS = "ACCEPTER"; } else { pRESTATIONSnew.AVIS = "REJETER"; pRESTATIONSnew.MONTANT_VALIDE = 0; pRESTATIONS.VALIDITE_ACTE = 3; } // pRESTATIONS.ETAT = 2; db.Entry(pRESTATIONSnew).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("AnalyseEdit/" + pRESTATIONSnew.FACTURE.NUMERO_FACTURE); } return RedirectToAction("AnalyseEdit/" + pRESTATIONSnew.FACTURE.NUMERO_FACTURE); } protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); } } }