public async Task <IActionResult> DeleteStock([FromRoute] int id, [FromRoute] string nmrid) { if (nmrid == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } TblStockIpt item = await _context.TblStockIpt.SingleOrDefaultAsync(m => m.SstockId == id && m.Nmrid == nmrid); if (item == null) { return(NotFound()); } Nmr nmr = await _context.Nmr.SingleOrDefaultAsync(m => m.Nmrid == item.Nmrid); if (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.TblStockIpt.Remove(item); await _context.SaveChangesAsync(); return(Ok(item)); } else { return(Unauthorized()); } }
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[] query = _context.TblOtptfu.Where(m => m.Nmrid == nmrid).Select(m => m.Otptfuid).ToArray(); int[] model = _context.TlkpOtptfu.Where(m => m.Active.Equals(true) && !m.AgeGroup.ToLower().Contains("total") && !query.Contains(m.Otptfuid)).Select(m => m.Otptfuid).ToArray(); foreach (int a in model) { TblOtptfu Item = new TblOtptfu(); Item.Nmrid = nmrid; Item.Otptfuid = a; Item.UserName = user; _context.TblOtptfu.Add(Item); } int[] query2 = _context.TblStockIpt.Where(m => m.Nmrid == nmrid).Select(m => m.SstockId).ToArray(); int[] stock = _context.TlkpSstock.Where(m => m.Active.Equals(true) && m.IPDSAMZarib > 0 && !query2.Contains(m.SstockId)).Select(m => m.SstockId).ToArray(); foreach (int a in stock) { TblStockIpt Item = new TblStockIpt(); Item.Nmrid = nmrid; Item.SstockId = a; Item.UserName = user; _context.TblStockIpt.Add(Item); } _context.SaveChanges(); return(Ok()); }
public async Task <IActionResult> putStock([FromRoute] int id, [FromRoute] string nmrid, [FromBody] TblStockIpt item) { if (nmrid == null) { BadRequest(); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != item.SstockId) { return(BadRequest()); } Nmr nmr = await _context.Nmr.SingleOrDefaultAsync(m => m.Nmrid == item.Nmrid); if (nmr == null) { return(NotFound()); } if (nmr.StatusId == 3 || nmr.HfactiveStatusId != 1) { return(BadRequest()); } if (User.Identity.Name == nmr.UserName) { var stock = await _context.TblStockIpt.Where(m => m.Nmrid == nmrid && m.SstockId == id).AsNoTracking().SingleOrDefaultAsync(); if (stock.UserName != item.UserName) { return(BadRequest()); } 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(Unauthorized()); } }