222 lines
10 KiB
C#
222 lines
10 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Configuration;
|
|
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;
|
|
|
|
namespace GThinking.N_XLJC
|
|
{
|
|
public partial class XLJGCZB_LMSZList : SingleGridBase
|
|
{
|
|
#region Page类事件继承
|
|
private XLJGCZB_LMSZ entity = new XLJGCZB_LMSZ();
|
|
private XLJGCZB_LMSZ_M queryEntity = new XLJGCZB_LMSZ_M();
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
this.UMID = 101421008;
|
|
this.UMName = "线缆结构尺重表";
|
|
this.CurMaster = Master;
|
|
this.ModuleGV = ContentGrid;
|
|
this.CurEntity = entity;
|
|
this.CurQueryEntity = queryEntity;
|
|
this.sQueryURLTarget = "XLJGCZB_LMSZQuery.aspx";
|
|
this.PageHeight = 600;
|
|
this.PageWidth = 750;
|
|
base.DataKeyNames = new string[] { "XLXSBJCL_BJCLID", "XLXSBJCL_BJCLMC", "XLJGCZBLM_CZBLMBH" };
|
|
|
|
this.Master.EnableNewBtn = false;
|
|
this.Master.EnableCopyBtn = false;
|
|
this.Master.EnableEditBtn = false;
|
|
this.Master.EnableDeleteBtn = false;
|
|
this.Master.EnableViewBtn = false;
|
|
|
|
if (!IsPostBack)
|
|
{
|
|
CurQueryEntity.FieldByName("PXFS").Value = "0";
|
|
}
|
|
|
|
base.InitPage();
|
|
|
|
|
|
if (!IsPostBack)
|
|
{
|
|
Master_OnStandardQuery(null, null);
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 模板事件继承
|
|
protected override void Master_OnStandardQuery(object sender, EventArgs e)
|
|
{
|
|
base.InitEntityByCondition();
|
|
entity.EntityTable.QuerySelSql = GetQuerySql();
|
|
base.Master_OnStandardQuery(sender, e);
|
|
entity.GridDataBind(ContentGrid, tSession);
|
|
}
|
|
|
|
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
|
|
{
|
|
base.InitEntityByCondition();
|
|
entity.EntityTable.QuerySelSql = GetQuerySql();
|
|
ContentGrid.SelectedIndex = -1;
|
|
base.moduleGV_PageIndexChanging(sender, e);
|
|
}
|
|
#endregion
|
|
|
|
#region 自定义函数
|
|
private string GetQuerySql()
|
|
{
|
|
string sSQL = @"
|
|
select XLXSBJCL_BJCLID,XLXSBJCL_BJCLMC,'Kg' as JLDW,XLJGCZBLM_CLQDL,XLJGCZBLM_CZBLMBH,isnull(XLJGCZBLM_CLQDL,'第99列') as px
|
|
from XLXSBJCL
|
|
LEFT JOIN XLJGCZBML on XLJGCZBML_JGCZBID = :pJGCZBID
|
|
left join XLJGCZBLM on XLJGCZBLM_JGCZBID=:pJGCZBID and XLJGCZBLM_BJCLID=XLXSBJCL_BJCLID and XLJGCZBLM_BJCLID=XLXSBJCL_BJCLID and ISNULL(XLJGCZBML_JGCZBBBID,'1.0') = XLJGCZBLM_JGCZBBBID
|
|
where 1 = 1 ";
|
|
//*----只会出现A类型数据
|
|
entity.Param.Add("pJGCZBID", PageParam.GetRTrimString("JGCZBID"));
|
|
if (!string.IsNullOrEmpty(CurQueryEntity.FieldByName("BJCLMC").Value.Trim()))
|
|
{
|
|
sSQL += " and XLXSBJCL_BJCLMC like :pBJCLMC ";
|
|
entity.Param.Add("pBJCLMC", "%" + CurQueryEntity.FieldByName("BJCLMC").Value.Trim() + "%");
|
|
}
|
|
if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("0"))
|
|
{
|
|
sSQL += " order by XLXSBJCL_BJCLID ";
|
|
}
|
|
else if (CurQueryEntity.FieldByName("PXFS").Value.Trim().Equals("1"))
|
|
{
|
|
sSQL += " order by px,XLXSBJCL_BJCLID ";
|
|
}
|
|
else
|
|
{
|
|
sSQL += " order by XLXSBJCL_BJCLID ";
|
|
}
|
|
|
|
return sSQL;
|
|
}
|
|
#endregion
|
|
|
|
#region 控件事件
|
|
protected void ContentGrid_RowDoubleClick(object sender, GThinking.N_CONTROL.RowDoubleClickEventArgs e)
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL SQL = new TSQL(dberp);
|
|
|
|
string sJGCZBID = PageParam.GetRTrimString("JGCZBID");
|
|
//默认1.0版本
|
|
string sJGCZBBBID = "1.0";
|
|
string sBJCLID = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLXSBJCL_BJCLID"].ToString().Trim();
|
|
string sBJCLMC = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLXSBJCL_BJCLMC"].ToString().Trim();
|
|
string sCZBLMBH = ContentGrid.DataKeys[ContentGrid.SelectedIndex]["XLJGCZBLM_CZBLMBH"].ToString().Trim();
|
|
|
|
SQL.Clear();
|
|
SQL.Add(" SELECT ISNULL(XLJGCZBML_JGCZBBBID,'1.0') as XLJGCZBML_JGCZBBBID FROM XLJGCZBML WHERE XLJGCZBML_JGCZBID =:pJGCZBID ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
DataSet dsJGCZBBBID = dberp.OpenDataSet(SQL);
|
|
if (dsJGCZBBBID.Tables[0].Rows.Count > 0)
|
|
{
|
|
sJGCZBBBID = dsJGCZBBBID.Tables[0].Rows[0][0].ToString().Trim();
|
|
}
|
|
|
|
|
|
|
|
SQL.Clear();
|
|
SQL.Add(" SELECT max(XLJGCZBLM_CZBLMBH) as XLJGCZBLM_CZBLMBH FROM XLJGCZBLM WHERE XLJGCZBLM_JGCZBID =:pJGCZBID and XLJGCZBLM_JGCZBBBID = :pJGCZBBBID ");
|
|
SQL.Add(" AND XLJGCZBLM_HLMLX = 'Z' ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
|
|
DataSet ds = dberp.OpenDataSet(SQL);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
if (ds.Tables[0].Rows[0][0].ToString().Trim().Equals(""))
|
|
{
|
|
//插入
|
|
SQL.Clear();
|
|
SQL.Add("insert into XLJGCZBLM (XLJGCZBLM_JGCZBID,XLJGCZBLM_JGCZBBBID,XLJGCZBLM_CZBLMBH,XLJGCZBLM_CZBLMMC, XLJGCZBLM_CLQDL,XLJGCZBLM_BJCLID,XLJGCZBLM_HLMLX,XLJGCZBLM_ZDLMLX) ");
|
|
SQL.Add(" values(:pJGCZBID,:pJGCZBBBID,:pCZBLMBH,:pCZBLMMC, :pCLQDL,:pBJCLID,:pHLMLX,'4') ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
|
|
SQL.ParamByName("pCZBLMBH").Value = "01";
|
|
SQL.ParamByName("pCZBLMMC").Value = sBJCLMC;
|
|
SQL.ParamByName("pCLQDL").Value = "第01列" ;
|
|
SQL.ParamByName("pBJCLID").Value = sBJCLID;
|
|
SQL.ParamByName("pHLMLX").Value = "Z";
|
|
dberp.ExecSQL(SQL);
|
|
}
|
|
else
|
|
{
|
|
SQL.Clear();
|
|
SQL.Add("select XLJGCZBLM_JGCZBID from XLJGCZBLM WHERE XLJGCZBLM_JGCZBID =:pJGCZBID and XLJGCZBLM_JGCZBBBID = :pJGCZBBBID ");
|
|
SQL.Add(" AND XLJGCZBLM_HLMLX = 'Z' and XLJGCZBLM_CZBLMBH =:pCZBLMBH ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
|
|
SQL.ParamByName("pCZBLMBH").Value = sCZBLMBH;
|
|
DataSet dsMX = dberp.OpenDataSet(SQL);
|
|
//取消
|
|
if (dsMX.Tables[0].Rows.Count > 0)
|
|
{
|
|
//判断是否为最大的尺重表栏目编号
|
|
if (ds.Tables[0].Rows[0][0].ToString().Trim().Equals(sCZBLMBH))
|
|
{
|
|
SQL.Clear();
|
|
SQL.Add("delete from XLJGCZBLM WHERE XLJGCZBLM_JGCZBID =:pJGCZBID and XLJGCZBLM_JGCZBBBID= :pJGCZBBBID and XLJGCZBLM_HLMLX = 'Z' and XLJGCZBLM_CZBLMBH =:pCZBLMBH ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
|
|
SQL.ParamByName("pCZBLMBH").Value = sCZBLMBH;
|
|
dberp.ExecSQL(SQL);
|
|
}
|
|
else
|
|
{
|
|
SQL.Clear();
|
|
SQL.Add("select XLJGCZBLM_CLQDL from XLJGCZBLM WHERE XLJGCZBLM_JGCZBID =:pJGCZBID and XLJGCZBLM_JGCZBBBID = :pJGCZBBBID ");
|
|
SQL.Add(" AND XLJGCZBLM_HLMLX = 'Z' and XLJGCZBLM_CZBLMBH =:pCZBLMBH ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
|
|
SQL.ParamByName("pCZBLMBH").Value = ds.Tables[0].Rows[0][0].ToString().Trim();
|
|
DataSet dsMAX = dberp.OpenDataSet(SQL);
|
|
ShowMessage("请先从材料清单列为【" + dsMAX.Tables[0].Rows[0][0].ToString().Trim() + "】开始去除尺重表栏目。");
|
|
return;
|
|
}
|
|
}
|
|
//补充
|
|
else
|
|
{
|
|
int tmpJGCZBID = CMISproConvert.StrToInt(ds.Tables[0].Rows[0][0].ToString().Trim()) + 1;
|
|
if (81 == tmpJGCZBID)
|
|
{
|
|
ShowMessage("已达到材料清单所能支持的最大值,无法继续添加材料清单列。");
|
|
return;
|
|
}
|
|
SQL.Clear();
|
|
SQL.Add("insert into XLJGCZBLM (XLJGCZBLM_JGCZBID,XLJGCZBLM_JGCZBBBID,XLJGCZBLM_CZBLMBH,XLJGCZBLM_CZBLMMC, XLJGCZBLM_CLQDL,XLJGCZBLM_BJCLID,XLJGCZBLM_HLMLX,XLJGCZBLM_ZDLMLX) ");
|
|
SQL.Add(" values(:pJGCZBID,:pJGCZBBBID,:pCZBLMBH,:pCZBLMMC, :pCLQDL,:pBJCLID,:pHLMLX,'4') ");
|
|
SQL.ParamByName("pJGCZBID").Value = sJGCZBID;
|
|
SQL.ParamByName("pJGCZBBBID").Value = sJGCZBBBID;
|
|
SQL.ParamByName("pCZBLMBH").Value = tmpJGCZBID.ToString().PadLeft(2,'0');
|
|
SQL.ParamByName("pCZBLMMC").Value = sBJCLMC;
|
|
SQL.ParamByName("pCLQDL").Value = "第" + tmpJGCZBID.ToString().PadLeft(2, '0') + "列";
|
|
SQL.ParamByName("pBJCLID").Value = sBJCLID;
|
|
SQL.ParamByName("pHLMLX").Value = "Z";
|
|
dberp.ExecSQL(SQL);
|
|
}
|
|
|
|
}
|
|
moduleGV_PageIndexChanging(null, null);
|
|
FormAreaUpdate();
|
|
}
|
|
}
|
|
|
|
|
|
#endregion
|
|
}
|
|
}
|