상속: MonoBehaviour
예제 #1
0
        public ActionResult DeleteConfirmed(int id)
        {
            buy buy = db.buy.Find(id);

            db.buy.Remove(buy);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
예제 #2
0
        public buyViewModel(buy buy, product product, BL bl)
        {
            this.bl      = bl;
            this.buy     = buy;
            this.product = product;
            pricePerOne  = buy.price / buy.amount;
            amount       = buy.amount;

            setImage(product.Photo);
        }
예제 #3
0
        public void updateAppruvedBuy(buy newBuy)
        {
            buy buy;

            using (var ctx = new approvedBuysContext())
            {
                buy = ctx.Buys.FirstOrDefault(b => b.productID == newBuy.productID && b.date == newBuy.date && b.storeName == newBuy.storeName);
                buy.DeepCopy(newBuy);
                ctx.SaveChanges();
            }
        }
예제 #4
0
        public void deleteUnapprovedBuy(buy buy)
        {
            buy buyToDelete;

            using (var ctx = new unapprovedBuysContext())
            {
                buyToDelete = ctx.Buys.FirstOrDefault(b => b.productID == buy.productID && b.date == buy.date && b.storeName == buy.storeName);
                ctx.Buys.Remove(buyToDelete);
                ctx.SaveChanges();
            }
        }
예제 #5
0
 public ActionResult Edit([Bind(Include = "account_idAccount,item_iditem,date")] buy buy)
 {
     if (ModelState.IsValid)
     {
         db.Entry(buy).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.account_idAccount = new SelectList(db.account, "idAccount", "name", buy.account_idAccount);
     ViewBag.item_iditem       = new SelectList(db.item, "iditem", "name", buy.item_iditem);
     return(View(buy));
 }
예제 #6
0
        public ActionResult Create([Bind(Include = "product_id,supplier_id,value,qnt")] buy buy)
        {
            if (ModelState.IsValid)
            {
                ObjectParameter result = new ObjectParameter("result", typeof(int));
                db.InsertBuy(buy.product_id, buy.supplier_id, buy.value, buy.qnt, result);
                if ((int)result.Value == 0)
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(RedirectToAction("DeleteUserSuccess", "Home", new { message = "失敗" }));
                }
            }

            /*
             * DateTime dt = DateTime.Now;
             * buy.date = dt;
             * using (var tran = db.Database.BeginTransaction())
             * {
             *  try
             *  {
             *          product p = db.product.Find(buy.product_id);
             *          if (p == null)
             *          {
             *              tran.Rollback();
             *          }
             *          else
             *          {
             *              db.buy.Add(buy);
             *              db.SaveChanges();
             *              p.stok = p.stok + buy.qnt;
             *              db.Entry(p).State = EntityState.Modified;
             *              db.SaveChanges();
             *              tran.Commit();
             *          }
             *          return RedirectToAction("Index");
             *      }
             *      catch (Exception e)
             *      {
             *          tran.Rollback();
             *          return RedirectToAction("DeleteUserSuccess", "Home", new { message = e.Message });
             *      }
             * }
             *
             * }
             */

            ViewBag.product_id  = new SelectList(db.product, "id", "pcode", buy.product_id);
            ViewBag.supplier_id = new SelectList(db.supplier, "id", "name", buy.supplier_id);
            return(View(buy));
        }
예제 #7
0
        // GET: buys/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            buy buy = db.buy.Find(id);

            if (buy == null)
            {
                return(HttpNotFound());
            }
            return(View(buy));
        }
