private void SaveItem() { // 从每个选中的行中获取ID(在Grid1中定义的DataKeyNames) List <int> ids = GetSelectedDataKeyIDs(Grid1); tm_Goods goodsEntity = new tm_Goods(); WHGoodsDetail whGoodsEntity = new WHGoodsDetail(); tm_GoodsAllocationBillDetail dbEntity = new tm_GoodsAllocationBillDetail(); // 执行数据库操作 foreach (int ID in ids) { //获取库存物品信息 whGoodsEntity = Core.Container.Instance.Resolve <IServiceWHGoodsDetail>().GetEntity(ID); if (whGoodsEntity != null) { goodsEntity = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(whGoodsEntity.GoodsID); //判断是否已经添加改商品物品 if (!IsExists(ID)) { dbEntity = new tm_GoodsAllocationBillDetail(); dbEntity.OrderNO = OrderNO; dbEntity.GoodsID = whGoodsEntity.GoodsID; dbEntity.GoodsType = whGoodsEntity.GoodsTypeID; dbEntity.GoodsNumber = 1; dbEntity.GoodsPrice = goodsEntity.GoodsPrice; dbEntity.GoodsAmount = goodsEntity.GoodsPrice; dbEntity.OrderDate = DateTime.Now; Core.Container.Instance.Resolve <IServiceGoodsAllocationBillDetail>().Create(dbEntity); } } } }
private void SaveItem() { // 从每个选中的行中获取ID(在Grid1中定义的DataKeyNames) List <int> ids = GetSelectedDataKeyIDs(Grid1); tm_Goods goodsEntity = new tm_Goods(); tm_DishesBatching dbEntity = new tm_DishesBatching(); tm_Dishes dishesInfo = Core.Container.Instance.Resolve <IServiceDishes>().GetEntity(DishesID); // 执行数据库操作 foreach (int ID in ids) { goodsEntity = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(ID); //判断是否已经添加改配料物品 if (!IsExists(ID)) { dbEntity = new tm_DishesBatching(); dbEntity.BatchingName = goodsEntity.GoodsName; dbEntity.DishesInfo = dishesInfo; dbEntity.GoodsCode = goodsEntity.GoodsCode.ToString(); dbEntity.GoodsID = goodsEntity.ID; dbEntity.IsOffset = int.Parse(rbtnIsStock.SelectedValue); dbEntity.UsingUnit = goodsEntity.ConsumeUnit; dbEntity.UsingCount = 1; dbEntity.UsingUnitPrice = goodsEntity.GoodsPrice / goodsEntity.ConsumeNum; dbEntity.CostPrice = goodsEntity.GoodsPrice / goodsEntity.ConsumeNum; dbEntity.WareHouseID = int.Parse(ddlWH.SelectedValue); Core.Container.Instance.Resolve <IServiceDishesBatching>().Create(dbEntity); } } }
private void SetSelectedUsersEnableStatus(bool enabled) { string isUsed = enabled ? "2" : "1"; // 从每个选中的行中获取ID(在Grid1中定义的DataKeyNames) List <int> ids = GetSelectedDataKeyIDs(Grid1); // 执行数据库操作 foreach (int ID in ids) { tm_Goods entity = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(ID); entity.IsUsed = int.Parse(isUsed); //entity.GoodsPY = GetChinesePY(entity.GoodsName); Core.Container.Instance.Resolve <IServiceGoods>().Update(entity); } // 重新绑定表格 BindGrid(); }
public void Bind() { if (InfoID > 0) { tm_Goods GoodsInfo = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(InfoID); txtCostName.Text = GoodsInfo.GoodsName; //商品名称 ddlCostType.SelectedValue = GoodsInfo.GoodsTypeID.ToString(); //商品类别 lblCode.Text = GoodsInfo.GoodsCode.ToString(); //商品编码 lblPY.Text = GoodsInfo.GoodsPY; //商品拼音 ddlIsUsed.SelectedValue = GoodsInfo.IsUsed.ToString(); //是否启用 ddlUnit.SelectedValue = GoodsInfo.GoodsUnit; //标准单位 ddlTaxPoint.SelectedValue = GoodsInfo.TaxPoint.ToString(); //税率 txtPrice.Text = GoodsInfo.GoodsPrice.ToString(); //商品价格 txtFormat.Text = GoodsInfo.GoodsFormat; //商品规格描述 ddlPD.SelectedValue = GoodsInfo.InventoryType; //盘点类型 txtConsumNum.Text = GoodsInfo.ConsumeNum.ToString(); //消耗换算值 ddlConsumeUnit.SelectedValue = GoodsInfo.ConsumeUnit; //消耗换算单位 txtPurchaseNum.Text = GoodsInfo.PurchaseNum.ToString(); //采购换算值 ddlPurchaseUnit.SelectedValue = GoodsInfo.PurchaseUnit; //采购换算单位 txtOrderNum.Text = GoodsInfo.OrderNum.ToString(); //订货换算值 ddlOrderUnit.SelectedValue = GoodsInfo.OrderUnit; //订货换算单位 txtGoodsBarCode.Text = GoodsInfo.GoodsBarCode; } else { //获取当前最大编号 IList <tm_Goods> list = Core.Container.Instance.Resolve <IServiceGoods>().GetAll(); if (list.Count > 0) { tm_Goods maxGoods = list.ToList().OrderByDescending(objs => objs.GoodsCode).First(); lblCode.Text = (maxGoods.GoodsCode + 1).ToString(); } else { lblCode.Text = "100001"; } } if (IsView > 0) { btnSaveClose.Visible = false; } }
private void SaveItem() { tm_Goods GoodsInfo = new tm_Goods(); if (InfoID > 0) { GoodsInfo = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(InfoID); } GoodsInfo.GoodsName = txtCostName.Text; //商品名称 GoodsInfo.GoodsTypeID = int.Parse(ddlCostType.SelectedValue); //商品类别 GoodsInfo.GoodsCode = int.Parse(lblCode.Text); //商品编码 GoodsInfo.GoodsPY = lblPY.Text; //商品拼音 GoodsInfo.IsUsed = int.Parse(ddlIsUsed.SelectedValue); //是否启用 GoodsInfo.GoodsUnit = ddlUnit.SelectedValue; //标准单位 GoodsInfo.TaxPoint = int.Parse(ddlTaxPoint.SelectedValue); //税率 //商品价格 GoodsInfo.GoodsPrice = !string.IsNullOrEmpty(txtPrice.Text) ? decimal.Parse(txtPrice.Text) : 0; GoodsInfo.GoodsFormat = txtFormat.Text; //商品规格描述 GoodsInfo.InventoryType = ddlPD.SelectedValue; //盘点类型 GoodsInfo.ConsumeNum = int.Parse(txtConsumNum.Text); //消耗换算值 GoodsInfo.ConsumeUnit = ddlConsumeUnit.SelectedValue; //消耗换算单位 GoodsInfo.PurchaseNum = int.Parse(txtPurchaseNum.Text); //采购换算值 GoodsInfo.PurchaseUnit = ddlPurchaseUnit.SelectedValue; //采购换算单位 GoodsInfo.OrderNum = int.Parse(txtOrderNum.Text); //订货换算值 GoodsInfo.OrderUnit = ddlOrderUnit.SelectedValue; //订货换算单位 GoodsInfo.GoodsPY = GetChinesePY(txtCostName.Text.Trim()); GoodsInfo.GoodsBarCode = txtGoodsBarCode.Text; if (InfoID > 0) { Core.Container.Instance.Resolve <IServiceGoods>().Update(GoodsInfo); } else { Core.Container.Instance.Resolve <IServiceGoods>().Create(GoodsInfo); } }
/// <summary> /// 商品出库处理 /// </summary> /// <param name="whID">库房编号</param> /// <returns></returns> private bool SaveItem(int whID) { //获取消费订单信息 tm_TabieUsingInfo tabieUsingInfo = Core.Container.Instance.Resolve <IServiceTabieUsingInfo>().GetEntity(TabieUsingID); //检查系统设置是否做库存处理 bool IsStock = bool.Parse(ConfigurationManager.AppSettings["IsStock"]); if (IsStock) { //获取销售仓库信息 WareHouse houseInfo = Core.Container.Instance.Resolve <IServiceWareHouse>().GetEntity(whID); //如果仓库存在 if (houseInfo != null) { #region 出库单信息 // 出库单信息 tm_WHOutBoundOrder storageOrder = new tm_WHOutBoundOrder(); storageOrder.BOrderNO = tabieUsingInfo.OrderNO; storageOrder.Operator = User.Identity.Name; storageOrder.OrderAmount = 0; storageOrder.OrderNumber = 0; storageOrder.OrderDate = (DateTime)tabieUsingInfo.ClearTime; storageOrder.OrderNO = string.Format("CK{0}", DateTime.Now.ToString("yyyyMMddHHmmss")); storageOrder.OrderType = 6; storageOrder.WareHouseID = houseInfo.ID; storageOrder.OutOrderNO = ""; storageOrder.Remark = "消费出库"; //获取订单商品明细,生成出库商品明细信息 string sql = string.Format("SELECT GoodsID,sum(UsedCount) as UsedCount FROM tm_dinnerTemp WHERE TabieUsingID={0} and WHID={1} GROUP BY TabieUsingID,WHID,GoodsID " , TabieUsingID, whID); DataSet dsGoods = DbHelperMySQL.Query(sql); if (dsGoods.Tables[0] != null) { //写入出库商品明细 foreach (DataRow detail in dsGoods.Tables[0].Rows) { decimal goodsAmount = 0; decimal goodsCount = 0; int goodsID = int.Parse(detail["GoodsID"].ToString()); //获取商品信息 tm_Goods goodsInfo = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(goodsID); //计算消耗转换标准的数量 decimal amount = Math.Round(decimal.Parse(detail["UsedCount"].ToString()) / goodsInfo.ConsumeNum, 2); goodsCount = amount; storageOrder.OrderNumber += amount; //根据批次号获取出库商品信息 //List<tm_whgoodsorderbatch> batchList = new InventoryHelper().GetGoodsByBatchInfo(houseInfo.ID, goodsID); ////按照批次依次出库 //foreach (tm_whgoodsorderbatch batchInfo in batchList) //{ // tm_WHOrderGoodsDetail orderDetail = new tm_WHOrderGoodsDetail(); // orderDetail.GoodsID = goodsID; // orderDetail.GoodsUnit = goodsInfo.GoodsUnit; // orderDetail.OrderDate = storageOrder.OrderDate; // orderDetail.OrderNO = storageOrder.OrderNO; // orderDetail.TaxAmount = 0; // orderDetail.TaxPoint = goodsInfo.TaxPoint; // orderDetail.TotalPriceNoTax = 0; // orderDetail.UnitPriceNoTax = 0; // //如果当前批次剩余库存大于等于销售商品的销售数量 // if (batchInfo.CurrentNumber >= amount) // { // orderDetail.GoodsNumber = amount; // amount = 0; // } // else // { // orderDetail.GoodsNumber = batchInfo.CurrentNumber; // amount -= batchInfo.CurrentNumber; // } // //获取出库单价和金额 // orderDetail.GoodsUnitPrice = batchInfo.OrderUnitPrice; // orderDetail.GoodTotalPrice = Math.Round(orderDetail.GoodsNumber * orderDetail.GoodsUnitPrice, 2); // //保存出库明细信息 // Core.Container.Instance.Resolve<IServiceWHOrderGoodsDetail>().Create(orderDetail); // //更新进货批次库存信息 // new InventoryHelper().UpdateGoodsBatchInfo(houseInfo.ID, goodsID, batchInfo.BatchNO, orderDetail.GoodsNumber); // //更新商品变动明细信息(出库) // new InventoryHelper().UpdateGoodsJournal(houseInfo.ID, goodsID, storageOrder.OrderNO, "XF", 2 // , -orderDetail.GoodsNumber, batchInfo.OrderUnitPrice // , -orderDetail.GoodTotalPrice, batchInfo.BatchNO // , DateTime.Now); // //累计计算订单成本金额 // goodsAmount += orderDetail.GoodTotalPrice; // storageOrder.OrderAmount += orderDetail.GoodTotalPrice; // //判断该商品是否完成订单数量的出库 // if (amount <= 0) // { // break; // } //} //更新商品库存信息 new InventoryHelper().UpdateWareHouseStock(houseInfo.ID, goodsID, -goodsCount, 0, -goodsAmount, 0); } //创建出库单信息 Core.Container.Instance.Resolve <IServiceWHOutBoundOrder>().Create(storageOrder); } #endregion } else { return(false); } } return(true); }
//获取单位 public string GetUnitName(string id) { tm_Goods supplierInfo = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(int.Parse(id)); return(GetSystemEnumValue("WPDW", supplierInfo.GoodsUnit)); }
//获取单位 public string GetGoodCode(string id) { tm_Goods supplierInfo = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(int.Parse(id)); return(supplierInfo != null?supplierInfo.GoodsCode.ToString() : ""); }
public string GetGoodsName(string ID) { tm_Goods entity = Core.Container.Instance.Resolve <IServiceGoods>().GetEntity(Int32.Parse(ID)); return(entity == null ? "" : entity.GoodsName); }