Files
N_XLXSBJ----MX/BJYF_TLJQJInfo.aspx.cs
2026-09-19 14:12:58 +08:00

378 lines
15 KiB
C#

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;
namespace GThinking.N_XLXSBJ
{
public partial class BJYF_TLJQJInfo : OperationBase
{
BJYF_TLJQJ_Grid entity = new BJYF_TLJQJ_Grid();
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 100860173;
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();
if (!PageParam.GetRTrimString("XLXSBJDQYFB_XZQHID").Equals(""))
{
txtXZQHID.Value = PageParam.GetRTrimString("XLXSBJDQYFB_XZQHID");
txtOLD_XZQHID.Value = PageParam.GetRTrimString("XLXSBJDQYFB_XZQHID");
LoadXZQH(txtXZQHID.Value);
btnDel.Visible = true;
}
else
{
btnDel.Visible = false;
}
}
base.InitPage();
if (!IsPostBack)
{
Master_OnQuery();
GridDataBind();
}
}
#region 模板继承事件
protected override void Master_OnQuery()
{
entity.sXZQHID = txtXZQHID.Value.Trim();
base.Master_OnQuery();
}
protected override void GridDataBind()
{
base.GridDataBind();
}
protected override bool DataLogicValid()
{
if (cbxKHSZDPRO.SelectedValue.Trim().Equals("") && cbxKHSZDCITY.SelectedValue.Trim().Equals("") && cbxKHSZDCOUNTY.SelectedValue.Trim().Equals(""))
{
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 (!txtOLD_XZQHID.Value.Trim().Equals(txtXZQHID.Value.Trim()))
{
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSBJDQYFB where XLXSBJDQYFB_XZQHID='{0}' and XLXSBJDQYFB_YFJZQH<>' ' ", txtXZQHID.Value)))
{
ShowMessage("所选地区已设置运费!");
return false;
}
}
return base.DataLogicValid();
}
protected override bool Master_OnOK()
{
TDatabase DBERP = null;
try
{
string sXZQHID = txtXZQHID.Value.Trim();
DBERP = TContextDatabases.GetDatabase("DBERP");
DBERP.BeginTrans();
InsertXLXSBJDQYFB(DBERP);
DBERP.CommitTrans();
ShowMessage("设置成功!");
DialogOperationScript dos = new DialogOperationScript(this);
dos.CloseSelf();
dos.Execute();
}
catch (Exception ex)
{
ShowMessage(ex.Message);
DBERP.RollbackTrans();
return false;
}
return true;
}
#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);
SQL.Add("delete from XLXSBJDQYFB where XLXSBJDQYFB_XZQHID=:pXZQHID and XLXSBJDQYFB_YFJZQH<>' '");
SQL.ParamByName("pXZQHID").Value = txtXZQHID.Value.Trim();
dberp.ExecSQL(SQL);
dberp.CommitTrans();
ShowMessage("删除成功!");
CloseWindow();
}
protected void cbxKHSZDPRO_OnSelectedIndexChanged(object sender, EventArgs e)
{
if (!IsPostBack)
return;
cbxKHSZDCITY.ClearItems();
cbxKHSZDCITY.SelectedValue = "";
cbxKHSZDCOUNTY.ClearItems();
cbxKHSZDCOUNTY.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);
}
private void LoadXZQH(string sXZQHID)
{
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 = sXZQHID;
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();
}
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()));
}
}
}
}
}
private void InsertXLXSBJDQYFB(TDatabase dberp)
{
string sXZQHID = txtXZQHID.Value.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)
{
double dYSFL = CMISproConvert.StrToFloat(grdSHD.GetValueByFieldName("YSFL", row), 0);
string sYFJZQH = grdSHD.GetValueByFieldName("XLXSBJYFJZQJ_YFJZQH", row).Trim();
if (string.IsNullOrEmpty(sYFJZQH))
continue;
SQL.Clear();
SQL.Add("insert into XLXSBJDQYFB(XLXSBJDQYFB_XZQHID,XLXSBJDQYFB_YFJZQH,XLXSBJDQYFB_YSFL,XLXSBJDQYFB_WHR,XLXSBJDQYFB_WHRID,XLXSBJDQYFB_WHSJ,XLXSBJDQYFB_GCID)");
SQL.Add(string.Format("select '{0}' as XZQHID,'{1}' as YFJZQH,'{2}' AS YSFL, '{3}' as WHR,'{4}' as WHRID,'{5}' as WHSJ,' ' ",
sXZQHID, sYFJZQH, dYSFL, CurSession.UserName, CurSession.UserId, DateTime.Now));
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);
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_YSFL,0) as YSFL ");
SQL.Add(" from XLXSBJYFJZQJ");
SQL.Add(" left join (select XLXSBJDQYFB_YFJZQH,XLXSBJDQYFB_YSFL from XLXSBJDQYFB where XLXSBJDQYFB_XZQHID=:pXZQHID and XLXSBJDQYFB_YFJZQH<>' ') a");
SQL.Add(" on a.XLXSBJDQYFB_YFJZQH=XLXSBJYFJZQJ_YFJZQH");
SQL.Add(" where XLXSBJYFJZQJ_YFJSGS = '6' ");
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
}
}