protected void Button1_Click(object sender, EventArgs e) { BLL.BuyOrder bl_bo = new BLL.BuyOrder(); Model.BuyOrder ml_bo = bl_bo.GetModel(BuyOrder_ID); if (!ml_bo.Produced)//字段值为false,表示已经入过库 { Maticsoft.Common.MessageBox.Show(this, "该单号已经入库,不能重复操作!"); return; } if (DropDownList4.SelectedValue == "0") { Maticsoft.Common.MessageBox.Show(this, "请选择仓库!"); return; } Model.EnterStock ET = new Model.EnterStock(); ET.Dept_ID = Convert.ToInt32(DropDownList1.SelectedValue); ET.Employee_ID = Convert.ToInt32(DropDownList3.SelectedValue); ET.StoreHouse_ID = Convert.ToInt32(DropDownList4.SelectedValue); ET.EnterDate = DateTime.Now; Int32 ETId = new BLL.EnterStock().Add(ET); foreach (RepeaterItem item in Repeater1.Items) { Label LB1 = (Label)item.FindControl("Label5"); //单价 Label LB2 = (Label)item.FindControl("Label6"); //数量 Label LB3 = (Label)item.FindControl("Label7"); //合计 Label LB4 = (Label)item.FindControl("Label1"); //商品编号 Int32 pro_id = Convert.ToInt32(LB4.Text); decimal pro_qty = Convert.ToDecimal(LB2.Text); Model.EnterStock_Detail esd = new Model.EnterStock_Detail(); esd.EnterStock_ID = ETId; esd.Product_ID = pro_id; esd.Quantity = pro_qty; esd.Price = Convert.ToDecimal(LB1.Text); esd.HaveInvoice = false; esd.InvoiceNum = "0000"; BLL.EnterStock_Detail bll_esd = new BLL.EnterStock_Detail(); bll_esd.Add(esd); //Model.StockPile sp = new Model.StockPile(); BLL.StockPile bll_sp = new BLL.StockPile(); Model.StockPile sp = bll_sp.GetModelByProId(pro_id, Convert.ToInt32(DropDownList4.SelectedValue)); if (sp == null) { sp = new Model.StockPile(); sp.Dept_ID = Convert.ToInt32(DropDownList1.SelectedValue); sp.StoreHouse_ID = Convert.ToInt32(DropDownList4.SelectedValue); sp.Product_ID = pro_id; sp.FirstEnterDate = DateTime.Now; sp.LastLeaveDate = DateTime.Now; sp.Quantity = pro_qty; sp.Price = Convert.ToDecimal(LB1.Text); bll_sp.Add(sp); } else { sp.Quantity += pro_qty; bll_sp.Update(sp); } ml_bo.Produced = false; bl_bo.Update(ml_bo); Maticsoft.Common.MessageBox.ShowAndRedirect(this, "入库已完成!", "/warehouse/BuyOrder/List.aspx"); } }