public async Task <IActionResult> PurchaseOrderFormUpdate([FromBody] PurchaseOrderFormModel model, [FromQuery] int PoId) { var userId = GetUserId(); if (ModelState.IsValid) { var purchaseOrder = await _purchaseOrderRepository.GetByIdAsync(PoId); if (purchaseOrder == null) { return(NotFound(new { message = "Purchase Order does not exist" })); } //purchaseOrder.PoId = model.PoId; purchaseOrder.SupplierId = model.SupplierID; purchaseOrder.IssuedDate = model.IssuedDate; purchaseOrder.QuoteRef = model.QuoteRef; purchaseOrder.Potype = model.POType; _purchaseOrderRepository.Update(purchaseOrder); var endPointId = await GetEndPointId(); var tblStaff = await _staffRepository.FirstOrDefaultAsync(x => x.AspnetUserId == userId); var newAudit = new TblAuthList { Title = "ContractAward", Url = "/api/v1/contractaward/purchaseorderformupdate", CreatedDate = DateTime.Now, Status = 0, StaffId = tblStaff.StaffId, BatchId = Guid.NewGuid().ToString() }; await _auditRepository.CreateAsync(newAudit); var emailAddress = await _emailAddressRepository.SendEmailAddress(endPointId, 1); await _auditRepository.SaveChangesAsync(); return(Ok( new { message = "purchase order updated successfully", EmailAddress = emailAddress })); } return(BadRequest(new { Errors = new[] { "Please input correct values" } })); }
public async Task <IActionResult> SubmitPurchaseOrderForm([FromBody] PurchaseOrderFormModel model) { var userId = GetUserId(); if (ModelState.IsValid) { var newPurchaseOrder = new TblPurchaseOrder { SupplierId = model.SupplierID, IssuedDate = model.IssuedDate, QuoteRef = model.QuoteRef, Potype = model.POType, Poamount = model.Poamount, QuoMasterId = model.QuoMasterId, CreatedDate = DateTime.Now }; await _purchaseOrderRepository.CreateAsync(newPurchaseOrder); var endPointId = await GetEndPointId(); var tblStaff = await _staffRepository.FirstOrDefaultAsync(x => x.AspnetUserId == userId); var newAudit = new TblAuthList { Title = "ContractAward", Url = "/api/v1/contractaward/submitpurchaseorderform", CreatedDate = DateTime.Now, Status = 0, StaffId = tblStaff.StaffId, BatchId = Guid.NewGuid().ToString() }; await _auditRepository.CreateAsync(newAudit); var emailAddress = await _emailAddressRepository.SendEmailAddress(endPointId, 1); await _auditRepository.SaveChangesAsync(); return(Ok( new { message = "Purchase order created successfully", EmailAddress = emailAddress })); } return(BadRequest(new { Errors = new[] { "Please input correct values" } })); }