288 lines
10 KiB
C#
288 lines
10 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.Data;
|
|
using System.Collections.Generic;
|
|
using GThinking.N_MISPRO.Utility;
|
|
|
|
namespace GThinking.N_XLXSBJ
|
|
{
|
|
public partial class XLBJD_JGQSCLList : SingleGridBase
|
|
{
|
|
XLBJD_JGQSCL entity = new XLBJD_JGQSCL();
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
this.UMID = 100860044;
|
|
this.UMName = "价格缺失材料";
|
|
this.CurMaster = Master;
|
|
this.ModuleGV = grdContentGrid;
|
|
this.CurEntity = entity;
|
|
this.PageWidth = 700;
|
|
this.PageHeight = 500;
|
|
|
|
Master.EnableQueryBtn = false;
|
|
Master.EnableAttachBtn = false;
|
|
Master.EnableNewBtn = false;
|
|
Master.EnableViewBtn = false;
|
|
Master.EnableEditBtn = false;
|
|
Master.EnableCopyBtn = false;
|
|
Master.EnableDeleteBtn = false;
|
|
|
|
base.InitPage();
|
|
ModuleGV.OnClientDblClick = "return false;";
|
|
|
|
|
|
|
|
if (!IsPostBack)
|
|
{
|
|
Master_OnStandardQuery(null, null);
|
|
|
|
}
|
|
}
|
|
|
|
#region 模板继承事件
|
|
|
|
protected override void Master_OnStandardQuery(object sender, EventArgs e)
|
|
{
|
|
entity.EntityTable.QuerySelSql = "select 1 from XLXSCLQD where 1<>1";
|
|
base.Master_OnStandardQuery(sender, e);
|
|
DataSet ds = GetTable();
|
|
entity.GridDataBind(grdContentGrid, tSession);
|
|
entity.GridDataBind(grdContentGrid, ds.Tables[0], ds.Tables[0].Rows.Count);
|
|
grdContentGrid.DataSource = ds;
|
|
}
|
|
|
|
protected override void moduleGV_PageIndexChanging(object sender, GridViewPageEventArgs e)
|
|
{
|
|
entity.EntityTable.QuerySelSql = "select 1 from XLXSCLQD where 1<>1";
|
|
base.moduleGV_PageIndexChanging(sender, e);
|
|
grdContentGrid.SelectedIndex = -1;
|
|
DataSet ds = GetTable();
|
|
entity.GridDataBind(grdContentGrid, tSession);
|
|
entity.GridDataBind(grdContentGrid, ds.Tables[0], ds.Tables[0].Rows.Count);
|
|
grdContentGrid.DataSource = ds;
|
|
}
|
|
|
|
protected override void moduleGV_RowDataBound(object sender, GridViewRowEventArgs e)
|
|
{
|
|
if (e.Row.RowType == DataControlRowType.DataRow)
|
|
{
|
|
}
|
|
base.moduleGV_RowDataBound(sender, e);
|
|
}
|
|
|
|
protected override void ReportRecordSetAdd()
|
|
{
|
|
DataSet ds = GetTable();
|
|
AddUserReportDataSet("XLXSBJDMXCLCB", ds);
|
|
base.ReportRecordSetAdd();
|
|
}
|
|
|
|
protected override void ReportDataSetAdd()
|
|
{
|
|
DataSet ds = GetTable();
|
|
for (int i = 0; i < grdContentGrid.Columns.Count; i++)
|
|
{
|
|
string sDataField = ((System.Web.UI.WebControls.BoundField)(grdContentGrid.Columns[i])).DataField.ToString().Trim();
|
|
string sHeaderText = grdContentGrid.Columns[i].HeaderText;
|
|
AddUserReportField("XLXSBJDMXCLCB", sDataField, sHeaderText, "S");
|
|
}
|
|
base.ReportDataSetAdd();
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region 自定义事件
|
|
|
|
private DataSet GetTable()
|
|
{
|
|
string sBJDID = PageParam.GetRTrimString("BJDID");
|
|
|
|
DataSet dsResult = new DataSet();
|
|
List<string> listCL = new List<string>();
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL tSql = new TSQL(dberp);
|
|
tSql.Clear();
|
|
tSql.Add("select XLXSBJDCLCB_BJDID, XLXSBJDCLCB_XH");
|
|
for (int i = 1; i <= 80; i++)
|
|
{
|
|
tSql.Add(string.Format(",XLXSBJDCLCB_CLSL{0}", i.ToString().PadLeft(2, '0').Trim()));
|
|
tSql.Add(string.Format(",XLXSBJDCLCB_CLID{0}", i.ToString().PadLeft(2, '0').Trim()));
|
|
tSql.Add(string.Format(",XLXSBJDCLCB_CLDJ{0}", i.ToString().PadLeft(2, '0').Trim()));
|
|
}
|
|
tSql.Add(" from XLXSBJDCLCB ");
|
|
tSql.Add(" where XLXSBJDCLCB_BJDID=:pBJDID ");
|
|
tSql.ParamByName("pBJDID").Value = sBJDID;
|
|
DataSet dsBJCL = dberp.OpenDataSet(tSql);
|
|
if (dsBJCL.Tables[0].Rows.Count > 0)
|
|
{
|
|
foreach (DataRow trow in dsBJCL.Tables[0].Rows)
|
|
{
|
|
for (int i = 1; i <= 80; i++)
|
|
{
|
|
string sCLID = trow[string.Format("XLXSBJDCLCB_CLID{0}", i.ToString().PadLeft(2, '0').Trim())].ToString().Trim();
|
|
if (sCLID.Equals(""))
|
|
{
|
|
//避免出现跳空列的情况
|
|
continue;
|
|
}
|
|
double dCLDJ = CMISproConvert.StrToFloat(trow[string.Format("XLXSBJDCLCB_CLDJ{0}", i.ToString().PadLeft(2, '0').Trim())].ToString().Trim());
|
|
double dSL = CMISproConvert.StrToFloat(trow[string.Format("XLXSBJDCLCB_CLSL{0}", i.ToString().PadLeft(2, '0').Trim())].ToString().Trim());
|
|
if (dCLDJ == 0 && dSL > 0)
|
|
{
|
|
if (!listCL.Contains(sCLID))
|
|
listCL.Add(sCLID);
|
|
}
|
|
}
|
|
}
|
|
DataTable dt = new DataTable();
|
|
dt.Columns.Add("BJCLID", typeof(string));
|
|
dt.Columns.Add("BJCLMC", typeof(string));
|
|
dt.Columns.Add("WLXX", typeof(string));
|
|
listCL.Sort();
|
|
for (int i = 0; i < listCL.Count; i++)
|
|
{
|
|
DataRow dtrow = dt.NewRow();
|
|
string sCLID = listCL[i];
|
|
string sBJCLID = "";
|
|
string sWLID = "";
|
|
if (sCLID.Contains("|"))
|
|
{
|
|
sBJCLID = sCLID.Split('|')[0];
|
|
sWLID = sCLID.Split('|')[1];
|
|
}
|
|
else
|
|
sBJCLID = sCLID;
|
|
string sWLXX = GetWLXX(sWLID);
|
|
string sBJCLMC = GetBJCLMC(sBJCLID);
|
|
dtrow["BJCLID"] = sBJCLID;
|
|
dtrow["BJCLMC"] = sBJCLMC;
|
|
dtrow["WLXX"] = sWLXX;
|
|
dt.Rows.Add(dtrow);
|
|
}
|
|
dsResult.Tables.Add(dt);
|
|
}
|
|
return dsResult;
|
|
}
|
|
|
|
private string GetBJCLMC(string sBJCLID)
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL sql = new TSQL(dberp);
|
|
sql.Add(" select XLXSBJCL_BJCLMC from XLXSBJCL where XLXSBJCL_BJCLID=:pBJCLID ");
|
|
sql.ParamByName("pBJCLID").Value = sBJCLID.Trim();
|
|
DataSet ds = dberp.OpenDataSet(sql);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
return ds.Tables[0].Rows[0]["XLXSBJCL_BJCLMC"].ToString().Trim();
|
|
else
|
|
return "";
|
|
}
|
|
private string GetBJCLHQ(string sBJCLID)
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL sql = new TSQL(dberp);
|
|
sql.Add(" select case XLXSBJCL_BJHQ when '1' then '1|材料行情' else '2|物料行情' end as XLXSBJCL_BJHQ from XLXSBJCL where XLXSBJCL_BJCLID=:pBJCLID ");
|
|
sql.ParamByName("pBJCLID").Value = sBJCLID.Trim();
|
|
DataSet ds = dberp.OpenDataSet(sql);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
return ds.Tables[0].Rows[0]["XLXSBJCL_BJHQ"].ToString().Trim();
|
|
else
|
|
return "";
|
|
}
|
|
|
|
private string GetWLXX(string sWLID)
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL sql = new TSQL(dberp);
|
|
sql.Add("select WL_MC,WL_GG from WL where WL_WLID=:pWLID");
|
|
sql.ParamByName("pWLID").Value = sWLID.Trim();
|
|
DataSet ds = dberp.OpenDataSet(sql);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
return sWLID.Trim() + "|" + ds.Tables[0].Rows[0]["WL_MC"].ToString().Trim() + "|" + ds.Tables[0].Rows[0]["WL_GG"].ToString().Trim();
|
|
else
|
|
return sWLID.Trim();
|
|
}
|
|
|
|
private string GetBJCP()
|
|
{
|
|
string sRetValue = "";
|
|
string sXLXHID = PageParam.GetRTrimString("XLXHID");
|
|
string sXLGGID = PageParam.GetRTrimString("XLGGID");
|
|
string sXLBZID = GetXLBZXX(PageParam.GetRTrimString("XLBZID"));
|
|
string sDYDJID = PageParam.GetRTrimString("DYDJID");
|
|
|
|
if (!sXLXHID.Equals(""))
|
|
{
|
|
sRetValue = sRetValue + " " + sXLXHID;
|
|
}
|
|
|
|
if (!sXLGGID.Equals(""))
|
|
{
|
|
sRetValue = sRetValue + " " + sXLGGID;
|
|
}
|
|
|
|
if (!sXLBZID.Equals(""))
|
|
{
|
|
sRetValue = sRetValue + " " + sXLBZID;
|
|
}
|
|
|
|
if (!sDYDJID.Equals(""))
|
|
{
|
|
sRetValue = sRetValue + " " + sDYDJID;
|
|
}
|
|
sRetValue = sRetValue.Trim();
|
|
return sRetValue;
|
|
}
|
|
|
|
private string GetXLBZXX(string sXLBZID)
|
|
{
|
|
TDatabase dberp = TContextDatabases.GetDatabase("DBERP");
|
|
TSQL SQL = new TSQL(dberp);
|
|
SQL.Clear();
|
|
SQL.Add(" select rtrim(XLBZ_XLBZID)||'|'||rtrim(XLBZ_XLBZLXMC) as XLBZ_XLBZID from XLBZ where XLBZ_XLBZID= :pXLBZID ");
|
|
SQL.ParamByName("pXLBZID").Value = sXLBZID;
|
|
DataSet ds = dberp.OpenDataSet(SQL);
|
|
if (ds.Tables[0].Rows.Count > 0)
|
|
{
|
|
return ds.Tables[0].Rows[0][0].ToString().Trim();
|
|
}
|
|
else
|
|
return "";
|
|
}
|
|
|
|
private string strPadRight(string s, int x)
|
|
{
|
|
string str = s;
|
|
if (str.Split('.').Length == 2)
|
|
{
|
|
str = str.Split('.')[0] + "." + str.Split('.')[1].PadRight(x, '0');
|
|
}
|
|
else
|
|
{
|
|
string tmp = "0";
|
|
if (x > 0)
|
|
{
|
|
tmp = tmp.PadRight(x, '0');
|
|
str = str + "." + tmp;
|
|
}
|
|
}
|
|
return str;
|
|
}
|
|
|
|
#endregion
|
|
|
|
#region 按钮事件
|
|
|
|
#endregion
|
|
}
|
|
}
|