protected override ValidationResult IsValid(object value, ValidationContext validationContext) { TblMam model = (TblMam)validationContext.ObjectInstance; if (model.Zscore23 + model.Muac23 + model.Muac12 + model.ReferIn + model.Totalbegin < model.Cured + model.Deaths + model.Defaulters + model.NonCured + model.Transfers) { return(new ValidationResult("Total Admission is greater than total exit.")); } if (model.Zscore23 + model.Muac23 + model.Muac12 != model.TMale + model.TFemale) { return(new ValidationResult(" Odema+Z3score+Muac115 is not qual to sum of male and females.")); } return(ValidationResult.Success); }
public IActionResult Create(string nmrid) { if (nmrid == null) { return(NotFound()); } var nmr = _context.Nmr.SingleOrDefault(m => m.Nmrid == nmrid); if (nmr == null) { return(NotFound()); } var user = User.Identity.Name; if (nmr.UserName != user) { return(Unauthorized()); } int[] selected = _context.TblMam.Where(m => m.Nmrid == nmrid).Select(m => m.Mamid).ToArray(); int[] valid = _context.TlkpSfp.Where(m => m.Active.Equals(true) && !m.AgeGroup.ToLower().Contains("total") && !selected.Contains(m.Sfpid)).Select(m => m.Sfpid).ToArray(); foreach (var id in valid) { TblMam item = new TblMam(); item.Nmrid = nmrid; item.Mamid = id; item.UserName = user; _context.TblMam.Add(item); } int[] query = _context.TblFstock.Where(m => m.Nmrid == nmrid).Select(m => m.StockId).ToArray(); int[] model = _context.TlkpFstock.Where(m => m.Active.Equals(true) && !query.Contains(m.StockId)).Select(m => m.StockId).ToArray(); foreach (var id in model) { TblFstock item = new TblFstock(); item.Nmrid = nmrid; item.StockId = id; item.UserName = user; _context.TblFstock.Add(item); } _context.SaveChanges(); return(Ok()); }
public async Task <IActionResult> verifyNmr([Bind("Nmrid,message,StatusId")] ReviewViewModel nmr) { if (nmr.Nmrid == null) { return(BadRequest()); } if (ModelState.IsValid) { var item = await _context.Nmr.Where(m => m.Nmrid == nmr.Nmrid).SingleOrDefaultAsync(); if (item == null) { return(NotFound()); } if (item.StatusId == 3) { ModelState.AddModelError(string.Empty, "You cannot change report status."); return(View("reports", item)); } if (nmr.StatusId == 3) { var tSum = _context.TblOtp.Where(m => m.Nmrid == nmr.Nmrid).AsNoTracking(); var newNmrid = _context.TlkpOtptfu.Where(m => m.AgeGroup.ToLower().Contains("total")).AsNoTracking().SingleOrDefault(); if (tSum.Any() && newNmrid != null) { var newOtp = new TblOtp(); newOtp.Nmrid = nmr.Nmrid; newOtp.Otpid = newNmrid.Otptfuid; newOtp.Cured = tSum.Sum(m => m.Cured); newOtp.NonCured = tSum.Sum(m => m.NonCured); newOtp.Death = tSum.Sum(m => m.Death); newOtp.Default = tSum.Sum(m => m.Default); newOtp.Defaultreturn = tSum.Sum(m => m.Defaultreturn); newOtp.Fromscotp = tSum.Sum(m => m.Fromscotp); newOtp.Fromsfp = tSum.Sum(m => m.Fromsfp); newOtp.Muac115 = tSum.Sum(m => m.Muac115); newOtp.Z3score = tSum.Sum(m => m.Z3score); newOtp.Odema = tSum.Sum(m => m.Odema); newOtp.TFemale = tSum.Sum(m => m.TFemale); newOtp.TMale = tSum.Sum(m => m.TMale); newOtp.RefOut = tSum.Sum(m => m.RefOut); newOtp.Totalbegin = tSum.Sum(m => m.Totalbegin); newOtp.UserName = item.UserName; try { _context.TblOtp.Add(newOtp); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!NmrExists(nmr.Nmrid)) { return(NotFound()); } else { throw; } } } var tSumout = _context.TblOtptfu.Where(m => m.Nmrid == nmr.Nmrid).AsNoTracking(); if (tSumout.Any() && newNmrid != null) { var newOtptfu = new TblOtptfu(); newOtptfu.Nmrid = nmr.Nmrid; newOtptfu.Otptfuid = newNmrid.Otptfuid; newOtptfu.Cured = tSumout.Sum(m => m.Cured); newOtptfu.NonCured = tSumout.Sum(m => m.NonCured); newOtptfu.Death = tSumout.Sum(m => m.Death); newOtptfu.Default = tSumout.Sum(m => m.Default); newOtptfu.Defaultreturn = tSumout.Sum(m => m.Defaultreturn); newOtptfu.Fromscotp = tSumout.Sum(m => m.Fromscotp); newOtptfu.Fromsfp = tSumout.Sum(m => m.Fromsfp); newOtptfu.Muac115 = tSumout.Sum(m => m.Muac115); newOtptfu.Z3score = tSumout.Sum(m => m.Z3score); newOtptfu.Odema = tSumout.Sum(m => m.Odema); newOtptfu.TFemale = tSumout.Sum(m => m.TFemale); newOtptfu.TMale = tSumout.Sum(m => m.TMale); newOtptfu.RefOut = tSumout.Sum(m => m.RefOut); newOtptfu.Totalbegin = tSumout.Sum(m => m.Totalbegin); newOtptfu.UserName = item.UserName; try { _context.TblOtptfu.Add(newOtptfu); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!NmrExists(nmr.Nmrid)) { return(NotFound()); } else { throw; } } } var tMam = _context.TblMam.Include(m => m.Mam).Where(m => m.Nmrid == nmr.Nmrid).AsNoTracking(); var tChildid = _context.TlkpSfp.Where(m => m.AgeGroup.ToLower().Contains("total children")).AsNoTracking().SingleOrDefault(); var tWomanid = _context.TlkpSfp.Where(m => m.AgeGroup.ToLower().Contains("total women")).AsNoTracking().SingleOrDefault(); if (tMam.Any() && tChildid != null && tWomanid != null) { var tChild = new TblMam(); var tWomen = new TblMam(); tChild.Nmrid = nmr.Nmrid; tChild.Mamid = tChildid.Sfpid; tChild.Cured = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Cured); tChild.NonCured = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.NonCured); tChild.Deaths = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Deaths); tChild.Defaulters = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Defaulters); tChild.Absents = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Absents); tChild.Transfers = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Transfers); tChild.Muac12 = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Muac12); tChild.Muac23 = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Muac23); tChild.TFemale = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.TFemale); tChild.Zscore23 = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Zscore23); tChild.TMale = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.TMale); tChild.ReferIn = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.ReferIn); tChild.Totalbegin = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("children")).Sum(m => m.Totalbegin); tChild.UserName = item.UserName; tWomen.Nmrid = nmr.Nmrid; tWomen.Mamid = tWomanid.Sfpid; tWomen.Cured = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Cured); tWomen.NonCured = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.NonCured); tWomen.Deaths = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Deaths); tWomen.Defaulters = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Defaulters); tWomen.Absents = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Absents); tWomen.Transfers = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Transfers); tWomen.ReferIn = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.ReferIn); tWomen.Muac12 = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Muac12); tWomen.Muac23 = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Muac23); tWomen.TFemale = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.TFemale); tWomen.Zscore23 = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Zscore23); tWomen.TMale = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.TMale); tWomen.Totalbegin = tMam.Where(m => m.Mam.AgeGroup.ToLower().Contains("women")).Sum(m => m.Totalbegin); tWomen.UserName = item.UserName; try { _context.TblMam.Add(tChild); _context.TblMam.Add(tWomen); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!NmrExists(nmr.Nmrid)) { return(NotFound()); } else { throw; } } } } try { item.StatusId = nmr.StatusId; item.message = nmr.message; await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!NmrExists(nmr.Nmrid)) { return(NotFound()); } else { throw; } } return(RedirectToAction("adminNmr")); } return(View("reports")); }
public async Task <IActionResult> Put([FromRoute] int id, [FromRoute] string nmrid, [FromBody] TblMam item) { if (nmrid == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != item.Mamid) { return(BadRequest()); } var nmr = await _context.Nmr.Where(m => m.Nmrid == nmrid).SingleOrDefaultAsync(); if (nmr == null) { return(NotFound()); } if (nmr.StatusId == 3 || nmr.HfactiveStatusId != 1) { return(BadRequest()); } if (User.Identity.Name == nmr.UserName) { nmr.UpdateDate = DateTime.Now; nmr.StatusId = 2; _context.Entry(item).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!Exists(id, nmrid)) { return(NotFound()); } else { throw; } } return(NoContent()); } else { return(Unauthorized()); } }