⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 eight.html

📁 本源码实现了对数据库的最基本的操作
💻 HTML
📖 第 1 页 / 共 4 页
字号:
/// &lt;/summary&gt;<br>
/// &lt;param name=&quot;goodsID&quot;&gt;商品信息ID&lt;/param&gt;<br>
/// &lt;returns&gt;预警商品信息DataTable&lt;/returns&gt;<br>
public DataTable GetGoodsSaveAlertByID(int goodsID)<br>
{<br>
cmd.CommandText = string.Format(&quot;select top 1 a.GoodsID,a.SaveNum,a.SaveAddNum,a.SaveTime,a.SaveAddTime,b.GoodsName from GoodsSave a,GoodsInfo b where a.GoodsID = {0} and a.GoodsID = b.GoodsID &quot;, goodsID);<br>
SqlDataAdapter dad = new SqlDataAdapter(cmd);<br>
DataSet dts = new DataSet();<br>
DataTable dtb = new DataTable();<br>
try<br>
{<br>
conn.Open();<br>
dad.Fill(dts);<br>
dtb = dts.Tables[0];<br>
}<br>
catch (Exception ex)<br>
{<br>
throw (ex);<br>
}<br>
finally<br>
{<br>
cmd.Dispose();<br>
conn.Close();<br>
}<br>
return dtb;<br>
}</p>
<p>6.在GoodsSaveAlert.aspx.cs中的库存预警商品的数量修改的Click事件IsAdd_Click()中加入所有字段的校验程序,通过校验就要在数据库中写入数据,修改成功后重新跳转到库存预警商品页面GoodsSaveAlert.aspx</p>
<p class="code">/// &lt;summary&gt;<br>
/// 修改库存预警商品的数量<br>
/// &lt;/summary&gt;<br>
protected void IsAdd_Click(object sender, EventArgs e)<br>
{<br>
if (SaveNum.Text.Trim().Length == 0)<br>
{<br>
JScript.Alert(&quot;商品库存数量不能为空!&quot;);<br>
}<br>
else<br>
{<br>
int goodsID = 0;<br>
if (StringUtil.IsNumeric(GoodsID.Text.Trim()))<br>
{<br>
goodsID = int.Parse(GoodsID.Text.Trim().ToString());<br>
}<br>
int saveNum = 0;<br>
if (StringUtil.IsNumeric(SaveNum.Text.Trim()))<br>
{<br>
saveNum = int.Parse(SaveNum.Text.Trim().ToString());<br>
}<br>
string goodsName = GoodsName.Text.ToString();<br>
int modifyOk = GoodsSave.ModifyGoodsSaveAlert(goodsID, saveNum, goodsName);<br>
if (modifyOk == 1)<br>
{<br>
JScript.Alert(&quot;修改成功,欢迎使用!&quot;);<br>
JScript.JavaScriptLocationHref(&quot;GoodsSaveAlert.aspx&quot;);<br>
}<br>
else<br>
{<br>
JScript.Alert(&quot;修改失败,请稍后再来!&quot;);<br>
return;<br>
}<br>
}<br>
}</p>
<p>在库存类文件GoodsSave.cs上创建库存预警商品的数量修改的方法ModifyGoodsSaveAlert(),把所有修改字段作为参数输入给方法,完成库存预警商品的数据库写入功能</p>
<p class="code">/// &lt;summary&gt;<br>
/// 修改库存预警商品的数量<br>
/// &lt;/summary&gt;<br>
/// &lt;param name=&quot;goodsID&quot;&gt;商品信息ID&lt;/param&gt;<br>
/// &lt;param name=&quot;saveNum&quot;&gt;库存数量&lt;/param&gt;<br>
/// &lt;param name=&quot;goodsName&quot;&gt;商品名称&lt;/param&gt;<br>
/// &lt;returns&gt;flag标记&lt;/returns&gt;<br>
public int ModifyGoodsSaveAlert(int goodsID, int saveNum, string goodsName)<br>
{<br>
int flag = 0;<br>
cmd.CommandText = string.Format(&quot;update GoodsSave set SaveNum = {0},SaveAddNum = {0}-SaveNum,SaveAddTime = getdate(),GoodsName = '{2}' where GoodsID = {1}&quot;, saveNum, goodsID, goodsName);<br>
try<br>
{<br>
conn.Open();<br>
cmd.ExecuteNonQuery();<br>
flag = 1;<br>
}<br>
catch (Exception ex)<br>
{<br>
throw (ex);<br>
}<br>
finally<br>
{<br>
cmd.Dispose();<br>
conn.Close();<br>
}<br>
return flag;<br>
}</p>
<p><a href="#00">&lt;&lt;返回目录</a></p>
<p class="title02"><a id="04" name="04"></a>编写所有库存商品页面GoodsSaveAll.aspx的程序 
<p>1.创建库存预警商品页面GoodsSaveAll.aspx,在页面上插入2个Panel控件,一个是库存预警商品列表显示(PalAllGoodsSaveAll),一个是库存预警商品数量修改(PalOneGoodsSaveAll),先显示PalAllGoodsSaveAll,隐藏PalOneGoodsSaveAll。</p>
<p><img src="images/8-3-1.JPG" width="641" height="340"><br>
<img src="images/8-3-2.JPG" width="640" height="169"></p>
<p>这个页面和前一个页面基本相同,区别是该页面的GridView中要显示的全部商品的库存信息,所以数据源的SQL语句有所不同。</p>
<p class="code">select   d.SaveNum,d.SaveAddNum,d.SaveTime,d.SaveAddTime,c.GoodsID,c.GoodsName,a.TypeName,b.BorderName   from GoodsType a,GoodsBorder b,GoodsInfo c ,GoodsSave d where a.TypeID =   c.TypeID and b.BorderID = c.BorderID and c.GoodsID = d.GoodsID order by   d.SaveNum,a.TypeID desc,b.BorderID desc,c.GoodsOrder desc</p>
<p>2.在GoodsSaveAll.aspx.cs中引用命名空间</p>
<p class="code">using Kingvcn.WShop;</p>
<p>定义调用对象</p>
<p class="code">GoodsSave GoodsSave = new GoodsSave();<br>
protected string typename = ConfigurationManager.AppSettings[&quot;typename&quot;];<br>
int allNum = 0;<br>
int goodsID = 0;</p>
<p>在Page_Load()事件中加入程序,先写上登录管理员的Session判定程序,然后调用库存类文件GoodsSave.cs提取库存预警数字的方法GetGoodsSaveInfoNum()获取商品满库数量存放在定义好的变量allNum中,然后判断是否有GoodsID传入,有的话将其值存放在变量goodsID中,并调用GetGoodsSaveAllByID()方法,隐藏PalAllGoodsSaveAll   Panel控件,显示PalOneGoodsSaveAll Panel控件。如果没有GoodsID传入就显示PalAllGoodsSaveAll   Panel控件,隐藏PalOneGoodsSaveAll Panel控件。</p>
<p class="code">protected void Page_Load(object sender, EventArgs e)<br>
{<br>
if((Session[&quot;ManagerID&quot;] == null)||(Session[&quot;ManagerID&quot;].ToString() == &quot;&quot;))<br>
{<br>
JScript.GotoParentWindow(&quot;Index.aspx&quot;);<br>
}<br>
else<br>
{<br>
allNum = GoodsSave.GetGoodsSaveInfoNum(1);<br>
if((Request[&quot;GoodsID&quot;] != null) &amp;&amp; (Request[&quot;GoodsID&quot;].ToString() != &quot;&quot;))<br>
{<br>
goodsID = int.Parse(Request[&quot;GoodsID&quot;].ToString());<br>
if (!IsPostBack)<br>
{<br>
GetGoodsSaveAllByID(goodsID);<br>
PalAllGoodsSaveAll.Visible = false;<br>
PalOneGoodsSaveAll.Visible = true;<br>
}<br>
}<br>
else<br>
{<br>
if (!IsPostBack)<br>
{<br>
PalAllGoodsSaveAll.Visible = true;<br>
PalOneGoodsSaveAll.Visible = false;<br>
}<br>
}<br>
}<br>
}</p>
<p>3.在GoodsSaveAll.aspx.cs中加入提取库存商品信息的方法,调用库存类文件GoodsSave.cs上前面写的提取某个库存预警商品信息的方法GetGoodsSaveAlertByID(),该方法的输入参数是商品的goodsID,完成库存商品信息的提取。并把库存商品的信息字段赋值给相应的TextBox控件。</p>
<p class="code">/// &lt;summary&gt;<br>
/// 提取库存商品信息<br>
/// &lt;/summary&gt;<br>
/// &lt;param name=&quot;goodsID&quot;&gt;商品信息ID&lt;/param&gt;<br>
private void GetGoodsSaveAllByID(int goodsID)<br>
{<br>
if (goodsID &gt; 0)<br>
{<br>
DataTable myDtb = new DataTable();<br>
myDtb = GoodsSave.GetGoodsSaveAlertByID(goodsID);<br>
if (myDtb.DefaultView.Count &gt; 0)<br>
{<br>
GoodsID.Text = myDtb.DefaultView[0][&quot;GoodsID&quot;].ToString();<br>
GoodsName.Text = myDtb.DefaultView[0][&quot;GoodsName&quot;].ToString();<br>
SaveNum.Text = myDtb.DefaultView[0][&quot;SaveNum&quot;].ToString();<br>
SaveAddNum.Text = myDtb.DefaultView[0][&quot;SaveAddNum&quot;].ToString();<br>
SaveTime.Text = myDtb.DefaultView[0][&quot;SaveTime&quot;].ToString();<br>
SaveAddTime.Text = myDtb.DefaultView[0][&quot;SaveAddTime&quot;].ToString();<br>
}<br>
else<br>
{<br>
JScript.Alert(&quot;没有找到该商品的库存信息!&quot;);<br>
JScript.GotoParentWindow(&quot;GoodsSaveAlert.aspx&quot;);<br>
}<br>
}<br>
}<BR>
</p>
<p>4.在库存商品的数量修改的Click事件IsAdd_Click()中加入所有字段的校验程序,通过校验就要在数据库中写入数据,然后调用库存类文件GoodsSave.cs上前面写的库存商品的数量修改的方法ModifyGoodsSaveAlert(),把所有修改字段作为参数输入给方法,完成库存预警商品的数据库写入功能,修改成功后重新跳转到所有库存商品页面GoodsSaveAll.aspx。</p>
<p class="code">/// &lt;summary&gt;<br>
/// 修改所有库存商品的数量<br>
/// &lt;/summary&gt;<br>
protected void IsAdd_Click(object sender, EventArgs e)<br>
{<br>
if (SaveNum.Text.Trim().Length == 0)<br>
{<br>
JScript.Alert(&quot;商品库存数量不能为空!&quot;);<br>
}<br>
else<br>
{<br>
int goodsID = 0;<br>
if (StringUtil.IsNumeric(GoodsID.Text.Trim()))<br>
{<br>
goodsID = int.Parse(GoodsID.Text.Trim().ToString());<br>
}<br>
int saveNum = 0;<br>
if (StringUtil.IsNumeric(SaveNum.Text.Trim()))<br>
{<br>
saveNum = int.Parse(SaveNum.Text.Trim().ToString());<br>
}<br>
string goodsName = GoodsName.Text.ToString();<br>
int modifyOk = GoodsSave.ModifyGoodsSaveAlert(goodsID, saveNum, goodsName);<br>
if (modifyOk == 1)<br>
{<br>
JScript.Alert(&quot;修改成功,欢迎使用!&quot;);<br>
JScript.JavaScriptLocationHref(&quot;GoodsSaveAll.aspx&quot;);<br>
}<br>
else<br>
{<br>
JScript.Alert(&quot;修改失败,请稍后再来!&quot;);<br>
return;<br>
}<br>
}<br>
}</p>
<p><a href="#00">&lt;&lt;返回目录</a></p>



	  <p class="title02"><a name="05" id="05"></a>源代码</p>
	  <a href="code/WShop.sql.txt">WShop.sql</a><br>
<a href="code/GoodsSave.cs.txt">GoodsSave.cs</a><br>
<a href="code/GoodsSaveInfo.aspx.txt">GoodsSaveInfo.aspx</a><br>
<a href="code/GoodsSaveInfo.aspx.cs.txt">GoodsSaveInfo.aspx.cs</a><br>
<a href="code/GoodsSaveAlert.aspx.txt">GoodsSaveAlert.aspx</a><br>
<a href="code/GoodsSaveAlert.aspx.cs.txt">GoodsSaveAlert.aspx.cs</a><br>
<a href="code/GoodsSaveAll.aspx.txt">GoodsSaveAll.aspx</a><br>
<a href="code/GoodsSaveAll.aspx.cs.txt">GoodsSaveAll.aspx.cs</a>
<p><a href="downloads/Step_Eight.rar">第八章源程序:Step_Eight.rar</a></p>



</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -