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 GThinking.N_MISPRO; using GThinking.N_MISPRO.Data; using GThinking.N_MODEL.Page; using GThinking.N_MISPRO.Utility; using GThinking.N_CONTROL; using GThinking.N_PUBLIC; using System.Collections.Generic; using GThinking.N_MISPRO.MISPROAS; namespace GThinking.N_XLXSBJ { public partial class BJYF_YJYZInfo : OperationBase { BJYF_YJYZ entity = new BJYF_YJYZ(); protected void Page_Load(object sender, EventArgs e) { this.UMID = 100860071; this.UMName = "线缆销售报价单运费"; this.CurMaster = Master; this.Tabs = Tab; this.PageHeight = 500; this.PageWidth = 700; AddListSetMap(new ListSet(pagSHD.ID, null, grdSHD, entity, UPSHD)); if (!IsPostBack) { this.Master.PnlQuery.GroupingText = "查询条件"; this.Master.PnlBill.GroupingText = "单据信息"; this.Master.PnlQuery.Visible = false; Master.BtnQueryVisible = false; InitControls(); cbxYFJSFS.SelectedValue = PageParam.GetRTrimString("XLXSBJDQYFZB_YFJSFS"); cbxYFJSFS.Enabled = false; if (cbxYFJSFS.SelectedValue.Equals("1")) { grdSHD.FindColumnByFieldName("YFDJ").Visible = true; grdSHD.FindColumnByFieldName("YL").Visible = false; lblYJ.Visible = false; txtYJ.Visible = false; lblDW.Visible = false; lblDQYFXX.Visible = true; txtDQYFXX.Visible = true; } else { txtYJ.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("XLXSBJDQYFZB_YSJL")); grdSHD.FindColumnByFieldName("YFDJ").Visible = false; grdSHD.FindColumnByFieldName("YL").Visible = true; lblYJ.Visible = true; txtYJ.Visible = true; lblDW.Visible = true; lblDQYFXX.Visible = false; txtDQYFXX.Visible = false; } if (!PageParam.GetRTrimString("XLXSBJDQYFZB_XZQHID").Equals("")) { txtXZQHID.Value = PageParam.GetRTrimString("XLXSBJDQYFZB_XZQHID"); txtOLD_XZQHID.Value = PageParam.GetRTrimString("XLXSBJDQYFZB_XZQHID"); cbxYFJSFS.SelectedValue = PageParam.GetRTrimString("XLXSBJDQYFZB_YFJSFS"); if (!string.IsNullOrEmpty(PageParam.GetRTrimString("XLXSBJDQYFZB_DQYFXX").Trim())) { txtDQYFXX.Value = CMISproConvert.StrToFloat(PageParam.GetRTrimString("XLXSBJDQYFZB_DQYFXX")); } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XZQH_XZQHID,XZQH_FID,XZQH_PROVINCE,XZQH_CITY,XZQH_COUNTY from XZQH where XZQH_XZQHID = :pXZQHID "); SQL.ParamByName("pXZQHID").Value = txtXZQHID.Value; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim().Equals("86")) { cbxKHSZDPRO.SelectedValue = ds.Tables[0].Rows[0]["XZQH_XZQHID"].ToString().Trim(); cbxKHSZDCITY.SelectedValue = ""; cbxKHSZDCOUNTY.SelectedValue = ""; } else if (ds.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim().EndsWith("0000")) { cbxKHSZDPRO.SelectedValue = ds.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim(); cbxKHSZDCITY.SelectedValue = ds.Tables[0].Rows[0]["XZQH_XZQHID"].ToString().Trim(); cbxKHSZDCOUNTY.SelectedValue = ""; } else { cbxKHSZDCITY.SelectedValue = ds.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim(); cbxKHSZDCOUNTY.SelectedValue = ds.Tables[0].Rows[0]["XZQH_XZQHID"].ToString().Trim(); TSQL sSQL = new TSQL(dberp); sSQL.Clear(); sSQL.Add("select XZQH_XZQHID,XZQH_FID from XZQH where XZQH_XZQHID = :pXZQHID "); sSQL.ParamByName("pXZQHID").Value = cbxKHSZDCITY.SelectedValue.Trim(); DataSet dsPRO = dberp.OpenDataSet(sSQL); if (dsPRO.Tables[0].Rows.Count > 0) { cbxKHSZDPRO.SelectedValue = dsPRO.Tables[0].Rows[0]["XZQH_FID"].ToString().Trim(); } } SQL.Clear(); SQL.Add(" select XZQH_XZQHID,XZQH_CITY from XZQH where XZQH_FID = :pFID "); SQL.Add(" order by XZQH_XZQHID "); SQL.ParamByName("pFID").Value = cbxKHSZDPRO.SelectedValue.Trim(); DataSet ds1 = dberp.OpenDataSet(SQL); cbxKHSZDCITY.Items.Add(new ListItem("", "")); if (ds1.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds1.Tables[0].Rows.Count; i++) { if (!ds1.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim().Equals("")) { cbxKHSZDCITY.Items.Add(new ListItem(ds1.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim(), ds1.Tables[0].Rows[i]["XZQH_XZQHID"].ToString().Trim())); } } } SQL.Clear(); SQL.Add(" select XZQH_XZQHID,XZQH_COUNTY from XZQH where XZQH_FID = :pFID "); SQL.Add(" order by XZQH_XZQHID "); SQL.ParamByName("pFID").Value = cbxKHSZDCITY.SelectedValue.Trim(); DataSet dsCOUNTY = dberp.OpenDataSet(SQL); cbxKHSZDCOUNTY.Items.Add(new ListItem("", "")); if (dsCOUNTY.Tables[0].Rows.Count > 0) { for (int i = 0; i < dsCOUNTY.Tables[0].Rows.Count; i++) { if (!dsCOUNTY.Tables[0].Rows[i]["XZQH_COUNTY"].ToString().Trim().Equals("")) { cbxKHSZDCOUNTY.Items.Add(new ListItem(dsCOUNTY.Tables[0].Rows[i]["XZQH_COUNTY"].ToString().Trim(), dsCOUNTY.Tables[0].Rows[i]["XZQH_XZQHID"].ToString().Trim())); } } } } btnDel.Visible = true; //从报价单跳转至该页面,不允许修改删除行政区划 if (!string.IsNullOrEmpty(PageParam.GetRTrimString("FROMBJD"))) { cbxKHSZDPRO.Enabled = false; cbxKHSZDCITY.Enabled = false; btnDel.Visible = false; } } else btnDel.Visible = false; } base.InitPage(); if (!IsPostBack) { Master_OnQuery(); GridDataBind(); } } #region 模板继承事件 protected override void Master_OnQuery() { entity.sXZQHID = PageParam.GetRTrimString("XLXSBJDQYFZB_XZQHID"); base.Master_OnQuery(); } protected override void GridDataBind() { base.GridDataBind(); } protected override bool Master_OnBeforeOK(object sender, EventArgs e) { return base.Master_OnBeforeOK(sender, e); } protected override bool DataLogicValid() { if (cbxKHSZDPRO.SelectedValue.Trim().Equals("") && cbxKHSZDCITY.SelectedValue.Trim().Equals("") && cbxKHSZDCOUNTY.SelectedValue.Trim().Equals("")) { ShowMessage("地区--不允许为空!"); return false; } if (grdSHD.NewRows.Count == 0) { ShowMessage("没有可设置的计重区间!"); return false; } if (!cbxKHSZDCOUNTY.SelectedValue.Trim().Equals("")) { txtXZQHID.Value = cbxKHSZDCOUNTY.SelectedValue.Trim(); } else if (!cbxKHSZDCITY.SelectedValue.Trim().Equals("")) { txtXZQHID.Value = cbxKHSZDCITY.SelectedValue.Trim(); } else if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { txtXZQHID.Value = cbxKHSZDPRO.SelectedValue.Trim(); } else txtXZQHID.Value = ""; if (cbxYFJSFS.SelectedValue.Trim().Equals("1")) { if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSBJDQYFZB where XLXSBJDQYFZB_XZQHID='{0}' AND XLXSBJDQYFZB_YFJSFS <> '1' ", txtXZQHID.Value))) { ShowMessage("所选地区已设置其他运费计算方式!"); return false; } } else { if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSBJDQYFZB where XLXSBJDQYFZB_XZQHID='{0}' AND (XLXSBJDQYFZB_YFJSFS = '1' or XLXSBJDQYFZB_YFJSFS = '2')", txtXZQHID.Value))) { ShowMessage("所选地区已设置其他运费计算方式!"); return false; } } return base.DataLogicValid(); } protected override bool Master_OnOK() { TDatabase DBERP = null; try { string sXZQHID = ""; if (!cbxKHSZDCOUNTY.SelectedValue.Trim().Equals("")) { sXZQHID = cbxKHSZDCOUNTY.SelectedValue.Trim(); } else if (!cbxKHSZDCITY.SelectedValue.Trim().Equals("")) { sXZQHID = cbxKHSZDCITY.SelectedValue.Trim(); } else if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { sXZQHID = cbxKHSZDPRO.SelectedValue.Trim(); } string sYFJSFS = cbxYFJSFS.SelectedValue.Trim(); double dDQYFXX = txtDQYFXX.Value; DBERP = TContextDatabases.GetDatabase("DBERP"); DBERP.BeginTrans(); InsertUpdateXLXSBJDQYFZB(DBERP, sXZQHID, sYFJSFS, txtYJ.Value, CurSession, dDQYFXX); InsertXLXSBJDQYFB(DBERP); DBERP.CommitTrans(); if (string.IsNullOrEmpty(PageParam.GetRTrimString("FROMBJD"))) { ShowMessage("设置成功!"); } DialogOperationScript dos = new DialogOperationScript(this); dos.CloseSelf(); dos.Execute(); } catch (Exception ex) { ShowMessage(ex.Message); DBERP.RollbackTrans(); return false; } return true; } protected override void Grid_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { } base.Grid_RowDataBound(sender, e); } #endregion #region 控件事件 protected void btnDel_Click(object sender, EventArgs e) { Confirm.Register("IsQD", "将删除当前记录,是否继续?"); Confirm.ShowBtnText = TConfirm.cBtnText.Yes_No; if (Confirm.GetValue("IsQD").Trim().Equals("")) { Confirm.Ask("IsQD"); return; } else if (Confirm.GetValue("IsQD").Trim().Equals("N")) { Confirm.Clear(); return; } else if (Confirm.GetValue("IsQD").Trim().Equals("Y")) { Confirm.Clear(); } TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); dberp.BeginTrans(); TSQL SQL = new TSQL(dberp); if (cbxYFJSFS.SelectedValue.Trim().Equals("3,4")) { SQL.Clear(); SQL.Add("update XLXSBJDQYFZB set XLXSBJDQYFZB_YFJSFS = '4' where XLXSBJDQYFZB_XZQHID = :pXZQHID"); SQL.ParamByName("pXZQHID").Value = txtXZQHID.Value; dberp.ExecSQL(SQL); } else { SQL.Clear(); SQL.Add("delete from XLXSBJDQYFZB where XLXSBJDQYFZB_XZQHID = :pXZQHID"); SQL.ParamByName("pXZQHID").Value = txtXZQHID.Value; dberp.ExecSQL(SQL); } SQL.Clear(); SQL.Add("delete from XLXSBJDQYFB where XLXSBJDQYFB_XZQHID=:pXZQHID"); SQL.ParamByName("pXZQHID").Value = txtXZQHID.Value; dberp.ExecSQL(SQL); dberp.CommitTrans(); ShowMessage("删除成功!"); CloseWindow(); } protected void cbxKHSZDPRO_OnSelectedIndexChanged(object sender, EventArgs e) { if (!IsPostBack)//此处解决列表页直接点编辑触发change的问题 return; cbxKHSZDCITY.ClearItems(); cbxKHSZDCITY.SelectedValue = ""; if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XZQH_XZQHID,XZQH_CITY from XZQH where XZQH_FID = :pFID "); SQL.Add(" order by XZQH_XZQHID "); SQL.ParamByName("pFID").Value = cbxKHSZDPRO.SelectedValue.Trim(); DataSet ds = dberp.OpenDataSet(SQL); cbxKHSZDCITY.Items.Add(new ListItem("", "")); if (ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (!ds.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim().Equals("")) { cbxKHSZDCITY.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XZQH_CITY"].ToString().Trim(), ds.Tables[0].Rows[i]["XZQH_XZQHID"].ToString().Trim())); } } if (cbxKHSZDCITY.Items.Count == 2) { cbxKHSZDCITY.SelectedIndex = 1; } } } RefreshGrid(); } protected void cbxKHSZDCITY_OnSelectedIndexChanged(object sender, EventArgs e) { if (!IsPostBack) return; cbxKHSZDCOUNTY.ClearItems(); cbxKHSZDCOUNTY.SelectedValue = ""; if (!cbxKHSZDCITY.SelectedValue.Trim().Equals("")) { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XZQH_XZQHID,XZQH_COUNTY from XZQH where XZQH_FID = :pFID "); SQL.Add(" order by XZQH_XZQHID "); SQL.ParamByName("pFID").Value = cbxKHSZDCITY.SelectedValue.Trim(); DataSet ds = dberp.OpenDataSet(SQL); cbxKHSZDCOUNTY.Items.Add(new ListItem("", "")); if (ds.Tables[0].Rows.Count > 0) { for (int i = 0; i < ds.Tables[0].Rows.Count; i++) { if (!ds.Tables[0].Rows[i]["XZQH_COUNTY"].ToString().Trim().Equals("")) { cbxKHSZDCOUNTY.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XZQH_COUNTY"].ToString().Trim(), ds.Tables[0].Rows[i]["XZQH_XZQHID"].ToString().Trim())); } } if (cbxKHSZDCOUNTY.Items.Count == 2) { cbxKHSZDCOUNTY.SelectedIndex = 1; } } } RefreshGrid(); } protected void cbxKHSZDCOUNTY_OnSelectedIndexChanged(object sender, EventArgs e) { RefreshGrid(); } #endregion #region 自定义函数 private void InitControls() { TComboBox.SetComboBox("DBERP", cbxKHSZDPRO, "select XZQH_XZQHID,XZQH_PROVINCE from XZQH where XZQH_FID = '86' ORDER BY XZQH_XZQHID ", false); cbxYFJSFS.ClearItems(); cbxYFJSFS.Items.Add(new ListItem("运价运重", "1")); cbxYFJSFS.Items.Add(new ListItem("运金比例", "2")); cbxYFJSFS.Items.Add(new ListItem("运距运重", "3")); cbxYFJSFS.Items.Add(new ListItem("运距运件", "4")); } public static void InsertUpdateXLXSBJDQYFZB(TDatabase dberp, string sXZQHID, string sYFJSFS, double dYJ, CMISproSession CurSession) { TSQL SQL = new TSQL(dberp); SQL.Add(" select XLXSBJDQYFZB_YFJSFS from XLXSBJDQYFZB where XLXSBJDQYFZB_XZQHID = :pXZQHID "); SQL.ParamByName("pXZQHID").Value = sXZQHID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["XLXSBJDQYFZB_YFJSFS"].ToString().Trim().Equals("1")) { //更新XLXSBJDQYFZB表,不更新计算方式 SQL.Clear(); SQL.Add("update XLXSBJDQYFZB set "); SQL.Add(" XLXSBJDQYFZB_YSJL = :XLXSBJDQYFZB_YSJL,XLXSBJDQYFZB_WHR = :XLXSBJDQYFZB_WHR, XLXSBJDQYFZB_WHRID = :XLXSBJDQYFZB_WHRID, XLXSBJDQYFZB_WHSJ = :XLXSBJDQYFZB_WHSJ "); SQL.ParamByName("XLXSBJDQYFZB_YSJL").Value = dYJ; SQL.Add(" where XLXSBJDQYFZB_XZQHID = :XLXSBJDQYFZB_XZQHID "); SQL.ParamByName("XLXSBJDQYFZB_WHR").Value = CurSession.UserName; SQL.ParamByName("XLXSBJDQYFZB_WHRID").Value = CurSession.UserId; SQL.ParamByName("XLXSBJDQYFZB_WHSJ").Value = DateTime.Now; SQL.ParamByName("XLXSBJDQYFZB_XZQHID").Value = sXZQHID; dberp.ExecSQL(SQL); } else { //更新XLXSBJDQYFZB表,包括计算方式 SQL.Clear(); SQL.Add("update XLXSBJDQYFZB set "); if (!ds.Tables[0].Rows[0]["XLXSBJDQYFZB_YFJSFS"].ToString().Trim().Contains(sYFJSFS.Trim())) { SQL.Add(" XLXSBJDQYFZB_YFJSFS = :XLXSBJDQYFZB_YFJSFS, "); SQL.ParamByName("XLXSBJDQYFZB_YFJSFS").Value = "3,4"; } SQL.Add(" XLXSBJDQYFZB_YSJL = :XLXSBJDQYFZB_YSJL,XLXSBJDQYFZB_WHR = :XLXSBJDQYFZB_WHR, XLXSBJDQYFZB_WHRID = :XLXSBJDQYFZB_WHRID, XLXSBJDQYFZB_WHSJ = :XLXSBJDQYFZB_WHSJ "); SQL.ParamByName("XLXSBJDQYFZB_YSJL").Value = dYJ; SQL.Add(" where XLXSBJDQYFZB_XZQHID = :XLXSBJDQYFZB_XZQHID "); SQL.ParamByName("XLXSBJDQYFZB_WHR").Value = CurSession.UserName; SQL.ParamByName("XLXSBJDQYFZB_WHRID").Value = CurSession.UserId; SQL.ParamByName("XLXSBJDQYFZB_WHSJ").Value = DateTime.Now; SQL.ParamByName("XLXSBJDQYFZB_XZQHID").Value = sXZQHID; dberp.ExecSQL(SQL); } } else { //添加XLXSBJDQYFZB表 SQL.Clear(); SQL.Add("insert into XLXSBJDQYFZB ( "); SQL.Add(" XLXSBJDQYFZB_XZQHID, XLXSBJDQYFZB_YFJSFS, XLXSBJDQYFZB_YSJL, XLXSBJDQYFZB_WHR, XLXSBJDQYFZB_WHRID, XLXSBJDQYFZB_WHSJ) "); SQL.Add(" VALUES("); SQL.Add(" :XLXSBJDQYFZB_XZQHID, :XLXSBJDQYFZB_YFJSFS, :XLXSBJDQYFZB_YSJL, :XLXSBJDQYFZB_WHR, :XLXSBJDQYFZB_WHRID, :XLXSBJDQYFZB_WHSJ) "); SQL.ParamByName("XLXSBJDQYFZB_XZQHID").Value = sXZQHID; SQL.ParamByName("XLXSBJDQYFZB_YFJSFS").Value = sYFJSFS; SQL.ParamByName("XLXSBJDQYFZB_YSJL").Value = dYJ; SQL.ParamByName("XLXSBJDQYFZB_WHR").Value = CurSession.UserName; SQL.ParamByName("XLXSBJDQYFZB_WHRID").Value = CurSession.UserId; SQL.ParamByName("XLXSBJDQYFZB_WHSJ").Value = DateTime.Now; dberp.ExecSQL(SQL); } } public static void InsertUpdateXLXSBJDQYFZB(TDatabase dberp, string sXZQHID, string sYFJSFS, double dYJ, CMISproSession CurSession, double dDQYFXX) { TSQL SQL = new TSQL(dberp); SQL.Add(" select XLXSBJDQYFZB_YFJSFS from XLXSBJDQYFZB where XLXSBJDQYFZB_XZQHID = :pXZQHID "); SQL.ParamByName("pXZQHID").Value = sXZQHID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) { if (ds.Tables[0].Rows[0]["XLXSBJDQYFZB_YFJSFS"].ToString().Trim().Equals("1")) { //更新XLXSBJDQYFZB表,不更新计算方式 SQL.Clear(); SQL.Add("update XLXSBJDQYFZB set "); SQL.Add(" XLXSBJDQYFZB_YSJL = :XLXSBJDQYFZB_YSJL,XLXSBJDQYFZB_WHR = :XLXSBJDQYFZB_WHR, XLXSBJDQYFZB_WHRID = :XLXSBJDQYFZB_WHRID, XLXSBJDQYFZB_WHSJ = :XLXSBJDQYFZB_WHSJ,XLXSBJDQYFZB_DQYFXX = :XLXSBJDQYFZB_DQYFXX "); SQL.ParamByName("XLXSBJDQYFZB_YSJL").Value = dYJ; SQL.Add(" where XLXSBJDQYFZB_XZQHID = :XLXSBJDQYFZB_XZQHID "); SQL.ParamByName("XLXSBJDQYFZB_WHR").Value = CurSession.UserName; SQL.ParamByName("XLXSBJDQYFZB_WHRID").Value = CurSession.UserId; SQL.ParamByName("XLXSBJDQYFZB_WHSJ").Value = DateTime.Now; SQL.ParamByName("XLXSBJDQYFZB_XZQHID").Value = sXZQHID; SQL.ParamByName("XLXSBJDQYFZB_DQYFXX").Value = dDQYFXX; dberp.ExecSQL(SQL); } else { //更新XLXSBJDQYFZB表,包括计算方式 SQL.Clear(); SQL.Add("update XLXSBJDQYFZB set "); if (!ds.Tables[0].Rows[0]["XLXSBJDQYFZB_YFJSFS"].ToString().Trim().Contains(sYFJSFS.Trim())) { SQL.Add(" XLXSBJDQYFZB_YFJSFS = :XLXSBJDQYFZB_YFJSFS, "); SQL.ParamByName("XLXSBJDQYFZB_YFJSFS").Value = "3,4"; } SQL.Add(" XLXSBJDQYFZB_YSJL = :XLXSBJDQYFZB_YSJL,XLXSBJDQYFZB_WHR = :XLXSBJDQYFZB_WHR, XLXSBJDQYFZB_WHRID = :XLXSBJDQYFZB_WHRID, XLXSBJDQYFZB_WHSJ = :XLXSBJDQYFZB_WHSJ "); SQL.ParamByName("XLXSBJDQYFZB_YSJL").Value = dYJ; SQL.Add(" where XLXSBJDQYFZB_XZQHID = :XLXSBJDQYFZB_XZQHID "); SQL.ParamByName("XLXSBJDQYFZB_WHR").Value = CurSession.UserName; SQL.ParamByName("XLXSBJDQYFZB_WHRID").Value = CurSession.UserId; SQL.ParamByName("XLXSBJDQYFZB_WHSJ").Value = DateTime.Now; SQL.ParamByName("XLXSBJDQYFZB_XZQHID").Value = sXZQHID; dberp.ExecSQL(SQL); } } else { //添加XLXSBJDQYFZB表 SQL.Clear(); SQL.Add("insert into XLXSBJDQYFZB ( "); SQL.Add(" XLXSBJDQYFZB_XZQHID, XLXSBJDQYFZB_YFJSFS, XLXSBJDQYFZB_YSJL, XLXSBJDQYFZB_WHR, XLXSBJDQYFZB_WHRID, XLXSBJDQYFZB_WHSJ, XLXSBJDQYFZB_DQYFXX) "); SQL.Add(" VALUES("); SQL.Add(" :XLXSBJDQYFZB_XZQHID, :XLXSBJDQYFZB_YFJSFS, :XLXSBJDQYFZB_YSJL, :XLXSBJDQYFZB_WHR, :XLXSBJDQYFZB_WHRID, :XLXSBJDQYFZB_WHSJ, :XLXSBJDQYFZB_DQYFXX) "); SQL.ParamByName("XLXSBJDQYFZB_XZQHID").Value = sXZQHID; SQL.ParamByName("XLXSBJDQYFZB_YFJSFS").Value = sYFJSFS; SQL.ParamByName("XLXSBJDQYFZB_YSJL").Value = dYJ; SQL.ParamByName("XLXSBJDQYFZB_WHR").Value = CurSession.UserName; SQL.ParamByName("XLXSBJDQYFZB_WHRID").Value = CurSession.UserId; SQL.ParamByName("XLXSBJDQYFZB_WHSJ").Value = DateTime.Now; SQL.ParamByName("XLXSBJDQYFZB_DQYFXX").Value = dDQYFXX; dberp.ExecSQL(SQL); } } private void InsertXLXSBJDQYFB(TDatabase dberp) { string sXZQHID = ""; if (!cbxKHSZDCOUNTY.SelectedValue.Trim().Equals("")) { sXZQHID = cbxKHSZDCOUNTY.SelectedValue.Trim(); } else if (!cbxKHSZDCITY.SelectedValue.Trim().Equals("")) { sXZQHID = cbxKHSZDCITY.SelectedValue.Trim(); } else if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) { sXZQHID = cbxKHSZDPRO.SelectedValue.Trim(); } string sYFJSFS = cbxYFJSFS.SelectedValue.Trim(); TSQL SQL = new TSQL(dberp); SQL.Add("delete from XLXSBJDQYFB where XLXSBJDQYFB_XZQHID=:pXZQHID and XLXSBJDQYFB_YFJZQH<>' ' "); SQL.ParamByName("pXZQHID").Value = sXZQHID;//删除当前行政区划的运费记录,重新插入当前行政区划的运费 dberp.ExecSQL(SQL); foreach (GridViewRow row in grdSHD.NewRows) { //一行执行一次 SQL.Clear(); SQL.Add("insert into XLXSBJDQYFB(XLXSBJDQYFB_XZQHID,XLXSBJDQYFB_YFJZQH,XLXSBJDQYFB_YFDJ,XLXSBJDQYFB_YSFL,XLXSBJDQYFB_WHR,XLXSBJDQYFB_WHRID,XLXSBJDQYFB_WHSJ)"); bool bNeedInsert = false; double dYFDJ = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("YFDJ", row), 0); double dYSFL = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("YL", row), 0); if (bNeedInsert) { SQL.Add(" union all "); } else { bNeedInsert = true; } SQL.Add(string.Format("select '{0}' as XZQHID,'{1}' as YFJZQH,'{2}' as YFDJ,'{3}' AS YSFL, '{4}' as WHR,'{5}' as WHRID,'{6}' as WHSJ ", sXZQHID, grdSHD.GetValueByFieldName("XLXSBJYFJZQJ_YFJZQH", row), dYFDJ, dYSFL,CurSession.UserName, CurSession.UserId, DateTime.Now)); if (bNeedInsert) { dberp.ExecSQL(SQL); } } } private void RefreshGrid() { string sXZQHID = ""; if (!cbxKHSZDCOUNTY.SelectedValue.Trim().Equals("")) sXZQHID = cbxKHSZDCOUNTY.SelectedValue.Trim(); else if (!cbxKHSZDCITY.SelectedValue.Trim().Equals("")) sXZQHID = cbxKHSZDCITY.SelectedValue.Trim(); else if (!cbxKHSZDPRO.SelectedValue.Trim().Equals("")) sXZQHID = cbxKHSZDPRO.SelectedValue.Trim(); grdSHD.DataSource = GetGridTable(sXZQHID); if (cbxYFJSFS.SelectedValue.Equals("1")) { grdSHD.FindColumnByFieldName("YFDJ").Visible = true; grdSHD.FindColumnByFieldName("YL").Visible = false; } else { TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add(" select XLXSBJDQYFZB_YSJL FROM XLXSBJDQYFZB"); SQL.Add(" WHERE XLXSBJDQYFZB_XZQHID = :pXZQHID "); SQL.ParamByName("pXZQHID").Value = sXZQHID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables[0].Rows.Count > 0) txtYJ.Value = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSBJDQYFZB_YSJL"].ToString().Trim()); grdSHD.FindColumnByFieldName("YFDJ").Visible = false; grdSHD.FindColumnByFieldName("YL").Visible = true; } grdSHD.DataBind(); grdSHD.SaveDataInfo.SaveDataFlag = DSaveDataFlag.sdNormal; FormAreaUpdate(); } private DataTable GetGridTable(string sXZQHID) { DataTable dt = new DataTable(); TDatabase dberp = TContextDatabases.GetDatabase("DBERP"); TSQL SQL = new TSQL(dberp); SQL.Clear(); SQL.Add("select XLXSBJYFJZQJ_YFJZQH,XLXSBJYFJZQJ_YFJZQJMC,isnull(XLXSBJDQYFB_YFDJ,0) as YFDJ,isnull(XLXSBJDQYFB_YSFL,0) as YL "); SQL.Add(" from XLXSBJYFJZQJ"); SQL.Add(" left join (select XLXSBJDQYFB_YFJZQH,XLXSBJDQYFB_YFDJ,XLXSBJDQYFB_YSFL from XLXSBJDQYFB where XLXSBJDQYFB_XZQHID=:pXZQHID and XLXSBJDQYFB_YFJZQH<>' ') a"); SQL.Add(" on a.XLXSBJDQYFB_YFJZQH=XLXSBJYFJZQJ_YFJZQH"); SQL.Add(" where 1=1 "); SQL.Add("order by XLXSBJYFJZQJ_YFJZQH"); SQL.ParamByName("pXZQHID").Value = sXZQHID; DataSet ds = dberp.OpenDataSet(SQL); if (ds.Tables.Count > 0) { dt = ds.Tables[0]; } return dt; } #endregion } }