//[AllowAnonymous] public async Task <IActionResult> Putinvd_dep([FromRoute] Guid id, [FromBody] invd_dep varinvd_dep) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != varinvd_dep.invd_depId) { return(BadRequest()); } _context.Entry(varinvd_dep).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!invd_depExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
//[AllowAnonymous] public async Task <IActionResult> Postinvd_dep([FromBody] invd_dep varinvd_dep) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } _context.invd_dep.Add(varinvd_dep); await _context.SaveChangesAsync(); return(CreatedAtAction("Getinvd_dep", new { id = varinvd_dep.invd_depId }, varinvd_dep)); }
public async Task <string> Operation_out(Guid uid, invops_out varinvops_out) { string result = ""; invp_data m = null; invp_tag t = null; t = _context.invp_tag.FirstOrDefault(z => z.RFID == varinvops_out.rfid); if (t != null) { m = _context.invp_data.FirstOrDefault(z => z.invp_dataId == t.invp_dataId); if (m == null) { result = "Ошибка. Запчасть не обнаружена"; } else { result = m.name; } } else { result = "Ошибка. Запчасть не обнаружена"; } invwh_cell c = null; c = _context.invwh_cell.FirstOrDefault(cc => cc.SHCODE == varinvops_out.shCode); if (c == null) { result += "Ячейка не найдена. "; } invd_dep dep = null; dep = _context.invd_dep.FirstOrDefault(dd => dd.invd_depId == varinvops_out.theDept); if (dep == null) { result += "Отдел не найден. "; } invd_op op = _context.invd_op.FirstOrDefault(op => op.name == "Отгрузка"); if (op == null) { op = new invd_op(); op.invd_opId = Guid.NewGuid(); op.name = "Отгрузка"; _context.invd_op.Add(op); await _context.SaveChangesAsync(); } if (varinvops_out.quantity <= 0) { result += "Количество должно быть положительным числом. "; } if (m != null && c != null && dep != null && varinvops_out.quantity > 0) { invwh_loc loc = null; loc = _context.invwh_loc.FirstOrDefault(l => l.invwh_locId == c.invwh_locId); // update store status invw_info e = null; e = _context.invw_info.FirstOrDefault(ex => ex.RFID == t.RFID && ex.cellid == c.invwh_cellId); if (e != null) { if (e.Qty > varinvops_out.quantity) { e.Qty -= varinvops_out.quantity; _context.Entry(e).State = EntityState.Modified; } else if (e.Qty == varinvops_out.quantity) { _context.invw_info.Remove(e); } else if (e.Qty < varinvops_out.quantity) { result += "Количество запчастей в ячейке не достаточно для списания. Всего: " + e.Qty.ToString(); _context.invops_out.Add(varinvops_out); await _context.SaveChangesAsync(); return(result); } } else { result += "Не найдена запчасть в ячейке. "; _context.invops_out.Add(varinvops_out); await _context.SaveChangesAsync(); return(result); } // save history invm_info h = new invm_info(); h.invm_infoId = Guid.NewGuid(); h.fromcell = c.invwh_cellId; h.toCell = Guid.Empty; h.theUser = uid; h.theOP = op.invd_opId; h.optime = DateTime.Now; h.Qty = varinvops_out.quantity; h.storepartid = m.invp_dataId; // запчасть h.theDep = dep.invd_depId; _context.invm_info.Add(h); _context.invops_out.Add(varinvops_out); await _context.SaveChangesAsync(); return("OK"); } else { _context.invops_out.Add(varinvops_out); await _context.SaveChangesAsync(); return(result); } }