예제 #8
0
        public void updateFromGoogle()
        {
            var        GoogleData = getGoogleData();
            List <buy> buyList    = new List <buy>();

            if (GoogleData != null)
            {
                foreach (var row in GoogleData)
                {
                    if (row.Count != 0)
                    {
                        int     productID = (int)(long.Parse(row[2].ToString()) % 1000000000);
                        product Product   = getProduct(productID);

                        if (Product == null) // the product dont exist in DB
                        {
                            Product = new product()
                            {
                                Photo = null, productID = productID, productName = row[3].ToString()
                            };

                            string photoURL = "https://m.pricez.co.il/ProductPictures/200x/" + row[2] + ".jpg";
                            string photoPath;

                            try
                            {
                                using (WebClient client = new WebClient())
                                {
                                    photoPath = @"../../Pictures/" + Product.productName + ".jpg";
                                    client.DownloadFile(new Uri(photoURL), photoPath);
                                }
                            }
                            catch (Exception)
                            {
                                photoPath = @"../../Pictures/noPhoto.png";
                            }
                            Product.Photo = photoPath;
                            addProduct(Product);
                        }
                        buy b = new buy()
                        {
                            productID = productID, date = DateTime.Parse(row[0].ToString().Split(new string[] { "at" }, StringSplitOptions.None)[0]), amount = 1, price = float.Parse(row[4].ToString().Split('@')[1]), storeName = row[4].ToString().Split('@')[0], isApproved = false
                        };
                        buyList.Add(b);
                        addUnapprovedBuy(b);
                    }
                }
                cleanGoogleSheets();
            }
        }
예제 #9
0
        // GET: buys/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            buy buy = db.buy.Find(id);

            if (buy == null)
            {
                return(HttpNotFound());
            }
            ViewBag.account_idAccount = new SelectList(db.account, "idAccount", "name", buy.account_idAccount);
            ViewBag.item_iditem       = new SelectList(db.item, "iditem", "name", buy.item_iditem);
            return(View(buy));
        }
예제 #10
0
        // GET: buys/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            buy buy = db.buy.Find(id);

            if (buy == null)
            {
                return(HttpNotFound());
            }
            ViewBag.product_id  = new SelectList(db.product.OrderBy(x => x.pcode), "id", "pcode", buy.product_id);
            ViewBag.supplier_id = new SelectList(db.supplier.OrderBy(x => x.name), "id", "name", buy.supplier_id);

            return(View(buy));
        }
예제 #11
0
        public ActionResult Edit([Bind(Include = "id,product_id,supplier_id,value,qnt,date")] buy buy, string old_qnt)
        {
            /*
             * if (ModelState.IsValid)
             * {
             *  db.Entry(buy).State = EntityState.Modified;
             *  db.SaveChanges();
             *  return RedirectToAction("Index");
             * }
             */
            int oqnt = int.Parse(old_qnt);

            if (ModelState.IsValid)
            {
                using (var tran = db.Database.BeginTransaction())
                {
                    try
                    {
                        product p = db.product.Find(buy.product_id);
                        if (p == null)
                        {
                            tran.Rollback();
                        }
                        else
                        {
                            p.stok            = p.stok + buy.qnt - oqnt;
                            db.Entry(p).State = EntityState.Modified;
                            db.SaveChanges();
                            db.Entry(buy).State = EntityState.Modified;
                            db.SaveChanges();
                            tran.Commit();
                        }
                        return(RedirectToAction("Index"));;
                    }
                    catch (Exception)
                    {
                        tran.Rollback();
                        throw;
                    }
                }
            }
            ViewBag.product_id  = new SelectList(db.product, "id", "pcode", buy.product_id);
            ViewBag.supplier_id = new SelectList(db.supplier, "id", "name", buy.supplier_id);

            return(View(buy));
        }
예제 #12
0
 public void addApprovedBuy(buy newBuy)
 {
     try
     {
         using (var ctx = new approvedBuysContext())
         {
             ctx.Buys.Add(newBuy);
             ctx.SaveChanges();
         }
     }
     catch (Exception e)
     {
         buy   buy         = getApprovedBuy(newBuy.productID, newBuy.date, newBuy.storeName);
         float pricePerOne = buy.price / buy.amount;
         buy.amount += newBuy.amount;
         buy.price  += pricePerOne;
         updateAppruvedBuy(buy);
     }
 }
