/// <summary>
    /// 数据保存
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnSave_Click(object sender, EventArgs e)
    {
        LTallyNoPassReasonData model = new LTallyNoPassReasonData();
        LTallyNoPassReasonBB tallyNoPassReasonBB = new LTallyNoPassReasonBB();
        try
        {
            if (this.State == "1")
            {
                this.SetModel(ref model);
                model.isrtDt = DateTime.Now.ToString();
                model.isrtEmpId = this.currentUser.empId;
                this.IdValue = tallyNoPassReasonBB.AddRecord(model);
            }
            else if (this.State == "2")
            {
                model = tallyNoPassReasonBB.GetModel(this.IdValue);
                this.SetModel(ref model);
                model.updtDt = DateTime.Now.ToString();
                model.updtEmpId = this.currentUser.empId;
                tallyNoPassReasonBB.ModifyRecord(model);
            }
        }
        catch (Exception ex)
        {
            this.ClientScript.RegisterStartupScript(this.GetType(), "ShowErr", "ShowErr(\"" + Server.UrlEncode(ex.Message) + "\",3);", true);
            return;
        }
        finally
        {
            tallyNoPassReasonBB.Dispose();
        }

        Response.Redirect("LTallyNoPassReasonList.aspx?&itemno=" + this.itemNo + "&pTypeNo=main", false);
    }
        /// <summary>
        /// 增加一条数据
        /// </summary>
        /// <param name="model">model</param>
        public int AddRecord(LTallyNoPassReasonData model)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("set nocount on; ");
            strSql.Append("insert into LTallyNoPassReason(");
            strSql.Append(@"noPassReasonNo,noPassReasonNm,isDel,isrtEmpId,isrtDt,updtEmpId,updtDt)");
            strSql.Append(" values (");
            strSql.Append(@"@noPassReasonNo,@noPassReasonNm,@isDel,@isrtEmpId,@isrtDt,@updtEmpId,@updtDt)");
            strSql.Append("; select @@identity; set nocount off; ");
            SqlParameter[] parameters = {
                    new SqlParameter("@noPassReasonNo", SqlDbType.VarChar,20),
                    new SqlParameter("@noPassReasonNm", SqlDbType.NVarChar,50),
                    new SqlParameter("@isDel", SqlDbType.Bit),
                    new SqlParameter("@isrtEmpId", SqlDbType.Int),
                    new SqlParameter("@isrtDt", SqlDbType.DateTime),
                    new SqlParameter("@updtEmpId", SqlDbType.Int),
                    new SqlParameter("@updtDt", SqlDbType.DateTime)
                };
            parameters[0].Value = model.noPassReasonNo;
            parameters[1].Value = model.noPassReasonNm;
            parameters[2].Value = model.isDel;
            parameters[3].Value = model.isrtEmpId;
            parameters[4].Value = model.isrtDt == string.Empty ? null : model.isrtDt;
            parameters[5].Value = model.updtEmpId;
            parameters[6].Value = model.updtDt == string.Empty ? null : model.updtDt;

            int id = 0;
            try
            {
                object ret = SqlHelper.ExecuteScalar(this.connection, this.transaction, CommandType.Text, strSql.ToString(), parameters);

                if (ret != null && ret != DBNull.Value)
                {
                    id = Convert.ToInt32(ret);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return id;
        }
        /// <summary>
        /// 更新一条数据
        /// </summary>
        /// <param name="model">model</param>
        public bool ModifyRecord(LTallyNoPassReasonData model)
        {
            bool ret = false;
            StringBuilder strSql = new StringBuilder();
            strSql.Append("update LTallyNoPassReason set ");
            strSql.Append("noPassReasonNo=@noPassReasonNo,");
            strSql.Append("noPassReasonNm=@noPassReasonNm,");
            strSql.Append("isDel=@isDel,");
            strSql.Append("isrtEmpId=@isrtEmpId,");
            strSql.Append("isrtDt=@isrtDt,");
            strSql.Append("updtEmpId=@updtEmpId,");
            strSql.Append("updtDt=@updtDt");
            strSql.Append(" where id = @id ");
            SqlParameter[] parameters = {
                    new SqlParameter("@id", SqlDbType.Int),
                    new SqlParameter("@noPassReasonNo", SqlDbType.VarChar,20),
                    new SqlParameter("@noPassReasonNm", SqlDbType.NVarChar,50),
                    new SqlParameter("@isDel", SqlDbType.Bit),
                    new SqlParameter("@isrtEmpId", SqlDbType.Int),
                    new SqlParameter("@isrtDt", SqlDbType.DateTime),
                    new SqlParameter("@updtEmpId", SqlDbType.Int),
                    new SqlParameter("@updtDt", SqlDbType.DateTime)
                };
            parameters[0].Value = model.id;
            parameters[1].Value = model.noPassReasonNo;
            parameters[2].Value = model.noPassReasonNm;
            parameters[3].Value = model.isDel;
            parameters[4].Value = model.isrtEmpId;
            parameters[5].Value = model.isrtDt == string.Empty ? null : model.isrtDt;
            parameters[6].Value = model.updtEmpId;
            parameters[7].Value = model.updtDt == string.Empty ? null : model.updtDt;

            try
            {
                SqlHelper.ExecuteNonQuery(this.connection, this.transaction, CommandType.Text, strSql.ToString(), parameters);
                ret = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return ret;
        }
        /// <summary>
        /// 得到一个model
        /// </summary>
        /// <param name="id">主键值</param>
        /// <returns>model</returns>
        public LTallyNoPassReasonData GetModel(int id)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append(@"select id,noPassReasonNo,noPassReasonNm,isDel,isrtEmpId,isrtDt,updtEmpId,updtDt from LTallyNoPassReason");
            strSql.Append(" where id = @id ");
            SqlParameter[] parameters = {
                    new SqlParameter("@id", SqlDbType.Int)
                };
            parameters[0].Value = id;

            LTallyNoPassReasonData model = new LTallyNoPassReasonData();
            DataSet ds = SqlHelper.ExecuteDataset(this.connection, this.transaction, CommandType.Text, strSql.ToString(), parameters);

            if (ds.Tables[0].Rows.Count > 0)
            {
                DataRow row = ds.Tables[0].Rows[0];
                if (row["id"] != DBNull.Value)
                {
                    model.id = Convert.ToInt32(row["id"]);
                }
                if (row["noPassReasonNo"] != DBNull.Value)
                {
                    model.noPassReasonNo = Convert.ToString(row["noPassReasonNo"]);
                }
                if (row["noPassReasonNm"] != DBNull.Value)
                {
                    model.noPassReasonNm = Convert.ToString(row["noPassReasonNm"]);
                }
                if (row["isDel"] != DBNull.Value)
                {
                    model.isDel = Convert.ToBoolean(row["isDel"]);
                }
                if (row["isrtEmpId"] != DBNull.Value)
                {
                    model.isrtEmpId = Convert.ToInt32(row["isrtEmpId"]);
                }
                if (row["isrtDt"] != DBNull.Value)
                {
                    model.isrtDt = Convert.ToString(row["isrtDt"]);
                }
                if (row["updtEmpId"] != DBNull.Value)
                {
                    model.updtEmpId = Convert.ToInt32(row["updtEmpId"]);
                }
                if (row["updtDt"] != DBNull.Value)
                {
                    model.updtDt = Convert.ToString(row["updtDt"]);
                }
                return model;
            }
            else
            {
                return null;
            }
        }
    /// <summary>
    /// 展示数据
    /// </summary>
    /// <param name="id">记录Id</param>
    private void ShowInfo(int id)
    {
        LTallyNoPassReasonBB tallyNoPassReasonBB = new LTallyNoPassReasonBB();
        LTallyNoPassReasonData model = new LTallyNoPassReasonData();
        try
        {
            model = tallyNoPassReasonBB.GetModel(id);

            this.tbNoPassReasonNm.Text = model.noPassReasonNm;
        }
        finally
        {
            tallyNoPassReasonBB.Dispose();
        }
    }
 /// <summary>
 /// 实体类赋值
 /// </summary>
 /// <param name="model">实体类实例</param>
 private void SetModel(ref LTallyNoPassReasonData model)
 {
     model.noPassReasonNm = this.tbNoPassReasonNm.Text;
 }
    /// <summary>
    /// 删除
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnDel_Click(object sender, EventArgs e)
    {
        bool retChecked = false;
        LTallyNoPassReasonBB tallyNoPassReasonBB = new LTallyNoPassReasonBB();

        try
        {
            //获取选中的数据Id
            foreach (GridViewRow gvrow in this.grid.Rows)
            {
                CheckBox chkId = (CheckBox)gvrow.FindControl("chkId");

                if (chkId.Checked == true)
                {
                    retChecked = true;
                    int id = int.Parse(chkId.ValidationGroup);
                    LTallyNoPassReasonData tallyNoPassResaonModel = new LTallyNoPassReasonData();

                    tallyNoPassResaonModel = tallyNoPassReasonBB.GetModel(id);

                    tallyNoPassResaonModel.isDel = true;

                    tallyNoPassReasonBB.ModifyRecord(tallyNoPassResaonModel);
                }
            }
        }
        catch (Exception ex)
        {
            this.ClientScript.RegisterStartupScript(this.GetType(), "ShowErr", "ShowErr(\"" + Server.UrlEncode(ex.Message) + "\",3);", true);
            return;
        }
        finally
        {
            tallyNoPassReasonBB.Dispose();
        }

        if (retChecked)
        {
            this.BindGrid();
        }
    }