Files
N_XLJC--MX/XLBZLXInfo.aspx.cs
T
2026-08-21 17:02:49 +08:00

309 lines
12 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_MODEL.Page;
using GThinking.N_MISPRO.Utility;
using GThinking.N_MISPRO;
using GThinking.N_PUBLIC;
using GThinking.N_MISPRO.Data;
namespace GThinking.N_XLJC
{
public partial class XLBZLXInfo : SingleCardBase
{
XLBZLX entity = new XLBZLX();
#region Page事件
protected void Page_Load(object sender, EventArgs e)
{
this.UMID = 101421003;
this.UMName = "线缆标准类型";
this.CurMaster = Master;
this.CurEntity = entity;
this.PageHeight = 400;
this.PageWidth = 500;
base.InitPage();
}
#endregion
#region 模板事件继承
protected override void LoadRecord()
{
if (!IsPostBack)
{
entity.Param.Add("XLBZ_XLBZID", PageParam.GetRTrimString("XLBZ_XLBZID").Trim());
}
else
{
entity.Param.Add("XLBZ_XLBZID", txtOld_XLBZID.Value.Trim());
}
base.LoadRecord();
txtOld_XLBZID.Value = txtXLBZID.Text.Trim();
}
protected override void SetControlState()
{
base.SetControlState();
string sXLBZID = txtXLBZID.Text.Trim();
string sSQL = "";
bool bAction_XLBZID = true;
bool bAction_XLDZSC = true;
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy || ControlState == TControlState.ctsEdit)
{
if (!sXLBZID.Equals(""))
{
sSQL = string.Format("select TOP 1 XLDZBZ_XLBZID from XLDZBZ where 1=1 ");
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
bAction_XLDZSC = false;
sSQL = string.Format("select TOP 1 XLDZBZ_XLBZID from XLDZBZ where 1=1 and XLDZBZ_XLBZID like '{0}%' ", sXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
bAction_XLBZID = false;
}
}
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select XLXLB_XLBZID from XLXLB where XLXLB_XLBZID ='{0}' "
+ " union all select XLLXB_XLBZID from XLLXB where XLLXB_XLBZID ='{0}' "
+ " union all select XLXZB_XLBZID from XLXZB where XLXZB_XLBZID ='{0}' "
+ " union all select XLXXB_XLBZID from XLXXB where XLXXB_XLBZID ='{0}' "
+ " union all select XLDTB_XLBZID from XLDTB where XLDTB_XLBZID ='{0}' "
+ " union all select XLZXBZ_XLBZID from XLZXBZ where XLZXBZ_XLBZID ='{0}'"
+ " union all select top 1 XLXSCLQD_XLBZID from XLXSCLQD where XLXSCLQD_XLBZID ='{0}' ", sXLBZID.Trim())))
{
bAction_XLBZID = false;
}
}
else
{
bAction_XLBZID = true;
sSQL = string.Format("select TOP 1 XLDZBZ_XLBZID from XLDZBZ where 1=1 ");
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
bAction_XLDZSC = false;
}
}
}
else
{
bAction_XLBZID = false;
bAction_XLDZSC = false;
}
txtXLBZID.Enabled = bAction_XLBZID;
chkDZSC.Enabled = bAction_XLDZSC;
txtWHR.Enabled = false;
datWHSJ.Enabled = false;
}
protected override void OnNewRecorder()
{
base.OnNewRecorder();
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now);
chkDZSC.Checked = false;
txtOld_XLBZID.Value = "";
}
protected override void OnCopyRecorder()
{
base.OnCopyRecorder();
txtWHR.Text = tSession.UserName;
txtWHRID.Value = tSession.UserId;
datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now);
txtXLBZID.Text = "";
txtOld_XLBZID.Value = "";
chkDZSC.Checked = false;
}
protected override bool Master_BeforeSaveAction(object sender, EventArgs e)
{
string sOLDXLBZID = txtOld_XLBZID.Value.Trim();
string sXLBZID = txtXLBZID.Text.Trim();
string sXLBZLXMC = txtXLBZMC.Text.Trim();
string sSQL = "";
if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy)
{
if (chkDZSC.Checked)
{
sSQL = string.Format("select TOP 1 XLBZ_XLBZID from XLBZ where 1=1 and XLBZ_DZSC = 'Y' and len(XLBZ_XLBZID) <10 ");
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已有定制生产标准,不允许保存!");
return false;
}
}
sSQL = string.Format("select TOP 1 XLBZ_XLBZID from XLBZ where 1=1 and XLBZ_XLBZID = '{0}' ", sXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已存在编号相同的记录,不允许保存!");
return false;
}
sSQL = string.Format("select TOP 1 XLBZ_XLBZLXMC from XLBZ where 1=1 and XLBZ_XLBZLXMC = '{0}' ", sXLBZLXMC);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已存在标准类型名称相同的记录,不允许保存!");
return false;
}
}
else
{
if (sXLBZID.Equals(sOLDXLBZID))
{
if (chkDZSC.Checked)
{
sSQL = string.Format("select TOP 1 XLBZ_XLBZID from XLBZ where 1=1 and XLBZ_DZSC = 'Y' and len(XLBZ_XLBZID) <10 and XLBZ_XLBZID <> '{0}' ", sXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已有定制生产标准,不允许保存!");
return false;
}
}
else
{
}
sSQL = string.Format("select TOP 1 XLBZ_XLBZLXMC from XLBZ where 1=1 and XLBZ_XLBZLXMC = '{0}' and XLBZ_XLBZID <> '{1}' ", sXLBZLXMC, sXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已存在标准类型名称相同的记录,不允许保存!");
return false;
}
}
else
{
//先校验编号是否重复
sSQL = string.Format("select TOP 1 XLBZ_XLBZID from XLBZ where 1=1 and XLBZ_XLBZID = '{0}' ", sXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已存在编号相同的记录,不允许保存!");
return false;
}
sSQL = string.Format("select TOP 1 XLBZ_XLBZLXMC from XLBZ where 1=1 and XLBZ_XLBZLXMC = '{0}' and XLBZ_XLBZID <> '{1}' ", sXLBZLXMC, sOLDXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已存在标准类型名称相同的记录,不允许保存!");
return false;
}
if (chkDZSC.Checked)
{
sSQL = string.Format("select TOP 1 XLBZ_XLBZID from XLBZ where 1=1 and XLBZ_DZSC = 'Y' and len(XLBZ_XLBZID) <10 and XLBZ_XLBZID <> '{0}' ", sOLDXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("已有定制生产标准,不允许保存!");
return false;
}
}
}
}
return base.Master_BeforeSaveAction(sender, e);
}
protected override bool Master_AfterSaveAction(object sender, EventArgs e)
{
if (!base.Master_AfterSaveAction(sender, e))
{
return false;
}
txtOld_XLBZID.Value = txtXLBZID.Text.Trim();
return true;
}
protected override bool Master_BeforeDeleteAction(object sender, EventArgs e)
{
string sXLBZID = txtXLBZID.Text.Trim();
if (!sXLBZID.Equals("") && CMISproDataBase.ExistsRecord("DBERP", string.Format("select XLXLB_XLBZID from XLXLB where XLXLB_XLBZID ='{0}' "
+ " union all select XLLXB_XLBZID from XLLXB where XLLXB_XLBZID ='{0}' "
+ " union all select XLXZB_XLBZID from XLXZB where XLXZB_XLBZID ='{0}' "
+ " union all select XLXXB_XLBZID from XLXXB where XLXXB_XLBZID ='{0}' "
+ " union all select XLDTB_XLBZID from XLDTB where XLDTB_XLBZID ='{0}' "
+ " union all select XLZXBZ_XLBZID from XLZXBZ where XLZXBZ_XLBZID ='{0}'"
+ " union all select top 1 XLXSCLQD_XLBZID from XLXSCLQD where XLXSCLQD_XLBZID ='{0}' ", sXLBZID.Trim())))
{
ShowMessage("该标准类型已被使用,不允许删除!");
return false;
}
string sSQL = string.Format("select TOP 1 XLDZBZ_XLBZID from XLDZBZ where 1=1 and XLDZBZ_XLBZID like '{0}%' ", sXLBZID);
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
{
ShowMessage("该标准类型存在线缆定制标准,不允许删除!");
return false;
}
return base.Master_BeforeDeleteAction(sender, e);
}
protected override void AfterSave(TDatabase db, ref bool ActionIsDone)
{
TSQL SQL = new TSQL(db);
SQL.Clear();
SQL.Add(" merge into XLBZ a ");
SQL.Add(" using ");
SQL.Add("( ");
SQL.Add("select ");
SQL.Add(" XLBZ_XLBZID, ");
SQL.Add(" row_number() ");
SQL.Add(" over(order by XLBZ_PX,XLBZ_XLBZID) as XH ");
SQL.Add(" from XLBZ");
SQL.Add(" where 1=1 and len(XLBZ_XLBZID) < 10 ");
SQL.Add(" ) b ");
SQL.Add(" on( ");
SQL.Add(" a.XLBZ_XLBZID=b.XLBZ_XLBZID and len(a.XLBZ_XLBZID) < 10 ");
SQL.Add(" ) ");
SQL.Add(" when matched then update set a.XLBZ_PX=b.XH ");
db.ExecSQL(SQL);
SQL.Clear();
SQL.Add("select XLBZ_PX from XLBZ where XLBZ_XLBZID=:pXLBZID");
SQL.ParamByName("pXLBZID").Value = txtXLBZID.Text.Trim();
DataSet ds = db.OpenDataSet(SQL);
if (ds.Tables[0].Rows.Count > 0)
{
txtPX.Value = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLBZ_PX"].ToString());
}
base.AfterSave(db, ref ActionIsDone);
}
protected override void SetComboxItems()
{
base.SetComboxItems();
}
#endregion
#region 控件事件
#endregion
#region 自定义函数
#endregion
}
}