public ActionResult UpdateStockPrice(long xid, decimal xprice)
        {
            Z10DepotProductDetail dd = new Z10DepotProductDetail();

            dd.DepotProductID = xid;
            dd.PriceStock     = xprice;
            db.Update(dd);
            return(Content("1"));
        }
Esempio n. 2
0
        public ActionResult SaveProduct_S3(decimal count, decimal?price, long pid, long?did, string color, string size)
        {
            if (count <= 0)
            {
                return(Content("数量必须大于0。"));
            }
            var Price = price ?? 0;

            EAP.Logic.DictResponse res = new Logic.DictResponse();

            var tenantID = _tenant.TenantID.Value;

            //更新商品库
            if (!db.Exists <Z10DepotProduct>("ProductID=@ProductID and DepotID=@DepotID and TenantID=@TenantID",
                                             db.CreateParameter("ProductID", pid), db.CreateParameter("DepotID", did ?? 0), db.CreateParameter("TenantID", tenantID)))
            {
                Z10DepotProduct xProduct = new Z10DepotProduct();
                xProduct.TenantID  = tenantID;
                xProduct.ProductID = pid;
                xProduct.DepotID   = did ?? 0;
                xProduct.StockSum  = count;
                xProduct.InSum     = count;
                xProduct.Creator   = _user.UserID.Value;
                db.Insert(xProduct);
            }
            else
            {
                string sqlUpdateDepot = "update Z10DepotProduct set StockSum=StockSum + @itemHappened, InSum=InSum + @itemHappened" +
                                        " where ProductID=@ProductID and DepotID=@DepotID";
                db.ExecuteNonQuery(sqlUpdateDepot, db.CreateParameter("itemHappened", count),
                                   db.CreateParameter("ProductID", pid), db.CreateParameter("DepotID", did ?? 0));
            }

            //更新库存详情
            Z10DepotProductDetail dpd = new Z10DepotProductDetail();

            dpd.TenantID   = tenantID;
            dpd.ProductID  = pid;
            dpd.DepotID    = did ?? 0;
            dpd.OrderID    = 0;
            dpd.StockSum   = count;
            dpd.InSum      = count;
            dpd.ExtColor   = color;
            dpd.ExtSize    = size;
            dpd.PriceStock = Price;
            dpd.Creator    = _user.UserID.Value;
            db.Insert(dpd);


            res._state = true;
            return(Content(res.ToJson()));
        }
Esempio n. 3
0
        public ActionResult SaveProduct_S3(decimal count, decimal? price, long pid, long? did, string color, string size)
        {
            if (count <= 0)
            {
                return Content("数量必须大于0。");
            }
            var Price = price ?? 0;

            EAP.Logic.DictResponse res = new Logic.DictResponse();

            var tenantID = _tenant.TenantID.Value;

            //更新商品库
            if (!db.Exists<Z10DepotProduct>("ProductID=@ProductID and DepotID=@DepotID and TenantID=@TenantID",
                db.CreateParameter("ProductID", pid), db.CreateParameter("DepotID", did ?? 0), db.CreateParameter("TenantID", tenantID)))
            {
                Z10DepotProduct xProduct = new Z10DepotProduct();
                xProduct.TenantID = tenantID;
                xProduct.ProductID = pid;
                xProduct.DepotID = did ?? 0;
                xProduct.StockSum = count;
                xProduct.InSum = count;
                xProduct.Creator = _user.UserID.Value;
                db.Insert(xProduct);
            }
            else
            {
                string sqlUpdateDepot = "update Z10DepotProduct set StockSum=StockSum + @itemHappened, InSum=InSum + @itemHappened" +
                    " where ProductID=@ProductID and DepotID=@DepotID";
                db.ExecuteNonQuery(sqlUpdateDepot, db.CreateParameter("itemHappened", count),
                    db.CreateParameter("ProductID", pid), db.CreateParameter("DepotID", did ?? 0));

            }

            //更新库存详情
            Z10DepotProductDetail dpd = new Z10DepotProductDetail();
            dpd.TenantID = tenantID;
            dpd.ProductID = pid;
            dpd.DepotID = did ?? 0;
            dpd.OrderID = 0;
            dpd.StockSum = count;
            dpd.InSum = count;
            dpd.ExtColor = color;
            dpd.ExtSize = size;
            dpd.PriceStock = Price;
            dpd.Creator = _user.UserID.Value;
            db.Insert(dpd);

            res._state = true;
            return Content(res.ToJson());
        }
