Esempio n. 1
0
        /// <summary>
        /// 对象实体绑定数据
        /// </summary>
        public void Get_YueKaohe(IDataReader dataReader, Hashtable hs)
        {
            NoSellAndCaiGoods model = new NoSellAndCaiGoods();
            object            ojb;

            model.PONo = dataReader["PONo"].ToString();
            if (!hs.Contains(model.PONo))
            {
                model.AE = dataReader["AE"].ToString();

                ojb = dataReader["LastNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.totalNum = (decimal)ojb;
                }


                ojb = dataReader["outNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.OutNum = (decimal)ojb;
                }

                //ojb = dataReader["GoodNum"];
                //if (ojb != null && ojb != DBNull.Value)
                //{
                //    model.HouseNum = (decimal)ojb;

                //}
                ojb = dataReader["allCaiNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.AllCaiNum = (decimal)ojb;
                }
                ojb = dataReader["kuCaiNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.KuCaiNum = (decimal)ojb;
                }
                ojb = dataReader["waiCaiNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.WaiCaiNum = (decimal)ojb;
                }

                ojb = dataReader["sellTuiNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.SellTuiNum = (decimal)ojb;
                }
                ojb = dataReader["caiTuiNum"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.CaiTuiNum = (decimal)ojb;
                }
                if (model.WaiCaiNum == 0)
                {
                    model.CaIKuNum = model.AllCaiNum - model.OutNum;
                    model.RuChuNum = 0;
                }
                else
                {
                    if (model.KuCaiNum == 0)
                    {
                        if (model.SellTuiNum >= model.CaiTuiNum)
                        {
                            model.CaIKuNum = 0;
                            model.RuChuNum = model.WaiCaiNum - model.OutNum;
                        }
                        else
                        {
                            model.CaIKuNum = 0;
                            model.RuChuNum = model.WaiCaiNum - model.OutNum + model.SellTuiNum - model.CaiTuiNum;
                        }
                    }
                    else
                    {
                        if (model.SellTuiNum >= model.CaiTuiNum)
                        {
                            model.CaiGouNum = model.AllCaiNum - model.OutNum;
                        }
                        else
                        {
                            model.CaiGouNum = model.AllCaiNum - model.OutNum + model.SellTuiNum - model.CaiTuiNum;
                        }
                    }
                }

                if (model.RuChuNum != 0 || model.CaIKuNum != 0 || model.CaiGouNum != 0)
                {
                    hs.Add(model.PONo, model.AE);
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        /// 对象实体绑定数据
        /// </summary>
        public NoSellAndCaiGoods ReaderBindNoSellAndCaiGoods(IDataReader dataReader)
        {
            NoSellAndCaiGoods model = new NoSellAndCaiGoods();
            object            ojb;

            model.GoodTypeSmName = dataReader["GoodTypeSmName"].ToString();
            model.PONo           = dataReader["PONo"].ToString();
            model.POName         = dataReader["POName"].ToString();
            model.AE             = dataReader["AE"].ToString();
            model.GuestName      = dataReader["GuestName"].ToString();
            ojb = dataReader["GoodId"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.GoodId = (int)ojb;
            }
            ojb = dataReader["hanShui"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.IsHanShui = (int)ojb;
            }
            model.GoodNo   = dataReader["GoodNo"].ToString();
            model.GoodName = dataReader["GoodName"].ToString();
            model.GoodSpec = dataReader["GoodSpec"].ToString();
            ojb            = dataReader["LastNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.totalNum = (decimal)ojb;
            }

            //这个采库需出的库存均价 是错误的,我的想法是如果没有库存,库存均价 就应该是采购单价,你需要在程序上区分一下,按此修改吧
            model.avgGoodPrice = 0;
            ojb = dataReader["GoodAvgPrice"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.avgGoodPrice = (decimal)ojb;
            }
            else
            {
                ojb = dataReader["caiAvgPrice"];
                if (ojb != null && ojb != DBNull.Value)
                {
                    model.avgGoodPrice = Convert.ToDecimal(dataReader["caiAvgPrice"]);
                }
            }
            ojb = dataReader["avgSellPrice"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.avgSellPrice = (decimal)ojb;
            }
            ojb = dataReader["minRuTime"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.minRuTime = (DateTime)ojb;
            }
            ojb = dataReader["minPODate"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.minPODate = (DateTime)ojb;
            }

            ojb = dataReader["outNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.OutNum = (decimal)ojb;
            }

            ojb = dataReader["GoodNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.HouseNum = (decimal)ojb;
            }
            //ojb = dataReader["RuChuNum"];
            //if (ojb != null && ojb != DBNull.Value)
            //{
            //    model.RuChuNum = (decimal)ojb;
            //}
            ojb           = dataReader["CaiDate"];
            model.CaiDate = (DateTime)ojb;
            ojb           = dataReader["allCaiNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.AllCaiNum = (decimal)ojb;
            }
            ojb = dataReader["kuCaiNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.KuCaiNum = (decimal)ojb;
            }
            ojb = dataReader["waiCaiNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.WaiCaiNum = (decimal)ojb;
            }

            ojb = dataReader["sellTuiNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.SellTuiNum = (decimal)ojb;
            }
            ojb = dataReader["caiTuiNum"];
            if (ojb != null && ojb != DBNull.Value)
            {
                model.CaiTuiNum = (decimal)ojb;
            }
            if (model.WaiCaiNum == 0)
            {
                model.CaIKuNum = model.AllCaiNum - model.OutNum;
                model.RuChuNum = 0;
            }
            else
            {
                if (model.KuCaiNum == 0)
                {
                    if (model.SellTuiNum >= model.CaiTuiNum)
                    {
                        model.CaIKuNum = 0;
                        model.RuChuNum = model.WaiCaiNum - model.OutNum;
                    }
                    else
                    {
                        model.CaIKuNum = 0;
                        model.RuChuNum = model.WaiCaiNum - model.OutNum + model.SellTuiNum - model.CaiTuiNum;
                    }
                }
                else
                {
                    if (model.SellTuiNum >= model.CaiTuiNum)
                    {
                        //入库需出数量+采库需出数量=采购来自外部数量+采购来自库存数量-所有已出库数量

                        model.RuChuNum = model.WaiCaiNum + model.KuCaiNum - model.OutNum - model.CaIKuNum;
                    }
                    else
                    {
                        //入库需出数量+采库需出数量=采购来自外部数量+采购来自库存数量-所有已出库数量+所有销售退货数量-所有采购退货数量
                        model.CaiGouNum = model.WaiCaiNum + model.KuCaiNum - model.OutNum + model.SellTuiNum - model.CaiTuiNum;
                    }
                }
            }


            //这列采购需出=入库需出+采库需出(见下方原来邮件)
            model.CaiGouNum = model.RuChuNum + model.CaIKuNum;
            return(model);
        }