📄 reckoning.aspx.cs
字号:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using LoginCheckClass; //(类)验证用户是否登录
/// <summary>
/// 2008年7月29日 至 7月30日 谈鸿如 编写
/// 2008年7月30日 测试
/// 用来实现 商品进货结账、进货退货结账、商品销售结账、销售退货结账四项功能
/// </summary>
public partial class 往来管理_Default : System.Web.UI.Page
{
//页面加载时运行
protected void Page_Load(object sender, EventArgs e)
{
//调用LoginCheck类的check方法来判断用户是否登录
LoginCheck a = new LoginCheck();
a.check();
/*通过type的值判断用户选择的是商品进货结账、进货退货结账、商品销售结账、销售退货结账中的哪一个
type为 1 时代表商品进货结账
type为 2 时代表进货退货结账
type为 3 时代表商品销售结账
type为 4 时代表销售退货结账
对于不同的type值,在SqlDataSource1中绑定不同的Sql语句
*/
/*在gridview中绑定SqlDataSource1为数据源
其中结款类型来自tb_Stock表中的Type字段
商品名称通过tb_stock表中CommodityID字段连接到tb_commodity表并读取的CommodityName字段
供应商通过tb_stock表中CompanyID字段连接到tb_company表并读取CompanyName字段
未付是通过tb_stock表中的Nopayment字段减去tb_reckoning表中同一商品的Settlement字段总和得到
结款次数是通过该商品在tb_reckoning表中的出现次数加一得到的
单据编号则调用数据库中CreateSerailNumber函数,单据编号前8位为事件,后10位为在tb_stock表中的id值*/
if (Request["type"] == "1")
{
Label2.Text = "往来管理→商品进货结账";
SqlDataSource1.SelectCommand = "select dbo.tb_Stock.id,dbo.tb_Stock.type,dbo.tb_Commodity.CommodityName,dbo.tb_Company.CompanyName,(dbo.tb_Stock.Nopayment-(select isnull(sum(dbo.tb_Reckoning.Settlement),0) from dbo.tb_Reckoning where StockID=dbo.tb_Stock.id)),(select count(dbo.tb_Reckoning.StockID)+1 from dbo.tb_Reckoning where stockid=dbo.tb_stock.id) ,dbo.CreateSerailNumber(dbo.tb_Stock.id,dbo.tb_Stock.StockDate) from dbo.tb_Stock inner join dbo.tb_Commodity on dbo.tb_Stock.Commodityid=dbo.tb_Commodity.id inner join dbo.tb_Company on dbo.tb_Commodity.Companyid=dbo.tb_Company.id where dbo.tb_Stock.type='进货'";
}
if (Request["type"] == "2")
{
Label2.Text = "往来管理→进货退货结账";
SqlDataSource1.SelectCommand = "select dbo.tb_Stock.id,dbo.tb_Stock.type,dbo.tb_Commodity.CommodityName,dbo.tb_Company.CompanyName,(dbo.tb_Stock.Nopayment-(select isnull(sum(dbo.tb_Reckoning.Settlement),0) from dbo.tb_Reckoning where StockID=dbo.tb_Stock.id)),(select count(dbo.tb_Reckoning.StockID)+1 from dbo.tb_Reckoning where stockid=dbo.tb_stock.id) ,dbo.CreateSerailNumber(dbo.tb_Stock.id,dbo.tb_Stock.StockDate) from dbo.tb_Stock inner join dbo.tb_Commodity on dbo.tb_Stock.Commodityid=dbo.tb_Commodity.id inner join dbo.tb_Company on dbo.tb_Commodity.Companyid=dbo.tb_Company.id where dbo.tb_Stock.type='退货'";
}
if (Request["type"] == "3")
{
Label2.Text = "往来管理→商品销售结账";
SqlDataSource1.SelectCommand = "select dbo.tb_Stock.id,dbo.tb_Stock.type,dbo.tb_Commodity.CommodityName,dbo.tb_Company.CompanyName,(dbo.tb_Stock.Nopayment-(select isnull(sum(dbo.tb_Reckoning.Settlement),0) from dbo.tb_Reckoning where StockID=dbo.tb_Stock.id)),(select count(dbo.tb_Reckoning.StockID)+1 from dbo.tb_Reckoning where stockid=dbo.tb_stock.id) ,dbo.CreateSerailNumber(dbo.tb_Stock.id,dbo.tb_Stock.StockDate) from dbo.tb_Stock inner join dbo.tb_Commodity on dbo.tb_Stock.Commodityid=dbo.tb_Commodity.id inner join dbo.tb_Company on dbo.tb_Commodity.Companyid=dbo.tb_Company.id where dbo.tb_Stock.type='销售信息'";
}
if (Request["type"] == "4")
{
Label2.Text = "往来管理→销售退货结账";
SqlDataSource1.SelectCommand = "select dbo.tb_Stock.id,dbo.tb_Stock.type,dbo.tb_Commodity.CommodityName,dbo.tb_Company.CompanyName,(dbo.tb_Stock.Nopayment-(select isnull(sum(dbo.tb_Reckoning.Settlement),0) from dbo.tb_Reckoning where StockID=dbo.tb_Stock.id)),(select count(dbo.tb_Reckoning.StockID)+1 from dbo.tb_Reckoning where stockid=dbo.tb_stock.id) ,dbo.CreateSerailNumber(dbo.tb_Stock.id,dbo.tb_Stock.StockDate) from dbo.tb_Stock inner join dbo.tb_Commodity on dbo.tb_Stock.Commodityid=dbo.tb_Commodity.id inner join dbo.tb_Company on dbo.tb_Commodity.Companyid=dbo.tb_Company.id where dbo.tb_Stock.type='销售退货'";
}
}
protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
//将GridView1中选中的行,在tb_stock表中的id字段值保存在名为ReckoningID的Session中,以供Reckoning_open页面调用
int id = (int)GridView1.DataKeys[e.NewSelectedIndex].Value;
Session["ReckoningID"] = id;
}
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
//点击GridView1中详细信息后,弹出固定大小的Reckoning_open页面,并将本页面后退一步
Response.Write("<script>window.open('Reckoning_open.aspx','','height=370, width=400');history.go(-1);</script>");
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//当gridview中的第3列(未付金额)等于0时,未付金额显示为红色“已结款”,并将结款按钮置为不可用
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[3].Text == "0")
{
e.Row.Cells[3].Text = "<font color='red'>已结款</font>";
e.Row.Cells[6].Enabled = false;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -