Beispiel #1
0
        public IActionResult Mini(int id, Prod.Mini item)
        {
            var result = new Result();

            item.Id     = id;
            item.UserId = 1;

            if (item.Skus != null && item.Skus.Any())
            {
                item.Price = item.Skus.Min(x => x.Price);
                item.Stock = item.Skus.Sum(x => x.Stock);
            }
            result.Status = DefaultStorage.ProdMiniUpdate(item);
            return(Json(result));
        }
Beispiel #2
0
        public IActionResult Item(int id = 0, int catgId = 0, int spuId = 0)
        {
            var data  = new Prod.Mini();
            var model = new ItemModel.Item(data);

            model.CatgId   = catgId;
            model.ItemDesc = new Prod.ItemDesc();

            if (id > 0)
            {
                data = DefaultStorage.ProdMiniGet(id);

                model.Data   = data;
                model.CatgId = data.CatgId;

                model.ItemDesc = DefaultStorage.ProdItemDescGet(id);
            }
            return(View(model));
        }
        public IActionResult Item(int id = 0, int catgId = 0, int spuId = 0)
        {
            var data = new Prod.Mini();
            var model = new ItemModel.Item(data);

            model.CatgId = catgId;
            model.ItemDesc = new Prod.ItemDesc();

            if (id > 0)
            {
                data = DefaultStorage.ProdMiniGet(id);

                model.Data = data;
                model.CatgId = data.CatgId;

                model.ItemDesc = DefaultStorage.ProdItemDescGet(id);
            }
            return View(model);
        }
        public bool ProdMiniUpdate(Prod.Mini o)
        {
            using (var conn = StoreConn)
            {
                conn.Open();
                using (var tran = conn.BeginTransaction())
                {
                    try
                    {
                        var cmd = SqlBuilder
                                  .Update("item")
                                  .Column("Code", o.Code)
                                  .Column("Name", o.Name)
                                  .Column("Title", o.Title)
                                  .Column("Stock", o.Stock)
                                  .Column("AppPrice", o.AppPrice)
                                  .Column("RetailPrice", o.RetailPrice)
                                  .Column("Barcode", o.Barcode)
                                  .Where("id=@id and userId=@userId", new { id = o.Id, userId = o.UserId })
                                  .ToCommand(tran);

                        var v = conn.Execute(cmd) > 0;

                        if (v && o.Skus != null && o.Skus.Any())
                        {
                            foreach (var sku in o.Skus)
                            {
                                cmd = SqlBuilder
                                      .Update("sku")
                                      .Column("Code", sku.Code)
                                      .Column("Barcode", sku.Barcode)
                                      .Column("Stock", sku.Stock)
                                      .Column("Price", sku.Price)
                                      .Column("AppPrice", o.AppPrice)
                                      .Where("id=@id and itemId=@itemId and userId=@userId", new { id = sku.Id, itemId = o.Id, userId = o.UserId })
                                      .ToCommand(tran);

                                v = conn.Execute(cmd) > 0;

                                if (!v)
                                {
                                    break;
                                }
                            }
                        }
                        if (v)
                        {
                            tran.Commit();
                            return(true);
                        }
                        else
                        {
                            tran.Rollback();
                            return(false);
                        }
                    }
                    catch (System.Exception)
                    {
                        tran.Rollback();
                        return(false);

                        throw;
                    }
                }
            }
        }