2026821
This commit is contained in:
@@ -0,0 +1,365 @@
|
||||
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_MODEL.Dialog;
|
||||
using GThinking.N_MISPRO.Utility;
|
||||
|
||||
namespace GThinking.N_XLJC
|
||||
{
|
||||
public partial class CPMLInfo : SingleCardBase
|
||||
{
|
||||
CPML entity = new CPML();
|
||||
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
this.UMID = 101421007;
|
||||
this.UMName = "线缆产品目录";
|
||||
this.CurMaster = Master;
|
||||
this.CurEntity = entity;
|
||||
this.PageHeight = 400;
|
||||
this.PageWidth = 500;
|
||||
this.Master.EnableAttachBtn = false;
|
||||
|
||||
if (!IsPostBack)
|
||||
{
|
||||
InitControls();
|
||||
}
|
||||
base.InitPage();
|
||||
}
|
||||
|
||||
#region 模板事件继承
|
||||
|
||||
protected override void LoadRecord()
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
this.CurEntity.Param.Add("XLXSCPML_CPMLID", PageParam.GetRTrimString("XLXSCPML_CPMLID"));
|
||||
}
|
||||
else
|
||||
{
|
||||
this.CurEntity.Param.Add("XLXSCPML_CPMLID", txtOLDCPMLID.Value);
|
||||
}
|
||||
|
||||
base.LoadRecord();
|
||||
}
|
||||
|
||||
protected override void OnNewRecorder()
|
||||
{
|
||||
base.OnNewRecorder();
|
||||
datQYSJ.Text = CMISproConvert.ConvertDate(DateTime.Now.ToString());
|
||||
chkTYBZ.Checked = false;
|
||||
txtWHR.Text = tSession.UserName;
|
||||
txtWHRID.Value = tSession.UserId;
|
||||
datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now);
|
||||
chkSJY.Checked = true;
|
||||
chkBJY.Checked = true;
|
||||
chkTJY.Checked = true;
|
||||
}
|
||||
|
||||
protected override void OnCopyRecorder()
|
||||
{
|
||||
base.OnCopyRecorder();
|
||||
datQYSJ.Text = CMISproConvert.ConvertDate(DateTime.Now.ToString());
|
||||
chkTYBZ.Checked = false;
|
||||
datTYSJ.Text = "";
|
||||
txtWHR.Text = tSession.UserName;
|
||||
txtWHRID.Value = tSession.UserId;
|
||||
datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now);
|
||||
|
||||
|
||||
}
|
||||
|
||||
protected override bool DataLogicValid()
|
||||
{
|
||||
if (cbxCPMLLX.SelectedValue.Trim().Equals("Y"))//组合
|
||||
{
|
||||
if (cbxCPMLIDS.SelectedValue.Trim().Equals(""))
|
||||
{
|
||||
ShowMessage("请选择组合产品目录包含的单一产品目录!");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if (datQYSJ.Text.Trim() != "" && datTYSJ.Text.Trim() != "")
|
||||
{
|
||||
if (Convert.ToDateTime(datQYSJ.Text.Trim()) > Convert.ToDateTime(datTYSJ.Text.Trim()))
|
||||
{
|
||||
ShowMessage("停用日期不允许小于启用日期!");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
if ((!chkSJY.Checked) && (!chkBJY.Checked) && (!chkTJY.Checked))
|
||||
{
|
||||
ShowMessage("【设计】、【对外展示】、【调价】不允许同时不勾!");
|
||||
return false;
|
||||
}
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSCPML where XLXSCPML_CPMLMC ='{0}' and XLXSCPML_CPMLID <>'{1}' ", txtCPMLMC.Text.Trim(), txtOLDCPMLID.Value.Trim())))
|
||||
{
|
||||
ShowMessage(string.Format("已存在产品目录名称为【{0}】的记录,不允许保存!", txtCPMLMC.Text.Trim()));
|
||||
return false;
|
||||
}
|
||||
|
||||
return base.DataLogicValid();
|
||||
}
|
||||
|
||||
protected override bool Master_BeforeDeleteAction(object sender, EventArgs e)
|
||||
{
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", string.Format("select 1 from XLXSCPML where isnull(XLXSCPML_CPMLIDS,' ')<>' ' and ','||rtrim(XLXSCPML_CPMLIDS)||',' like '{0}'",
|
||||
"%," + txtCPMLID.Text.Trim() + ",%")))
|
||||
{
|
||||
ShowMessage("已被组合产品目录引用,不允许删除!");
|
||||
return false;
|
||||
}
|
||||
string sCPMLID = txtCPMLID.Text.Trim();
|
||||
|
||||
|
||||
//XLXSCLQD_CPMLID
|
||||
string sSQL = string.Format("select top 1 XLXSCLQD_JGCZBID from XLXSCLQD where XLXSCLQD_CPMLID = '{0}' ",
|
||||
sCPMLID);
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||||
{
|
||||
ShowMessage("已被线缆销售材料清单使用,不允许删除!");
|
||||
return false;
|
||||
}
|
||||
//XLJGCZBML_CPMLID
|
||||
sSQL = string.Format("select top 1 XLJGCZBML_JGCZBID from XLJGCZBML where XLJGCZBML_CPMLID = '{0}' ",
|
||||
sCPMLID);
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||||
{
|
||||
ShowMessage("已被线缆结构尺重表目录使用,不允许删除!");
|
||||
return false;
|
||||
}
|
||||
//XLXSBJXHML_CPMLID
|
||||
sSQL = string.Format("select top 1 XLXSBJXHML_XLXHID from XLXSBJXHML where XLXSBJXHML_CPMLID = '{0}' ",
|
||||
sCPMLID);
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||||
{
|
||||
ShowMessage("已被线缆销售报价型号目录使用,不允许删除!");
|
||||
return false;
|
||||
}
|
||||
//XLXSBJTJXHML_CPMLID
|
||||
sSQL = string.Format("select top 1 XLXSBJTJXHML_XLXHID from XLXSBJTJXHML where XLXSBJTJXHML_CPMLID = '{0}' ",
|
||||
sCPMLID);
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL))
|
||||
{
|
||||
ShowMessage("已被线缆销售报价调价型号目录使用,不允许删除!");
|
||||
return false;
|
||||
}
|
||||
return base.Master_BeforeDeleteAction(sender, e);
|
||||
}
|
||||
|
||||
protected override void BeforeSave(TDatabase db, ref bool ActionIsDone)
|
||||
{
|
||||
txtWHR.Text = tSession.UserName;
|
||||
txtWHRID.Value = tSession.UserId;
|
||||
datWHSJ.Value = CMISproConvert.ConvertTime(DateTime.Now);
|
||||
|
||||
base.BeforeSave(db, ref ActionIsDone);
|
||||
}
|
||||
|
||||
protected override void SetControlState()
|
||||
{
|
||||
base.SetControlState();
|
||||
|
||||
txtWHR.Enabled = false;
|
||||
datWHSJ.Enabled = false;
|
||||
|
||||
if (ControlState != TControlState.ctsBrowse)
|
||||
{
|
||||
if (cbxCPMLLX.SelectedValue.Trim().Equals("Y"))//组合
|
||||
{
|
||||
cbxCPMLIDS.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
cbxCPMLIDS.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
string sCPMLID = txtCPMLID.Text.Trim();
|
||||
if (ControlState == TControlState.ctsEdit)
|
||||
{
|
||||
|
||||
//已被组合产品目录、线缆销售报价型号目录、线缆销售报价调价型号目录引用
|
||||
string sSQL_XLXSCPML=string.Format("select 1 from XLXSCPML where isnull(XLXSCPML_CPMLIDS,' ')<>' ' and ','||rtrim(XLXSCPML_CPMLIDS)||',' like '{0}'",
|
||||
"%," + sCPMLID + ",%");
|
||||
|
||||
string sSQL_XLXSBJXHML = string.Format("select top 1 XLXSBJXHML_XLXHID from XLXSBJXHML where XLXSBJXHML_CPMLID = '{0}' ",sCPMLID);
|
||||
|
||||
string sSQL_XLXSBJTJXHML = string.Format("select top 1 XLXSBJTJXHML_XLXHID from XLXSBJTJXHML where XLXSBJTJXHML_CPMLID = '{0}' ", sCPMLID);
|
||||
bool bCPMLYY = CMISproDataBase.ExistsRecord("DBERP", sSQL_XLXSCPML);
|
||||
bool bXHMLYY = CMISproDataBase.ExistsRecord("DBERP", sSQL_XLXSBJXHML);
|
||||
bool bTJXHMLYY = CMISproDataBase.ExistsRecord("DBERP", sSQL_XLXSBJTJXHML);
|
||||
if (bCPMLYY || bXHMLYY || bTJXHMLYY)
|
||||
{
|
||||
txtCPMLID.Enabled = false;
|
||||
cbxCPMLLX.Enabled = false;
|
||||
if (bXHMLYY)
|
||||
chkBJY.Enabled = false;
|
||||
if (bTJXHMLYY)
|
||||
chkTJY.Enabled = false;
|
||||
}
|
||||
|
||||
|
||||
//产品目录已被XLXSCLQD_CPMLID、XLJGCZBML_CPMLID使用
|
||||
string sSQL_XLXSCLQD = string.Format("select top 1 XLXSCLQD_JGCZBID from XLXSCLQD where XLXSCLQD_CPMLID = '{0}' ",
|
||||
sCPMLID);
|
||||
string sSQL_XLJGCZBML = string.Format("select top 1 XLJGCZBML_JGCZBID from XLJGCZBML where XLJGCZBML_CPMLID = '{0}' ",
|
||||
sCPMLID);
|
||||
if (CMISproDataBase.ExistsRecord("DBERP", sSQL_XLXSCLQD) || CMISproDataBase.ExistsRecord("DBERP", sSQL_XLJGCZBML))
|
||||
{
|
||||
txtCPMLID.Enabled = false;
|
||||
}
|
||||
}
|
||||
else if (ControlState == TControlState.ctsInsert || ControlState == TControlState.ctsCopy)
|
||||
{
|
||||
txtCPMLID.Enabled = true;
|
||||
chkBJY.Enabled = true;
|
||||
chkTJY.Enabled = true;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
protected override void AfterSave(TDatabase db, ref bool ActionIsDone)
|
||||
{
|
||||
TSQL SQL = new TSQL(db);
|
||||
SQL.Clear();
|
||||
SQL.Add(" merge into XLXSCPML a ");
|
||||
SQL.Add(" using ");
|
||||
SQL.Add("( ");
|
||||
SQL.Add("select ");
|
||||
SQL.Add(" XLXSCPML_CPMLID, ");
|
||||
SQL.Add(" row_number() ");
|
||||
SQL.Add(" over(order by XLXSCPML_XSXH,XLXSCPML_CPMLID) as XH ");
|
||||
SQL.Add(" from XLXSCPML");
|
||||
SQL.Add(" where 1=1 ");
|
||||
SQL.Add(" ) b ");
|
||||
SQL.Add(" on( ");
|
||||
SQL.Add(" a.XLXSCPML_CPMLID=b.XLXSCPML_CPMLID ");
|
||||
SQL.Add(" ) ");
|
||||
SQL.Add(" when matched then update set a.XLXSCPML_XSXH=b.XH ");
|
||||
db.ExecSQL(SQL);
|
||||
|
||||
SQL.Clear();
|
||||
SQL.Add("select XLXSCPML_XSXH from XLXSCPML where XLXSCPML_CPMLID=:pCPMLID");
|
||||
SQL.ParamByName("pCPMLID").Value = txtCPMLID.Text.Trim();
|
||||
DataSet ds = db.OpenDataSet(SQL);
|
||||
if (ds.Tables[0].Rows.Count > 0)
|
||||
{
|
||||
txtXSXH.Value = CMISproConvert.StrToFloat(ds.Tables[0].Rows[0]["XLXSCPML_XSXH"].ToString());
|
||||
}
|
||||
|
||||
base.AfterSave(db, ref ActionIsDone);
|
||||
}
|
||||
|
||||
|
||||
|
||||
protected override void SetComboxItems()
|
||||
{
|
||||
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
||||
TSQL sql = new TSQL(dberp);
|
||||
|
||||
if (ControlState == TControlState.ctsBrowse)
|
||||
{
|
||||
sql.Clear();
|
||||
sql.Add("select XLXSCPML_CPMLID,XLXSCPML_CPMLMC from XLXSCPML where 1=1 and " + CMISproDataBase.GetWhereEqual("XLXSCPML_CPMLID", cbxCPMLIDS.SelectedValue.Trim()) + " order by XLXSCPML_CPMLID");
|
||||
DataSet ds = dberp.OpenDataSet(sql);
|
||||
cbxCPMLIDS.ClearItems();
|
||||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||||
{
|
||||
cbxCPMLIDS.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XLXSCPML_CPMLMC"].ToString().Trim(), ds.Tables[0].Rows[i]["XLXSCPML_CPMLID"].ToString().Trim()));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
//被组合产品目录引用的单一产品目录一定只能是基价价格表模型的
|
||||
sql.Clear();
|
||||
sql.Add("select XLXSCPML_CPMLID,XLXSCPML_CPMLMC from XLXSCPML where XLXSCPML_CPMLLX='N' and isnull(XLXSCPML_TYBZ,' ')<>'Y' order by XLXSCPML_CPMLID");
|
||||
DataSet ds = dberp.OpenDataSet(sql);
|
||||
cbxCPMLIDS.ClearItems();
|
||||
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
|
||||
{
|
||||
cbxCPMLIDS.Items.Add(new ListItem(ds.Tables[0].Rows[i]["XLXSCPML_CPMLMC"].ToString().Trim(), ds.Tables[0].Rows[i]["XLXSCPML_CPMLID"].ToString().Trim()));
|
||||
}
|
||||
|
||||
}
|
||||
base.SetComboxItems();
|
||||
}
|
||||
|
||||
protected override bool Master_AfterSaveAction(object sender, EventArgs e)
|
||||
{
|
||||
txtOLDCPMLID.Value = txtCPMLID.Text.Trim();
|
||||
return base.Master_AfterSaveAction(sender, e);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 自定义事件
|
||||
|
||||
private void InitControls()
|
||||
{
|
||||
cbxCPMLLX.ClearItems();
|
||||
cbxCPMLLX.Items.Add(new ListItem("组合产品目录", "Y"));
|
||||
cbxCPMLLX.Items.Add(new ListItem("单一产品目录", "N"));
|
||||
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 控件事件
|
||||
|
||||
protected void cbxCPMLLX_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (cbxCPMLLX.SelectedValue.Trim().Equals("Y"))//组合
|
||||
{
|
||||
cbxCPMLIDS.Enabled = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
cbxCPMLIDS.SelectedValue = "";
|
||||
cbxCPMLIDS.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
protected void chkTYBZ_CheckedChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (chkTYBZ.Checked)
|
||||
{
|
||||
if (datTYSJ.Text.Trim().Equals(""))
|
||||
{
|
||||
datTYSJ.Text = CMISproConvert.ConvertDate(DateTime.Now.ToString());
|
||||
}
|
||||
}
|
||||
else if (chkTYBZ.Checked == false)
|
||||
{
|
||||
datQYSJ.Text = CMISproConvert.ConvertDate(DateTime.Now.ToString());
|
||||
datTYSJ.Text = "";
|
||||
}
|
||||
}
|
||||
|
||||
protected void datTYSJ_TextChanged(object sender, EventArgs e)
|
||||
{
|
||||
if (!datTYSJ.Text.Trim().Equals(""))
|
||||
{
|
||||
if (chkTYBZ.Checked == false)
|
||||
{
|
||||
chkTYBZ.Checked = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user