private void GetOrderInfo() { LossOrder orderInfo = Core.Container.Instance.Resolve <IServiceLossOrder>().GetEntity(OrderID); lblAmount.Text = orderInfo.OrderAmount.ToString(); lblCount.Text = orderInfo.OrderNumber.ToString(); lblOrderNo.Text = orderInfo.OrderNO; lblOrderDate.Text = orderInfo.OrderDate.ToString(); lblUser.Text = orderInfo.UserName; ddlWH.SelectedValue = orderInfo.WareHouseID.ToString(); //绑定商品明细 BindGrid(orderInfo.OrderNO); }
private void GetOrderInfo() { LossOrder order = Core.Container.Instance.Resolve <IServiceLossOrder>().GetEntity(OrderID); OrderNO = order.OrderNO; //初始化页面数据 dpStartDate.Text = order.OrderDate.ToString("yyyy-MM-dd HH:mm:ss"); txtRemark.Text = order.Remark; lblOrderNo.Text = OrderNO; ddlSuplier.SelectedValue = order.UserID.ToString(); ddlWH.SelectedValue = order.WareHouseID.ToString(); }
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) { int ID = GetSelectedDataKeyID(Grid1); //获取当前选中记录信息 LossOrder orderInfo = Core.Container.Instance.Resolve <IServiceLossOrder>().GetEntity(ID); if (e.CommandName == "Delete") { if (orderInfo != null) { if (orderInfo.IsTemp == 1) { //删除临时订单商品信息 IList <ICriterion> qryList = new List <ICriterion>(); qryList.Add(Expression.Eq("OrderNO", orderInfo.OrderNO)); IList <LossOrderDetail> goodsList = Core.Container.Instance.Resolve <IServiceLossOrderDetail>().GetAllByKeys(qryList); foreach (LossOrderDetail goods in goodsList) { Core.Container.Instance.Resolve <IServiceLossOrderDetail>().Delete(goods); } //删除临时订单信息 Core.Container.Instance.Resolve <IServiceLossOrder>().Delete(orderInfo); BindGrid(); } else { Alert.Show("正式订单不能删除!"); } } } if (e.CommandName == "editField") { if (orderInfo != null) { if (orderInfo.IsTemp == 1) { PageContext.Redirect(string.Format("~/Inventory/LossOrderEdit.aspx?id={0}", ID)); } else { Alert.Show("正式订单不能修改!"); } } } if (e.CommandName == "viewField") { PageContext.Redirect(string.Format("~/Inventory/LossOrderView.aspx?id={0}", ID)); } }
private void BindOrderInfo() { IList <ICriterion> qryList = new List <ICriterion>(); qryList.Add(Expression.Eq("OrderNO", OrderNO)); LossOrder orderInfo = Core.Container.Instance.Resolve <IServiceLossOrder>().GetEntityByFields(qryList); OrderID = orderInfo != null ? orderInfo.ID : 0; WHID = orderInfo != null ? orderInfo.WareHouseID : 0; lblTitle.Text = string.Format("领用单号:{0}", OrderNO); //获取出库库房信息 WareHouse houseInfo = Core.Container.Instance.Resolve <IServiceWareHouse>().GetEntity(WHID); lblWHInfo.Text = string.Format("出库库房:{0}", houseInfo != null ? houseInfo.WHName : ""); }
private void CreateOrderInfo() { LossOrder order = new LossOrder(); order.OrderAmount = 0; order.OrderDate = DateTime.Now; order.OrderNO = string.Format("BS{0}", DateTime.Now.ToString("yyyyMMddHHmmss")); order.OrderNumber = 0; order.Remark = ""; order.UserID = 0; order.WareHouseID = int.Parse(ddlWH.SelectedValue); order.Operator = User.Identity.Name; Core.Container.Instance.Resolve <IServiceLossOrder>().Create(order); OrderNO = order.OrderNO; //初始化页面数据 lblOrderNo.Text = OrderNO; dpStartDate.Text = DateTime.Now.ToString("yyyy-MM-dd"); }
public void btnReturn_Click(object sender, EventArgs e) { IList <ICriterion> qryList = new List <ICriterion>(); qryList.Add(Expression.Eq("OrderNO", OrderNO)); //获取当前订单信息 LossOrder orderInfo = Core.Container.Instance.Resolve <IServiceLossOrder>().GetEntityByFields(qryList); //删除临时订单商品信息 if (orderInfo != null && orderInfo.IsTemp == 1) { IList <LossOrderDetail> goodsList = Core.Container.Instance.Resolve <IServiceLossOrderDetail>().GetAllByKeys(qryList); foreach (LossOrderDetail goods in goodsList) { Core.Container.Instance.Resolve <IServiceLossOrderDetail>().Delete(goods); } //删除临时订单信息 Core.Container.Instance.Resolve <IServiceLossOrder>().Delete(orderInfo); } //返回订单管理页面 PageContext.Redirect("~/Inventory/LossOrderManager.aspx"); }
private void SaveItem(int isTemp) { bool IsStock = bool.Parse(ConfigurationManager.AppSettings["IsStock"]); //更新订单状态为正式订单 IList <ICriterion> qryList = new List <ICriterion>(); qryList.Add(Expression.Eq("OrderNO", OrderNO)); LossOrder orderInfo = Core.Container.Instance.Resolve <IServiceLossOrder>().GetEntityByFields(qryList); orderInfo.OrderDate = DateTime.Parse(dpStartDate.Text); orderInfo.OrderAmount = decimal.Parse(lblAmount.Text); orderInfo.IsTemp = isTemp; orderInfo.OrderNumber = decimal.Parse(lblCount.Text); orderInfo.UserID = int.Parse(ddlSuplier.SelectedValue); orderInfo.UserName = ddlSuplier.SelectedText; orderInfo.WareHouseID = int.Parse(ddlWH.SelectedValue); orderInfo.Operator = User.Identity.Name; Core.Container.Instance.Resolve <IServiceLossOrder>().Update(orderInfo); //正式订单,更新入库信息及流水信息等 if (isTemp == 0) { #region 出库单信息 if (IsStock) { // 出库单信息 WHOutBoundOrder storageOrder = new WHOutBoundOrder(); storageOrder.BOrderNO = OrderNO; storageOrder.Operator = User.Identity.Name; storageOrder.OrderAmount = orderInfo.OrderAmount; storageOrder.OrderNumber = orderInfo.OrderNumber; storageOrder.OrderDate = orderInfo.OrderDate; storageOrder.OrderNO = string.Format("CK{0}", DateTime.Now.ToString("yyyyMMddHHmmss")); storageOrder.OrderType = 4; storageOrder.OutOrderNO = ""; storageOrder.Remark = "报损出库"; storageOrder.SuplierID = orderInfo.UserID; storageOrder.WareHouseID = orderInfo.WareHouseID; // 出库商品明细信息 IList <ICriterion> qryListDetail = new List <ICriterion>(); qryListDetail.Add(Expression.Eq("OrderNO", OrderNO)); Order[] orderList = new Order[1]; Order orderli = new Order("ID", true); orderList[0] = orderli; IList <LossOrderDetail> list = Core.Container.Instance.Resolve <IServiceLossOrderDetail>().GetAllByKeys(qryList, orderList); //写入出库商品明细 foreach (LossOrderDetail detail in list) { decimal amount = detail.GoodsNumber; decimal goodsAmount = 0; IList <ICriterion> qryWHList = new List <ICriterion>(); qryWHList.Add(Expression.Eq("GoodsID", detail.GoodsID)); qryWHList.Add(Expression.Eq("WareHouseID", storageOrder.WareHouseID)); WHGoodsDetail whGoodsDetail = Core.Container.Instance.Resolve <IServiceWHGoodsDetail>().GetEntityByFields(qryWHList); WHOrderGoodsDetail orderDetail = new WHOrderGoodsDetail(); orderDetail.GoodsID = detail.GoodsID; orderDetail.GoodsUnit = detail.GoodsUnit; orderDetail.OrderDate = storageOrder.OrderDate; orderDetail.OrderNO = storageOrder.OrderNO; orderDetail.GoodsNumber = amount; //获取出库单价和金额 orderDetail.GoodsUnitPrice = whGoodsDetail.InventoryUnitPrice; orderDetail.GoodTotalPrice = Math.Round(orderDetail.GoodsNumber * orderDetail.GoodsUnitPrice, 2); orderDetail.TaxAmount = 0; orderDetail.TaxPoint = 0; orderDetail.TotalPriceNoTax = 0; orderDetail.UnitPriceNoTax = 0; //保存出库明细信息 Core.Container.Instance.Resolve <IServiceWHOrderGoodsDetail>().Create(orderDetail); //更新商品变动明细信息(出库) new InventoryHelper().UpdateGoodsJournal(storageOrder.WareHouseID, detail.GoodsID, OrderNO, "LY", 2 , -orderDetail.GoodsNumber, orderDetail.GoodsUnitPrice , -orderDetail.GoodTotalPrice, "" , orderInfo.OrderDate); //累计计算订单成本金额 goodsAmount += orderDetail.GoodTotalPrice; //更新商品库存信息 new InventoryHelper().UpdateWareHouseStock(storageOrder.WareHouseID, detail.GoodsID, -detail.GoodsNumber, 0, -goodsAmount, 0); } //创建出库单信息 Core.Container.Instance.Resolve <IServiceWHOutBoundOrder>().Create(storageOrder); } #endregion 入库单信息 } }