using MALDFGASSURANCE.Models; using System; using System.Collections.Generic; using System.Data; using System.Data.Entity; using System.Linq; using System.Net; using System.Web.Mvc; namespace MALDFGASSURANCE.Areas.ESPACEREMBOURSEMENT.Controllers { public class REMBOURSEMENTController : Controller { private MALDFGEntities db = new MALDFGEntities(); // GET: ESPACEREMBOURSEMENT/REMBOURSEMENT public ActionResult Index() { return View(db.REMBOURSEMENT.ToList()); } // GET: ESPACEREMBOURSEMENT/REMBOURSEMENT/Details/5 public ActionResult Details(int? id) { string matricule = ""; string Nom = "", myref = ""; if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } REMBOURSEMENT rEMBOURSEMENT = db.REMBOURSEMENT.Find(id); if (rEMBOURSEMENT == null) { return HttpNotFound(); } var identite = rEMBOURSEMENT.INFORMATION; if (rEMBOURSEMENT.NUMREBOURSEMENT.Substring(0, 2) == "RD") { myref = rEMBOURSEMENT.NUMREBOURSEMENT.Substring(7, rEMBOURSEMENT.NUMREBOURSEMENT.Length - 7); if (db.ADHERENT.Where(a => a.MATRICULE_PROFESSIONNEL_ADERANT == myref).Count() == 1) { ADHERENT aDHERENT = db.ADHERENT.Where(a => a.MATRICULE_PROFESSIONNEL_ADERANT == myref).FirstOrDefault(); matricule = aDHERENT.MATRICULE_PROFESSIONNEL_ADERANT; Nom = aDHERENT.NOMS_ET_PRENOMS; } else { matricule = "Error"; Nom = "error"; } } else if (rEMBOURSEMENT.NUMREBOURSEMENT.Substring(0, 2) == "RE") { if (rEMBOURSEMENT.NUMREBOURSEMENT.Substring(rEMBOURSEMENT.NUMREBOURSEMENT.Length - 2, 2) == "CL") { myref = rEMBOURSEMENT.NUMREBOURSEMENT.Substring(7, rEMBOURSEMENT.NUMREBOURSEMENT.Length - 9); if (db.ETABLISSEMENT.Where(e => e.ID_ETABLISSEMENT == myref).Count() == 1) { ETABLISSEMENT etablissement = db.ETABLISSEMENT.Where(a => a.ID_ETABLISSEMENT == myref).FirstOrDefault(); matricule = etablissement.ID_ETABLISSEMENT; Nom = etablissement.NOM_ETABLISSEMENT; ViewBag.PRESTATIONS = "CLNQE"; } else { matricule = "Error"; Nom = "error"; } } else if (rEMBOURSEMENT.NUMREBOURSEMENT.Substring(rEMBOURSEMENT.NUMREBOURSEMENT.Length - 2, 2) == "PH") { myref = rEMBOURSEMENT.NUMREBOURSEMENT.Substring(7, rEMBOURSEMENT.NUMREBOURSEMENT.Length - 9); if (db.PHARMACIE.Where(p => p.REFPHARMACIE == myref).Count() == 1) { PHARMACIE pharmacie = db.PHARMACIE.Where(p => p.REFPHARMACIE == myref).FirstOrDefault(); matricule = pharmacie.REFPHARMACIE; Nom = pharmacie.RAISONSOCIALE; ViewBag.PRESTATIONS = "PHCIE"; } else { matricule = "Error"; Nom = "error"; } } else { matricule = "Error"; Nom = "error"; } } ViewData["listeremboursement"] = db.REMBOURSFACTURE.Where(r => r.IDREMBOURSEMENT == r.REMBOURSEMENT.IDREMBOURSEMENT && r.IDREMBOURSEMENT == id).ToList(); var reclam = db.REMBOURSFACTURE.Where(r => r.IDREMBOURSEMENT == r.REMBOURSEMENT.IDREMBOURSEMENT && r.IDREMBOURSEMENT == id).Sum(r => r.MONTRECLAMER); var based = db.REMBOURSFACTURE.Where(r => r.IDREMBOURSEMENT == r.REMBOURSEMENT.IDREMBOURSEMENT && r.IDREMBOURSEMENT == id).Sum(r => r.BASEDECOMPTE); var regle = db.REMBOURSFACTURE.Where(r => r.IDREMBOURSEMENT == r.REMBOURSEMENT.IDREMBOURSEMENT && r.IDREMBOURSEMENT == id).Sum(r => r.MONTREGLER); ViewBag.reclam = reclam; ViewBag.based = based; ViewBag.regle = regle; ViewBag.matricule = matricule; ViewBag.nom = Nom; ViewBag.identite = identite; return View(rEMBOURSEMENT); } // GET: ESPACEREMBOURSEMENT/REMBOURSEMENT/Create public ActionResult Create() { return View(); } // POST: ESPACEREMBOURSEMENT/REMBOURSEMENT/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 = "IDREMBOURSEMENT,NUMREBOURSEMENT,DATEPAIEMENT,INFORMATION,PERIODE,TOTAL,ETAT,DATECREATION,DATEMODIFICATION,IDUTILISATEUR,TOTALREMBOURSER,IDTYPEPAIEMENT,REFPAIEMENT,NOMPAIEMENT")] REMBOURSEMENT rEMBOURSEMENT) { if (ModelState.IsValid) { db.REMBOURSEMENT.Add(rEMBOURSEMENT); db.SaveChanges(); return RedirectToAction("Index"); } return View(rEMBOURSEMENT); } // GET: ESPACEREMBOURSEMENT/REMBOURSEMENT/Edit/5 public ActionResult Edit(int? id, decimal? MtBase, decimal? MtRemb) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } REMBOURSEMENT rEMBOURSEMENT = db.REMBOURSEMENT.Find(id); if (rEMBOURSEMENT == null) { return HttpNotFound(); } if (MtBase != null) { ViewBag.MTBASE = MtBase; rEMBOURSEMENT.TOTAL = Convert.ToDecimal(MtBase); } else { ViewBag.MTBASE = 0; rEMBOURSEMENT.TOTAL = 0; } if (MtRemb != null) { ViewBag.MTREMB = MtRemb; rEMBOURSEMENT.TOTALREMBOURSER = Convert.ToDecimal(MtRemb); } else { ViewBag.MTREMB = 0; rEMBOURSEMENT.TOTALREMBOURSER = 0; } db.Entry(rEMBOURSEMENT).State = EntityState.Modified; db.SaveChanges(); return View(rEMBOURSEMENT); } // GET: ESPACEREMBOURSEMENT/REMBOURSEMENT/Edit/5 public ActionResult OLDEdit(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } REMBOURSEMENT rEMBOURSEMENT = db.REMBOURSEMENT.Find(id); if (rEMBOURSEMENT == null) { return HttpNotFound(); } return View(rEMBOURSEMENT); } // POST: ESPACEREMBOURSEMENT/REMBOURSEMENT/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 = "IDREMBOURSEMENT,NUMREBOURSEMENT,DATEPAIEMENT,INFORMATION,PERIODE,TOTAL,ETAT,DATECREATION,DATEMODIFICATION,IDUTILISATEUR,TOTALREMBOURSER,IDTYPEPAIEMENT,REFPAIEMENT,NOMPAIEMENT")] REMBOURSEMENT rEMBOURSEMENT) { decimal regle = Convert.ToInt64(db.REMBOURSFACTURE.Where(r => r.IDREMBOURSEMENT == rEMBOURSEMENT.IDREMBOURSEMENT).Sum(r => r.MONTREGLER)); // int MtBASE= db.REMBOURSFACTURE.Include(r => r.REMBOURSEMENT).Where(r=>r.IDREMBOURSFACTURE==rEMBOURSEMENT.IDREMBOURSEMENT).; if (ModelState.IsValid) { /* rEMBOURSEMENT.DATECREATION = DateTime.Now; rEMBOURSEMENT.DATEMODIFICATION = DateTime.Now;*/ if (rEMBOURSEMENT.ETAT == null) { rEMBOURSEMENT.ETAT = rEMBOURSEMENT.ETAT; } rEMBOURSEMENT.IDUTILISATEUR = User.Identity.Name; // rEMBOURSEMENT.TOTAL = regle; // rEMBOURSEMENT.TOTALREMBOURSER = rEMBOURSEMENT.TOTAL; if (rEMBOURSEMENT.REFPAIEMENT == "ESPECES") { rEMBOURSEMENT.IDTYPEPAIEMENT = 1; } else if (rEMBOURSEMENT.REFPAIEMENT == "CHEQUE") { rEMBOURSEMENT.IDTYPEPAIEMENT = 2; } else { rEMBOURSEMENT.IDTYPEPAIEMENT = 3; } var listeRembs = db.REMBOURSFACTURE.Where(r => r.IDREMBOURSEMENT == rEMBOURSEMENT.IDREMBOURSEMENT).ToList(); foreach (var Rembs in listeRembs as IList) { Rembs.ETAT = 2; } REMBOURSEMENT rEMBOUR = db.REMBOURSEMENT.Find(rEMBOURSEMENT.IDREMBOURSEMENT); rEMBOUR.REFPAIEMENT = rEMBOURSEMENT.REFPAIEMENT; rEMBOUR.IDTYPEPAIEMENT = rEMBOURSEMENT.IDTYPEPAIEMENT; rEMBOUR.IDUTILISATEUR = rEMBOURSEMENT.IDUTILISATEUR; if (rEMBOUR.DATECREATION == null) { rEMBOUR.DATECREATION = DateTime.Now; } rEMBOUR.DATEMODIFICATION = DateTime.Now; rEMBOUR.ETAT = rEMBOURSEMENT.ETAT; db.Entry(rEMBOUR).State = EntityState.Modified; db.SaveChanges(); return RedirectToAction("Details/" + rEMBOURSEMENT.IDREMBOURSEMENT); } return View(rEMBOURSEMENT); } //[HttpPost] //[ValidateAntiForgeryToken] //public ActionResult Infopaiement([Bind(Include = "IDREMBOURSEMENT,NUMREBOURSEMENT,DATEPAIEMENT,INFORMATION,PERIODE,TOTAL,ETAT,DATECREATION,DATEMODIFICATION,IDUTILISATEUR,TOTALREMBOURSER,IDTYPEPAIEMENT,REFPAIEMENT,NOMPAIEMENT")] REMBOURSEMENT rEMBOURSEMENT) //{ // REMBOURSEMENT rEMB = new REMBOURSEMENT(); // rEMBOURSEMENT = db.REMBOURSEMENT.Find(rEMBOURSEMENT.IDREMBOURSEMENT); // if (ModelState.IsValid) // { // rEMB. = 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"; // } // db.Entry(pRESTATIONSnew).State = EntityState.Modified; // db.SaveChanges(); // return RedirectToAction("AnalyseEdit/" + pRESTATIONSnew.FACTURE.NUMERO_FACTURE); // } // return RedirectToAction("AnalyseEdit/" + pRESTATIONSnew.FACTURE.NUMERO_FACTURE); //} // GET: ESPACEREMBOURSEMENT/REMBOURSEMENT/Delete/5 public ActionResult Delete(int? id) { if (id == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); } REMBOURSEMENT rEMBOURSEMENT = db.REMBOURSEMENT.Find(id); if (rEMBOURSEMENT == null) { return HttpNotFound(); } return View(rEMBOURSEMENT); } // POST: ESPACEREMBOURSEMENT/REMBOURSEMENT/Delete/5 [HttpPost, ActionName("Delete")] [ValidateAntiForgeryToken] public ActionResult DeleteConfirmed(int id) { REMBOURSEMENT rEMBOURSEMENT = db.REMBOURSEMENT.Find(id); db.REMBOURSEMENT.Remove(rEMBOURSEMENT); db.SaveChanges(); return RedirectToAction("Index"); } protected override void Dispose(bool disposing) { if (disposing) { db.Dispose(); } base.Dispose(disposing); } } }