Esempio n. 4
0
File: Order.cs Progetto: honj51/EAP
        /// <summary>
        /// 单项入库和出库(按照明细一个一个的入库)
        /// </summary>
        /// <param name="tenantID"></param>
        /// <param name="userID"></param>
        /// <param name="item"></param>
        /// <param name="itemHappened">当前发生的入库量</param>
        /// <returns></returns>
        public static void PutInOut(Guid? tenantID, Guid? userID, Z10Cabbage.Entity.Z10OrderItem item, decimal itemHappened)
        {
            var db = Zippy.Data.StaticDB.DB;

            if (itemHappened > 0)  //入库 ,数量为正数 则入库,否则出库
            {
                #region 入库
                //更新商品库
                if (!db.Exists<Z10DepotProduct>("ProductID=@ProductID and DepotID=@DepotID and TenantID=@TenantID",
                    db.CreateParameter("ProductID", item.ProductID), db.CreateParameter("DepotID", item.DepotID), db.CreateParameter("TenantID", tenantID)))
                {
                    Z10DepotProduct xProduct = new Z10DepotProduct();
                    xProduct.TenantID = tenantID;
                    xProduct.ProductID = item.ProductID;
                    xProduct.DepotID = item.DepotID;
                    xProduct.StockSum = itemHappened;
                    xProduct.InSum = itemHappened;
                    xProduct.Creator = userID;
                    db.Insert(xProduct);
                }
                else
                {
                    string sqlUpdateDepot = "update Z10DepotProduct set StockSum=StockSum + @itemHappened, InSum=InSum + @itemHappened" +
                        " where ProductID=@ProductID and DepotID=@DepotID";
                    db.ExecuteNonQuery(sqlUpdateDepot, db.CreateParameter("itemHappened", itemHappened),
                        db.CreateParameter("ProductID", item.ProductID), db.CreateParameter("DepotID", item.DepotID));

                }

                //更新库存详情
                Z10DepotProductDetail dpd = new Z10DepotProductDetail();
                dpd.TenantID = tenantID;
                dpd.ProductID = item.ProductID;
                dpd.DepotID = item.DepotID;
                dpd.OrderID = item.OrderID;
                dpd.StockSum = itemHappened;
                dpd.InSum = itemHappened;
                dpd.ExtColor = item.ExtColor;
                dpd.ExtSize = item.ExtSize;
                dpd.ExtSpecification = item.ExtSpecification;
                dpd.ExtModel1 = item.ExtModel1;
                dpd.ExtModel2 = item.ExtModel2;
                dpd.ExtModel3 = item.ExtModel3;
                dpd.ExtModel4 = item.ExtModel4;
                dpd.ExtModel5 = item.ExtModel5;
                dpd.PriceStock = item.Price;
                dpd.Creator = userID;
                db.Insert(dpd);

                //更新订单项
                db.ColAdd<Z10OrderItem>("CountHappend", itemHappened, item.ItemID);
                #endregion
            }
            else
            {
                #region 出库
                var productDetail = db.FindUnique<Z10Cabbage.Entity.Z10DepotProductDetail>(item.DepotProductDetailID);
                if (productDetail == null || productDetail.StockSum <= 0)
                {
                    throw new Exception("错误的库存商品,或者商品数量为0。");
                }
                if (productDetail.StockSum < Math.Abs(itemHappened))
                {
                    throw new Exception("库存数量太少,无法完成此次出货。");
                }

                //更新总库存
                string sqlUpdateDepot = "update Z10DepotProduct set StockSum=StockSum + @itemHappened, OutSum=OutSum + @itemHappened" +
                    " where ProductID=@ProductID and DepotID=@DepotID";
                db.ExecuteNonQuery(sqlUpdateDepot, db.CreateParameter("itemHappened", itemHappened),
                    db.CreateParameter("ProductID", item.ProductID), db.CreateParameter("DepotID", item.DepotID));

                //更新单项(型号)库存
                string sqlUpdateDepotDetail = "update Z10DepotProductDetail set StockSum=StockSum + @itemHappened, OutSum=OutSum + @itemHappened" +
                    " where DepotProductID=@DepotProductID";
                db.ExecuteNonQuery(sqlUpdateDepotDetail, db.CreateParameter("itemHappened", itemHappened),
                    db.CreateParameter("DepotProductID", item.DepotProductDetailID));

                //更新订单项
                db.ColAdd<Z10OrderItem>("CountHappend2", itemHappened, item.ItemID);
                #endregion
            }

            //增加库存流水
            Z10DepotFlow xflow = new Z10DepotFlow();
            xflow.Creator = userID;
            xflow.Count = itemHappened;
            xflow.DepotID = item.DepotID;
            xflow.OrderID = item.OrderID;
            xflow.ProductID = item.ProductID;
            xflow.TenantID = tenantID;

            db.Insert(xflow);
        }
Esempio n. 5
0
 public ActionResult UpdateStockPrice(long xid, decimal xprice)
 {
     Z10DepotProductDetail dd = new Z10DepotProductDetail();
     dd.DepotProductID = xid;
     dd.PriceStock = xprice;
     db.Update(dd);
     return Content("1");
 }
