1136 lines
56 KiB
C#
1136 lines
56 KiB
C#
|
using BLL;
|
|||
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Data;
|
|||
|
using System.Data.SqlClient;
|
|||
|
using System.Linq;
|
|||
|
using Newtonsoft.Json.Linq;
|
|||
|
using System.IO;
|
|||
|
using NPOI.XSSF.UserModel;
|
|||
|
using NPOI.SS.UserModel;
|
|||
|
using System.Runtime.Serialization;
|
|||
|
using NPOI.SS.Util;
|
|||
|
using NPOI.HSSF.UserModel;
|
|||
|
using FineUIPro.Web.CQMS.Check;
|
|||
|
|
|||
|
namespace FineUIPro.Web.HJGL.CheckManage
|
|||
|
{
|
|||
|
public partial class CheckManageAudit : PageBase
|
|||
|
{
|
|||
|
#region 定义变量
|
|||
|
/// <summary>
|
|||
|
/// 检测主键
|
|||
|
/// </summary>
|
|||
|
public string CHT_CheckID
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return (string)ViewState["CHT_CheckID"];
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
ViewState["CHT_CheckID"] = value;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 委托单号
|
|||
|
/// </summary>
|
|||
|
public string CH_TrustID
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return (string)ViewState["CH_TrustID"];
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
ViewState["CH_TrustID"] = value;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 检测类型
|
|||
|
/// </summary>
|
|||
|
public string NDTTypeCode
|
|||
|
{
|
|||
|
get
|
|||
|
{
|
|||
|
return (string)ViewState["NDTTypeCode"];
|
|||
|
}
|
|||
|
set
|
|||
|
{
|
|||
|
ViewState["NDTTypeCode"] = value;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 检测单细表集合
|
|||
|
/// </summary>
|
|||
|
public static Dictionary<string, List<Model.View_CH_CheckItem>> checkItems = new Dictionary<string, List<Model.View_CH_CheckItem>>();
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 加载
|
|||
|
/// <summary>
|
|||
|
/// 加载页面
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void Page_Load(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!IsPostBack)
|
|||
|
{
|
|||
|
this.txtCheckTime.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
|
|||
|
BLL.UnitService.InitUnitByProjectIdUnitTypeDropDownList(this.drpCheckUnit, this.CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_5, true);//查询检测单位
|
|||
|
BLL.UserService.InitUserDropDownList(this.ddlAuditMan, this.CurrUser.LoginProjectId, true);//审核人
|
|||
|
|
|||
|
this.InitTreeMenu();//加载树
|
|||
|
|
|||
|
//报表类型
|
|||
|
this.drpPrintType.DataTextField = "Text";
|
|||
|
this.drpPrintType.DataValueField = "Value";
|
|||
|
this.drpPrintType.DataSource = BLL.DropListService.NDTCheckSelectPrint();
|
|||
|
this.drpPrintType.DataBind();
|
|||
|
//Funs.FineUIPleaseSelect(this.drpPrintType);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 加载树装置-单位-工作区
|
|||
|
/// <summary>
|
|||
|
/// 加载树
|
|||
|
/// </summary>
|
|||
|
private void InitTreeMenu()
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(this.txtCheckTime.Text.Trim()))
|
|||
|
{
|
|||
|
DateTime? startTime = Funs.GetNewDateTime(this.txtCheckTime.Text.Trim());
|
|||
|
DateTime? endTime = startTime.HasValue ? startTime.Value.AddMonths(1) : System.DateTime.Now;
|
|||
|
|
|||
|
this.tvControlItem.Nodes.Clear();
|
|||
|
TreeNode rootNode = new TreeNode();
|
|||
|
rootNode.Text = "单位-装置-月份";
|
|||
|
rootNode.NodeID = "0";
|
|||
|
rootNode.Expanded = true;
|
|||
|
this.tvControlItem.Nodes.Add(rootNode);
|
|||
|
|
|||
|
List<Model.Base_Unit> units = null;
|
|||
|
var unit = BLL.ProjectUnitService.GetProjectUnitByUnitIdProjectId(this.CurrUser.LoginProjectId, this.CurrUser.UnitId);
|
|||
|
if (unit == null || unit.UnitType == BLL.Const.ProjectUnitType_1 || unit.UnitType == BLL.Const.ProjectUnitType_5 || unit.UnitType == BLL.Const.ProjectUnitType_3)
|
|||
|
{
|
|||
|
if (BLL.WorkAreaService.IsSupervisor(this.CurrUser.UnitId, this.CurrUser.LoginProjectId))
|
|||
|
{
|
|||
|
units = (from x in Funs.DB.Base_Unit
|
|||
|
join y in Funs.DB.ProjectData_WorkArea on x.UnitId equals y.UnitId
|
|||
|
where (x.UnitId == this.CurrUser.UnitId || y.SupervisorUnitId == this.CurrUser.UnitId) && y.ProjectId == this.CurrUser.LoginProjectId
|
|||
|
select x).Distinct().ToList();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
units = BLL.UnitService.GetUnitByProjectIdUnitTypeList(this.CurrUser.LoginProjectId, "2");
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
units = (from x in Funs.DB.Base_Unit where x.UnitId == this.CurrUser.UnitId select x).ToList();
|
|||
|
}
|
|||
|
List<Model.CH_Check> checkLists = new List<Model.CH_Check>(); ///检测单
|
|||
|
if (!this.txtCheckTime.Hidden)
|
|||
|
{
|
|||
|
checkLists = (from x in Funs.DB.CH_Check
|
|||
|
where x.ProjectId == this.CurrUser.LoginProjectId && x.CHT_CheckDate >= startTime && x.CHT_CheckDate < endTime
|
|||
|
select x).ToList();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
checkLists = (from x in Funs.DB.CH_Check
|
|||
|
where x.ProjectId == this.CurrUser.LoginProjectId && x.CHT_CheckCode.Contains(this.txtSearchCode.Text.Trim())
|
|||
|
select x).ToList();
|
|||
|
}
|
|||
|
if (this.drpCheckUnit.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpCheckUnit.SelectedValue))
|
|||
|
{
|
|||
|
checkLists = (from x in Funs.DB.CH_Check
|
|||
|
where x.ProjectId == this.CurrUser.LoginProjectId && x.ContractualUnits == this.drpCheckUnit.SelectedValue
|
|||
|
select x).ToList();
|
|||
|
}
|
|||
|
if (units != null)
|
|||
|
{
|
|||
|
foreach (var item in units)
|
|||
|
{
|
|||
|
TreeNode rootUnitNode = new TreeNode();//定义根节点
|
|||
|
rootUnitNode.Text = item.UnitName;
|
|||
|
rootUnitNode.NodeID = item.UnitId;
|
|||
|
rootUnitNode.Expanded = true;
|
|||
|
rootUnitNode.ToolTip = "施工单位";
|
|||
|
rootNode.Nodes.Add(rootUnitNode);
|
|||
|
var checkList = checkLists.Where(x => x.UnitId == item.UnitId).ToList();
|
|||
|
this.BindNodes(rootUnitNode, checkList);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("请先增加施工单位!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("请选择检测报告月份!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 绑定树节点
|
|||
|
/// <summary>
|
|||
|
/// 绑定树节点
|
|||
|
/// </summary>
|
|||
|
/// <param name="node"></param>
|
|||
|
private void BindNodes(TreeNode node, List<Model.CH_Check> checkList)
|
|||
|
{
|
|||
|
if (node.ToolTip == "施工单位")
|
|||
|
{
|
|||
|
var installId = (from x in checkList select x.InstallationId).Distinct();
|
|||
|
if (installId.Count() > 0)
|
|||
|
{
|
|||
|
var install = from x in Funs.DB.Project_Installation where installId.Contains(x.InstallationId) orderby x.InstallationCode select x;
|
|||
|
foreach (var q in install)
|
|||
|
{
|
|||
|
TreeNode newNode = new TreeNode();
|
|||
|
newNode.Text = q.InstallationName;
|
|||
|
newNode.NodeID = q.InstallationId + "|" + node.NodeID; ;
|
|||
|
newNode.ToolTip = "装置";
|
|||
|
newNode.Expanded = true;
|
|||
|
node.Nodes.Add(newNode);
|
|||
|
this.BindNodes(newNode, checkList);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else if (node.ToolTip == "装置")
|
|||
|
{
|
|||
|
string installationId = Funs.GetStrListByStr(node.NodeID, '|')[0];
|
|||
|
var pointListMonth = (from x in checkList
|
|||
|
where x.InstallationId == installationId && x.UnitId == node.ParentNode.NodeID
|
|||
|
select string.Format("{0:yyyy-MM}", x.CHT_CheckDate)).Distinct();
|
|||
|
foreach (var item in pointListMonth)
|
|||
|
{
|
|||
|
TreeNode newNode = new TreeNode();
|
|||
|
newNode.Text = item;
|
|||
|
newNode.NodeID = item + "|" + node.NodeID; ;
|
|||
|
newNode.ToolTip = "月份";
|
|||
|
node.Nodes.Add(newNode);
|
|||
|
this.BindNodes(newNode, checkList);
|
|||
|
}
|
|||
|
}
|
|||
|
else if (node.ToolTip == "月份")
|
|||
|
{
|
|||
|
string installationId = Funs.GetStrListByStr(node.ParentNode.NodeID, '|')[0];
|
|||
|
var days = (from x in checkList
|
|||
|
where x.InstallationId == installationId && x.UnitId == node.ParentNode.ParentNode.NodeID
|
|||
|
orderby x.CHT_CheckDate descending
|
|||
|
select x.CHT_CheckDate).Distinct();
|
|||
|
foreach (var item in days)
|
|||
|
{
|
|||
|
TreeNode newNode = new TreeNode();
|
|||
|
newNode.Text = string.Format("{0:yyyy-MM-dd}", item);
|
|||
|
newNode.NodeID = item.ToString() + "|" + node.NodeID; ;
|
|||
|
newNode.ToolTip = "日期";
|
|||
|
node.Nodes.Add(newNode);
|
|||
|
this.BindNodes(newNode, checkList);
|
|||
|
}
|
|||
|
}
|
|||
|
else if (node.ToolTip == "日期")
|
|||
|
{
|
|||
|
string installationId = Funs.GetStrListByStr(node.ParentNode.ParentNode.NodeID, '|')[0];
|
|||
|
var dReports = from x in checkList
|
|||
|
where x.InstallationId == installationId && x.UnitId == node.ParentNode.ParentNode.ParentNode.NodeID
|
|||
|
&& x.CHT_CheckDate == Funs.GetNewDateTime(node.Text)
|
|||
|
orderby x.CHT_CheckCode descending
|
|||
|
select x;
|
|||
|
foreach (var item in dReports)
|
|||
|
{
|
|||
|
TreeNode newNode = new TreeNode();
|
|||
|
if (!string.IsNullOrEmpty(item.CHT_CheckCode))
|
|||
|
{
|
|||
|
newNode.Text = item.CHT_CheckCode;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
newNode.Text = "未知";
|
|||
|
}
|
|||
|
if (!item.CHT_AuditDate.HasValue || string.IsNullOrEmpty(item.CHT_AuditMan))
|
|||
|
{
|
|||
|
newNode.Text = "<font color='#FF7575'>" + newNode.Text + "</font>";
|
|||
|
node.Text = "<font color='#FF7575'>" + node.Text + "</font>";
|
|||
|
node.ParentNode.Text = "<font color='#FF7575'>" + node.ParentNode.Text + "</font>";
|
|||
|
}
|
|||
|
newNode.NodeID = item.CHT_CheckID;
|
|||
|
newNode.EnableClickEvent = true;
|
|||
|
node.Nodes.Add(newNode);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 查询Tree
|
|||
|
/// <summary>
|
|||
|
/// 按日期、单号查询
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void ckFind_SelectedIndexChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.ckFind.SelectedValue == "0")
|
|||
|
{
|
|||
|
this.txtCheckTime.Hidden = false;
|
|||
|
this.txtSearchCode.Hidden = true;
|
|||
|
if (string.IsNullOrEmpty(this.txtCheckTime.Text))
|
|||
|
{
|
|||
|
this.txtCheckTime.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
this.txtCheckTime.Hidden = true;
|
|||
|
this.txtSearchCode.Hidden = false;
|
|||
|
}
|
|||
|
this.InitTreeMenu();
|
|||
|
}
|
|||
|
|
|||
|
protected void Tree_TextChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
this.InitTreeMenu();
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region Tree点击事件
|
|||
|
/// <summary>
|
|||
|
/// Tree点击事件
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
|
|||
|
{
|
|||
|
if (checkItems.ContainsKey(this.CurrUser.UserId))
|
|||
|
{
|
|||
|
checkItems[CurrUser.UserId].Clear();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
checkItems.Add(this.CurrUser.UserId, new List<Model.View_CH_CheckItem>());
|
|||
|
}
|
|||
|
|
|||
|
var tempCheckItems = checkItems[CurrUser.UserId];
|
|||
|
this.CHT_CheckID = this.tvControlItem.SelectedNodeID;
|
|||
|
if (!string.IsNullOrEmpty(this.CHT_CheckID))
|
|||
|
{
|
|||
|
Model.CH_Check check = BLL.CheckManageService.GetCheckByCHT_CheckID(this.CHT_CheckID);
|
|||
|
if (check != null)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(check.CHT_AuditMan) && check.CHT_AuditDate.HasValue)
|
|||
|
{
|
|||
|
this.btnCancelAudit.Hidden = false;
|
|||
|
this.btnAudit.Hidden = true;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
this.btnAudit.Hidden = false;
|
|||
|
this.btnCancelAudit.Hidden = true;
|
|||
|
}
|
|||
|
|
|||
|
CH_TrustID = check.CH_TrustID;
|
|||
|
if (BLL.TrustManageEditService.GetCH_TrustByID(CH_TrustID) != null)
|
|||
|
{
|
|||
|
this.lbtnToTrust.Text = BLL.TrustManageEditService.GetCH_TrustByID(CH_TrustID).CH_TrustCode;
|
|||
|
}
|
|||
|
this.txtCheckCode.Text = check.CHT_CheckCode;
|
|||
|
if (!string.IsNullOrEmpty(check.UnitId))
|
|||
|
{
|
|||
|
this.txtUnitName.Text = BLL.UnitService.GetUnitNameByUnitId(check.UnitId);
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(check.InstallationId))
|
|||
|
{
|
|||
|
this.txtInstallationName.Text = BLL.Project_InstallationService.GetInstallationByInstallationId(check.InstallationId).InstallationName;
|
|||
|
}
|
|||
|
this.txtCheckType.Text = check.CHT_CheckType;
|
|||
|
if (!string.IsNullOrEmpty(check.CHT_Tabler))
|
|||
|
{
|
|||
|
this.txtTabler.Text = BLL.UserService.GetUserNameByUserId(check.CHT_Tabler);
|
|||
|
}
|
|||
|
this.txtTableDate.Text = check.CHT_TableDate.HasValue ? string.Format("{0:yyyy-MM-dd}", check.CHT_TableDate) : "";
|
|||
|
this.txtCheckDate.Text = check.CHT_CheckDate.HasValue ? string.Format("{0:yyyy-MM-dd}", check.CHT_CheckDate) : "";
|
|||
|
if (!string.IsNullOrEmpty(check.CHT_AuditMan))
|
|||
|
{
|
|||
|
this.ddlAuditMan.SelectedValue = check.CHT_AuditMan;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
this.ddlAuditMan.SelectedValue = this.CurrUser.UserId;
|
|||
|
}
|
|||
|
this.txtAuditDate.Text = check.CHT_AuditDate.HasValue ? string.Format("{0:yyyy-MM-dd}", check.CHT_AuditDate) : string.Format("{0:yyyy-MM-dd}", DateTime.Now);
|
|||
|
if (!string.IsNullOrEmpty(check.CHT_CheckMan))
|
|||
|
{
|
|||
|
this.txtCheckMan.Text = BLL.UserService.GetUserNameByUserId(check.CHT_CheckMan);
|
|||
|
}
|
|||
|
if (!string.IsNullOrEmpty(check.ContractualUnits))
|
|||
|
{
|
|||
|
this.txtContractualUnits.Text = BLL.UnitService.GetUnitNameByUnitId(check.ContractualUnits);
|
|||
|
}
|
|||
|
this.txtRemark.Text = check.CHT_Remark;
|
|||
|
|
|||
|
List<Model.CH_CheckItem> items = BLL.CheckItemManageService.GetTrustItemByCheck(CHT_CheckID);
|
|||
|
foreach (var t in items)
|
|||
|
{
|
|||
|
var checkItem = BLL.CheckItemManageService.GetTrustItemByCheckItem(t.CHT_CheckItemID);
|
|||
|
if (checkItem != null)
|
|||
|
{
|
|||
|
#region 查找委托中的检测类型并赋给检测类型变量
|
|||
|
if (!string.IsNullOrEmpty(t.CH_TrustItemID))
|
|||
|
{
|
|||
|
var trustId = (from x in Funs.DB.CH_TrustItem where x.CH_TrustItemID == t.CH_TrustItemID select x.CH_TrustID).FirstOrDefault();
|
|||
|
if (!string.IsNullOrEmpty(trustId))
|
|||
|
{
|
|||
|
var trust = BLL.TrustManageEditService.GetCH_TrustByID(trustId);
|
|||
|
if (trust != null)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(trust.CH_NDTMethod))
|
|||
|
{
|
|||
|
var ndtt = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(trust.CH_NDTMethod);
|
|||
|
if (ndtt != null)
|
|||
|
{
|
|||
|
this.NDTTypeCode = ndtt.DetectionTypeCode;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
tempCheckItems.Add(checkItem);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
if (tempCheckItems.Count > 0)
|
|||
|
{
|
|||
|
if (this.NDTTypeCode == "RT")
|
|||
|
{
|
|||
|
this.Grid1.Hidden = false;
|
|||
|
this.Grid2.Hidden = true;
|
|||
|
this.Grid1.DataSource = tempCheckItems;
|
|||
|
this.Grid1.DataBind();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
this.Grid1.Hidden = true;
|
|||
|
this.Grid2.Hidden = false;
|
|||
|
this.Grid2.DataSource = tempCheckItems;
|
|||
|
this.Grid2.DataBind();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
private void updateTreeMenu()
|
|||
|
{
|
|||
|
var checkLists = (from x in Funs.DB.CH_Check
|
|||
|
where x.ProjectId == this.CurrUser.LoginProjectId
|
|||
|
select x).ToList();
|
|||
|
foreach (TreeNode item in this.tvControlItem.Nodes)
|
|||
|
{
|
|||
|
updateChildTreeMenu(item, checkLists);
|
|||
|
}
|
|||
|
}
|
|||
|
private void updateChildTreeMenu(TreeNode node, List<Model.CH_Check> trustLists)
|
|||
|
{
|
|||
|
bool hasRed = false;
|
|||
|
foreach (TreeNode item in node.Nodes)
|
|||
|
{
|
|||
|
if (string.IsNullOrEmpty(item.ToolTip))
|
|||
|
{
|
|||
|
var t = trustLists.FirstOrDefault(x => x.CHT_CheckID == item.NodeID);
|
|||
|
if (t != null && (!t.CHT_AuditDate.HasValue || string.IsNullOrEmpty(t.CHT_AuditMan)))
|
|||
|
{
|
|||
|
hasRed = true;
|
|||
|
item.Text = "<font color='#FF7575'>" + item.Text + "</font>";
|
|||
|
item.ParentNode.Text = "<font color='#FF7575'>" + item.ParentNode.Text + "</font>";
|
|||
|
if (item.ParentNode.ParentNode != null)
|
|||
|
{
|
|||
|
item.ParentNode.ParentNode.Text = "<font color='#FF7575'>" + item.ParentNode.ParentNode.Text + "</font>";
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
item.Text = item.Text.Replace("<font color='#FF7575'>", "").Replace("</font>", "");
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
updateChildTreeMenu(item, trustLists);
|
|||
|
}
|
|||
|
}
|
|||
|
if (!hasRed)
|
|||
|
{
|
|||
|
node.Text = node.Text.Replace("<font color='#FF7575'>", "").Replace("</font>", "");
|
|||
|
if (node.ParentNode != null)
|
|||
|
{
|
|||
|
bool hasRed1 = false;
|
|||
|
foreach (TreeNode item1 in node.ParentNode.Nodes)
|
|||
|
{
|
|||
|
if (item1.Text.Contains("font"))
|
|||
|
{
|
|||
|
hasRed1 = true;
|
|||
|
}
|
|||
|
}
|
|||
|
if (!hasRed1)
|
|||
|
{
|
|||
|
node.ParentNode.Text = node.ParentNode.Text.Replace("<font color='#FF7575'>", "").Replace("</font>", "");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
#region 审核
|
|||
|
/// <summary>
|
|||
|
/// 审核
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnAudit_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.GetButtonPower(BLL.Const.BtnAuditing))
|
|||
|
{
|
|||
|
if (BLL.CheckManageService.GetCheckByCHT_CheckID(CHT_CheckID) != null)
|
|||
|
{
|
|||
|
Model.CH_Check check = new Model.CH_Check();
|
|||
|
check.CHT_CheckID = CHT_CheckID;
|
|||
|
var q = from x in BLL.Funs.DB.CH_CheckItem where x.CHT_CheckID == CHT_CheckID select x;
|
|||
|
if (q.Count() > 0)
|
|||
|
{
|
|||
|
int checkNum = q.Count();
|
|||
|
string trustItemId = q.First().CH_TrustItemID;
|
|||
|
string trustId = (from x in BLL.Funs.DB.CH_TrustItem where x.CH_TrustItemID == trustItemId select x.CH_TrustID).FirstOrDefault();
|
|||
|
|
|||
|
int trustNum = (from x in BLL.Funs.DB.CH_TrustItem
|
|||
|
join y in BLL.Funs.DB.PW_JointInfo on x.JOT_ID equals y.JOT_ID
|
|||
|
where x.CH_TrustID == trustId
|
|||
|
&& y.JOT_JointStatus != "104" //不包括切除口
|
|||
|
select x).Count();
|
|||
|
if (checkNum == trustNum)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(this.txtAuditDate.Text) && this.ddlAuditMan.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.ddlAuditMan.SelectedValue))
|
|||
|
{
|
|||
|
check.CHT_AuditMan = this.ddlAuditMan.SelectedValue;
|
|||
|
check.CHT_AuditDate = DateTime.Parse(this.txtAuditDate.Text);
|
|||
|
BLL.CheckManageService.UpdateCheckAudit(check);
|
|||
|
|
|||
|
BLL.CheckItemManageService.UpdateCheckItemAudioTime(CHT_CheckID, "1");
|
|||
|
|
|||
|
foreach (var item in q)
|
|||
|
{
|
|||
|
BLL.CheckItemManageService.UpdateJointCheckFlag(item.JOT_ID, "1");
|
|||
|
|
|||
|
var trust = BLL.CheckItemManageService.GetViewCheckItemByJOTID(item.JOT_ID);
|
|||
|
|
|||
|
if ((item.CHT_PassFilm != item.CHT_TotalFilm && trust.DetectionTypeCode == "RT") || (item.CHT_CheckResult == "不合格" && trust.DetectionTypeCode != "RT"))
|
|||
|
{
|
|||
|
BLL.RepairService.UpdateNewJointNo(item.JOT_ID, "R");
|
|||
|
}
|
|||
|
}
|
|||
|
this.btnCancelAudit.Hidden = false;
|
|||
|
this.btnAudit.Hidden = true;
|
|||
|
ShowNotify("审核完成!", MessageBoxIcon.Success);
|
|||
|
updateTreeMenu();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("请填写审核人和审核日期!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("对应的委托单还未检测完,不能审核!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("检测单没有任何明细,审核未完成!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("请选择要审核的单据!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 取消审核
|
|||
|
/// <summary>
|
|||
|
/// 取消审核
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnCancelAudit_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (this.GetButtonPower(BLL.Const.BtnCancelAuditing))
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(CHT_CheckID))
|
|||
|
{
|
|||
|
if (BLL.CheckManageService.GetCheckByCHT_CheckID(CHT_CheckID) != null)
|
|||
|
{
|
|||
|
Model.CH_Check check = new Model.CH_Check();
|
|||
|
check.CHT_CheckID = CHT_CheckID;
|
|||
|
check.CHT_AuditMan = null;
|
|||
|
check.CHT_AuditDate = null;
|
|||
|
this.btnCancelAudit.Hidden = true;
|
|||
|
this.btnAudit.Hidden = false;
|
|||
|
BLL.CheckManageService.UpdateCheckAudit(check);
|
|||
|
|
|||
|
BLL.CheckItemManageService.UpdateCheckItemAudioTime(CHT_CheckID, "2");
|
|||
|
|
|||
|
var checks = from x in Funs.DB.CH_CheckItem where x.CHT_CheckID == this.CHT_CheckID select x;
|
|||
|
foreach (var item in checks)
|
|||
|
{
|
|||
|
BLL.CheckItemManageService.UpdateJointCheckFlag(item.JOT_ID, "2");
|
|||
|
|
|||
|
if (item.CHT_PassFilm != item.CHT_TotalFilm)
|
|||
|
{
|
|||
|
BLL.RepairService.UpdateCancelAuditJointNo(item.JOT_ID);
|
|||
|
}
|
|||
|
}
|
|||
|
ShowNotify("取消审核完成!", MessageBoxIcon.Success);
|
|||
|
updateTreeMenu();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 对应委托单
|
|||
|
/// <summary>
|
|||
|
/// 对应委托单
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void lbtnToTrust_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if (!String.IsNullOrEmpty(this.CH_TrustID))
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("../TrustManage/ShowTrustItem.aspx?CH_TrustID={0}", this.CH_TrustID, "编辑 - ")));
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("没有对应的委托单号!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 获取按钮权限
|
|||
|
/// <summary>
|
|||
|
/// 获取按钮权限
|
|||
|
/// </summary>
|
|||
|
/// <param name="button"></param>
|
|||
|
/// <returns></returns>
|
|||
|
private bool GetButtonPower(string button)
|
|||
|
{
|
|||
|
return BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.HJGL_CheckManageAuditMenuId, button);
|
|||
|
}
|
|||
|
#endregion
|
|||
|
|
|||
|
#region 打印
|
|||
|
/// <summary>
|
|||
|
/// 打印按钮
|
|||
|
/// </summary>
|
|||
|
/// <param name="sender"></param>
|
|||
|
/// <param name="e"></param>
|
|||
|
protected void btnPrint_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
string reportId = string.Empty;
|
|||
|
if (this.tvControlItem.SelectedNode != null)
|
|||
|
{
|
|||
|
reportId = this.tvControlItem.SelectedNode.NodeID;
|
|||
|
if (drpPrintType.SelectedValue == BLL.Const.CheckReport1Id || drpPrintType.SelectedValue == BLL.Const.CheckReport2Id)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(reportId))
|
|||
|
{
|
|||
|
var q = BLL.CheckManageService.GetCheckByCHT_CheckID(this.CHT_CheckID);
|
|||
|
string varValue = string.Empty;
|
|||
|
var projectName = BLL.ProjectService.GetProjectNameByProjectId(this.CurrUser.LoginProjectId);
|
|||
|
var installationName = BLL.Project_InstallationService.GetInstallationByInstallationId(q.InstallationId).InstallationName;
|
|||
|
var unitName = BLL.UnitService.GetUnitNameByUnitId(q.UnitId);
|
|||
|
|
|||
|
BLL.Common.FastReportService.ResetData();
|
|||
|
|
|||
|
Dictionary<string, string> keyValuePairs = new Dictionary<string, string>();
|
|||
|
keyValuePairs.Add("projectName", projectName);
|
|||
|
keyValuePairs.Add("installationName", installationName);
|
|||
|
keyValuePairs.Add("unitName", unitName);
|
|||
|
keyValuePairs.Add("NDTTypeCode", this.NDTTypeCode);
|
|||
|
keyValuePairs.Add("CHT_CheckCode", q.CHT_CheckCode);
|
|||
|
BLL.Common.FastReportService.AddFastreportParameter(keyValuePairs);
|
|||
|
|
|||
|
string strSql = @"select CH_TrustCode,CHT_CheckCode,checkItem.ISO_IsoNumber,checkItem.JOT_JointNo,checkItem.WelderCode,checkItem.CHT_CheckResult,checkItem.CHT_RepairLocation,DefectLength
|
|||
|
from View_CH_CheckItem checkItem left join CH_Check chcheck on checkItem.CHT_CheckID=chcheck.CHT_CheckID
|
|||
|
where checkItem.CHT_CheckID =@CHT_CheckID order by dbo.Fun_GetParseInt(JOT_JointNo)";
|
|||
|
List<SqlParameter> listpar = new List<SqlParameter>
|
|||
|
{
|
|||
|
new SqlParameter("@CHT_CheckID", this.CHT_CheckID)
|
|||
|
};
|
|||
|
|
|||
|
SqlParameter[] parameter = listpar.ToArray();
|
|||
|
DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
|||
|
if (dt != null)
|
|||
|
{
|
|||
|
dt.TableName = "Table1";
|
|||
|
}
|
|||
|
|
|||
|
BLL.Common.FastReportService.AddFastreportTable(dt);
|
|||
|
|
|||
|
string initTemplatePath = "";
|
|||
|
string rootPath = Server.MapPath("~/");
|
|||
|
if (drpPrintType.SelectedValue == BLL.Const.CheckReport1Id)
|
|||
|
{
|
|||
|
initTemplatePath = "File\\Fastreport\\管道焊口无损检测结果通知单.frx";
|
|||
|
}
|
|||
|
if (drpPrintType.SelectedValue == BLL.Const.CheckReport2Id)
|
|||
|
{
|
|||
|
initTemplatePath = "File\\Fastreport\\设备焊口无损检测结果通知单.frx";
|
|||
|
}
|
|||
|
if (File.Exists(rootPath + initTemplatePath))
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("../TrustManage/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
////varValue = installationName + "|" + unitName + "|" + projectName + "|" + q.PW_PointDate.Value.ToString("yyyy-MM-dd") + "|" + q.PW_PointNo;
|
|||
|
|
|||
|
////if (!string.IsNullOrEmpty(varValue))
|
|||
|
////{
|
|||
|
//// varValue = Microsoft.JScript.GlobalObject.escape(varValue.Replace("/", ","));
|
|||
|
////}
|
|||
|
////PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("../../ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId={3}", BLL.Const.CheckReportId, reportId, varValue, this.CurrUser.LoginProjectId)));
|
|||
|
|
|||
|
|
|||
|
//string rootPath = Server.MapPath("~/") + Const.ExcelUrl;
|
|||
|
////模板文件
|
|||
|
//string TempletFileName = Server.MapPath("~/") + "File/Excel/HJGL_DataOut/管道焊口无损检测结果通知单.xlsx";
|
|||
|
////导出文件
|
|||
|
//string filePath = rootPath + DateTime.Now.ToString("yyyyMMddhhmmss") + "\\";
|
|||
|
//if (!Directory.Exists(filePath))
|
|||
|
//{
|
|||
|
// Directory.CreateDirectory(filePath);
|
|||
|
//}
|
|||
|
//string ReportFileName = filePath + "out.xlsx";
|
|||
|
|
|||
|
//FileStream file = new FileStream(TempletFileName, FileMode.Open, FileAccess.Read);
|
|||
|
//XSSFWorkbook hssfworkbook = new XSSFWorkbook(file);
|
|||
|
|
|||
|
//ICellStyle styleCenter = hssfworkbook.CreateCellStyle();
|
|||
|
//styleCenter.VerticalAlignment = VerticalAlignment.Center;
|
|||
|
//styleCenter.Alignment = HorizontalAlignment.Center;
|
|||
|
//styleCenter.BorderLeft = BorderStyle.Thin;
|
|||
|
//styleCenter.BorderTop = BorderStyle.Thin;
|
|||
|
//styleCenter.BorderRight = BorderStyle.Thin;
|
|||
|
//styleCenter.BorderBottom = BorderStyle.Thin;
|
|||
|
//styleCenter.WrapText = true;
|
|||
|
//XSSFSheet recordSheet = (XSSFSheet)hssfworkbook.GetSheet("管道焊口无损检测结果通知单");
|
|||
|
|
|||
|
//// recordSheet.AddMergedRegion(new CellRangeAddress(0, 0, 8, 9));
|
|||
|
|
|||
|
|
|||
|
//recordSheet.GetRow(0).CreateCell(7).SetCellValue(projectName.ToString());
|
|||
|
//recordSheet.GetRow(0).GetCell(7).CellStyle = styleCenter;
|
|||
|
//recordSheet.GetRow(1).CreateCell(7).SetCellValue(installationName);
|
|||
|
//recordSheet.GetRow(1).GetCell(7).CellStyle = styleCenter;
|
|||
|
//recordSheet.GetRow(2).CreateCell(1).SetCellValue(unitName);
|
|||
|
//recordSheet.GetRow(2).GetCell(1).CellStyle = styleCenter;
|
|||
|
//recordSheet.GetRow(2).CreateCell(4).SetCellValue(this.NDTTypeCode);
|
|||
|
//recordSheet.GetRow(2).GetCell(4).CellStyle = styleCenter;
|
|||
|
//recordSheet.GetRow(2).CreateCell(7).SetCellValue(q.CHT_CheckCode);
|
|||
|
//recordSheet.GetRow(2).GetCell(7).CellStyle = styleCenter;
|
|||
|
|
|||
|
//int i = 0;
|
|||
|
//List<Model.CH_CheckItem> items = BLL.CheckItemManageService.GetTrustItemByCheck(CHT_CheckID);
|
|||
|
|
|||
|
|
|||
|
//if (items.Count > 12)
|
|||
|
//{
|
|||
|
// recordSheet.ShiftRows(8, 27, items.Count - 12);
|
|||
|
// for (int j = 0; j < items.Count - 12; j++)
|
|||
|
// {
|
|||
|
// recordSheet.CopyRow(4 + j, 5 + j);
|
|||
|
// }
|
|||
|
//}
|
|||
|
|
|||
|
|
|||
|
//foreach (var t in items)
|
|||
|
//{
|
|||
|
// var checkItem = BLL.CheckItemManageService.GetTrustItemByCheckItem(t.CHT_CheckItemID);
|
|||
|
// if (checkItem != null)
|
|||
|
// {
|
|||
|
// #region 查找委托中的检测类型并赋给检测类型变量
|
|||
|
// if (!string.IsNullOrEmpty(t.CH_TrustItemID))
|
|||
|
// {
|
|||
|
// var trustId = (from x in Funs.DB.CH_TrustItem where x.CH_TrustItemID == t.CH_TrustItemID select x.CH_TrustID).FirstOrDefault();
|
|||
|
// if (!string.IsNullOrEmpty(trustId))
|
|||
|
// {
|
|||
|
// var trust = BLL.TrustManageEditService.GetCH_TrustByID(trustId);
|
|||
|
// if (trust != null)
|
|||
|
// {
|
|||
|
// if (!string.IsNullOrEmpty(trust.CH_NDTMethod))
|
|||
|
// {
|
|||
|
// var ndtt = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(trust.CH_NDTMethod);
|
|||
|
|
|||
|
// }
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(0).SetCellValue(trust.CH_TrustCode);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(0).CellStyle = styleCenter;
|
|||
|
// }
|
|||
|
// }
|
|||
|
// }
|
|||
|
// #endregion
|
|||
|
// // checkItems.Add(checkItem);
|
|||
|
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(1).SetCellValue(q.CHT_CheckCode);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(1).CellStyle = styleCenter;
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(2).SetCellValue(checkItem.ISO_IsoNumber);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(2).CellStyle = styleCenter;
|
|||
|
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(4).SetCellValue(checkItem.JOT_JointNo);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(4).CellStyle = styleCenter;
|
|||
|
|
|||
|
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(5).SetCellValue(checkItem.WelderCode);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(5).CellStyle = styleCenter;
|
|||
|
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(6).SetCellValue(checkItem.CHT_CheckResult);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(6).CellStyle = styleCenter;
|
|||
|
// recordSheet.GetRow(i + 4).CreateCell(7).SetCellValue(checkItem.CHT_RepairLocation);
|
|||
|
// recordSheet.GetRow(i + 4).GetCell(7).CellStyle = styleCenter;
|
|||
|
|
|||
|
|
|||
|
// i++;
|
|||
|
|
|||
|
// }
|
|||
|
//}
|
|||
|
//using (FileStream filess = File.OpenWrite(ReportFileName))
|
|||
|
//{
|
|||
|
// hssfworkbook.Write(filess);
|
|||
|
//}
|
|||
|
////PageContext.RegisterStartupScript(Window5.GetShowReference(String.Format("../../ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId={3}", BLL.Const.HJGL_JointInfoReportId, isoId, varValue, this.CurrUser.LoginProjectId)));
|
|||
|
|
|||
|
//FileInfo filet = new FileInfo(ReportFileName);
|
|||
|
//Response.Clear();
|
|||
|
//Response.Charset = "GB2312";
|
|||
|
//Response.ContentEncoding = System.Text.Encoding.UTF8;
|
|||
|
//// 添加头信息,为"文件下载/另存为"对话框指定默认文件名
|
|||
|
//Response.AddHeader("Content-Disposition", "attachment; filename=管道焊口无损检测结果通知单_" + Server.UrlEncode(DateTime.Now.ToString("yyyyMMddhhmmss") + ".xlsx"));
|
|||
|
//// 添加头信息,指定文件大小,让浏览器能够显示下载进度
|
|||
|
//Response.AddHeader("Content-Length", filet.Length.ToString());
|
|||
|
//// 指定返回的是一个不能被客户端读取的流,必须被下载
|
|||
|
//Response.ContentType = "application/ms-excel";
|
|||
|
//// 把文件流发送到客户端
|
|||
|
//Response.WriteFile(filet.FullName);
|
|||
|
//// 停止页面的执行
|
|||
|
//Response.End();
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
else if (drpPrintType.SelectedValue == BLL.Const.WeldJointCheckReportId)
|
|||
|
{
|
|||
|
var q = BLL.CheckManageService.GetCheckByCHT_CheckID(this.CHT_CheckID);
|
|||
|
string varValue = string.Empty;
|
|||
|
var projectName = BLL.ProjectService.GetProjectNameByProjectId(this.CurrUser.LoginProjectId);
|
|||
|
var installationName = BLL.Project_InstallationService.GetInstallationByInstallationId(q.InstallationId).InstallationName;
|
|||
|
var unitName = BLL.UnitService.GetUnitNameByUnitId(q.UnitId);
|
|||
|
|
|||
|
//varValue = installationName + "|" + unitName + "|" + projectName + "|" + q.PW_PointDate.Value.ToString("yyyy-MM-dd") + "|" + q.PW_PointNo;
|
|||
|
|
|||
|
//if (!string.IsNullOrEmpty(varValue))
|
|||
|
//{
|
|||
|
// varValue = Microsoft.JScript.GlobalObject.escape(varValue.Replace("/", ","));
|
|||
|
//}
|
|||
|
//PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("../../ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId={3}", BLL.Const.CheckReportId, reportId, varValue, this.CurrUser.LoginProjectId)));
|
|||
|
|
|||
|
|
|||
|
string rootPath = Server.MapPath("~/") + Const.ExcelUrl;
|
|||
|
//模板文件
|
|||
|
string TempletFileName = Server.MapPath("~/") + "File/Excel/HJGL_DataOut/管道焊接接头报检检查记录.xlsx";
|
|||
|
//导出文件
|
|||
|
string filePath = rootPath + DateTime.Now.ToString("yyyyMMddhhmmss") + "\\";
|
|||
|
if (!Directory.Exists(filePath))
|
|||
|
{
|
|||
|
Directory.CreateDirectory(filePath);
|
|||
|
}
|
|||
|
string ReportFileName = filePath + "out.xlsx";
|
|||
|
|
|||
|
FileStream file = new FileStream(TempletFileName, FileMode.Open, FileAccess.Read);
|
|||
|
XSSFWorkbook hssfworkbook = new XSSFWorkbook(file);
|
|||
|
|
|||
|
ICellStyle styleCenter = hssfworkbook.CreateCellStyle();
|
|||
|
styleCenter.VerticalAlignment = VerticalAlignment.Center;
|
|||
|
styleCenter.Alignment = HorizontalAlignment.Center;
|
|||
|
styleCenter.BorderLeft = BorderStyle.Thin;
|
|||
|
styleCenter.BorderTop = BorderStyle.Thin;
|
|||
|
styleCenter.BorderRight = BorderStyle.Thin;
|
|||
|
styleCenter.BorderBottom = BorderStyle.Thin;
|
|||
|
styleCenter.WrapText = true;
|
|||
|
IFont font = styleCenter.GetFont(hssfworkbook);
|
|||
|
// font.Color = 10;//颜色
|
|||
|
font.FontHeightInPoints = 10;//字体高度(与excel中的字号一致)
|
|||
|
styleCenter.SetFont(font);
|
|||
|
XSSFSheet recordSheet = (XSSFSheet)hssfworkbook.GetSheet("管道焊接接头报检检查记录");
|
|||
|
|
|||
|
// recordSheet.AddMergedRegion(new CellRangeAddress(0, 0, 8, 9));
|
|||
|
|
|||
|
|
|||
|
recordSheet.GetRow(0).CreateCell(14).SetCellValue(projectName.ToString());
|
|||
|
recordSheet.GetRow(0).GetCell(14).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(2).CreateCell(14).SetCellValue(installationName);
|
|||
|
recordSheet.GetRow(2).GetCell(14).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(2).CreateCell(1).SetCellValue(unitName);
|
|||
|
recordSheet.GetRow(2).GetCell(1).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(3).CreateCell(8).SetCellValue(this.NDTTypeCode);
|
|||
|
recordSheet.GetRow(3).GetCell(8).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(2).CreateCell(7).SetCellValue(q.CHT_CheckCode);
|
|||
|
recordSheet.GetRow(2).GetCell(7).CellStyle = styleCenter;
|
|||
|
|
|||
|
int i = 0;
|
|||
|
List<Model.CH_CheckItem> items = BLL.CheckItemManageService.GetTrustItemByCheck(CHT_CheckID);
|
|||
|
|
|||
|
recordSheet.GetRow(3).CreateCell(14).SetCellValue(items.Count + "个");
|
|||
|
recordSheet.GetRow(3).GetCell(14).CellStyle = styleCenter;
|
|||
|
if (items.Count > 12)
|
|||
|
{
|
|||
|
recordSheet.ShiftRows(8, 27, items.Count - 12);
|
|||
|
for (int j = 0; j < items.Count - 12; j++)
|
|||
|
{
|
|||
|
recordSheet.CopyRow(4 + j, 5 + j);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
foreach (var t in items)
|
|||
|
{
|
|||
|
var checkItem = BLL.CheckItemManageService.GetTrustItemByCheckItem(t.CHT_CheckItemID);
|
|||
|
if (checkItem != null)
|
|||
|
{
|
|||
|
if (i == 0)
|
|||
|
{
|
|||
|
var iso = BLL.PW_IsoInfoService.GetIsoInfoByIsoInfoId(checkItem.ISO_ID);
|
|||
|
if (iso != null)
|
|||
|
{
|
|||
|
var dDetectionRate = Funs.DB.Base_DetectionRate.FirstOrDefault(x => x.DetectionRateId == iso.DetectionRateId);
|
|||
|
if (dDetectionRate != null)
|
|||
|
{
|
|||
|
recordSheet.GetRow(3).CreateCell(18).SetCellValue(dDetectionRate.DetectionRateValue + "%");
|
|||
|
recordSheet.GetRow(3).GetCell(18).CellStyle = styleCenter;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(0).SetCellValue((i + 1) + "");
|
|||
|
recordSheet.GetRow(i + 6).GetCell(0).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(1).SetCellValue(checkItem.ISO_IsoNo);
|
|||
|
recordSheet.GetRow(i + 6).GetCell(1).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(3).SetCellValue(checkItem.JOT_JointNo);
|
|||
|
recordSheet.GetRow(i + 6).GetCell(3).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(4).SetCellValue(checkItem.WelderCode);
|
|||
|
recordSheet.GetRow(i + 6).GetCell(4).CellStyle = styleCenter;
|
|||
|
#region 查找委托中的检测类型并赋给检测类型变量
|
|||
|
if (!string.IsNullOrEmpty(t.CH_TrustItemID))
|
|||
|
{
|
|||
|
var trust = (from x in Funs.DB.View_JointInfo where x.JOT_ID == t.JOT_ID select x).FirstOrDefault();
|
|||
|
|
|||
|
if (trust != null)
|
|||
|
{
|
|||
|
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(6).SetCellValue(trust.JOT_JointDesc);
|
|||
|
recordSheet.GetRow(i + 6).GetCell(6).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(7).SetCellValue(trust.STE_Name1);
|
|||
|
recordSheet.GetRow(i + 6).GetCell(7).CellStyle = styleCenter;
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(11).SetCellValue(trust.WeldingMethodName);
|
|||
|
recordSheet.GetRow(i + 6).GetCell(11).CellStyle = styleCenter;
|
|||
|
if (trust.JOT_PrepareTemp.HasValue)
|
|||
|
{
|
|||
|
recordSheet.GetRow(i + 6).CreateCell(14).SetCellValue(trust.JOT_PrepareTemp.Value.ToString("##.#"));
|
|||
|
recordSheet.GetRow(i + 6).GetCell(14).CellStyle = styleCenter;
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
#endregion
|
|||
|
// checkItems.Add(checkItem);
|
|||
|
i++;
|
|||
|
}
|
|||
|
}
|
|||
|
using (FileStream filess = File.OpenWrite(ReportFileName))
|
|||
|
{
|
|||
|
hssfworkbook.Write(filess);
|
|||
|
}
|
|||
|
//PageContext.RegisterStartupScript(Window5.GetShowReference(String.Format("../../ReportPrint/ExReportPrint.aspx?ispop=1&reportId={0}&replaceParameter={1}&varValue={2}&projectId={3}", BLL.Const.HJGL_JointInfoReportId, isoId, varValue, this.CurrUser.LoginProjectId)));
|
|||
|
|
|||
|
FileInfo filet = new FileInfo(ReportFileName);
|
|||
|
Response.Clear();
|
|||
|
Response.Charset = "GB2312";
|
|||
|
Response.ContentEncoding = System.Text.Encoding.UTF8;
|
|||
|
// 添加头信息,为"文件下载/另存为"对话框指定默认文件名
|
|||
|
Response.AddHeader("Content-Disposition", "attachment; filename=管道焊接接头报检检查记录_" + Server.UrlEncode(DateTime.Now.ToString("yyyyMMddhhmmss") + ".xlsx"));
|
|||
|
// 添加头信息,指定文件大小,让浏览器能够显示下载进度
|
|||
|
Response.AddHeader("Content-Length", filet.Length.ToString());
|
|||
|
// 指定返回的是一个不能被客户端读取的流,必须被下载
|
|||
|
Response.ContentType = "application/ms-excel";
|
|||
|
// 把文件流发送到客户端
|
|||
|
Response.WriteFile(filet.FullName);
|
|||
|
// 停止页面的执行
|
|||
|
Response.End();
|
|||
|
|
|||
|
}
|
|||
|
else if (drpPrintType.SelectedValue == BLL.Const.CheckReport3Id)
|
|||
|
{
|
|||
|
|
|||
|
var q = BLL.CheckManageService.GetCheckByCHT_CheckID(this.CHT_CheckID);
|
|||
|
string varValue = string.Empty;
|
|||
|
var projectName = BLL.ProjectService.GetProjectNameByProjectId(this.CurrUser.LoginProjectId);
|
|||
|
var installationName = BLL.Project_InstallationService.GetInstallationByInstallationId(q.InstallationId).InstallationName;
|
|||
|
var unitName = BLL.UnitService.GetUnitNameByUnitId(q.UnitId);
|
|||
|
Dictionary<string, string> keyValuePairs = new Dictionary<string, string>();
|
|||
|
keyValuePairs.Add("projectName", projectName);
|
|||
|
keyValuePairs.Add("installationName", installationName);
|
|||
|
keyValuePairs.Add("conUnit", unitName);
|
|||
|
var supUnitList = UnitService.GetUnitByProjectIdUnitTypeList(q.ProjectId, Const.ProjectUnitType_3);
|
|||
|
string supUnitName = "";
|
|||
|
foreach (var unit in supUnitList)
|
|||
|
{
|
|||
|
supUnitName += unit.UnitName + ",";
|
|||
|
}
|
|||
|
keyValuePairs.Add("supUnit", supUnitName);
|
|||
|
var trust = TrustManageEditService.GetCH_TrustByID(q.CH_TrustID);
|
|||
|
keyValuePairs.Add("checkStandard", trust.CH_NDTCriteria);
|
|||
|
BLL.Common.FastReportService.ResetData();
|
|||
|
BLL.Common.FastReportService.AddFastreportParameter(keyValuePairs);
|
|||
|
string strSql = @"select ISO_ID ,CH_TrustCode,CHT_CheckCode,checkItem.ISO_IsoNumber,checkItem.JOT_JointNo,checkItem.WelderCode,checkItem.CHT_CheckResult,checkItem.CHT_RepairLocation
|
|||
|
from View_CH_CheckItem checkItem left join CH_Check chcheck on checkItem.CHT_CheckID=chcheck.CHT_CheckID
|
|||
|
where checkItem.CHT_CheckID =@CHT_CheckID order by dbo.Fun_GetParseInt(JOT_JointNo)";
|
|||
|
List<SqlParameter> listpar = new List<SqlParameter>
|
|||
|
{
|
|||
|
new SqlParameter("@CHT_CheckID", this.CHT_CheckID)
|
|||
|
};
|
|||
|
|
|||
|
SqlParameter[] parameter = listpar.ToArray();
|
|||
|
DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
|||
|
if (dt != null)
|
|||
|
{
|
|||
|
dt.TableName = "Table1";
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
BLL.Common.FastReportService.AddFastreportTable(dt);
|
|||
|
|
|||
|
string initTemplatePath = "";
|
|||
|
string rootPath = Server.MapPath("~/");
|
|||
|
|
|||
|
initTemplatePath = "File\\Fastreport\\管道无损检测结果汇总表.frx";
|
|||
|
|
|||
|
if (File.Exists(rootPath + initTemplatePath))
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("../TrustManage/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
else if (drpPrintType.SelectedValue == BLL.Const.CheckReport4Id)
|
|||
|
{
|
|||
|
var q = BLL.CheckManageService.GetCheckByCHT_CheckID(this.CHT_CheckID);
|
|||
|
string varValue = string.Empty;
|
|||
|
var projectName = BLL.ProjectService.GetProjectNameByProjectId(this.CurrUser.LoginProjectId);
|
|||
|
var installation = BLL.Project_InstallationService.GetInstallationByInstallationId(q.InstallationId);
|
|||
|
var unitName = BLL.UnitService.GetUnitNameByUnitId(q.UnitId);
|
|||
|
var workarea = WorkAreaService.GetWorkAreaByProjectIdAndInstalltionIdAndUnitId(this.CurrUser.LoginProjectId, q.InstallationId, q.UnitId);
|
|||
|
Dictionary<string, string> keyValuePairs = new Dictionary<string, string>();
|
|||
|
keyValuePairs.Add("projectName", projectName);
|
|||
|
keyValuePairs.Add("install", installation != null ? installation.InstallationName : "");
|
|||
|
keyValuePairs.Add("conUnit", unitName);
|
|||
|
keyValuePairs.Add("workarea", workarea != null ? workarea.WorkAreaName : "");
|
|||
|
keyValuePairs.Add("DetectCode", "CG");
|
|||
|
var trust = TrustManageEditService.GetCH_TrustByID(q.CH_TrustID);
|
|||
|
if (trust != null)
|
|||
|
{
|
|||
|
keyValuePairs.Add("CH_NDTCriteria", trust.CH_NDTCriteria);//检测标志着
|
|||
|
|
|||
|
}
|
|||
|
var supUnitList = UnitService.GetUnitByProjectIdUnitTypeList(q.ProjectId, Const.ProjectUnitType_3);
|
|||
|
string supUnitName = "";
|
|||
|
foreach (var unit in supUnitList)
|
|||
|
{
|
|||
|
supUnitName += unit.UnitName + ",";
|
|||
|
}
|
|||
|
keyValuePairs.Add("supUnit", supUnitName);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
BLL.Common.FastReportService.ResetData();
|
|||
|
BLL.Common.FastReportService.AddFastreportParameter(keyValuePairs);
|
|||
|
string strSql = @"select distinct ISO_IsoNo
|
|||
|
from View_CH_CheckItem checkItem left join CH_Check chcheck on checkItem.CHT_CheckID=chcheck.CHT_CheckID
|
|||
|
where checkItem.CHT_CheckID =@CHT_CheckID ";
|
|||
|
List<SqlParameter> listpar = new List<SqlParameter>
|
|||
|
{
|
|||
|
new SqlParameter("@CHT_CheckID", this.CHT_CheckID)
|
|||
|
};
|
|||
|
|
|||
|
SqlParameter[] parameter = listpar.ToArray();
|
|||
|
DataTable dt = SQLHelper.GetDataTableRunText(strSql, parameter);
|
|||
|
|
|||
|
if (dt != null)
|
|||
|
{
|
|||
|
dt.TableName = "Table1";
|
|||
|
foreach (DataRow row in dt.Rows)
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(row["PA1"].ToString()))
|
|||
|
{
|
|||
|
keyValuePairs.Add("DetectCode", "CG TOFD PA");
|
|||
|
break;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
BLL.Common.FastReportService.AddFastreportTable(dt);
|
|||
|
|
|||
|
string initTemplatePath = "";
|
|||
|
string rootPath = Server.MapPath("~/");
|
|||
|
|
|||
|
initTemplatePath = "File\\Fastreport\\管道无损检测数量统计表.frx";
|
|||
|
|
|||
|
if (File.Exists(rootPath + initTemplatePath))
|
|||
|
{
|
|||
|
PageContext.RegisterStartupScript(Window3.GetShowReference(String.Format("../TrustManage/Fastreport.aspx?ReportPath={0}", rootPath + initTemplatePath)));
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
Alert.ShowInTop("请选择要打印的无损检测单!", MessageBoxIcon.Warning);
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
#endregion
|
|||
|
}
|
|||
|
}
|