예제 #1
0
        public ActionResult DeleteConfirmed(int id)
        {
            VoucherTransferLog voucherTransferLog = db.VoucherTransferLogs.Find(id);

            db.VoucherTransferLogs.Remove(voucherTransferLog);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #2
0
 public ActionResult Edit([Bind(Include = "Id,User_Id,Content,CreatedOn")] VoucherTransferLog voucherTransferLog)
 {
     if (ModelState.IsValid)
     {
         db.Entry(voucherTransferLog).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(voucherTransferLog));
 }
예제 #3
0
        public IHttpActionResult PostVoucherTransferLog(VoucherTransferLog voucherTransferLog)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var result = VoucherTransferService.PostVoucher(voucherTransferLog, db, ndb, User.Identity);

            return(CreatedAtRoute("DefaultApi", new { id = result.Id }, result));
        }
예제 #4
0
        public ActionResult Create([Bind(Include = "Id,User_Id,Content,CreatedOn")] VoucherTransferLog voucherTransferLog)
        {
            if (ModelState.IsValid)
            {
                db.VoucherTransferLogs.Add(voucherTransferLog);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(voucherTransferLog));
        }
예제 #5
0
        // GET: Admin/VoucherTransferLogs/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            VoucherTransferLog voucherTransferLog = db.VoucherTransferLogs.Find(id);

            if (voucherTransferLog == null)
            {
                return(HttpNotFound());
            }
            return(View(voucherTransferLog));
        }
        public static VoucherTransferLog PostVoucher(VoucherTransferLog voucherTransferLog, ApplicationDbContext db, NopCommerceContext ndb, IIdentity currentUser)
        {
            try
            {
                var userId = int.Parse(currentUser.GetUserId());
                voucherTransferLog.User_Id   = userId;
                voucherTransferLog.CreatedOn = DateTime.UtcNow;
                db.VoucherTransferLogs.Add(voucherTransferLog);
                db.SaveChanges();

                VoucherTransfer voucherTransfer = JsonConvert.DeserializeObject <List <VoucherTransfer> >(voucherTransferLog.Content).ElementAt(0);

                //NopCommerceUser receiver = ndb.Database.SqlQuery<NopCommerceUser>("SELECT CU.Id AS Customer_Id, Username, Email, null AS Password, null AS PasswordSalt FROM [Customer] CU WHERE CU.Username = '******'").First();

                //FOR STUB PURPOSE ONLY
                var aspUser  = db.Users.Where(u => u.UserName == voucherTransfer.ReceiverUserName).First();
                var receiver = new { Customer_Id = aspUser.Id };

                foreach (var vc in voucherTransfer.VoucherList)
                {
                    var voucher = db.Vouchers.Where(v => v.Id == vc.Id && v.Receiver_Id == userId && v.SpendFlag == false).First();
                    voucher.Receiver_Id     = receiver.Customer_Id;
                    voucher.Sender_Id       = userId;
                    voucher.UpdatedOn       = DateTime.UtcNow;
                    db.Entry(voucher).State = EntityState.Modified;
                    db.SaveChanges();
                }

                voucherTransferLog.Result          = ResultTypes.Success;
                db.Entry(voucherTransferLog).State = EntityState.Modified;
                db.SaveChanges();
            }
            catch (Exception ex)
            {
                voucherTransferLog.Result          = ResultTypes.Failed;
                db.Entry(voucherTransferLog).State = EntityState.Modified;
                db.SaveChanges();
            }
            return(voucherTransferLog);
        }