Esempio n. 1
0
        public IHttpActionResult PostOrder([FromBody] IESOrder value)
        {
            List <IESOrder> list = new List <IESOrder>();

            var context = new xPenEntities();
            var prev    = (from s in context.IESOrders
                           where s.PaperID == value.PaperID && s.UserID == value.UserID
                           select s).ToList();

            if (prev.Count > 0)
            {
                return(InternalServerError());
            }
            else
            {
                context.IESOrders.Add(value);
                context.SaveChanges();
                return(Ok());
            }



            //try
            //{
            //    var context = new xPenEntities();
            //    context.IESOrders.Add(value);
            //    context.SaveChanges();
            //    return Ok();
            //}
            //catch (Exception ex)
            //{
            //    return InternalServerError(ex.InnerException);
            //}
        }
        public IHttpActionResult GetChecksum([FromBody] IESOrder value)
        {
            CustomResponse err = new CustomResponse();

            try
            {
                var context = new xPenEntities();
                using (var dbContextTransaction = context.Database.BeginTransaction())
                {
                    var prev = (from p in context.IESOrders
                                where p.PaperID == value.PaperID && p.UserID == value.UserID
                                select p).ToList();

                    if (prev.Count > 0)
                    {
                        context.IESOrders.RemoveRange(prev);
                        context.SaveChanges();
                    }

                    context.IESOrders.Add(value);
                    context.SaveChanges();

                    if (value.OrderID > 1)
                    {
                        checkSum cs         = new checkSum();
                        String   csm        = CreateChecksum(value.OrderID, value.UserID, value.Paid);
                        string   JSONresult = JsonConvert.SerializeObject(cs);
                        dbContextTransaction.Commit();
                        Transaction newTransaction = new Transaction();
                        newTransaction.UserID   = value.UserID;
                        newTransaction.PaperID  = value.PaperID;
                        newTransaction.Paid     = value.Paid;
                        newTransaction.OrderID  = value.OrderID;
                        newTransaction.CheckSum = csm;
                        return(Ok(newTransaction));
                    }
                    else
                    {
                        err.Response = "Error Saving Order";
                        dbContextTransaction.Rollback();
                        //return BadRequest(cs);
                        return(Content(HttpStatusCode.BadRequest, err));
                    }
                }
            }
            catch (Exception ex)
            {
                return(InternalServerError());
            }
        }