基于C#+SqlServer+CS架构实现的图书信息管理系统,图书信息录入系统,系统采用多层C/S软件架构,采用C#编程语言开发技术实现界面窗口版本的图书管理系统程序界面,实现CS架构窗口事件监听,完成图书信息创建,编辑,删除等。
一、程序设计
本次基于C#+SqlServer+CS架构实现的图书信息管理系统,图书信息录入系统,主要内容涉及:
主要功能模块:图书管理、图书信息新增、图书信息在线编辑、图书信息删除,系统管理,分析统计等等
主要包含技术:C#编程语言,MFC,C#多线程,窗口事件监听,数据库,SQLSERVER,GUI
主要包含算法:其他等
二、效果实现
图书管理
读者管理
其他效果省略
三、核心代码
1.图书借阅
本系统借阅图书信息,主要采用窗口监听用户操作动作,记录用户输入的图书信息进行校验,校验通过后存入数据库等。
//借书 private void btnBorrowBook_Click(object sender, EventArgs e) { int rdID,rdType,bkID; int CanLendQty,CanLendDay,rdBorrowQty; string rdStatus,bkStatus; Borrow borrow = new Borrow(); Reader reader = new Reader(); DataRow dr=null; DataRow ds = null;
<span class="token keyword">for</span><span class="token punctuation">(</span><span class="token keyword">int</span> i<span class="token operator">=</span><span class="token number">0</span><span class="token punctuation">;</span>i<span class="token operator"><</span><span class="token class-name"><span class="token namespace">dgvBook<span class="token punctuation">.</span></span>SelectedRows<span class="token punctuation">.</span>Count</span><span class="token punctuation">;</span>i<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> dr <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dgvBook<span class="token punctuation">.</span></span>SelectedRows</span><span class="token punctuation">[</span>i<span class="token punctuation">]</span><span class="token punctuation">.</span>DataBoundItem as <span class="token class-name">DataRowView</span><span class="token punctuation">)</span><span class="token punctuation">.</span>Row<span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token keyword">for</span> <span class="token punctuation">(</span><span class="token keyword">int</span> j <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> j <span class="token operator"><</span> <span class="token class-name"><span class="token namespace">dgvReader<span class="token punctuation">.</span></span>SelectedRows<span class="token punctuation">.</span>Count</span><span class="token punctuation">;</span> j<span class="token operator">++</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> ds <span class="token operator">=</span> <span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dgvReader<span class="token punctuation">.</span></span>SelectedRows</span><span class="token punctuation">[</span>j<span class="token punctuation">]</span><span class="token punctuation">.</span>DataBoundItem as <span class="token class-name">DataRowView</span><span class="token punctuation">)</span><span class="token punctuation">.</span>Row<span class="token punctuation">;</span> <span class="token punctuation">}</span> rdID <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToInt32</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">txtrdID<span class="token punctuation">.</span></span>Text</span><span class="token punctuation">)</span><span class="token punctuation">;</span> rdType <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToInt32</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">ds<span class="token punctuation">.</span></span>ItemArray</span><span class="token punctuation">[</span><span class="token number">3</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> dt <span class="token operator">=</span> <span class="token class-name"><span class="token namespace">borrowBLL<span class="token punctuation">.</span></span>GetReaderType</span><span class="token punctuation">(</span>rdType<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name">CanLendQty</span><span class="token operator">=</span><span class="token class-name">Convert<span class="token punctuation">.</span>ToInt32</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dt<span class="token punctuation">.</span></span>Rows</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name">CanLendDay</span> <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToInt32</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dt<span class="token punctuation">.</span></span>Rows</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> dm <span class="token operator">=</span> <span class="token class-name"><span class="token namespace">borrowBLL<span class="token punctuation">.</span></span>GetrdStatus</span><span class="token punctuation">(</span>rdID<span class="token punctuation">)</span><span class="token punctuation">;</span> rdStatus <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToString</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dm<span class="token punctuation">.</span></span>Rows</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> rdBorrowQty<span class="token operator">=</span><span class="token class-name">Convert<span class="token punctuation">.</span>ToInt32</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dm<span class="token punctuation">.</span></span>Rows</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> bkStatus <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToString</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dr<span class="token punctuation">.</span></span>ItemArray</span><span class="token punctuation">[</span><span class="token number">15</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">if</span> <span class="token punctuation">(</span>rdStatus <span class="token operator">!=</span> <span class="token string">"有效"</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token class-name">MessageBox<span class="token punctuation">.</span>Show</span><span class="token punctuation">(</span><span class="token string">"借书证无效,无法借书,无法借书!"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">if</span> <span class="token punctuation">(</span>bkStatus <span class="token operator">!=</span> <span class="token string">"在馆"</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token class-name">MessageBox<span class="token punctuation">.</span>Show</span><span class="token punctuation">(</span><span class="token string">"对不起,该书已不在馆!!"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{<!-- --></span> <span class="token keyword">if</span> <span class="token punctuation">(</span>rdBorrowQty <span class="token operator">>=</span> <span class="token class-name">CanLendQty</span><span class="token punctuation">)</span> <span class="token punctuation">{<!-- --></span> <span class="token class-name">MessageBox<span class="token punctuation">.</span>Show</span><span class="token punctuation">(</span><span class="token string">"已借书数超出最大可借书量,无法借书!"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{<!-- --></span> borrow<span class="token punctuation">.</span>rdID <span class="token operator">=</span> rdID<span class="token punctuation">;</span> borrow<span class="token punctuation">.</span>bkID <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToInt32</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">dr<span class="token punctuation">.</span></span>ItemArray</span><span class="token punctuation">[</span><span class="token number">0</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdContinueTimes</span> <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdDateOut</span> <span class="token operator">=</span> <span class="token class-name">DateTime<span class="token punctuation">.</span>Now</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdDateRetPlan</span> <span class="token operator">=</span> <span class="token class-name">DateTime<span class="token punctuation">.</span>Now<span class="token punctuation">.</span>AddDays</span><span class="token punctuation">(</span><span class="token class-name">CanLendDay</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdDateRetAct</span> <span class="token operator">=</span> <span class="token class-name">DateTime<span class="token punctuation">.</span>Now</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdOverDay</span> <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdOverMoney</span> <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IdPunishMoney</span> <span class="token operator">=</span> <span class="token number">0</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>IsHasReturn</span> <span class="token operator">=</span> <span class="token boolean">false</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>OperatorLend</span> <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToString</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">ds<span class="token punctuation">.</span></span>ItemArray</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrow<span class="token punctuation">.</span></span>OperatorRet</span> <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToString</span><span class="token punctuation">(</span><span class="token class-name"><span class="token namespace">ds<span class="token punctuation">.</span></span>ItemArray</span><span class="token punctuation">[</span><span class="token number">1</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrowBLL<span class="token punctuation">.</span></span>Insert</span><span class="token punctuation">(</span>borrow<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">txtbkName<span class="token punctuation">.</span></span>Text</span> <span class="token operator">=</span> <span class="token class-name">Convert<span class="token punctuation">.</span>ToString</span><span class="token punctuation">(</span>borrow<span class="token punctuation">.</span>rdID<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrowBLL<span class="token punctuation">.</span></span>UpdateBook</span><span class="token punctuation">(</span>borrow<span class="token punctuation">)</span><span class="token punctuation">;</span> reader<span class="token punctuation">.</span>rdID <span class="token operator">=</span> rdID<span class="token punctuation">;</span> <span class="token class-name"><span class="token namespace">borrowBLL<span class="token punctuation">.</span></span>UpdateBorrowNum</span><span class="token punctuation">(</span>reader<span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token class-name">MessageBox<span class="token punctuation">.</span>Show</span><span class="token punctuation">(</span><span class="token string">"借书成功!!!"</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span>