示例#1
0
 public ShipperDetail Apply(ShipperDetail data)
 {
     try
     {
         if (IsApplied(data.ShipperId.Value))
         {
             return(null);
         }
         var shipper = new ShipperDetail();
         shipper.BankAccount   = data.BankAccount;
         shipper.Deposit       = data.Deposit;
         shipper.RecentBalance = data.Deposit;
         shipper.ShipperId     = data.ShipperId;
         shipper.StatusId      = data.StatusId;
         shipper.RegDate       = data.RegDate;
         shipper.Total         = 0;
         shipper = _db.ShipperDetails.Add(shipper);
         _db.SaveChanges();
         return(shipper);
     }
     catch (Exception e)
     {
         Console.WriteLine(e.InnerException.InnerException.Message);
         return(null);
     }
 }
示例#2
0
 public bool Update(ShipperDetail data)
 {
     try
     {
         var shipper = _db.ShipperDetails.Where(x => x.ID == data.ID).SingleOrDefault();
         shipper.BankAccount   = data.BankAccount;
         shipper.Deposit       = data.Deposit;
         shipper.StatusId      = data.StatusId;
         shipper.RecentBalance = data.RecentBalance;
         shipper.Total         = shipper.Total;
         shipper.EndDate       = shipper.EndDate;
         _db.SaveChanges();
         return(true);
     }
     catch (Exception e)
     {
         Console.WriteLine(e.StackTrace);
         return(false);
     }
 }
        public bool BuyPackage(ShipperDetailDTO data, string name)
        {
            var userId  = _user.FindUser(name).ID;
            var shipper = new ShipperDetail();

            if (userId != 1)
            {
                shipper = _repo.GetByUserId(userId);
            }
            else
            {
                shipper = _repo.GetByUserId(data.ShipperId.Value);
            }
            shipper.Deposit       = shipper.Deposit.Value + data.Deposit;
            shipper.RecentBalance = shipper.RecentBalance + data.Deposit;
            shipper.Total         = shipper.Total.Value + data.Total;
            var result = _repo.Update(shipper);

            return(result);
        }
示例#4
0
        public ActionResult Create(VM_pdtCreate product, Specification[] specification, HttpPostedFileBase[] photo, ProductImage[] image, ShipperDetail[] shipperDetail, Tag[] tag, string fstID, string sndID, string trdID)
        {
            ViewBag.fst           = new SelectList(db.FirstLayer, "fstLayerID", "fstLayer");
            ViewBag.shipperDetail = db.Shipper.ToList();
            if (photo[0] == null)
            {
                ModelState.AddModelError("Photo", "沒有封面圖片");
            }

            if (ModelState.IsValid != true)
            {
                return(View());
            }


            string id       = Session["memberID"].ToString();
            string getselID = db.Seller.Where(m => m.mbrID == id).FirstOrDefault().selID;

            var getctgID = db.ProductCategory.Where(m => m.fstLayerID == fstID && m.sndLayerID == sndID && m.trdLayerID == trdID).FirstOrDefault().pdtCtgID;



            string GetpdtID = db.Database.SqlQuery <string>("Select dbo.GetProductID()").FirstOrDefault();

            //傳入ProductVM(ViewModel)的products(ViewModel中的Product資料表)
            product.products.pdtID        = GetpdtID;
            product.products.selID        = getselID; //用Session["member"]查
            product.products.pdtDate      = DateTime.Now;
            product.products.Discontinued = false;
            product.products.ctgID        = getctgID; //擱置,資料表設計錯誤
            db.Product.Add(product.products);
            if (ModelState.IsValid == true)
            {
                db.SaveChanges();
            }

            //傳入規格資料表
            for (int i = 0; i < specification.Length; i++)
            {
                Specification spc = new Specification();
                spc.pdtID    = GetpdtID;
                spc.Style    = specification[i].Style;
                spc.Size     = specification[i].Size;
                spc.Stock    = specification[i].Stock;
                spc.Price    = specification[i].Price;
                spc.Discount = 1;
                string GetspcID = db.Database.SqlQuery <string>("Select dbo.GetSpecificationID()").FirstOrDefault();
                spc.spcID = GetspcID;



                db.Specification.Add(spc);
                if (ModelState.IsValid == true)
                {
                    db.SaveChanges();
                }
            }

            //傳入照片


            string fileName = "";

            for (int i = 0; i < photo.Length; i++)
            {
                ProductImage       img = new ProductImage();
                HttpPostedFileBase f   = (HttpPostedFileBase)photo[i];
                if (f != null)
                {
                    if (f.ContentLength > 0)
                    {
                        string GetpImgID = db.Database.SqlQuery <string>("Select dbo.GetpImgID()").FirstOrDefault();

                        fileName = GetpImgID + ".jpg";
                        f.SaveAs(Server.MapPath("~/productImage/" + fileName));
                        img.pImgID   = GetpImgID;
                        img.pdtID    = GetpdtID;
                        img.pdtImage = GetpImgID + ".jpg";

                        db.ProductImage.Add(img);
                        if (ModelState.IsValid == true)
                        {
                            db.SaveChanges();
                        }
                    }
                }
            }
            //選擇運費
            for (int i = 0; i < shipperDetail.Length; i++)
            {
                ShipperDetail shp = new ShipperDetail();
                shp.shpID           = shipperDetail[i].shpID;
                shp.pdtID           = GetpdtID;
                shp.defaultShipping = shipperDetail[i].defaultShipping;
                db.ShipperDetail.Add(shp);
                if (ModelState.IsValid == true)
                {
                    db.SaveChanges();
                }
            }

            //寫入tag
            for (int i = 0; i < tag.Length; i++)
            {
                Tag    tg       = new Tag();
                string GetTagID = db.Database.SqlQuery <string>("Select dbo.GetTagID()").FirstOrDefault();
                tg.tagID   = GetTagID;
                tg.tagName = tag[i].tagName;
                tg.pdtID   = GetpdtID;
                db.Tag.Add(tg);
                if (ModelState.IsValid == true)
                {
                    db.SaveChanges();
                }
            }



            //ViewBag.shp123 = new SelectList(db.Shipper, "shpID", "shpMethod");
            ViewBag.shipperDetail = db.Shipper.ToList();
            if (ModelState.IsValid == true)
            {
                return(RedirectToAction("myProduct", "SellerHome"));
            }

            return(View(product));
        }