Exemple #1
0
        public ActionResult Edit(int id)
        {
            StockOutType obj = GetById(id);

            ViewData["sku"] = obj.SKU;
            return(View(obj));
        }
Exemple #2
0
        public static bool StockOut(int wid, string sku, int num, string outType, string user, string memo, string orderNo, ISession NSession)
        {
            IList <WarehouseStockType> list = NSession.CreateQuery(" from WarehouseStockType where WId=:p1 and SKU=:p2").SetInt32("p1", wid).SetString("p2", sku).List <WarehouseStockType>();

            if (list.Count > 0)
            {
                WarehouseStockType ws = list[0];
                ws.Qty      = ws.Qty - num;
                ws.UpdateOn = DateTime.Now;
                NSession.SaveOrUpdate(ws);
                NSession.Flush();
                SetComposeStock(sku, NSession);
                StockOutType stockOutType = new StockOutType();
                stockOutType.CreateBy  = user;
                stockOutType.CreateOn  = DateTime.Now;
                stockOutType.OrderNo   = orderNo;
                stockOutType.Qty       = num;
                stockOutType.SKU       = sku;
                stockOutType.OutType   = outType;
                stockOutType.SourceQty = ws.Qty + num;
                stockOutType.WId       = wid;
                stockOutType.Memo      = memo;
                NSession.Save(stockOutType);
                NSession.Flush();
                return(true);
            }
            return(false);
        }
Exemple #3
0
 public ActionResult Edit(StockOutType obj)
 {
     try
     {
         NSession.Update(obj);
         NSession.Flush();
     }
     catch (Exception ee)
     {
         return(Json(new { IsSuccess = false, ErrorMsg = "出错了" }));
     }
     return(Json(new { IsSuccess = true }));
 }
Exemple #4
0
        /// <summary>
        /// 根据Id获取
        /// </summary>
        /// <param name="Id"></param>
        /// <returns></returns>
        public StockOutType GetById(int Id)
        {
            StockOutType obj = NSession.Get <StockOutType>(Id);

            if (obj == null)
            {
                throw new Exception("返回实体为空");
            }
            else
            {
                return(obj);
            }
        }
Exemple #5
0
 public JsonResult DeleteConfirmed(int id)
 {
     try
     {
         StockOutType obj = GetById(id);
         NSession.Delete(obj);
         NSession.Flush();
     }
     catch (Exception ee)
     {
         return(Json(new { IsSuccess = false, ErrorMsg = "出错了" }));
     }
     return(Json(new { IsSuccess = true }));
 }
Exemple #6
0
 public JsonResult Create(StockOutType obj)
 {
     try
     {
         obj.CreateBy = CurrentUser.Realname;
         obj.CreateOn = DateTime.Now;
         NSession.SaveOrUpdate(obj);
         NSession.Flush();
     }
     catch (Exception ee)
     {
         return(Json(new { IsSuccess = false, ErrorMsg = "出错了" }));
     }
     return(Json(new { IsSuccess = true }));
 }
Exemple #7
0
        private bool SetShipping()
        {
            try
            {
                OrderType order = OrderType.findById(cvt.ToInt(hoid.Value));
                if (order != null)
                {
                    order.TransportMode += "|" + txtKey.Text.Trim();
                    order.TransportMode = order.TransportMode.Trim('|');

                    PackageType pack = PackageType.findById(cvt.ToInt(hpid.Value));
                    if (pack == null)
                    {
                        Literal1.Text = "包裹: " + order.TxnId + " 已经发货!";
                        pack = new PackageType();
                        pack.PackageNo = order.TxnId;
                        pack.OrderNo = order.Id.ToString();
                        pack.PackageWeight = cvt.ToDouble(txtweight.Text);
                        pack.PackageStatus = "已发货";
                        pack.TrackCode = txtKey.Text.Trim();
                        pack.LogisticsMode = ddlTransportMode.SelectedItem.Text;
                        pack.ShippedTime = DateTime.Now;

                        pack.insert();
                    }
                    else
                    {
                        Literal1.Text = "包裹: " + pack.PackageNo + " 已经发货!";
                        pack.PackageWeight = cvt.ToDouble(txtweight.Text);
                        pack.PackageStatus = "已发货";
                        pack.TrackCode = txtKey.Text.Trim();
                        pack.OrderNo = order.Id.ToString();
                        pack.LogisticsMode = ddlTransportMode.SelectedItem.Text; ;

                        pack.ShippedTime = DateTime.Now;
                        pack.update();
                    }

                    hact.Value = "a";
                    hoid.Value = "";

                    object obj = db.RunScalar<OrderType>("select COUNT(1) from SP_Package where OrderNo='" + order.Id + "' and PackageStatus='未发货'");
                    if (obj != null && obj.ToString() == "0")
                    {

                        order.update();
                        OrderType.updateBatch("OrderStatus=3", "ModifiedUserId='" + order.Id + "'");
                        List<OrderGoodsType> goods = OrderGoodsType.find("ModifiedBy='" + order.Id + "'").list();
                        foreach (OrderGoodsType foo in goods)
                        {
                            OrderType o = OrderType.findById(cvt.ToInt(foo.OrderNo));
                            if (o != null)
                            {
                                StockOutType sot = new StockOutType();

                                GoodsType g = GoodsType.find("ItemNo='" + foo.ItemNo.Trim() + "'").first();
                                if (g == null)
                                {
                                    sot.OutStatus = "出库失败";
                                    sot.ErrorString = "无法找到该产品!";
                                }
                                else
                                {
                                    g.ItemNum = g.ItemNum - foo.ItemNum;
                                    g.update();
                                    sot.OutStatus = "出库成功";
                                }

                                sot.OrderId = o.Id.ToString();
                                sot.OrderNo = o.TxnId;
                                sot.ItemNo = foo.ItemNo;
                                sot.ItemNum = foo.ItemNum;
                                sot.insert();
                            }
                        }

                    }

                }
                return true;
            }
            catch (Exception)
            {
                return false;
            }
            finally
            {

            }
        }