예제 #13
0
        public shoppingUserControl(buy buy, BL bl, bool isApproveWindows, MainWindow approveWindows)
        {
            InitializeComponent();

            model = new buyViewModel(buy, bl.getProduct(buy.productID), bl);

            this.approveWindows = approveWindows;

            UserContrilGrid.DataContext = model;

            this.bl = bl;

            if (isApproveWindows == false)
            {
                btnOK.Visibility     = Visibility.Hidden;
                btnDelete.Visibility = Visibility.Hidden;
                this.Width           = 365;
                txbAmount.IsEnabled  = false;
                txbCost.IsEnabled    = false;
            }
        }
예제 #14
0
        public ActionResult DeleteConfirmed(int id)
        {
            if (ModelState.IsValid)
            {
                buy buy = db.buy.Find(id);

                using (var tran = db.Database.BeginTransaction())
                {
                    try
                    {
                        product p = db.product.Find(buy.product_id);
                        if (p == null)
                        {
                            tran.Rollback();
                        }
                        else
                        {
                            p.stok            = p.stok - buy.qnt;
                            db.Entry(p).State = EntityState.Modified;
                            db.SaveChanges();
                            db.buy.Remove(buy);
                            db.SaveChanges();
                            tran.Commit();
                        }
                        return(RedirectToAction("Index"));;
                    }
                    catch (Exception e)
                    {
                        tran.Rollback();
                        return(RedirectToAction("DeleteUserSuccess", "Home", new { message = e.Message }));
                    }
                }
            }

            return(RedirectToAction("Index"));
        }
예제 #15
0
 public void deleteBuy(buy buy)
 {
     dal.deleteUnapprovedBuy(buy);
 }
예제 #16
0
 public void updateAppruvedBuy(buy b)
 {
     dal.updateAppruvedBuy(b);
 }
예제 #17
0
        public mobiEz.buyResponse load(string Recipient, decimal Amount)
        {
            Security secObj = new Security();

            mobiEz.buyResponse buyResponseObj = new buyResponse();
            string             strPassword    = SrvProviderSessionManager.GetSessionInstance().GetSession("Mobifone");

            //Gen password
            strPassword = AppConfiguration.MobifoneUserName.ToLower() + AppConfiguration.MobifonePassword;
            strPassword = secObj.GetSHA1_HEX(strPassword).ToLower();
            strPassword = sessionid + strPassword;
            strPassword = secObj.GetSHA1_HEX(strPassword).ToUpper();

            //Console.Out.Write("pin=" + pin(sessionid, AppConfiguration.MobifoneUserName, strPassword, "0123456").ToString());

            try
            {
                int nCounter = 2;
                while (nCounter > 0)
                {
                    //login
                    if (login(sessionid, AppConfiguration.MobifoneUserName, strPassword))
                    {
                        try
                        {
                            mobiEz.buy            buyObj            = new buy();
                            mobiEz.buyRequestType buyRequestTypeObj = new buyRequestType();

                            buyRequestTypeObj.sessionid = sessionid;
                            buyRequestTypeObj.target    = "airtime";
                            buyRequestTypeObj.type      = 2;
                            buyRequestTypeObj.recipient = Recipient;
                            buyRequestTypeObj.amount    = Amount;
                            buyObj.buyRequest           = buyRequestTypeObj;

                            //invoke buy function
                            buyResponseObj = UMSObj.buy(buyObj);
                            if (buyResponseObj.buyReturn.result == 0)
                            {
                                nCounter = 0;
                                break;
                            }
                        }
                        catch (Exception ex)
                        {
                            throw (ex);
                        }
                    }
                    else
                    {
                        nCounter--;

                        try
                        {
                            sessionid = createsession();
                            if (SrvProviderSessionManager.GetSessionInstance().IsContainSesssion("MobifoneSession"))
                            {
                                SrvProviderSessionManager.GetSessionInstance().DelSession("MobifoneSession");
                            }
                            SrvProviderSessionManager.GetSessionInstance().AddSession(sessionid, "MobifoneSession");
                        }
                        catch (Exception ex)
                        {
                            throw (ex);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }
            return(buyResponseObj);
        }
예제 #18
0
 public void appruveBuy(buy buy)
 {
     dal.deleteUnapprovedBuy(buy);
     dal.addApprovedBuy(buy);
 }