protected void Btn_Add_Click(object sender, EventArgs e) { if (this.BuyBackDate.Text == "") { Response.Write("<script>alert('请选择商品进货退货日期!');<script>"); return; } /*建立商品进货退货信息模型并搜集各个信息*/ BuyBackInfoModel buyBackInfoModel = new BuyBackInfoModel(); buyBackInfoModel.SupplierName = this.SupplierName.Text; buyBackInfoModel.GoodNo = this.GoodNo.Text; buyBackInfoModel.Price = Convert.ToSingle(this.Price.Text); buyBackInfoModel.Number = Convert.ToInt32(this.Number.Text); buyBackInfoModel.TotalPrice = buyBackInfoModel.Price * buyBackInfoModel.Number; buyBackInfoModel.BuyBackDate = Convert.ToDateTime(this.BuyBackDate.Text).Date; buyBackInfoModel.BuyBackReason = this.BuyBackReason.Text; buyBackInfoModel.BuyBackAddTime = DateTime.Now; /*调用业务层执行新的商品退货业务的处理,成功返回true*/ BuyBackInfoLogic buyBackInfoLogic = new BuyBackInfoLogic(); if (buyBackInfoLogic.AddBuyBackInfo(buyBackInfoModel)) { Response.Write("<script>alert('商品进货退货登记成功!');location.href='BuyBackInfoAdd.aspx';</script>"); } else { Response.Write("<script>alert('" + buyBackInfoLogic.ErrMessage + "');</script>"); } }
/*传入商品退货信息模型,执行商品的退货操作*/ public bool AddBuyBackInfo(BuyBackInfoModel buyBackInfoModel) { /*商品查询是否存在该商品编号*/ string sqlString = "select * from [goodInfo] where goodNo='" + buyBackInfoModel.GoodNo + "'"; if (!DBOperation.ExecuteReader(DBOperation.CONN_STRING_NON_DTC, CommandType.Text, sqlString, null).Read()) { this.errMessage = "你输入的商品信息不存在!"; return(false); } /*查询该商品目前的库存量*/ sqlString = "select goodCount from [goodStockInfo] where goodNo='" + buyBackInfoModel.GoodNo + "'"; int goodCount = Convert.ToInt32(DBOperation.ExecuteScalar(DBOperation.CONN_STRING_NON_DTC, CommandType.Text, sqlString, null)); if (buyBackInfoModel.Number > goodCount) { this.errMessage = "你输入的该商品数量不能大于库存量"; return(false); } /*将该商品退货信息登记入系统中*/ sqlString = "insert into buyBackInfo (goodNo,supplierName,price,number,totalPrice,buyBackDate,buyBackReason,buyBackAddTime) values ('"; sqlString += buyBackInfoModel.GoodNo + "','"; sqlString += buyBackInfoModel.SupplierName + "',"; sqlString += buyBackInfoModel.Price + ","; sqlString += buyBackInfoModel.Number + ","; sqlString += buyBackInfoModel.TotalPrice + ",'"; sqlString += buyBackInfoModel.BuyBackDate + "','"; sqlString += buyBackInfoModel.BuyBackReason + "','"; sqlString += buyBackInfoModel.BuyBackAddTime + "')"; /*调用数据层执行信息登记操作*/ if (DBOperation.ExecuteNonQuery(DBOperation.CONN_STRING_NON_DTC, CommandType.Text, sqlString, null) <= 0) { this.errMessage = "商品进货退货登记时发生了数据错误!"; return(false); } /*商品退货后需要更新对应商品的库存*/ sqlString = "update [goodStockInfo] set goodCount = goodCount - " + buyBackInfoModel.Number + " where goodNo='" + buyBackInfoModel.GoodNo + "'"; if (DBOperation.ExecuteNonQuery(DBOperation.CONN_STRING_NON_DTC, CommandType.Text, sqlString, null) <= 0) { this.errMessage = "商品进货退货时修改商品库存发生了错误!"; return(false); } return(true); }