// POST api/SalesReceivePayment public HttpResponseMessage PostSalesReceivePayment(SalesReceivePayment salesreceivepayment) { if (ModelState.IsValid) { ControlVoucher controlvoucher = new ControlVoucher(); string CustomCode = "SP-" + DateTime.Now.ToString("yyyyMMdd"); long CustomerCOAID =(long) db.Collaborators.Where(c => c.CollaboratorID == salesreceivepayment.CustomerID).Select(c => c.CustomerCOAID).FirstOrDefault(); salesreceivepayment.VoucherNO= controlvoucher.CreateVoucher((long)salesreceivepayment.DepositTo, CustomerCOAID, (decimal)salesreceivepayment.PaymentTotal, (long)1, (DateTime)salesreceivepayment.Date); int? MaxCode = Convert.ToInt32((db.SalesReceivePayments.Where(r => r.SalesReceivePaymentCode.StartsWith(CustomCode)).Select(r => r.SalesReceivePaymentCode.Substring(CustomCode.Length, 4)).ToList()).Max()); string SPCode = CustomCode + ((MaxCode + 1).ToString()).PadLeft(4, '0'); salesreceivepayment.SalesReceivePaymentCode = SPCode; salesreceivepayment.Date = DateTime.Now.ToLocalTime(); db.SalesReceivePayments.Add(salesreceivepayment); db.SaveChanges(); HttpResponseMessage response = Request.CreateResponse(HttpStatusCode.Created, salesreceivepayment); response.Headers.Location = new Uri(Url.Link("DefaultApi", new { id = salesreceivepayment.SalesReceivePaymentID })); return response; } else { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } }
// PUT api/SalesReceivePayment/5 public HttpResponseMessage PutSalesReceivePayment(long id, SalesReceivePayment salesreceivepayment) { if (!ModelState.IsValid) { return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState); } if (id != salesreceivepayment.SalesReceivePaymentID) { return Request.CreateResponse(HttpStatusCode.BadRequest); } salesreceivepayment.PaymentMethod = null; salesreceivepayment.Collaborator = null; salesreceivepayment.ProcesStatus = null; db.Entry(salesreceivepayment).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException ex) { return Request.CreateErrorResponse(HttpStatusCode.NotFound, ex); } return Request.CreateResponse(HttpStatusCode.OK); }