/// <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); } } }
/// <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); }