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> DeleteStock([FromRoute] int id, [FromRoute] string nmrid) { if (nmrid == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Nmr nmr = await _context.Nmr.Where(m => m.Nmrid == nmrid).SingleOrDefaultAsync(); TblFstock item = await _context.TblFstock.SingleOrDefaultAsync(m => m.StockId == id && m.Nmrid == nmrid); if (item == null || nmr == null) { return(NotFound()); } if (nmr.StatusId == 3 || nmr.HfactiveStatusId != 1) { return(BadRequest()); } if (nmr.UserName == User.Identity.Name) { nmr.UpdateDate = DateTime.Now; nmr.StatusId = 2; _context.TblFstock.Remove(item); await _context.SaveChangesAsync(); return(Ok(item)); } else { return(Unauthorized()); } }
public async Task <IActionResult> putStock([FromRoute] int id, [FromRoute] string nmrid, [FromBody] TblFstock item) { if (nmrid == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != item.StockId) { 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 == item.UserName) { nmr.StatusId = 2; nmr.UpdateDate = DateTime.Now; _context.Entry(item).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!StockExists(id, nmrid)) { return(NotFound()); } else { throw; } } return(NoContent()); } else { return(BadRequest()); } }