267 lines
11 KiB
C#
267 lines
11 KiB
C#
using BLL;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data;
|
|
using System.Data.SqlClient;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
|
|
namespace FineUIPro.Web.HJGL.CheckManage
|
|
{
|
|
public partial class ShowTrust :PageBase
|
|
{
|
|
#region 定义变量
|
|
/// <summary>
|
|
/// 委托单主键
|
|
/// </summary>
|
|
public string Trust_ID
|
|
{
|
|
get
|
|
{
|
|
return (string)ViewState["Trust_ID"];
|
|
}
|
|
set
|
|
{
|
|
ViewState["Trust_ID"] = value;
|
|
}
|
|
}
|
|
|
|
private List<Model.View_CH_CheckSerch> viewCheckSerchs = new List<Model.View_CH_CheckSerch>();
|
|
#endregion
|
|
|
|
#region 加载
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
string unitId = Request.Params["unitId"];
|
|
string installationId = Request.Params["installationId"];
|
|
|
|
BLL.UnitService.InitUnitByProjectIdUnitTypeDropDownList(this.drpCheckUnitId, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_5, true);//查询检测单位
|
|
|
|
var unit = BLL.UnitService.GetUnitByUnitId(this.CurrUser.UnitId);
|
|
if (BLL.WorkAreaService.IsSupervisor(this.CurrUser.UnitId, this.CurrUser.LoginProjectId))
|
|
{
|
|
BLL.WorkAreaService.GetWorkAreaListByInstallSupervisorUnit(this.drpWorkArea, this.CurrUser.LoginProjectId, installationId, unitId, this.CurrUser.UnitId, true);
|
|
}
|
|
else
|
|
{
|
|
BLL.WorkAreaService.GetWorkAreaListByInstallUnit(this.drpWorkArea, this.CurrUser.LoginProjectId, installationId, unitId, true);
|
|
}
|
|
|
|
if (!String.IsNullOrEmpty(Request.Params["ch_TrustID"]))
|
|
{
|
|
Trust_ID = Request.Params["ch_TrustID"].ToString();
|
|
var trust = BLL.TrustManageEditService.GetCH_TrustByID(Trust_ID);
|
|
if (trust != null)
|
|
{
|
|
this.txtTrust_ID.Text = trust.CH_TrustCode;
|
|
}
|
|
this.drpCheckUnitId.Enabled = false;
|
|
this.drpWorkArea.Enabled = false;
|
|
this.txtTrust_ID.Enabled = false;
|
|
}
|
|
else
|
|
{
|
|
this.drpCheckUnitId.Enabled = true;
|
|
this.drpWorkArea.Enabled = true;
|
|
this.txtTrust_ID.Enabled = true;
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 查询
|
|
/// <summary>
|
|
/// 查询
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnSearch_Click(object sender, EventArgs e)
|
|
{
|
|
InitTreeMenu();
|
|
}
|
|
|
|
private void GetNodes(TreeNodeCollection nodes, string parentId)
|
|
{
|
|
if (parentId != null)
|
|
{
|
|
if (this.drpCheckUnitId.SelectedValue != BLL.Const._Null&&!string.IsNullOrEmpty(this.drpCheckUnitId.SelectedValue))
|
|
{
|
|
viewCheckSerchs = viewCheckSerchs.Where(x => x.CH_CheckUnit == this.drpCheckUnitId.SelectedValue).ToList();
|
|
}
|
|
else if (this.CurrUser.UnitId != null && BLL.UnitService.GetUnitByUnitId(this.CurrUser.UnitId).UnitTypeId == BLL.Const.ProjectUnitType_5)
|
|
{ //显示和检测单位相关的单子
|
|
viewCheckSerchs = viewCheckSerchs.Where(x => x.CH_CheckUnit == this.CurrUser.UnitId).ToList();
|
|
}
|
|
if (!string.IsNullOrEmpty(this.txtTrust_ID.Text.Trim()))
|
|
{
|
|
viewCheckSerchs = viewCheckSerchs.Where(x => x.CH_TrustCode.Contains(this.txtTrust_ID.Text.Trim())).ToList();
|
|
}
|
|
|
|
if (!String.IsNullOrEmpty(Trust_ID)) // 直接查找委托单明细
|
|
{
|
|
var trust = BLL.TrustManageEditService.GetCH_TrustByID(Trust_ID);
|
|
TreeNode newNode = new TreeNode();
|
|
newNode.Text = trust.CH_TrustCode;
|
|
newNode.NodeID = trust.CH_TrustID;
|
|
newNode.EnableClickEvent = true;
|
|
nodes.Add(newNode);
|
|
}
|
|
else
|
|
{
|
|
var trustIds = (from x in viewCheckSerchs
|
|
where x.WorkAreaId == parentId
|
|
select new { x.CH_TrustID, x.CH_TrustCode }).Distinct();
|
|
if (trustIds != null)
|
|
{
|
|
foreach (var trustId in trustIds)
|
|
{
|
|
// 判断这个委托单是不是在检测单中存在,如果存在则不加载
|
|
int num = BLL.CheckManageService.GetCheckByTrustId(trustId.CH_TrustID);
|
|
if (num == 0)
|
|
{
|
|
TreeNode newNode = new TreeNode();
|
|
newNode.Text = trustId.CH_TrustCode;
|
|
newNode.NodeID = trustId.CH_TrustID;
|
|
newNode.EnableClickEvent = true;
|
|
nodes.Add(newNode);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 加载树
|
|
/// <summary>
|
|
/// 加载树节点
|
|
/// </summary>
|
|
/// <param name="selectedValue"></param>
|
|
private void InitTreeMenu()
|
|
{
|
|
string unitId = Request.Params["unitId"];
|
|
string installationId = Request.Params["installationId"];
|
|
viewCheckSerchs.Clear();
|
|
this.tvControlItem.Nodes.Clear();
|
|
if (this.drpCheckUnitId.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpCheckUnitId.SelectedValue))
|
|
{
|
|
viewCheckSerchs = (from x in Funs.DB.View_CH_CheckSerch where x.ProjectId == this.CurrUser.LoginProjectId && x.CH_CheckUnit == this.drpCheckUnitId.SelectedValue select x).ToList();
|
|
}
|
|
else
|
|
{
|
|
viewCheckSerchs = (from x in Funs.DB.View_CH_CheckSerch where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitId == unitId select x).ToList();
|
|
}
|
|
if (this.drpWorkArea.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpWorkArea.SelectedValue))
|
|
{
|
|
TreeNode rootNode = new TreeNode();
|
|
rootNode.Text = this.drpWorkArea.SelectedItem.Text;
|
|
rootNode.NodeID = this.drpWorkArea.SelectedValue;
|
|
rootNode.Expanded = true;
|
|
viewCheckSerchs = viewCheckSerchs.Where(x => x.WorkAreaId == this.drpWorkArea.SelectedValue).ToList();
|
|
this.tvControlItem.Nodes.Add(rootNode);
|
|
this.GetNodes(rootNode.Nodes, rootNode.NodeID);
|
|
}
|
|
else
|
|
{
|
|
var workAreas = (from x in Funs.DB.ProjectData_WorkArea where x.UnitId == unitId && x.InstallationId == installationId select x).ToList();
|
|
var workAreasIds = workAreas.Select(x => x.WorkAreaId);
|
|
viewCheckSerchs = viewCheckSerchs.Where(x => workAreasIds.Contains(x.WorkAreaId)).ToList();
|
|
foreach (var q in workAreas)
|
|
{
|
|
if (viewCheckSerchs.Count() > 0)
|
|
{
|
|
var isExWork = Funs.DB.View_CH_CheckSerch.FirstOrDefault(x => x.WorkAreaId == q.WorkAreaId);
|
|
if (isExWork != null)
|
|
{
|
|
TreeNode tn = new TreeNode();
|
|
tn.Text = q.WorkAreaCode;
|
|
tn.NodeID = q.WorkAreaId;
|
|
this.tvControlItem.Nodes.Add(tn);
|
|
this.GetNodes(tn.Nodes, tn.NodeID);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
|
|
#region 树点击事件
|
|
/// <summary>
|
|
/// Tree点击事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
|
|
{
|
|
this.Trust_ID = this.tvControlItem.SelectedNode.NodeID;
|
|
BindGrid(this.Trust_ID);
|
|
}
|
|
#endregion
|
|
|
|
#region 数据绑定
|
|
/// <summary>
|
|
/// 数据绑定
|
|
/// </summary>
|
|
private void BindGrid(string trust_ID)
|
|
{
|
|
string strSql = @"select checkSearch.ProjectId,
|
|
checkSearch.JOT_ID,
|
|
checkSearch.CH_TrustID,
|
|
checkSearch.CH_TrustCode,
|
|
checkSearch.UnitId,
|
|
checkSearch.UnitName,
|
|
checkSearch.ISO_IsoNo,
|
|
checkSearch.JOT_JointNo,
|
|
checkSearch.DetectionTypeId,
|
|
checkSearch.DetectionTypeName,
|
|
checkSearch.JOT_JointDesc"
|
|
+ @" from View_CH_CheckSerch as checkSearch "
|
|
+ @" WHERE checkSearch.ProjectId= @projectId AND checkSearch.CH_TrustID=@CH_TrustID";
|
|
List<SqlParameter> listStr = new List<SqlParameter>
|
|
{
|
|
new SqlParameter("@projectId", this.CurrUser.LoginProjectId),
|
|
new SqlParameter("@CH_TrustID",trust_ID),
|
|
};
|
|
SqlParameter[] parameter = listStr.ToArray();
|
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|
Grid1.RecordCount = tb.Rows.Count;
|
|
// var table = this.GetPagedDataTable(Grid1, tb);
|
|
Grid1.DataSource = tb;
|
|
Grid1.DataBind();
|
|
}
|
|
#endregion
|
|
|
|
#region 确定
|
|
/// <summary>
|
|
/// 确定按钮
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnSure_Click(object sender, EventArgs e)
|
|
{
|
|
string selectedList = string.Empty;
|
|
foreach (var item in Grid1.SelectedRowIDArray)
|
|
{
|
|
selectedList += item + ",";
|
|
}
|
|
if (!string.IsNullOrEmpty(selectedList))
|
|
{
|
|
selectedList = selectedList.Substring(0, selectedList.LastIndexOf(","));
|
|
}
|
|
|
|
selectedList += "|" + this.Trust_ID;
|
|
PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(selectedList)
|
|
+ ActiveWindow.GetHidePostBackReference());
|
|
}
|
|
#endregion
|
|
}
|
|
} |