基本信息
源码名称:超市信息管理(asp.net)
源码大小:0.94M
文件格式:.zip
开发语言:C#
更新时间:2015-09-09
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 4 元 
   源码介绍


using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using FreeTextBoxControls;
using FreeTextBoxControls.Design;
using System.Text;
using System.IO;

namespace person.admin
{

    /// <summary>
    /// add_tzs 的摘要说明。
    /// </summary>
    /// 
    public partial class add_tzs : System.Web.UI.Page
    {

        public string newid;
        public DataRow dr;
        public string sjs;

        //留言
        public string sjslog;

        //修改纪录
        protected void Page_Load(object sender, System.EventArgs e)
        {

            if (!this.IsPostBack)
            {
                SqlConnection con = DB.createConn();
                newid = Request.Params["id"];
                Session["newid"] = newid;
                string sql = "SELECT 商品名称, 所属大类, id FROM 商品 order by 所属大类";
                SqlDataAdapter sda1 = new SqlDataAdapter(sql, con);
                DataSet ds1 = new DataSet();
                sda1.Fill(ds1, "商品");

                foreach (DataRow row in ds1.Tables[0].Rows)
                {
                    this.DP1.Items.Add((row["id"].ToString()   "-"   row["所属大类"].ToString()   "-"   row["商品名称"].ToString()));
                }
                cmdFk.Visible = false;

                if (newid != null)
                {
                    con.Open();
                    SqlDataAdapter sda = new SqlDataAdapter("select * from view1 where id="   newid, con);
                    DataSet ds = new DataSet();
                    sda.Fill(ds, "view1");
                    dr = ds.Tables["view1"].Rows[0];
                    txtFen.Text = dr["count"].ToString();
                    this.dpName.Items.Add((dr["UserID"].ToString()   "-"   dr["UserName"].ToString()));

                    for (int i = 0; i < DP1.Items.Count; i  )
                    {

                        if ((string)DP1.Items[i].Text.Split('-')[0] == (dr["subjectid"].ToString()))
                        {
                            DP1.Items[i].Selected = true;
                        }
                    }
                    this.btnew.Text = "输入退货后的购买数量!";
                    Label1.Text = "完成用户退货商品的动作,修改后,为用户重新的购买数量,多余的商品将被退回!";
                    cmdFk.Visible = true;
                }

                else
                {
                    sql = "SELECT UserID, UserName FROM tblUser  ";
                    SqlDataAdapter sda2 = new SqlDataAdapter(sql, con);
                    DataSet ds2 = new DataSet();
                    sda2.Fill(ds2, "tblUser");

                    foreach (DataRow row in ds2.Tables[0].Rows)
                    {
                        this.dpName.Items.Add((row["UserID"].ToString()   "-"   row["UserName"].ToString()));
                    }
                }
            }
        }

        #region Web 窗体设计器生成的代码

        override protected void OnInit(EventArgs e)
        {
            //
            // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
            //
            InitializeComponent();
            base.OnInit(e);
        }

        /// <summary>
        /// 设计器支持所需的方法 - 不要使用代码编辑器修改
        /// 此方法的内容。
        /// </summary>
        private void InitializeComponent()
        {
        }

        #endregion

        protected void btnew_Click(object sender, System.EventArgs e)
        {
            this.addnew();
        }

        private void addnew()
        {
            SqlConnection con = DB.createConn();
            con.Open();
            string sql;
            string SubjectID;
            string[] UserID = dpName.Text.Split('-');
            string Fen = txtFen.Text;
            string[] zw = this.DP1.Text.Split('-');
            SubjectID = zw[0];

            if (CheckCount(SubjectID, txtFen.Text) != true)
            {
                Response.End();
            }

            if (btnew.Text != "输入退货后的购买数量!")
            {
                sql = "Insert into tblDeail (SubjectID,UserID,Count) values ( '"   SubjectID   "', '"   UserID[0]   "', '"   txtFen.Text   "')";
                ExeSql(sql);//执行插入动作
                ExeSql("Update 商品 set 库存数=库存数-"   txtFen.Text   "  where id="   SubjectID);
                //库存减少对应的 数量
                string sRate = GetSql("select 积分率 from tbluser  where userid="   UserID[0], "tbluser", "积分率");
                //获得用户对应的积分比率
                string sPrice = GetSql("select 价格 from 商品 where id="   SubjectID, "商品", "价格");
                //获得商品的价格
                ExeSql("Update tbluser set 积分=积分 "   Convert.ToSingle(txtFen.Text) * Convert.ToSingle(sPrice) * Convert.ToSingle(sRate)   "  where userid="   UserID[0]);
                //用户加入对应积分
            }

            else
            {
                sql = "Update tblDeail set SubjectID='"   SubjectID  
 "',UserID='"   UserID[0]   "',Count='"   txtFen.Text  
 "' where id="   Session["newid"];
                Label1.Text = "完成用户退货商品的动作,修改后,为用户重新的购买数量,多余的商品将被退回!";
                string sCount = GetSql("select Count from tblDeail    where id="   Session["newid"], "tblDeail", "Count");
                //获得更新前的数量
                string sPrice = GetSql("select 价格 from 商品 where id="   SubjectID, "商品", "价格");
                //获得商品的价格
                ExeSql(sql);
                string 积分 = GetSql("select 积分 from tbluser where userid="   UserID[0], "tbluser", "积分");
                //获得更前的积分
                sCount = Convert.ToString(Convert.ToInt16(txtFen.Text) - Convert.ToInt16(sCount));

                if (Convert.ToInt16(sCount) < 0)
                {//小于0时 为退库
                    ExeSql("Update 商品 set 库存数=库存数-("   sCount   ")where id="   SubjectID);
                    ExeSql("Insert into tblFeedback (SubjectID,UserID,Count) values ( '"   SubjectID   "', '"   UserID[0]   "', -("   sCount   "))");
                    //更新退货表
                }

                else
                {
                    ExeSql("Update 商品 set 库存数=库存数-"   Convert.ToInt16(sCount)   "  where id="   SubjectID);
                }
                //库存减少对应的 数量
                string sRate = GetSql("select 积分率 from tbluser  where userid="   UserID[0], "tbluser", "积分率");
                //获得用户对应的积分比率
                ExeSql("Update tbluser set 积分=积分 ("   (Convert.ToSingle(sCount) * Convert.ToSingle(sPrice) * Convert.ToSingle(sRate))   ")  where userid="   UserID[0]);
                //新的积减去 原来的
            }
            Response.Write("<script>alert('购买成功!');location.href='editnews.aspx';</script>");
        }