Esempio n. 6
0
        /// <summary>
        /// 单项入库和出库(按照明细一个一个的入库)
        /// </summary>
        /// <param name="tenantID"></param>
        /// <param name="userID"></param>
        /// <param name="item"></param>
        /// <param name="itemHappened">当前发生的入库量</param>
        /// <returns></returns>
        public static void PutInOut(Guid?tenantID, Guid?userID, Z10Cabbage.Entity.Z10OrderItem item, decimal itemHappened)
        {
            var db = Zippy.Data.StaticDB.DB;

            if (itemHappened > 0)  //入库 ,数量为正数 则入库,否则出库
            {
                #region 入库
                //更新商品库
                if (!db.Exists <Z10DepotProduct>("ProductID=@ProductID and DepotID=@DepotID and TenantID=@TenantID",
                                                 db.CreateParameter("ProductID", item.ProductID), db.CreateParameter("DepotID", item.DepotID), db.CreateParameter("TenantID", tenantID)))
                {
                    Z10DepotProduct xProduct = new Z10DepotProduct();
                    xProduct.TenantID  = tenantID;
                    xProduct.ProductID = item.ProductID;
                    xProduct.DepotID   = item.DepotID;
                    xProduct.StockSum  = itemHappened;
                    xProduct.InSum     = itemHappened;
                    xProduct.Creator   = userID;
                    db.Insert(xProduct);
                }
                else
                {
                    string sqlUpdateDepot = "update Z10DepotProduct set StockSum=StockSum + @itemHappened, InSum=InSum + @itemHappened" +
                                            " where ProductID=@ProductID and DepotID=@DepotID";
                    db.ExecuteNonQuery(sqlUpdateDepot, db.CreateParameter("itemHappened", itemHappened),
                                       db.CreateParameter("ProductID", item.ProductID), db.CreateParameter("DepotID", item.DepotID));
                }

                //更新库存详情
                Z10DepotProductDetail dpd = new Z10DepotProductDetail();
                dpd.TenantID         = tenantID;
                dpd.ProductID        = item.ProductID;
                dpd.DepotID          = item.DepotID;
                dpd.OrderID          = item.OrderID;
                dpd.StockSum         = itemHappened;
                dpd.InSum            = itemHappened;
                dpd.ExtColor         = item.ExtColor;
                dpd.ExtSize          = item.ExtSize;
                dpd.ExtSpecification = item.ExtSpecification;
                dpd.ExtModel1        = item.ExtModel1;
                dpd.ExtModel2        = item.ExtModel2;
                dpd.ExtModel3        = item.ExtModel3;
                dpd.ExtModel4        = item.ExtModel4;
                dpd.ExtModel5        = item.ExtModel5;
                dpd.PriceStock       = item.Price;
                dpd.Creator          = userID;
                db.Insert(dpd);


                //更新订单项
                db.ColAdd <Z10OrderItem>("CountHappend", itemHappened, item.ItemID);
                #endregion
            }
            else
            {
                #region 出库
                var productDetail = db.FindUnique <Z10Cabbage.Entity.Z10DepotProductDetail>(item.DepotProductDetailID);
                if (productDetail == null || productDetail.StockSum <= 0)
                {
                    throw new Exception("错误的库存商品,或者商品数量为0。");
                }
                if (productDetail.StockSum < Math.Abs(itemHappened))
                {
                    throw new Exception("库存数量太少,无法完成此次出货。");
                }

                //更新总库存
                string sqlUpdateDepot = "update Z10DepotProduct set StockSum=StockSum + @itemHappened, OutSum=OutSum + @itemHappened" +
                                        " where ProductID=@ProductID and DepotID=@DepotID";
                db.ExecuteNonQuery(sqlUpdateDepot, db.CreateParameter("itemHappened", itemHappened),
                                   db.CreateParameter("ProductID", item.ProductID), db.CreateParameter("DepotID", item.DepotID));

                //更新单项(型号)库存
                string sqlUpdateDepotDetail = "update Z10DepotProductDetail set StockSum=StockSum + @itemHappened, OutSum=OutSum + @itemHappened" +
                                              " where DepotProductID=@DepotProductID";
                db.ExecuteNonQuery(sqlUpdateDepotDetail, db.CreateParameter("itemHappened", itemHappened),
                                   db.CreateParameter("DepotProductID", item.DepotProductDetailID));

                //更新订单项
                db.ColAdd <Z10OrderItem>("CountHappend2", itemHappened, item.ItemID);
                #endregion
            }

            //增加库存流水
            Z10DepotFlow xflow = new Z10DepotFlow();
            xflow.Creator   = userID;
            xflow.Count     = itemHappened;
            xflow.DepotID   = item.DepotID;
            xflow.OrderID   = item.OrderID;
            xflow.ProductID = item.ProductID;
            xflow.TenantID  = tenantID;

            db.Insert(xflow);
        }