public async Task <IActionResult> Create([Bind("transferInId,transferOrderId,transferInNumber,transferInDate,description,branchIdFrom,warehouseIdFrom,branchIdTo,warehouseIdTo,HasChild,createdAt")] TransferIn transferIn) { if (ModelState.IsValid) { //check transfer order TransferIn check = await _context.TransferIn.SingleOrDefaultAsync(x => x.transferOrderId.Equals(transferIn.transferOrderId)); if (check != null) { ViewData["StatusMessage"] = "Error. Transfer order already received. " + check.transferInNumber; ViewData["transferOrderId"] = new SelectList(_context.TransferOrder, "transferOrderId", "transferOrderNumber"); ViewData["branchIdFrom"] = new SelectList(_context.Branch, "branchId", "branchName"); ViewData["warehouseIdFrom"] = new SelectList(_context.Warehouse, "warehouseId", "warehouseName"); ViewData["branchIdTo"] = new SelectList(_context.Branch, "branchId", "branchName"); ViewData["warehouseIdTo"] = new SelectList(_context.Warehouse, "warehouseId", "warehouseName"); return(View(transferIn)); } TransferOrder to = await _context.TransferOrder.Where(x => x.transferOrderId.Equals(transferIn.transferOrderId)).FirstOrDefaultAsync(); transferIn.warehouseIdFrom = to.warehouseIdFrom; transferIn.warehouseIdTo = to.warehouseIdTo; transferIn.warehouseFrom = await _context.Warehouse.Include(x => x.branch).SingleOrDefaultAsync(x => x.warehouseId.Equals(transferIn.warehouseIdFrom)); transferIn.branchFrom = transferIn.warehouseFrom.branch; transferIn.warehouseTo = await _context.Warehouse.Include(x => x.branch).SingleOrDefaultAsync(x => x.warehouseId.Equals(transferIn.warehouseIdTo)); transferIn.branchTo = transferIn.warehouseTo.branch; to.isReceived = true; to.transferOrderStatus = TransferOrderStatus.Completed; _context.Add(transferIn); await _context.SaveChangesAsync(); //auto create transfer in line, full shipment List <TransferOrderLine> lines = new List <TransferOrderLine>(); lines = _context.TransferOrderLine.Include(x => x.product).Where(x => x.transferOrderId.Equals(transferIn.transferOrderId)).ToList(); foreach (var item in lines) { TransferInLine line = new TransferInLine(); line.transferIn = transferIn; line.product = item.product; line.qty = item.qty; line.qtyInventory = line.qty * 1; _context.TransferInLine.Add(line); await _context.SaveChangesAsync(); } return(RedirectToAction(nameof(Details), new { id = transferIn.transferInId })); } ViewData["transferOrderId"] = new SelectList(_context.TransferOrder, "transferOrderId", "transferOrderNumber", transferIn.transferOrderId); return(View(transferIn)); }
public async Task <IActionResult> Edit(string id, [Bind("transferInLineId,transferInId,productId,qty,qtyInventory,createdAt")] TransferInLine transferInLine) { if (id != transferInLine.transferInLineId) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(transferInLine); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!TransferInLineExists(transferInLine.transferInLineId)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["productId"] = new SelectList(_context.Product, "productId", "productId", transferInLine.productId); ViewData["transferInId"] = new SelectList(_context.TransferIn, "transferInId", "transferInId", transferInLine.transferInId); return(View(transferInLine)); }
public async Task <IActionResult> Create([Bind("transferInLineId,transferInId,productId,qty,qtyInventory,createdAt")] TransferInLine transferInLine) { if (ModelState.IsValid) { _context.Add(transferInLine); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["productId"] = new SelectList(_context.Product, "productId", "productId", transferInLine.productId); ViewData["transferInId"] = new SelectList(_context.TransferIn, "transferInId", "transferInId", transferInLine.transferInId); return(View(transferInLine)); }
// GET: TransferInLine/Create public IActionResult Create(string masterid, string id) { var check = _context.TransferInLine.SingleOrDefault(m => m.transferInLineId == id); var selected = _context.TransferIn.SingleOrDefault(m => m.transferInId == masterid); ViewData["productId"] = new SelectList(_context.Product, "productId", "productId"); ViewData["transferInId"] = new SelectList(_context.TransferIn, "transferInId", "transferInId"); if (check == null) { TransferInLine objline = new TransferInLine(); objline.transferIn = selected; objline.transferInId = masterid; return(View(objline)); } else { return(View(check)); } }
public async Task <IActionResult> PostTransferInLine([FromBody] TransferInLine transferInLine) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (transferInLine.transferInLineId == string.Empty) { transferInLine.transferInLineId = Guid.NewGuid().ToString(); _context.TransferInLine.Add(transferInLine); await _context.SaveChangesAsync(); return(Json(new { success = true, message = "Η Προσθήκη νέου στοιχείου Εισαγωγής, έγινε με επιτυχία." })); } else { _context.Update(transferInLine); await _context.SaveChangesAsync(); return(Json(new { success = true, message = "Η Επεξεργασία στοιχείου Εισαγωγής, έγινε με επιτυχία." })); } }
public async Task <IActionResult> PostTransferInLine([FromBody] TransferInLine transferInLine) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (transferInLine.transferInLineId == string.Empty) { transferInLine.transferInLineId = Guid.NewGuid().ToString(); _context.TransferInLine.Add(transferInLine); await _context.SaveChangesAsync(); return(Json(new { success = true, message = "Add new data success." })); } else { _context.Update(transferInLine); await _context.SaveChangesAsync(); return(Json(new { success = true, message = "Edit data success." })); } }