        protected void cmdFk_Click(object sender, EventArgs e)
        {
            SqlConnection con = DB.createConn();
            con.Open();
            string sql;
            string SubjectID;
            string[] UserID = dpName.Text.Split('-');
            string Fen = txtFen.Text;
            string[] zw = this.DP1.Text.Split('-');
            SubjectID = zw[0];

            if (CheckCount(SubjectID, txtFen.Text) != true)
            {
                Response.End();
            }
            sql = "Update tblDeail set SubjectID='"   SubjectID  
"',UserID='"   UserID[0]   "',Count='"   txtFen.Text  
"' where id="   Session["newid"];
            string sCount = GetSql("select Count from tblDeail    where id="   Session["newid"], "tblDeail", "Count");
            //获得更新前的数量
            string sPrice = GetSql("select 价格 from 商品 where id="   SubjectID, "商品", "价格");
            //获得商品的价格
            ExeSql(sql);
            string 积分 = GetSql("select 积分 from tbluser where userid="   UserID[0], "tbluser", "积分");
            //获得更前的积分              
            ExeSql("Update 商品 set 库存数=库存数 "   sCount   " where id="   SubjectID);
            //库存  数量
            ExeSql("Insert into tblFeedback (SubjectID,UserID,Count) values ( '"   SubjectID   "', '"   UserID[0]   "', '"   sCount   "')");
            //更新退货表
            sCount = "-"   sCount;
            string sRate = GetSql("select 积分率 from tbluser  where userid="   UserID[0], "tbluser", "积分率");
            //获得用户对应的积分比率
            ExeSql("Update tbluser set 积分=积分 ("   (Convert.ToSingle(sCount) * Convert.ToSingle(sPrice) * Convert.ToSingle(sRate))   ")  where userid="   UserID[0]);
            //新的积减去 原来的
            ExeSql("Delete from tblDeail  where id="   Session["newid"]);
            //删除购买的记录
            Response.Write("<script>alert('退货成功!');location.href='editnews.aspx';</script>");
        }

        private bool CheckCount(string SubjectId, string iCount)
        {//判断对应的产品数目是否小于库存
            SqlConnection con = DB.createConn();
            con.Open();
            SqlDataAdapter sda = new SqlDataAdapter("SELECT 库存数  FROM 商品 where id="   SubjectId, con);
            DataSet ds = new DataSet();
            sda.Fill(ds, "view1");
            dr = ds.Tables["view1"].Rows[0];

            if (Convert.ToInt16(dr["库存数"].ToString()) < Convert.ToInt16(iCount))
            {
                Response.Write("<script>alert('购买 失败! 库存只有"   dr["库存数"].ToString()   "');history.go(-1);</script>");
                return false;
            }

            else
            { return true; }
        }

        //----------------------------------执行SQL语句
        private void ExeSql(string str1)
        {
            SqlConnection con = DB.createConn();
            con.Open();
            SqlCommand cmd = new SqlCommand(str1, con);
            cmd.ExecuteNonQuery();
        }

        //----------------------------------执行SQL语句   返回对应的第一个参数
        private string GetSql(string strSql, string strTableName, string strField)
        {
            SqlConnection con = DB.createConn();
            DataRow dr;
            con.Open();
            SqlDataAdapter sda = new SqlDataAdapter(strSql, con);
            DataSet ds = new DataSet();
            sda.Fill(ds, strTableName);
            dr = ds.Tables[strTableName].Rows[0];
            return dr[strField].ToString();
        }
    }
}