Пример #1
0
        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);
                    }
                }
            }
        }
Пример #2
0
        private bool IsExists(int goodsID)
        {
            IList <ICriterion> qryList = new List <ICriterion>();

            qryList.Add(Expression.Eq("OrderNO", OrderNO));
            qryList.Add(Expression.Eq("GoodsID", goodsID));

            tm_GoodsAllocationBillDetail objInfo = Core.Container.Instance.Resolve <IServiceGoodsAllocationBillDetail>().GetEntityByFields(qryList);

            return(objInfo != null ? true : false);
        }
Пример #3
0
        protected void Grid1_AfterEdit(object sender, GridAfterEditEventArgs e)
        {
            Dictionary <int, Dictionary <string, object> > modifiedDict = Grid1.GetModifiedDict();

            foreach (int rowIndex in modifiedDict.Keys)
            {
                int rowID = Convert.ToInt32(Grid1.DataKeys[rowIndex][0]);
                tm_GoodsAllocationBillDetail objInfo = Core.Container.Instance.Resolve <IServiceGoodsAllocationBillDetail>().GetEntity(rowID);
                if (modifiedDict[rowIndex].Keys.Contains("GoodsPrice"))
                {
                    objInfo.GoodsPrice = Convert.ToDecimal(modifiedDict[rowIndex]["GoodsPrice"]);
                }
                if (modifiedDict[rowIndex].Keys.Contains("GoodsNumber"))
                {
                    objInfo.GoodsNumber = Convert.ToDecimal(modifiedDict[rowIndex]["GoodsNumber"]);
                }
                objInfo.GoodsAmount = objInfo.GoodsPrice * objInfo.GoodsNumber;

                Core.Container.Instance.Resolve <IServiceGoodsAllocationBillDetail>().Update(objInfo);
            }

            BindGrid();
        }