质量设计图纸界面优化:补充左侧按主项和专业下拉树分类

This commit is contained in:
2025-11-20 17:50:58 +08:00
parent cf47e78b85
commit 787b9de1ae
11 changed files with 1164 additions and 729 deletions
@@ -30,6 +30,35 @@ namespace FineUIPro.Web.CQMS.DesignDrawing
}
}
/// <summary>
/// SubjectCode
/// </summary>
public string SubjectCode
{
get
{
return (string)ViewState["SubjectCode"];
}
set
{
ViewState["SubjectCode"] = value;
}
}
/// <summary>
/// MajorNo
/// </summary>
public string MajorNo
{
get
{
return (string)ViewState["MajorNo"];
}
set
{
ViewState["MajorNo"] = value;
}
}
#region
/// <summary>
@@ -41,38 +70,122 @@ namespace FineUIPro.Web.CQMS.DesignDrawing
{
if (!IsPostBack)
{
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
this.ProjectId = this.CurrUser.LoginProjectId;
this.InitDropDownList();
GetButtonPower();
////权限按钮方法
//UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpSponsorUnit, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2, true);
//UnitWorkService.InitUnitWorkDownList(drpUnitWork, this.CurrUser.LoginProjectId, true);
//CNProfessionalService.InitCNProfessionalDownList(drpCNProfessional, true);
//QualityQuestionTypeService.InitQualityQuestionTypeDownList(drpQuestionType, true);
//Funs.FineUIPleaseSelect(this.dpHandelStatus);
//btnNew.OnClientClick = Window1.GetShowReference("ChecklistEdit.aspx") + "return false;";
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
//if (ProjectUnitService.GetProjectUnitTypeByProjectIdUnitId(this.CurrUser.LoginProjectId, CurrUser.UnitId))
//{
// drpSponsorUnit.SelectedValue = CurrUser.UnitId;
// drpSponsorUnit.Readonly = true;
//}
// 绑定表格
BindGrid();
InitTreeMenu();
}
}
#region
/// <summary>
/// 加载树
/// </summary>
private void InitTreeMenu()
{
this.trSubjectMajor.Nodes.Clear();
this.trSubjectMajor.ShowBorder = false;
this.trSubjectMajor.ShowHeader = false;
this.trSubjectMajor.EnableIcons = true;
this.trSubjectMajor.AutoScroll = true;
this.trSubjectMajor.EnableSingleClickExpand = true;
var subjects = (from x in Funs.DB.IDP_DesignDrawing
where x.ProjectId == this.CurrUser.LoginProjectId
orderby x.ProjectDeviceProcedureSubjectCode
select new
{
x.ProjectDeviceProcedureSubjectCode,
x.WbsFullPath
}).Distinct().ToList();
foreach (var q in subjects)
{
TreeNode newNode = new TreeNode();
newNode.Text = $"[{q.ProjectDeviceProcedureSubjectCode}]{q.WbsFullPath}";
newNode.NodeID = q.ProjectDeviceProcedureSubjectCode;
newNode.CommandName = "Subject";
newNode.EnableExpandEvent = true;
newNode.EnableClickEvent = true;
this.trSubjectMajor.Nodes.Add(newNode);
TreeNode emptyNode = new TreeNode();
emptyNode.Text = "";
emptyNode.NodeID = "";
newNode.Nodes.Add(emptyNode);
}
}
#endregion
#region
/// <summary>
/// 展开树
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void trSubjectMajor_NodeExpand(object sender, TreeNodeEventArgs e)
{
e.Node.Nodes.Clear();
if (e.Node.CommandName == "Subject") //展开装工主编码、名称
{
var majors = (from x in BLL.Funs.DB.IDP_DesignDrawing
where x.ProjectDeviceProcedureSubjectCode == e.Node.NodeID && x.ProjectId == this.CurrUser.LoginProjectId
orderby x.MajorNo
select new
{
x.MajorNo,
x.MajorName
}).Distinct().ToList();
foreach (var q in majors)
{
TreeNode newNode = new TreeNode();
newNode.Text = $"[{q.MajorNo}]{q.MajorName}";
newNode.NodeID = $"{e.Node.NodeID}#{q.MajorNo}";
newNode.CommandName = "Major";
newNode.EnableExpandEvent = true;
newNode.EnableClickEvent = true;
newNode.EnableCheckBox = false;
newNode.EnableCheckEvent = false;
e.Node.Nodes.Add(newNode);
}
}
}
#endregion
#region Tree点击事件
/// <summary>
/// Tree点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void trSubjectMajor_NodeCommand(object sender, TreeCommandEventArgs e)
{
if (this.trSubjectMajor.SelectedNode.ParentNode == null)
{
//return;
this.SubjectCode = this.trSubjectMajor.SelectedNode.NodeID;
this.MajorNo = string.Empty;
}
else
{
this.SubjectCode = this.trSubjectMajor.SelectedNode.ParentNode.NodeID;
this.MajorNo = this.trSubjectMajor.SelectedNode.NodeID.Split('#')[1];
}
BindGrid();
}
#endregion
/// <summary>
/// 下拉加载
/// </summary>
private void InitDropDownList()
{
BLL.DesignDrawingService.InitWbsFullPathDropDownList(this.ddlWbsFullPath, this.CurrUser.LoginProjectId, false);
BLL.DesignDrawingService.InitFileVersionDropDownList(this.ddlFileVersion, this.CurrUser.LoginProjectId, false);
BLL.DesignDrawingService.InitMajorNameDropDownList(this.ddlMajorName, this.CurrUser.LoginProjectId, false);
//BLL.DesignDrawingService.InitWbsFullPathDropDownList(this.ddlWbsFullPath, this.CurrUser.LoginProjectId, false);
//BLL.DesignDrawingService.InitMajorNameDropDownList(this.ddlMajorName, this.CurrUser.LoginProjectId, false);
//BLL.DesignDrawingService.InitMajorNoDropDownList(this.ddlMajorNo, this.CurrUser.LoginProjectId, false);
BLL.DesignDrawingService.InitFileVersionDropDownList(this.ddlFileVersion, this.CurrUser.LoginProjectId, false);
BLL.DesignDrawingService.InitStatusNameDropDownList(this.ddlStatus, this.CurrUser.LoginProjectId, false);
BLL.DesignDrawingService.InitClassDropDownList(this.ddlClass, this.CurrUser.LoginProjectId, false);
@@ -94,10 +207,19 @@ namespace FineUIPro.Web.CQMS.DesignDrawing
protected DataTable BindData()
{
string strSql = $@"SELECT * FROM IDP_DesignDrawing as lib WHERE lib.ProjectId=@ProjectId ";
//ORDER BY lib.updatetime DESC
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (!string.IsNullOrEmpty(this.SubjectCode))
{
strSql += " AND ProjectDeviceProcedureSubjectCode = @SubjectCode ";
listStr.Add(new SqlParameter("@SubjectCode", this.SubjectCode));
}
if (!string.IsNullOrEmpty(this.MajorNo))
{
strSql += " AND MajorNo = @MajorNo ";
listStr.Add(new SqlParameter("@MajorNo", this.MajorNo));
}
if (!string.IsNullOrEmpty(txtStartUpdateTime.Text.Trim()))
{
strSql += " AND UpdateTime >= @startUpdateTime ";
@@ -128,21 +250,36 @@ namespace FineUIPro.Web.CQMS.DesignDrawing
strSql += " AND Printtime <= @endPrintTime ";
listStr.Add(new SqlParameter("@endPrintTime", $"{Funs.GetNewDateTime(txtEndPrintTime.Text.Trim())} 23:59:59"));
}
if (this.ddlWbsFullPath.SelectedItemArray.Count() > 1 || (this.ddlWbsFullPath.SelectedValue != BLL.Const._Null && this.ddlWbsFullPath.SelectedItemArray.Count() == 1))
{
strSql += " AND (1=2 ";
int i = 0;
foreach (var item in this.ddlWbsFullPath.SelectedValueArray)
{
if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
{
strSql += " OR WbsFullPath = @WbsFullPath" + i.ToString();
listStr.Add(new SqlParameter("@WbsFullPath" + i.ToString(), item));
}
i++;
}
strSql += ")";
}
//if (this.ddlWbsFullPath.SelectedItemArray.Count() > 1 || (this.ddlWbsFullPath.SelectedValue != BLL.Const._Null && this.ddlWbsFullPath.SelectedItemArray.Count() == 1))
//{
// strSql += " AND (1=2 ";
// int i = 0;
// foreach (var item in this.ddlWbsFullPath.SelectedValueArray)
// {
// if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
// {
// strSql += " OR WbsFullPath = @WbsFullPath" + i.ToString();
// listStr.Add(new SqlParameter("@WbsFullPath" + i.ToString(), item));
// }
// i++;
// }
// strSql += ")";
//}
//if (this.ddlMajorName.SelectedItemArray.Count() > 1 || (this.ddlMajorName.SelectedValue != BLL.Const._Null && this.ddlMajorName.SelectedItemArray.Count() == 1))
//{
// strSql += " AND (1=2 ";
// int i = 0;
// foreach (var item in this.ddlMajorName.SelectedValueArray)
// {
// if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
// {
// strSql += " OR MajorName = @MajorName" + i.ToString();
// listStr.Add(new SqlParameter("@MajorName" + i.ToString(), item));
// }
// i++;
// }
// strSql += ")";
//}
if (this.ddlFileVersion.SelectedItemArray.Count() > 1 || (this.ddlFileVersion.SelectedValue != BLL.Const._Null && this.ddlFileVersion.SelectedItemArray.Count() == 1))
{
strSql += " AND (1=2 ";
@@ -158,21 +295,6 @@ namespace FineUIPro.Web.CQMS.DesignDrawing
}
strSql += ")";
}
if (this.ddlMajorName.SelectedItemArray.Count() > 1 || (this.ddlMajorName.SelectedValue != BLL.Const._Null && this.ddlMajorName.SelectedItemArray.Count() == 1))
{
strSql += " AND (1=2 ";
int i = 0;
foreach (var item in this.ddlMajorName.SelectedValueArray)
{
if (!string.IsNullOrEmpty(item) && item != BLL.Const._Null)
{
strSql += " OR MajorName = @MajorName" + i.ToString();
listStr.Add(new SqlParameter("@MajorName" + i.ToString(), item));
}
i++;
}
strSql += ")";
}
if (this.ddlStatus.SelectedItemArray.Count() > 1 || (this.ddlStatus.SelectedValue != BLL.Const._Null && this.ddlStatus.SelectedItemArray.Count() == 1))
{
strSql += " AND (1=2 ";
@@ -316,32 +438,6 @@ namespace FineUIPro.Web.CQMS.DesignDrawing
Grid1.DataSource = table;
Grid1.DataBind();
//for (int i = 0; i < Grid1.Rows.Count; i++)
//{
// string rowID = Grid1.Rows[i].DataKeys[0].ToString();
// if (rowID.Count() > 0)
// {
// Model.Check_CheckControl checkControl = BLL.CheckControlService.GetCheckControl(rowID);
// if (checkControl.State.Equals("5") || checkControl.State.Equals("6"))
// {
// Grid1.Rows[i].CellCssClasses[11] = "LightGreen";//未确认
// }
// else if (checkControl.State == Const.CheckControl_Complete)
// { //闭环
// Grid1.Rows[i].CellCssClasses[11] = "Green";
// }
// else if (Convert.ToDateTime(checkControl.LimitDate).AddDays(1) < DateTime.Now) //延期未整改
// {
// Grid1.Rows[i].CellCssClasses[11] = "Red";
// }
// else //期内未整改
// {
// Grid1.Rows[i].CellCssClasses[11] = " Yellow ";
// }
// }
//}
}
/// <summary>