public IHttpActionResult PutMK_SCORE(int id, MK_SCORE mK_SCORE) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != mK_SCORE.Id) { return(BadRequest()); } db.Entry(mK_SCORE).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!MK_SCOREExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public ActionResult DeleteConfirmed(int id) { MK_SCORE mK_SCORE = db.MK_SCORE.Find(id); db.MK_SCORE.Remove(mK_SCORE); db.SaveChanges(); return(RedirectToAction("Index")); }
public IHttpActionResult GetMK_SCORE(int id) { MK_SCORE mK_SCORE = db.MK_SCORE.Find(id); if (mK_SCORE == null) { return(NotFound()); } return(Ok(mK_SCORE)); }
public IHttpActionResult PostMK_SCORE(MK_SCORE mK_SCORE) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.MK_SCORE.Add(mK_SCORE); db.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = mK_SCORE.Id }, mK_SCORE)); }
public ActionResult Edit([Bind(Include = "Id,mk,score,volume,fromDate,toDate,agendaId")] MK_SCORE mK_SCORE) { if (ModelState.IsValid) { db.Entry(mK_SCORE).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.mk = new SelectList(db.MK, "Id", "mk_name", mK_SCORE.mk); ViewBag.agendaId = new SelectList(db.AGENDA, "Id", "name", mK_SCORE.agendaId); return(View(mK_SCORE)); }
public IHttpActionResult DeleteMK_SCORE(int id) { MK_SCORE mK_SCORE = db.MK_SCORE.Find(id); if (mK_SCORE == null) { return(NotFound()); } db.MK_SCORE.Remove(mK_SCORE); db.SaveChanges(); return(Ok(mK_SCORE)); }
// GET: MK_SCORE/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MK_SCORE mK_SCORE = db.MK_SCORE.Find(id); if (mK_SCORE == null) { return(HttpNotFound()); } return(View(mK_SCORE)); }
// GET: MK_SCORE/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MK_SCORE mK_SCORE = db.MK_SCORE.Find(id); if (mK_SCORE == null) { return(HttpNotFound()); } ViewBag.mk = new SelectList(db.MK, "Id", "mk_name", mK_SCORE.mk); ViewBag.agendaId = new SelectList(db.AGENDA, "Id", "name", mK_SCORE.agendaId); return(View(mK_SCORE)); }
/// <summary> /// recalculate the general score of every agenda /// </summary> private void recalculate(int agendaId, DateTime from, DateTime to) { // foreach VOTE between from - to // (filter/update/delete and add) by agenda in VOTE_TO_AGENDA // add score,volume/(num of all vote)*100, base on vote in VOTE to the relevant mk in MK_SCORE using (AgendaEntities db = new AgendaEntities()) { // foreach VOTE between from - to // (filter/update/delete and add) by agenda in VOTE_TO_AGENDA var mksc = db.MK_SCORE.Where(mks => (mks.fromDate == from && mks.toDate == to && mks.agendaId == agendaId)); foreach (MK_SCORE m in mksc.ToList()) { db.MK_SCORE.Remove(m); db.SaveChanges(); } // add score,volume/(num of all vote)*100, base on vote in VOTE to the relevant mk in MK_SCORE var vote = db.VOTE.Where(v => (v.meeting >= from && v.meeting <= to)); foreach (VOTE v in vote.ToList()) { VOTE_TO_AGENDA v2a = v.VOTE_TO_AGENDA.Where(v_to_a => (v_to_a.agenda == agendaId && v_to_a.vote == v.Id)).FirstOrDefault(); List <MK_SCORE> ms_new_lst = db.MK_SCORE.Where(mks => (mks.fromDate == from && mks.toDate == to && mks.mk == v.mk && mks.agendaId == agendaId)).ToList(); if (v2a != null) { if (ms_new_lst != null && ms_new_lst.Count() > 0) { foreach (MK_SCORE m in ms_new_lst.ToList()) { if (v.vote1 == 1) { m.score += v2a.score; } else if (v.vote1 == 2) { m.score -= v2a.score; } else { // m.score -= v2a.score; } m.volume += v2a.volume; db.SaveChanges(); } } else { MK_SCORE ms_new = new MK_SCORE(); ms_new.mk = v.mk.Value; ms_new.score = v2a.score; if (v.vote1 == 1) { ms_new.score = v2a.score; } else if (v.vote1 == 2) { ms_new.score = -1 * v2a.score; } else { // m.score -= v2a.score; ms_new.score = 0; } ms_new.volume = v2a.volume; ms_new.fromDate = from; ms_new.toDate = to; ms_new.agendaId = agendaId; db.MK_SCORE.Add(ms_new); db.SaveChanges(); } } } // normilazed by number of votes var ms_new_lstn = db.MK_SCORE.Where(mks => (mks.fromDate == from && mks.toDate == to && mks.agendaId == agendaId)); int votes2Agenda = db.VOTE_TO_AGENDA.Where(v2a => (v2a.agenda == agendaId)).Count() / 12; // div by number of mk if (ms_new_lstn != null) { foreach (MK_SCORE m in ms_new_lstn.ToList()) { m.score = (Decimal)System.Data.SqlTypes.SqlDecimal.ConvertToPrecScale(m.score / votes2Agenda, 18, 3); m.volume = (Decimal)System.Data.SqlTypes.SqlDecimal.ConvertToPrecScale(m.volume / votes2Agenda, 18, 3); db.SaveChanges(); } } } }