修改失败bug

This commit is contained in:
李超 2026-04-18 11:16:45 +08:00
parent 0ed2db0e3f
commit 12658dbc28
23 changed files with 2621 additions and 22 deletions

View File

@ -8270,6 +8270,7 @@
<Folder Include="App_Themes\Default\Images\" />
<Folder Include="common\ReportPrint\upload\" />
<Folder Include="File\Image\" />
<Folder Include="HJGL\JoinMarking\" />
<Folder Include="SeetaFaceDir\modelimages\" />
<Folder Include="tmpupload\" />
<Folder Include="WeldMat\res\js\vendor\" />

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,71 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JoinMarking.aspx.cs" Inherits="FineUIPro.Web.HJGL.JoinMarking.JoinMarking" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><asp:Literal runat="server" Text="<%$ Resources:Lan,PipelineManage_PageTitle%>"/></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:Panel runat="server" ID="panelLeftRegion" RegionPosition="Left" RegionSplit="true"
EnableCollapse="true" Width="300px" Title="<%$ Resources:Lan,PipelineManage_IsoPic_Label%>" ShowBorder="true" Layout="VBox"
ShowHeader="true" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft">
<Items>
<f:Tree ID="tvControlItem" ShowHeader="false" Height="500px" Title="<%$ Resources:Lan,PmiMaterialTemplate_tvControlItem_Title%>" OnNodeCommand="tvControlItem_NodeCommand"
runat="server" ShowBorder="false" EnableCollapse="true" EnableSingleClickExpand="true" AutoLeafIdentification="true"
EnableSingleExpand="true" EnableTextSelection="true">
</f:Tree>
</Items>
</f:Panel>
<f:Panel ID="mainPanel" CssClass="centerregion" ShowHeader="false" RegionPosition="Center" ShowBorder="true" BodyPadding="5px"
EnableIFrame="true" IFrameName="mainframe" runat="server">
</f:Panel>
</Items>
</f:Panel>
</form>
<script type="text/javascript">
var leftTreeID = '<%= tvControlItem.ClientID %>';
var mainPanelID = '<%= mainPanel.ClientID %>';
function selectMenu(menuClassName) {
// 选中当前菜单
$('#header .topmenu').removeClass('ui-state-active');
$('#header .topmenu.' + menuClassName).addClass('ui-state-active');
// 展开树的第一个节点并选中第一个节点下的第一个子节点在右侧IFrame中打开
var tree = F(leftTreeID);
var treeFirstChild = tree.getRootNode().children[0];
// var treeFirstChild = tree.nodes[0];
// 展开第一个节点(如果想要展开全部节点,调用 tree.expandAll();
tree.expandNode(treeFirstChild);
// 选中第一个链接节点并在右侧IFrame中打开此链接
// var treeFirstLink = treeFirstChild.children[0];
var treeFirstLink = treeFirstChild;
tree.selectNode(treeFirstLink);
// 在主区域内打开链接
F(mainPanelID).setIFrameUrl(treeFirstLink.href);
//window.frames['mainframe'].location.href = treeFirstLink.href;
}
F.ready(function () {
selectMenu('menu-mail');
});
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>

View File

@ -0,0 +1,191 @@
using BLL;
using FineUIPro.Web.SysManage;
using Microsoft.Office.Interop.Word;
using Model;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class JoinMarking : PageBase
{
public string treeNodeId
{
get
{
return (string)ViewState["treeNodeId"];
}
set
{
ViewState["treeNodeId"] = value;
}
}
private string ISO_ID
{
get
{
return (string)ViewState["ISO_ID"];
}
set
{
ViewState["ISO_ID"] = value;
}
}
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ISO_ID = Request.Params["ISO_ID"];
this.InitTreeMenu();//加载树
}
}
#endregion
#region --
/// <summary>
/// 加载树
/// </summary>
private void InitTreeMenu()
{
this.tvControlItem.Nodes.Clear();
var attach = AttachFileService.GetAttachFile(ISO_ID, BLL.Const.HJGL_PipelineManageMenuId);
if (attach != null)
{
var source = attach.AttachSource;
var array = JArray.Parse(source);
for (int i = 0; i < array.Count; i++)
{
JObject item = array[i] as JObject;
TreeNode newNode = new TreeNode();
newNode.Text = item.Value<string>("name");
newNode.NodeID = item.Value<string>("id");
newNode.ToolTip = newNode.Text;
newNode.NavigateUrl = "PDFMarking.aspx?ISO_ID=" + ISO_ID + "&FileId=" + newNode.NodeID + "&pdfurl=" + item.Value<string>("folder") + item.Value<string>("savedName");
newNode.Target = "mainframe";
tvControlItem.Nodes.Add(newNode);
}
}
}
#endregion
#region TreeView
/// <summary>
/// 点击TreeView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
{
treeNodeId = e.NodeID;
// this.BindGrid(e.NodeID);
}
#endregion
#region
/// <summary>
/// 获取总达因数
/// </summary>
/// <param name="isoId"></param>
/// <returns></returns>
public static string ConvertTotalDin(object isoId)
{
if (isoId != null)
{
var sizeSum = (from x in Funs.DB.PW_JointInfo where x.ISO_ID == isoId.ToString() select x.JOT_Size).Sum();
if (sizeSum != null)
{
return sizeSum.ToString();
}
}
return null;
}
/// <summary>
/// 获取总焊口数
/// </summary>
/// <param name="isoId"></param>
/// <returns></returns>
public static string ConvertJointQty(object isoId)
{
if (isoId != null)
{
var jotCount = (from x in Funs.DB.PW_JointInfo where x.ISO_ID == isoId.ToString() select x).Count();
if (jotCount != null)
{
return jotCount.ToString();
}
}
return null;
}
/// <summary>
/// 根据管线主键获取试压包编号
/// </summary>
/// <param name="iso_id"></param>
/// <returns></returns>
public static string ConvertTestPackageNo(object iso_id)
{
if (iso_id != null)
{
//var testPackage = (from x in Funs.DB.TP_TestPackage
// join y in Funs.DB.TP_IsoList on x.PTP_ID equals y.PTP_ID
// join z in Funs.DB.PW_IsoInfo on y.ISO_ID equals z.ISO_ID
// where z.ISO_ID == iso_id.ToString()
// select x.PTP_TestPackageCode).FirstOrDefault();
//return testPackage;
return null;
}
return null;
}
#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_PipelineManageMenuId, button);
}
#endregion
}
}

View File

@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class JoinMarking
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// panelLeftRegion 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelLeftRegion;
/// <summary>
/// tvControlItem 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree tvControlItem;
/// <summary>
/// mainPanel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel mainPanel;
}
}

View File

@ -0,0 +1,60 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JointShow.aspx.cs" Inherits="FineUIPro.Web.HJGL.JoinMarking.JointShow" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title><asp:Literal runat="server" Text="<%$ Resources:Lan,TestPackageImport_title%>"/></title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:Panel runat="server" ID="panelLeftRegion" RegionPosition="Left" RegionSplit="true"
EnableCollapse="true" Width="300px" Title="<%$ Resources:Lan,PipelineManage_IsoPic_Label%>" ShowBorder="true" Layout="VBox"
ShowHeader="true" AutoScroll="true" BodyPadding="5px" IconFont="ArrowCircleLeft">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox ID="txtIsono" runat="server" Label="<%$ Resources:Lan,ASPXSC_2149%>" EmptyText="<%$ Resources:Lan,TCC_RE_CQMS_788%>" AutoPostBack="true"
OnTextChanged="Tree_TextChanged" Width="250px" LabelWidth="70px" LabelAlign="Right">
</f:TextBox>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Tree ID="tvControlItem" ShowHeader="false" Height="500px" Title="<%$ Resources:Lan,PmiMaterialTemplate_tvControlItem_Title%>" OnNodeCommand="tvControlItem_NodeCommand"
runat="server" ShowBorder="false" EnableCollapse="true" EnableSingleClickExpand="true"
AutoLeafIdentification="true" EnableSingleExpand="true" EnableTextSelection="true"
OnNodeExpand="tvControlItem_TreeNodeExpanded">
</f:Tree>
</Items>
</f:Panel>
<f:Panel ID="mainPanel" ShowHeader="false" RegionPosition="Center" ShowBorder="true" BodyPadding="5px"
EnableIFrame="true" IFrameName="mainframe" runat="server">
</f:Panel>
</Items>
</f:Panel>
<f:Window ID="WindowAtt" Title="<%$ Resources:Lan,TCC_RE_CQMS_059%>" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
Height="500px">
</f:Window>
</form>
<script type="text/javascript">
var mainPanelID = '<%= mainPanel.ClientID %>';
function selectMenu(menuClassName) {
// 在主区域内打开链接
F(mainPanelID).setIFrameUrl(href);
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>

View File

@ -0,0 +1,405 @@
using BLL;
using System;
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 FineUIPro.Web.ProjectData;
using System.Configuration;
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class JointShow : PageBase
{
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.InitTreeMenu();//加载树
}
}
#endregion
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Tree_TextChanged(object sender, EventArgs e)
{
this.InitTreeMenu();
}
#region --
/// <summary>
/// 加载树
/// </summary>
private void InitTreeMenu()
{
this.tvControlItem.Nodes.Clear();
TreeNode rootNode = new TreeNode();
rootNode.Text = Resources.Lan.T_REST_ASPXCS_303;
rootNode.NodeID = "0";
rootNode.Expanded = true;
this.tvControlItem.Nodes.Add(rootNode);
////装置
var pInstallation = (from x in Funs.DB.Project_Installation where x.ProjectId == this.CurrUser.LoginProjectId select x).ToList();
////区域
var pWorkArea = (from x in Funs.DB.ProjectData_WorkArea where x.ProjectId == this.CurrUser.LoginProjectId select x).ToList();
////单位
var pUnits = (from x in Funs.DB.Project_ProjectUnit where x.SysPermissions.Contains(Const.SysHJGL)&& x.ProjectId == this.CurrUser.LoginProjectId select x).ToList();
var workAreaIdList = (from x in BLL.Funs.DB.PW_IsoInfo
where x.ProjectId == this.CurrUser.LoginProjectId && x.ISO_IsoNo.Contains(this.txtIsono.Text.Trim())
orderby x.ISO_IsoNo
select x.WorkAreaId).Distinct().ToList();
pWorkArea = pWorkArea.Where(x => workAreaIdList.Contains(x.WorkAreaId)).OrderBy(x => x.WorkAreaCode).ToList();
pInstallation = (from x in pInstallation
join y in pWorkArea on x.InstallationId equals y.InstallationId
select x).Distinct().ToList();
pUnits = (from x in pUnits
join y in pWorkArea on x.UnitId equals y.UnitId
select x).Distinct().ToList();
this.BindNodes(rootNode, pInstallation, pWorkArea, pUnits);
}
#endregion
#region
#region
/// <summary>
/// 绑定树节点
/// </summary>
/// <param name="node"></param>
private void BindNodes(TreeNode node, List<Model.Project_Installation> pInstallation, List<Model.ProjectData_WorkArea> pWorkArea, List<Model.Project_ProjectUnit> pUnits)
{
if (string.IsNullOrEmpty(node.ToolTip))
{
List<Model.Project_Installation> installations = pInstallation;
var pUnit = pUnits.FirstOrDefault(x => x.UnitId == this.CurrUser.UnitId);
if (pUnit != null && pUnit.UnitType != Const.ProjectUnitType_1 && pUnit.UnitType != Const.ProjectUnitType_5)
{
installations = (from x in pInstallation
join y in pWorkArea on x.InstallationId equals y.InstallationId
where y.UnitId == this.CurrUser.UnitId
orderby x.InstallationId
select x).Distinct().ToList();
}
foreach (var q in installations)
{
TreeNode newNode = new TreeNode();
newNode.NodeID = q.InstallationId;
newNode.Text = q.InstallationName;
newNode.ToolTip = Resources.Lan.TCC_RE_CQMS_642;
newNode.Expanded = true;
node.Nodes.Add(newNode);
this.BindNodes(newNode, pInstallation, pWorkArea, pUnits);
}
}
else if (node.ToolTip == Resources.Lan.TCC_RE_CQMS_642)
{
List<Model.Project_ProjectUnit> units = null;
var pUnitDepth = pUnits.FirstOrDefault(x => x.UnitId == this.CurrUser.UnitId);
if (pUnitDepth == null || pUnitDepth.UnitType == Const.ProjectUnitType_1 || pUnitDepth.UnitType == Const.ProjectUnitType_5)
{
var uids = Funs.DB.Project_ProjectUnit.Where(x => x.ProjectId == CurrUser.LoginProjectId && x.SysPermissions.Contains(Const.SysHJGL)).Select(x => x.UnitId).ToList();
units = (from x in pUnits
join y in pWorkArea on x.UnitId equals y.UnitId
where y.InstallationId == node.NodeID && x.UnitType == Const.ProjectUnitType_2 && uids.Contains(x.UnitId)
select x).ToList();
}
else
{
units = (from x in pUnits
join y in pWorkArea on x.UnitId equals y.UnitId
where y.InstallationId == node.NodeID && x.UnitType == Const.ProjectUnitType_2 && x.UnitId == this.CurrUser.UnitId
select x).ToList();
}
units = units.OrderBy(x => x.InTime).Distinct().ToList();
foreach (var q in units)
{
var unit = BLL.UnitService.GetUnitByUnitId(q.UnitId);
if (unit != null)
{
TreeNode newNode = new TreeNode();
newNode.Text = unit.UnitName;
newNode.NodeID = q.UnitId + "|" + node.NodeID;
newNode.ToolTip = Resources.Lan.TCC_RE_CQMS_304;
node.Nodes.Add(newNode);
this.BindNodes(newNode, pInstallation, pWorkArea, pUnits);
}
}
}
else if (node.ToolTip == Resources.Lan.TCC_RE_CQMS_304)
{
var workAreas = (from x in pWorkArea
where x.InstallationId == node.ParentNode.NodeID && x.UnitId == node.NodeID.Split('|')[0]
select x);
workAreas = workAreas.OrderByDescending(x => x.WorkAreaCode);
string strSql = @"select WorkAreaId,Is_Standard,COUNT(*) COUNT from PW_IsoInfo
where ProjectId ='"+ this.CurrUser.LoginProjectId + @"' AND UnitId='"+ node.NodeID.Split('|')[0] + @"'
group by WorkAreaId,Is_Standard";
DataTable tb = SQLHelper.GetDataTableRunText(strSql, null);
Dictionary<string, string> dic = new Dictionary<string, string>();
if (tb != null)
{
foreach(DataRow item in tb.Rows)
{
dic.Add(item["WorkAreaId"].ToString()+ item["Is_Standard"].ToString(), item["COUNT"].ToString());
}
}
foreach (var q in workAreas)
{
//int a = (from x in BLL.Funs.DB.PW_IsoInfo where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitId == node.NodeID.Split('|')[0] && x.WorkAreaId == q.WorkAreaId && x.Is_Standard == true select x).Count();
TreeNode newNode1 = new TreeNode();
if (dic.ContainsKey(q.WorkAreaId + "True"))
{
newNode1.Text = q.WorkAreaCode + "【" + dic[q.WorkAreaId + "True"] + Resources.Lan.ASPXSC_2431;
}
else
{
newNode1.Text = q.WorkAreaCode + Resources.Lan.T_REST_ASPXCS_395;
}
newNode1.NodeID = q.WorkAreaId + "_NoStandard";
newNode1.EnableExpandEvent = true;
newNode1.ToolTip = Resources.Lan.ASPXSC_2432;
node.Nodes.Add(newNode1);
// int b = (from x in BLL.Funs.DB.PW_IsoInfo where x.ProjectId == this.CurrUser.LoginProjectId && x.UnitId == node.NodeID.Split('|')[0] && x.WorkAreaId == q.WorkAreaId && x.Is_Standard != true select x).Count();
TreeNode newNode2 = new TreeNode();
if (dic.ContainsKey(q.WorkAreaId + "False"))
{
newNode2.Text = q.WorkAreaCode + "【" + dic[q.WorkAreaId + "False"] + Resources.Lan.ASPXSC_2433;
}
else
{
newNode2.Text = q.WorkAreaCode + Resources.Lan.T_REST_ASPXCS_396;
}
newNode2.NodeID = q.WorkAreaId + "_Standard";
newNode2.EnableExpandEvent = true;
newNode2.ToolTip = Resources.Lan.ASPXSC_2434;
node.Nodes.Add(newNode2);
this.BindNodes(newNode1, pInstallation, pWorkArea, pUnits);
this.BindNodes(newNode2, pInstallation, pWorkArea, pUnits);
}
}
else if (node.ToolTip == Resources.Lan.ASPXSC_2432)
{
TreeNode newNode = new TreeNode();
newNode.Text = Resources.Lan.ASPXSC_2435;
newNode.NodeID = Resources.Lan.ASPXSC_2435;
node.Nodes.Add(newNode);
}
else if (node.ToolTip == Resources.Lan.ASPXSC_2434)
{
TreeNode newNode = new TreeNode();
newNode.Text = Resources.Lan.ASPXSC_2436;
newNode.NodeID = Resources.Lan.ASPXSC_2436;
node.Nodes.Add(newNode);
}
}
#endregion
#region
/// <summary>
/// 树展开事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void tvControlItem_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
{
if (e.Node.ToolTip == Resources.Lan.ASPXSC_2432)
{
e.Node.Nodes.Clear();
List<Model.PW_IsoInfo> isoInfo = new List<Model.PW_IsoInfo>();
isoInfo = (from x in BLL.Funs.DB.PW_IsoInfo
where x.ProjectId == this.CurrUser.LoginProjectId && x.WorkAreaId == e.Node.NodeID.Split('_')[0] && x.Is_Standard == true
&& x.ISO_IsoNo.Contains(this.txtIsono.Text.Trim())
orderby x.ISO_IsoNo
select x).ToList();
string strSql = @"select ISO_ID,COUNT(*) COUNT from PW_JointInfo
where ProjectId ='" + this.CurrUser.LoginProjectId + @"' AND ISO_ID in('" + string.Join("','", isoInfo.Select(x => x.ISO_ID).ToList()) + @"')
group by ISO_ID";
DataTable tb = SQLHelper.GetDataTableRunText(strSql, null);
Dictionary<string, string> dic = new Dictionary<string, string>();
if (tb != null)
{
foreach (DataRow item in tb.Rows)
{
dic.Add(item["ISO_ID"].ToString(), item["COUNT"].ToString());
}
}
foreach (var item in isoInfo)
{
// var jotCount = (from x in Funs.DB.PW_JointInfo where x.ISO_ID == item.ISO_ID select x).Count();
TreeNode newNode = new TreeNode();
if (!String.IsNullOrEmpty(item.ISO_Sheet))
{
newNode.Text = item.ISO_IsoNo + "(" + item.ISO_Sheet + ")";
}
else
{
newNode.Text = item.ISO_IsoNo;
}
if (dic.ContainsKey(item.ISO_IsoNo))
{
newNode.Text += "【" + dic[item.ISO_IsoNo] + Resources.Lan.ASPXSC_2437;
}
else
{
newNode.Text += Resources.Lan.T_REST_ASPXCS_397;
}
newNode.ToolTip = Resources.Lan.T_REST_ASPXCS_398;
newNode.NodeID = item.ISO_ID;
newNode.EnableExpandEvent = true;
//newNode.EnableClickEvent = true;
e.Node.Nodes.Add(newNode);
TreeNode newNodeTemp = new TreeNode();
newNodeTemp.NodeID = Guid.NewGuid().ToString();
newNode.Nodes.Add(newNodeTemp);
}
}
else if (e.Node.ToolTip == Resources.Lan.ASPXSC_2434)
{
e.Node.Nodes.Clear();
List<Model.PW_IsoInfo> isoInfo = new List<Model.PW_IsoInfo>();
isoInfo = (from x in BLL.Funs.DB.PW_IsoInfo
where x.ProjectId == this.CurrUser.LoginProjectId && x.WorkAreaId == e.Node.NodeID.Split('_')[0] && x.Is_Standard == false
&& x.ISO_IsoNo.Contains(this.txtIsono.Text.Trim())
orderby x.ISO_IsoNo
select x).ToList();
string strSql = @"select ISO_ID,COUNT(*) COUNT from PW_JointInfo
where ProjectId ='" + this.CurrUser.LoginProjectId + @"' AND ISO_ID in('" + string.Join("','", isoInfo.Select(x => x.ISO_ID).ToList()) + @"')
group by ISO_ID";
DataTable tb = SQLHelper.GetDataTableRunText(strSql, null);
Dictionary<string, string> dic = new Dictionary<string, string>();
if (tb != null)
{
foreach (DataRow item in tb.Rows)
{
dic.Add(item["ISO_ID"].ToString(), item["COUNT"].ToString());
}
}
foreach (var item in isoInfo)
{
var jotCount = (from x in Funs.DB.PW_JointInfo where x.ISO_ID == item.ISO_ID select x).Count();
TreeNode newNode = new TreeNode();
if (!String.IsNullOrEmpty(item.ISO_Sheet))
{
newNode.Text = item.ISO_IsoNo + "(" + item.ISO_Sheet + ")";
}
else
{
newNode.Text = item.ISO_IsoNo;
}
if (dic.ContainsKey(item.ISO_ID))
{
newNode.Text += "【" + dic[item.ISO_ID] + Resources.Lan.ASPXSC_2437;
}
else
{
newNode.Text += Resources.Lan.T_REST_ASPXCS_397;
}
newNode.ToolTip = Resources.Lan.T_REST_ASPXCS_398;
newNode.NodeID = item.ISO_ID;
newNode.EnableExpandEvent = true;
//newNode.EnableClickEvent = true;
e.Node.Nodes.Add(newNode);
TreeNode newNodeTemp = new TreeNode();
newNodeTemp.NodeID = Guid.NewGuid().ToString();
newNode.Nodes.Add(newNodeTemp);
}
}
else if (e.Node.ToolTip == Resources.Lan.T_REST_ASPXCS_398 )
{
e.Node.Nodes.Clear();
var attach = AttachFileService.GetAttachFile(e.Node.NodeID, BLL.Const.HJGL_PipelineManageMenuId);
if (attach != null)
{
var source = attach.AttachSource;
var array = JArray.Parse(source);
for (int i = 0; i < array.Count; i++)
{
JObject item = array[i] as JObject;
TreeNode newNode = new TreeNode();
newNode.Text = item.Value<string>("name");
newNode.NodeID = item.Value<string>("id");
newNode.ToolTip = newNode.Text;
newNode.NavigateUrl = "PDFShow.aspx?ISO_ID=" + e.Node.NodeID + "&FileId=" + newNode.NodeID + "&pdfurl=" + item.Value<string>("folder") + item.Value<string>("savedName");
newNode.Target = "mainframe";
e.Node.Nodes.Add(newNode);
}
}
}
}
#endregion
#endregion
#region TreeView
/// <summary>
/// 点击TreeView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
{
}
#endregion
}
}

View File

@ -0,0 +1,98 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class JointShow
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// panelLeftRegion 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelLeftRegion;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// txtIsono 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtIsono;
/// <summary>
/// tvControlItem 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree tvControlItem;
/// <summary>
/// mainPanel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel mainPanel;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}

View File

@ -0,0 +1,244 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PDFMarking.aspx.cs" Inherits="FineUIPro.Web.HJGL.JoinMarking.PDFMarking" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<script type="module" crossorigin="" src="./assets/main-DE8eQLmE.js"></script>
<link rel="modulepreload" crossorigin="" href="./assets/pdf-lib-D5zKcp81.js">
<link rel="modulepreload" crossorigin="" href="./assets/pdfjs-HfNT2Y4W.js">
<link rel="modulepreload" crossorigin="" href="./assets/styles-Bno-H3Kc.js">
<link rel="stylesheet" crossorigin="" href="./assets/styles-CDHjsf7D.css">
<link rel="stylesheet" crossorigin="" href="./assets/main-DSskaVYi.css">
<style type="text/css">
.f-grid-row.red {
background-color: LightCoral;
}
.Label {
font-size: larger;
font-weight: bold;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<input id="hdpdfurl" type="hidden" value="<%=URL %>"/>
<input id="hdjoinInfo" type="hidden" runat="server"/>
<input id="hdworkRecord" type="hidden" runat="server"/>
<input id="imgurl1" type="hidden" value="">
<input id="imgurl2"type="hidden" value="">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Toolbars >
<f:Toolbar runat="server" Position="Bottom" ToolbarAlign="Right" >
<Items>
<f:Button ID="btnNext" runat="server" Text="下一步" OnClick="btnNext_Click"></f:Button>
<f:Button ID="btnClear" runat="server" Text="清空临时数据" Hidden="true" OnClick="btnClear_Click"></f:Button>
<f:Button ID="btnImport" runat="server" Text="导入数据库" Hidden="true" OnClick="btnSave_Click"></f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:ContentPanel ID="contentPanel" runat="server">
<div id="app"></div>
</f:ContentPanel>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="<%$ Resources:Lan,TCC_RE_CQMS_367%>" EnableCollapse="true" Hidden="true"
runat="server" BoxFlex="1" DataKeyNames="TempId" AllowCellEditing="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
EnableColumnLines="true" ClicksToEdit="2" DataIDField="TempId" AllowSorting="true"
SortField="RowNo" SortDirection="ASC" OnSort="Grid1_Sort" AllowPaging="true" IsDatabasePaging="true"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderText="<%$ Resources:Lan,TCC_RE_CQMS_015%>" Width="60px" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField Width="70px" HeaderText="<%$ Resources:Lan,UserIn_Grid1_RCount_HeaderText%>" ColumnID="RowNo" DataField="RowNo" SortField="RowNo"
FieldType="String" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" HeaderText="<%$ Resources:Lan,T_REST_ASPXCS_877%>" ColumnID="Value1" DataField="Value1" SortField="Value1"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value2_HeaderText%>" ColumnID="Value2" DataField="Value2" SortField="Value2"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="220px" HeaderText="<%$ Resources:Lan,ASPXSC_2496%>" ColumnID="Value3" DataField="Value3" SortField="Value3"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:WindowField ColumnID="Value4" HeaderTextAlign="Center" TextAlign="Left" Width="120px" WindowID="Window1" HeaderText="<%$ Resources:Lan,ASPXSC_2455%>"
DataTextField="Value4" DataIFrameUrlFields="TempId" DataIFrameUrlFormatString="DataInEdit.aspx?TempId={0}"
Title="<%$ Resources:Lan,ASPXSC_2455%>" DataToolTipField="ToopValue" SortField="Value4">
</f:WindowField>
<f:RenderField Width="90px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value5_HeaderText%>" ColumnID="Value5" DataField="Value5" SortField="Value5"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value6_HeaderText%>" ColumnID="Value6" DataField="Value6" SortField="Value6"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="90px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value7_HeaderText%>" ColumnID="Value7" DataField="Value7" SortField="Value7"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" HeaderText="<%$ Resources:Lan,ASPXSC_3432%>" ColumnID="Value8" DataField="Value8" SortField="Value8"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_3433%>" ColumnID="Value9" DataField="Value9" SortField="Value9"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value10_HeaderText%>" ColumnID="Value10" DataField="Value10" SortField="Value10"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value11_HeaderText%>" ColumnID="Value11" DataField="Value11" SortField="Value11"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2469%>" ColumnID="Value12" DataField="Value12" SortField="Value12"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2472%>" ColumnID="Value13" DataField="Value13" SortField="Value13"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2554%>" ColumnID="Value14" DataField="Value14" SortField="Value14"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="110px" HeaderText="<%$ Resources:Lan,PCFPipelineEdit_txtISO_Specification_Label%>" ColumnID="Value15" DataField="Value15" SortField="Value15"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,PCFJointEdit_txtSch_Label%>" ColumnID="Value16" DataField="Value16" SortField="Value16"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="120px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value17_HeaderText%>" ColumnID="Value17" DataField="Value17" SortField="Value17"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2515%>" ColumnID="Value18" DataField="Value18" SortField="Value18"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2468%>" ColumnID="Value19" DataField="Value19" SortField="Value19"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2467%>" ColumnID="Value20" DataField="Value20" SortField="Value20"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_1916%>" ColumnID="Value21" DataField="Value21" SortField="Value21"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2503%>" ColumnID="Value22" DataField="Value22" SortField="Value22"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2513%>" ColumnID="Value23" DataField="Value23" SortField="Value23"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2514%>" ColumnID="Value24" DataField="Value24" SortField="Value24"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value25_HeaderText%>" ColumnID="Value25" DataField="Value25" SortField="Value25"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="100px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value26_HeaderText%>" ColumnID="Value26" DataField="Value26" SortField="Value26"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value27_HeaderText%>" ColumnID="Value27" DataField="Value27" SortField="Value27"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value28_HeaderText%>" ColumnID="Value28" DataField="Value28" SortField="Value28"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value29_HeaderText%>" ColumnID="Value29" DataField="Value29" SortField="Value29"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value30_HeaderText%>" ColumnID="Value30" DataField="Value30" SortField="Value30"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_2483%>" ColumnID="Value31" DataField="Value31" SortField="Value31"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,BBL_Resource_458%>" ColumnID="Value32" DataField="Value32" SortField="Value32"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="90px" HeaderText="<%$ Resources:Lan,ASPXSC_2482%>" ColumnID="Value33" DataField="Value33" SortField="Value33"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ShowHotHardSearch_Grid1_RenderField_HotProessNo_HeaderText%>" ColumnID="Value34" DataField="Value34" SortField="Value34"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="80px" HeaderText="<%$ Resources:Lan,ASPXSC_1946%>" ColumnID="Value35" DataField="Value35" SortField="Value35"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,PCFJointEdit_txtDia_Label%>" ColumnID="Value36" DataField="Value36" SortField="Value36"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value37_HeaderText%>" ColumnID="Value37" DataField="Value37" SortField="Value37"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,ASPXSC_3429%>" ColumnID="Value38" DataField="Value38" SortField="Value38"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value39_HeaderText%>" ColumnID="Value39" DataField="Value39" SortField="Value39"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,DataInTable_RenderField_Value40_HeaderText%>" ColumnID="Value40" DataField="Value40" SortField="Value40"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,ASPXSC_3424%>" ColumnID="Value41" DataField="Value41" SortField="Value41"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,ASPXSC_3434%>" ColumnID="Value42" DataField="Value42" SortField="Value42"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,ASPXSC_3431%>" ColumnID="Value43" DataField="Value43" SortField="Value43"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,ASPXSC_3425%>" ColumnID="Value44" DataField="Value44" SortField="Value44"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
<f:RenderField Width="140px" HeaderText="<%$ Resources:Lan,JointComprehensive_ISO_Type_HeaderText%>" ColumnID="Value45" DataField="Value45" SortField="Value45"
FieldType="String" HeaderTextAlign="Center" TextAlign="Right">
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="<%$ Resources:Lan,TCC_RE_CQMS_026%>">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" Selected="true" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
<f:Label Label="<%$ Resources:Lan,DataInTable_lbDataCout_Label%>" runat="server" ID="lbDataCout" CssClass="Label" LabelAlign="right" LabelWidth="120px"></f:Label>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
</form>
<f:Window ID="Window1" Title="<%$ Resources:Lan,CheckManageImport_Window1_Title%>" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Top" EnableResize="true" runat="server" OnClose="Window1_Close"
IsModal="true" Width="1200px" Height="600px">
</f:Window>
<f:Menu ID="Menu1" ClientIDMode="Static" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
runat="server" Text="<%$ Resources:Lan,TCC_RE_CQMS_102%>" Icon="TableEdit">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
ConfirmText="<%$ Resources:Lan,TCC_RE_CQMS_794%>" ConfirmTarget="Top" runat="server" Text="<%$ Resources:Lan,TCC_RE_CQMS_031%>" Icon="Delete">
</f:MenuButton>
</f:Menu>
</body>
</html>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>

View File

@ -0,0 +1,887 @@
using BLL;
using BLL.Common;
using Newtonsoft.Json.Linq;
using NPOI.POIFS.Properties;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Threading;
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class PDFMarking : PageBase
{
private string ISO_ID
{
get
{
return (string)ViewState["ISO_ID"];
}
set
{
ViewState["ISO_ID"] = value;
}
}
private string FileId
{
get
{
return (string)ViewState["FileId"];
}
set
{
ViewState["FileId"] = value;
}
}
public string URL
{
get
{
return (string)ViewState["URL"];
}
set
{
ViewState["URL"] = value;
}
}
#region
/// <summary>
/// 是否PDMS
/// </summary>
private string IsPDMS
{
get
{
return (string)ViewState["IsPDMS"];
}
set
{
ViewState["IsPDMS"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ISO_ID = Request.Params["ISO_ID"];
FileId = Request.Params["FileId"];
URL = Funs. SGGLUrl + Request.Params["pdfurl"];
this.IsPDMS = "0";
}
}
#region
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
string strSql = @"SELECT TempId,ProjectId,UserId,Time,RowNo,ToopValue,Value1,Value2,Value3,Value4,Value5,Value6,Value7,Value8,Value9,Value10"
+ @" ,Value11,Value12,Value13,Value14,Value15,Value16,Value17,Value18,Value19,Value20,Value21,Value22,Value23,Value24,Value25,Value26,Value27,Value28,Value29,Value30"
+ @" ,Value31,Value32,Value33,Value34,Value35,Value36,Value37,Value38,Value39,Value40,Value41,Value42,Value43,Value44,Value45,Value46,Value47,Value48,Value49,Value50,ToopValue,Type"
+ @" FROM Sys_DataInTemp "
+ @" WHERE ProjectId=@ProjectId AND UserId=@UserId AND Type=@Type";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
listStr.Add(new SqlParameter("@UserId", this.CurrUser.UserId));
listStr.Add(new SqlParameter("@Type", this.IsPDMS));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
var dataInTempAll = from x in Funs.DB.Sys_DataInTemp
where x.ProjectId == this.CurrUser.LoginProjectId && x.UserId == this.CurrUser.UserId && x.Type == this.IsPDMS
select x;
for (int i = 0; i < Grid1.Rows.Count; i++)
{
var dataInTemp = dataInTempAll.FirstOrDefault(x => x.TempId == Grid1.Rows[i].DataKeys[0].ToString());
if (dataInTemp != null)
{
if (!string.IsNullOrEmpty(dataInTemp.ToopValue))
{
Grid1.Rows[i].RowCssClass = "red";
}
}
}
if (this.Grid1.Columns.Count() > 0)
{
if (this.IsPDMS == "1") ///如果是PDMS
{
this.Grid1.Columns[7].Hidden = true;//材质2
this.Grid1.Columns[10].Hidden = true;//焊接区域
this.Grid1.Columns[11].Hidden = true;//焊口属性
this.Grid1.Columns[12].Hidden = true;//达因数
this.Grid1.Columns[13].Hidden = true;//规格
this.Grid1.Columns[15].Hidden = true;//焊接方法代码
this.Grid1.Columns[17].Hidden = true;//焊条代号
this.Grid1.Columns[18].Hidden = true;//焊丝代号
this.Grid1.Columns[19].HeaderText = Resources.Lan.ASPXSC_2080;
this.Grid1.Columns[23].Hidden = true;//坡口代号
this.Grid1.Columns[25].HeaderText = Resources.Lan.ASPXSC_2081;
this.Grid1.Columns[26].Hidden = true;//组件二代号
this.Grid1.Columns[27].Hidden = true;//炉批号1
this.Grid1.Columns[28].Hidden = true;//炉批号2
this.Grid1.Columns[30].Hidden = true;//预热温度
this.Grid1.Columns[31].Hidden = true;//是否热处理
this.Grid1.Columns[32].Hidden = true;//热处理编号
this.Grid1.Columns[33].Hidden = true;//焊接位置
this.Grid1.Columns[34].Hidden = true;//外径
this.Grid1.Columns[35].Hidden = true;//硬度检测比例(数值)
this.Grid1.Columns[36].Hidden = true;//焊接气体保护
}
else
{
this.Grid1.Columns[37].Hidden = true;//组件数量
this.Grid1.Columns[38].Hidden = true;//公称直径
}
}
var errData = from x in dataInTempAll where x.ToopValue != null select x;
this.lbDataCout.Text = errData.Count().ToString();
}
#endregion
#region
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop(Resources.Lan.T_REST_ASPXCS_370, MessageBoxIcon.Warning);
return;
}
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_DataInMenuId, Const.BtnIn))
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("DataInEdit.aspx?TempId={0}", Grid1.SelectedRowID, "维护 - ")));
}
else
{
ShowNotify(Resources.Lan.T_REST_ASPXCS_365, MessageBoxIcon.Warning);
}
}
#endregion
#region
/// <summary>
/// 导入信息编辑
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.HJGL_DataInMenuId, BLL.Const.BtnIn))
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop(Resources.Lan.T_REST_ASPXCS_370, MessageBoxIcon.Warning);
return;
}
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("DataInEdit.aspx?TempId={0}", Grid1.SelectedRowID, "维护 - ")));
}
else
{
ShowNotify(Resources.Lan.T_REST_ASPXCS_365, MessageBoxIcon.Warning);
}
}
/// <summary>
/// 删除按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_DataInMenuId, Const.BtnIn))
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop(Resources.Lan.T_REST_ASPXCS_370, MessageBoxIcon.Warning);
return;
}
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
BLL.DataInTempService.DeleteDataInTempByDataInTempID(rowID);
//BLL.Sys_LogService.AddLog(Const.System_7, this.CurrUser.LoginProjectId, this.CurrUser.UserId, Resources.Lan.ASPXSC_2047);
}
ShowNotify(Resources.Lan.T_REST_ASPXCS_373, MessageBoxIcon.Success);
this.BindGrid();
}
else
{
Alert.ShowInTop(Resources.Lan.T_REST_ASPXCS_365, MessageBoxIcon.Warning);
return;
}
}
#endregion
#region
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 保存审核事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
btnSaveMethod(this.CurrUser.LoginProjectId, this.CurrUser.UserId, this.IsPDMS);
this.BindGrid();
}
protected void btnRefresh_Click(object sender, EventArgs e)
{
this.BindGrid();
}
protected void btnSaveMethod(string LoginProjectId, string UserId, string IsPDMS)
{
//beginProgress();
var units = from x in Funs.DB.Base_Unit
join y in Funs.DB.Project_ProjectUnit on x.UnitId equals y.UnitId
where y.ProjectId == LoginProjectId
select x;
var workAreas = from x in Funs.DB.ProjectData_WorkArea where x.ProjectId == LoginProjectId select x;
var steels = from x in Funs.DB.Base_Material select x;
var materialTypes = from x in Funs.DB.Base_MaterialType select x;
var rates = from x in Funs.DB.Base_DetectionRate select x;
var types = from x in Funs.DB.Base_WeldType select x;
var methods = from x in Funs.DB.Base_WeldingMethod select x;
var materials = from x in Funs.DB.Base_Consumables select x;
var services = from x in Funs.DB.Base_TestMedium select x;
var slopeTypes = from x in Funs.DB.Base_GrooveType select x;
var isoClasss = from x in Funs.DB.Base_PipingClass select x;
var components = from x in Funs.DB.Base_Components select x;
var dns = from x in Funs.DB.Base_DNCompare select x;
var dataInTemp = from x in Funs.DB.Sys_DataInTemp
where x.ProjectId == LoginProjectId && x.UserId == UserId && x.Type == IsPDMS
select x;
var iosType = from x in Funs.DB.Sys_Const
where x.GroupId == ConstValue.GroupId_ISOType
select x;
int okCount = 0;
int i = 0;
int ir = dataInTemp.Count();
string erreMessage = "";
foreach (var tempData in dataInTemp)
{
if (tempData != null)
{
string errInfo = string.Empty;
Model.PW_JointInfo jointInfo = new Model.PW_JointInfo(); ///焊口
jointInfo.JOT_JointStatus = "100";
jointInfo.ISO_ID = this.ISO_ID;
jointInfo.X = tempData.Value46;
jointInfo.Y = tempData.Value47;
jointInfo.X2 = tempData.Value48;
jointInfo.Y2 = tempData.Value49;
jointInfo.AttachSourceId = this.FileId;
if (string.IsNullOrEmpty(tempData.Value4))
{
errInfo += Resources.Lan.ASPXSC_2056;
}
else
{
jointInfo.JOT_JointNo = tempData.Value4;
}
#region
if (!string.IsNullOrEmpty(tempData.Value5))
{
var materialType = materialTypes.FirstOrDefault(x => x.MaterialTypeCode == tempData.Value5);
if (materialType == null)
{
errInfo += Resources.Lan.ASPXSC_2083 + tempData.Value5 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.MaterialType = materialType.MaterialTypeId;
}
}
if (!string.IsNullOrEmpty(tempData.Value8))
{
jointInfo.Material1 = tempData.Value8;
}
if (!string.IsNullOrEmpty(tempData.Value9))
{
jointInfo.Material2 = tempData.Value9;
}
if (!string.IsNullOrEmpty(tempData.Value6))
{
var steel = steels.FirstOrDefault(x => x.MaterialCode == tempData.Value6);
if (steel == null)
{
errInfo += Resources.Lan.TTC_RE_CS_HSSE_121 + tempData.Value6 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.MaterialId = steel.MaterialId;
}
}
else
{
errInfo += Resources.Lan.TTC_RE_CS_HSSE_122;
}
if (!string.IsNullOrEmpty(tempData.Value41) && tempData.Value41.Trim() == Resources.Lan.TCC_RE_CQMS_011)
{
jointInfo.Extend_Length = tempData.Value43;
if (!string.IsNullOrEmpty(tempData.Value10))
{
var rate = rates.FirstOrDefault(x => x.DetectionRateCode == tempData.Value10);
if (rate == null)
{
errInfo += Resources.Lan.ASPXSC_2084 + tempData.Value10 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.DetectionRateId = rate.DetectionRateId;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2085;
}
}
if (string.IsNullOrEmpty(tempData.Value16))
{
errInfo += Resources.Lan.ASPXSC_2091;
}
else
{
jointInfo.JOT_Sch = tempData.Value16;
}
if (!string.IsNullOrEmpty(tempData.Value45))
{
var type = iosType.FirstOrDefault(x => x.ConstValue == tempData.Value45);
if (type == null)
{
errInfo += Resources.Lan.ASPXSC_2093 + tempData.Value45 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.ISO_Type = type.ConstValue;
}
}
jointInfo.JOT_BelongPipe = tempData.Value31;
jointInfo.WallBoard = tempData.Value42;
#endregion
if (this.IsPDMS == "0") ////非PDMS 模板
{
#region PDMS
if (!string.IsNullOrEmpty(tempData.Value7))
{
var steel = steels.FirstOrDefault(x => x.MaterialCode == tempData.Value7);
if (steel == null)
{
errInfo += Resources.Lan.TTC_RE_CS_HSSE_123 + tempData.Value7 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.MaterialId = steel.MaterialId;
}
}
if (!string.IsNullOrEmpty(tempData.Value11))
{
var type = types.FirstOrDefault(x => x.WeldTypeCode == tempData.Value11);
if (type == null)
{
errInfo += Resources.Lan.ASPXSC_2094 + tempData.Value11 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOTY_ID = type.WeldTypeId;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2095;
}
if (!string.IsNullOrEmpty(tempData.Value12))
{
if (tempData.Value12 != Resources.Lan.mainProject0_Installation && tempData.Value12 != Resources.Lan.RE_Remained_945)
{
errInfo += Resources.Lan.ASPXSC_2096 + tempData.Value12 + Resources.Lan.ASPXSC_2016;
}
else
{
if (tempData.Value12 == Resources.Lan.mainProject0_Installation)
{
jointInfo.WLO_Code = "F";
}
else
{
jointInfo.WLO_Code = "S";
}
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2097;
}
if (!string.IsNullOrEmpty(tempData.Value13))
{
if (tempData.Value13 != Resources.Lan.RE_Remained_947 && tempData.Value13 != Resources.Lan.RE_Remained_946)
{
errInfo += Resources.Lan.ASPXSC_2098 + tempData.Value13 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_JointAttribute = tempData.Value13;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2099;
}
if (!string.IsNullOrEmpty(tempData.Value14))
{
try
{
decimal doneDin = Convert.ToDecimal(tempData.Value14);
jointInfo.JOT_Size = doneDin;
}
catch (Exception)
{
errInfo += Resources.Lan.ASPXSC_2100 + tempData.Value14 + Resources.Lan.ASPXSC_2087;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2101;
}
if (string.IsNullOrEmpty(tempData.Value15))
{
errInfo += Resources.Lan.ASPXSC_2102;
}
else
{
jointInfo.JOT_JointDesc = tempData.Value15;
}
if (!string.IsNullOrEmpty(tempData.Value17))
{
var method = methods.FirstOrDefault(x => x.WeldingMethodCode == tempData.Value17);
if (method == null)
{
errInfo += Resources.Lan.ASPXSC_2103 + tempData.Value17 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.WME_ID = method.WeldingMethodId;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2104;
}
if (!string.IsNullOrEmpty(tempData.Value19))
{
var material = materials.FirstOrDefault(x => x.ConsumablesCode == tempData.Value19 && x.ConsumablesType == "2");
if (material == null)
{
errInfo += Resources.Lan.ASPXSC_2105 + tempData.Value19 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_WeldMat = material.ConsumablesId;
}
}
if (!string.IsNullOrEmpty(tempData.Value20))
{
var material = materials.FirstOrDefault(x => x.ConsumablesCode == tempData.Value20 && x.ConsumablesType == "1");
if (material == null)
{
errInfo += Resources.Lan.ASPXSC_2106 + tempData.Value20 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_WeldSilk = material.ConsumablesId;
}
}
if (!string.IsNullOrEmpty(tempData.Value25))
{
var slopeType = slopeTypes.FirstOrDefault(x => x.GrooveTypeCode == tempData.Value25);
if (slopeType == null)
{
errInfo += Resources.Lan.ASPXSC_2107 + tempData.Value25 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JST_ID = slopeType.GrooveTypeId;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2108;
}
if (!string.IsNullOrEmpty(tempData.Value27))
{
var component = components.FirstOrDefault(x => x.ComponentsCode == tempData.Value27);
if (component == null)
{
errInfo += Resources.Lan.ASPXSC_2109 + tempData.Value27 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_Component1 = component.ComponentsId;
}
}
if (!string.IsNullOrEmpty(tempData.Value28))
{
var component = components.FirstOrDefault(x => x.ComponentsCode == tempData.Value28);
if (component == null)
{
errInfo += Resources.Lan.ASPXSC_2110 + tempData.Value28 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_Component2 = component.ComponentsId;
}
}
jointInfo.JOT_HeartNo1 = tempData.Value29;
jointInfo.JOT_HeartNo2 = tempData.Value30;
if (!string.IsNullOrEmpty(tempData.Value32))
{
try
{
decimal testPress = Convert.ToDecimal(tempData.Value32);
jointInfo.JOT_PrepareTemp = testPress;
}
catch (Exception)
{
errInfo += Resources.Lan.ASPXSC_2111 + tempData.Value32 + Resources.Lan.ASPXSC_2087;
}
}
if (!string.IsNullOrEmpty(tempData.Value33))
{
if (tempData.Value33 != Resources.Lan.TCC_RE_CQMS_011 && tempData.Value33 != Resources.Lan.TCC_RE_CQMS_012)
{
errInfo += Resources.Lan.ASPXSC_2112 + tempData.Value33 + Resources.Lan.ASPXSC_2087;
}
else
{
if (tempData.Value33 == Resources.Lan.TCC_RE_CQMS_011)
{
jointInfo.IS_Proess = "1";
}
else
{
jointInfo.IS_Proess = "0";
}
}
}
jointInfo.JOT_HotRpt = tempData.Value34;
if (!string.IsNullOrEmpty(tempData.Value35))
{
if (tempData.Value35 != "1G" && tempData.Value35 != "2G" && tempData.Value35 != "3G" && tempData.Value35 != "4G" && tempData.Value35 != "5G" && tempData.Value35 != "6G" && tempData.Value35 != "1F" && tempData.Value35 != "2F" && tempData.Value35 != "2FR"
&& tempData.Value35 != "4F" && tempData.Value35 != "5F" && tempData.Value35 != "5FG" && tempData.Value35 != "6FG" && tempData.Value35 != "2FG" && tempData.Value35 != "4FG")
{
errInfo += Resources.Lan.ASPXSC_2113 + tempData.Value35 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_Location = tempData.Value35;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2114;
}
if (!string.IsNullOrEmpty(tempData.Value36))
{
try
{
decimal testPress = Convert.ToDecimal(tempData.Value36);
jointInfo.JOT_Dia = testPress;
}
catch (Exception)
{
errInfo += Resources.Lan.ASPXSC_2115 + tempData.Value36 + Resources.Lan.ASPXSC_2087;
}
}
#endregion
}
else
{
#region PDMS模板
if (!string.IsNullOrEmpty(tempData.Value40))
{
}
if (!string.IsNullOrEmpty(tempData.Value27))
{
var component = components.FirstOrDefault(x => x.ComponentsCode == tempData.Value27);
if (component == null)
{
errInfo += Resources.Lan.ASPXSC_2119 + tempData.Value27 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOT_Component1 = component.ComponentsId;
}
}
if (string.IsNullOrEmpty(tempData.Value39))
{
errInfo += Resources.Lan.TTC_RE_CS_HSSE_124;
}
else
{
jointInfo.ComponentNum = tempData.Value39;
}
if (!string.IsNullOrEmpty(tempData.Value11))
{
var type = types.FirstOrDefault(x => x.WeldTypeCode == tempData.Value11);
if (type == null)
{
errInfo += Resources.Lan.ASPXSC_2120 + tempData.Value11 + Resources.Lan.ASPXSC_2016;
}
else
{
jointInfo.JOTY_ID = type.WeldTypeId;
}
}
else
{
errInfo += Resources.Lan.ASPXSC_2121;
}
jointInfo.WLO_Code = "S";
jointInfo.JOT_JointAttribute = Resources.Lan.RE_Remained_946;
jointInfo.JOT_Location = "1G";
jointInfo.JOT_Size = BLL.Base_DNCompareService.GetSizeByDn(tempData.Value40); // 生成尺寸
if (Funs.GetNewIntOrZero(tempData.Value40) <= 50) // 生成焊接方法
{
var m = methods.FirstOrDefault(x => x.WeldingMethodCode.Contains("GTAW"));
if (m != null)
{
jointInfo.WME_ID = m.WeldingMethodId;
}
}
else
{
var m = methods.FirstOrDefault(x => x.WeldingMethodCode.Contains("GTAW") && x.WeldingMethodCode.Contains("SMAW"));
if (m != null)
{
jointInfo.WME_ID = m.WeldingMethodId;
}
}
if (!string.IsNullOrEmpty(tempData.Value40) && !string.IsNullOrEmpty(tempData.Value16))
{
jointInfo.JOT_JointDesc = tempData.Value40 + "×" + tempData.Value16;
}
if (!string.IsNullOrEmpty(tempData.Value16))
{
jointInfo.JOT_Sch = tempData.Value16;
}
if (!string.IsNullOrEmpty(tempData.Value27))
{
var component = components.FirstOrDefault(x => x.ComponentsName.Contains(tempData.Value27));
if (component != null)
{
jointInfo.JOT_Component1 = component.ComponentsId;
jointInfo.JOT_Component2 = jointInfo.JOT_Component1;
}
}
#endregion
}
if (string.IsNullOrEmpty(errInfo)) ////所有信息正确的话 这插入管线焊口
{
jointInfo.ProjectId = this.CurrUser.LoginProjectId;
var isExitJotNoValue = Funs.DB.View_JointInfoAndIsoInfo.FirstOrDefault(x => x.ProjectId == this.CurrUser.LoginProjectId && x.UnitCode == tempData.Value1
&& x.WorkAreaCode == tempData.Value2 && x.ISO_IsoNo == tempData.Value3 && x.JOT_JointNo == tempData.Value4 && x.JOT_JointStatus != "104");
if (isExitJotNoValue == null)
{
BLL.PW_JointInfoService.AddJointInfo(jointInfo);
}
else
{
if (string.IsNullOrEmpty(isExitJotNoValue.DReportID))
{
jointInfo.JOT_ID = isExitJotNoValue.JOT_ID;
BLL.PW_JointInfoService.UpdateJointInfo(jointInfo);
}
}
BLL.DataInTempService.DeleteDataInTempByDataInTempID(tempData.TempId);
okCount++;
}
if (!string.IsNullOrEmpty(errInfo))
{
tempData.ToopValue = errInfo;
BLL.DataInTempService.UpdateDataInTemp(tempData);
erreMessage += errInfo + ";";
}
}
}
}
#endregion
protected void btnNext_Click(object sender, EventArgs e)
{
btnImport.Hidden = false;
Grid1.Hidden = false;
contentPanel.Hidden = true;
btnNext.Hidden = true;
btnClear.Hidden = false;
var json = hdworkRecord.Value;
if (json != "{}")
{
var jsonObc = JObject.Parse(json);
var jsonArray = jsonObc.Value<JObject>("annotations").Value<JArray>("1");
var iso = Funs.DB.PW_IsoInfo.FirstOrDefault(x => x.ISO_ID == ISO_ID);
if (iso != null)
{
var workArea = Funs.DB.ProjectData_WorkArea.FirstOrDefault(x => x.ProjectId == iso.ProjectId && x.WorkAreaId == iso.WorkAreaId);
var unit = Funs.DB.Base_Unit.FirstOrDefault(x => x.UnitId == iso.UnitId);
List<Model.Sys_DataInTemp> newDataInTempList = new List<Model.Sys_DataInTemp>();
for (int i = 0; i < jsonArray.Count; i++)
{
JObject item = jsonArray[i] as JObject;
//if (!string.IsNullOrEmpty(pds.Rows[i][3].ToString()))
{
Model.Sys_DataInTemp newDataInTemp = new Model.Sys_DataInTemp();
newDataInTemp.TempId = SQLHelper.GetNewID(typeof(Model.Sys_DataInTemp));
newDataInTemp.ProjectId = this.CurrUser.LoginProjectId;
newDataInTemp.UserId = this.CurrUser.UserId;
newDataInTemp.Time = System.DateTime.Now;
newDataInTemp.Type = this.IsPDMS;
newDataInTemp.RowNo = i + 2;
newDataInTemp.Value1 = unit.UnitCode;
newDataInTemp.Value2 = workArea.WorkAreaCode;
newDataInTemp.Value3 = iso.ISO_IsoNo;
newDataInTemp.Value4 = item.Value<string>("label");
newDataInTemp.Value46 = item.Value<string>("x");
newDataInTemp.Value47 = item.Value<string>("y");
newDataInTemp.Value48 = item.Value<string>("x2");
newDataInTemp.Value49 = item.Value<string>("y2");
//newDataInTemp.Value4 = pds.Rows[i][3].ToString().Trim();//焊口号
//newDataInTemp.Value5 = pds.Rows[i][4].ToString().Trim();//材质类型代号
//newDataInTemp.Value6 = pds.Rows[i][5].ToString().Trim();//材质1代号
//newDataInTemp.Value7 = pds.Rows[i][6].ToString().Trim();//材质2代号
//newDataInTemp.Value8 = pds.Rows[i][7].ToString().Trim();//材料1
//newDataInTemp.Value9 = pds.Rows[i][8].ToString().Trim();//材料2
//newDataInTemp.Value10 = pds.Rows[i][9].ToString().Trim();//探伤比例代号
//newDataInTemp.Value11 = pds.Rows[i][10].ToString().Trim();//焊缝类型代号
//newDataInTemp.Value12 = pds.Rows[i][11].ToString().Trim();//焊接区域
//newDataInTemp.Value13 = pds.Rows[i][12].ToString().Trim();//焊口属性
//newDataInTemp.Value14 = pds.Rows[i][13].ToString().Trim();//达因数
//newDataInTemp.Value15 = pds.Rows[i][14].ToString().Trim();//规格
//newDataInTemp.Value16 = pds.Rows[i][15].ToString().Trim();//壁厚
//newDataInTemp.Value17 = pds.Rows[i][16].ToString().Trim();//焊接方法代码
//newDataInTemp.Value18 = pds.Rows[i][17].ToString().Trim();//试验压力
//newDataInTemp.Value19 = pds.Rows[i][18].ToString().Trim();//焊条代号
//newDataInTemp.Value20 = pds.Rows[i][19].ToString().Trim();//焊丝代号
//newDataInTemp.Value21 = pds.Rows[i][20].ToString().Trim();//介质代号
//newDataInTemp.Value22 = pds.Rows[i][21].ToString().Trim();//单线图号
//newDataInTemp.Value23 = pds.Rows[i][22].ToString().Trim();//设计压力
//newDataInTemp.Value24 = pds.Rows[i][23].ToString().Trim();//设计温度
//newDataInTemp.Value25 = pds.Rows[i][24].ToString().Trim();//坡口代号
//newDataInTemp.Value26 = pds.Rows[i][25].ToString().Trim();//管线等级代号
//newDataInTemp.Value27 = pds.Rows[i][26].ToString().Trim(); //组件一代号
//newDataInTemp.Value28 = pds.Rows[i][27].ToString().Trim();//组件二代号
//newDataInTemp.Value29 = pds.Rows[i][28].ToString().Trim();//炉批号一
//newDataInTemp.Value30 = pds.Rows[i][29].ToString().Trim();//炉批号二
//newDataInTemp.Value31 = pds.Rows[i][30].ToString().Trim();//所属管段
//newDataInTemp.Value32 = pds.Rows[i][31].ToString().Trim();//预热温度
//newDataInTemp.Value33 = pds.Rows[i][32].ToString().Trim();//是否需热处理(是,否)
//newDataInTemp.Value34 = pds.Rows[i][33].ToString().Trim();//热处理编号
//newDataInTemp.Value35 = pds.Rows[i][34].ToString().Trim();//硬度检测比例(数值)
//newDataInTemp.Value38 = pds.Rows[i][37].ToString().Trim();//外径
//newDataInTemp.Value39 = pds.Rows[i][36].ToString().Trim();//焊接位置1G/2G/3G/4G/5G/6G)
//newDataInTemp.Value40 = pds.Rows[i][35].ToString().Trim();//焊接气体保护
//newDataInTemp.Value41 = pds.Rows[i][38].ToString().Trim();//是否非标(是/否)
//newDataInTemp.Value42 = pds.Rows[i][39].ToString().Trim();//壁板号
//newDataInTemp.Value43 = pds.Rows[i][40].ToString().Trim();//延长米
//newDataInTemp.Value44 = pds.Rows[i][41].ToString().Trim();//管道长度
//newDataInTemp.Value45 = pds.Rows[i][42].ToString().Trim();//管道类别号
newDataInTempList.Add(newDataInTemp);
}
}
BLL.DataInTempService.AddDataInTemp(newDataInTempList);
}
}
BindGrid();
}
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
protected void btnClear_Click(object sender, EventArgs e)
{ ////先删除临时表中 该人员以前导入的数据
BLL.DataInTempService.DeleteDataInTempByProjectIdUserId(this.CurrUser.LoginProjectId, this.CurrUser.UserId, this.IsPDMS);
this.BindGrid();
ShowNotify(Resources.Lan.T_REST_ASPXCS_373, MessageBoxIcon.Success);
}
}
}

View File

@ -0,0 +1,179 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class PDFMarking
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// hdjoinInfo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden hdjoinInfo;
/// <summary>
/// hdworkRecord 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden hdworkRecord;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// btnNext 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNext;
/// <summary>
/// btnClear 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClear;
/// <summary>
/// btnImport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// contentPanel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel contentPanel;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// lbDataCout 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Label lbDataCout;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDelete;
}
}

View File

@ -0,0 +1,41 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PDFShow.aspx.cs" Inherits="FineUIPro.Web.HJGL.JoinMarking.PDFShow" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<script type="module" crossorigin="" src="./assets/viewer-Dla4Cfl-.js"></script>
<link rel="modulepreload" crossorigin="" href="./assets/pdf-lib-D5zKcp81.js">
<link rel="modulepreload" crossorigin="" href="./assets/pdfjs-HfNT2Y4W.js">
<link rel="modulepreload" crossorigin="" href="./assets/styles-Bno-H3Kc.js">
<link rel="stylesheet" crossorigin="" href="./assets/styles-CDHjsf7D.css">
<link rel="stylesheet" crossorigin="" href="./assets/viewer-BilNgxa5.css">
</head>
<body>
<form id="form1" runat="server">
<input id="hdpdfurl" type="hidden" value="<%=URL %>"/>
<input id="annotionData" type="hidden" value='<%=JointData %>'/>
<input id="hdworkRecord" type="hidden" runat="server"/>
<input id="imgurl2" type="hidden" runat="server"/>
<input id="imgurl1" type="hidden" runat="server"/>
<input id="orgname" type="hidden" value="<%=UnitName %>">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:ContentPanel ID="contentPanel" runat="server">
<div id="app"></div>
</f:ContentPanel>
</Items>
</f:Panel>
</form>
<f:Window ID="Window1" Title="<%$ Resources:Lan,CheckManageImport_Window1_Title%>" Hidden="true" EnableIFrame="true"
EnableMaximize="true" Target="Top" EnableResize="true" runat="server" OnClose="Window1_Close"
IsModal="true" Width="1200px" Height="600px">
</f:Window>
</body>
</html>

View File

@ -0,0 +1,195 @@
using BLL;
using BLL.Common;
using FineUIPro.Web.HJGL.HotProcessHard;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using NPOI.POIFS.Properties;
using RestSharp.Serialization.Json;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.OleDb;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Threading;
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class PDFShow : PageBase
{
private string ISO_ID
{
get
{
return (string)ViewState["ISO_ID"];
}
set
{
ViewState["ISO_ID"] = value;
}
}
private string FileId
{
get
{
return (string)ViewState["FileId"];
}
set
{
ViewState["FileId"] = value;
}
}
public string UnitName
{
get
{
return (string)ViewState["UnitName"];
}
set
{
ViewState["UnitName"] = value;
}
}
public string URL
{
get
{
return (string)ViewState["URL"];
}
set
{
ViewState["URL"] = value;
}
}
public string JointData
{
get
{
return (string)ViewState["JointData"];
}
set
{
ViewState["JointData"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ISO_ID = Request.Params["ISO_ID"];
FileId = Request.Params["FileId"];
URL = Funs.SGGLUrl + Request.Params["pdfurl"];
var iso = Funs.DB.PW_IsoInfo.FirstOrDefault(x => x.ISO_ID == ISO_ID);
if (iso != null)
{
UnitName = Funs.DB.Base_Unit.FirstOrDefault(x => x.UnitId == iso.UnitId)?.UnitName;
}
var jotids = Funs.DB.PW_JointInfo.Where(x => x.ISO_ID == ISO_ID && x.AttachSourceId == FileId).Select(x => x.JOT_ID).ToList();
string sqlData = @"select a.JOT_ID ,a.JOT_JointNo,c.WED_Code,JOT_Location,b.JOT_WeldDate ,'/' DetectionTypeCode ,'/' IsRepair,'/' IsHotProcess,x,y,x2,y2
,(case a.JOT_JointStatus
when '100' then ''
when '102' then ''
when '101' then ''
when '104' then '' end) as JOT_JointStatus from PW_JointInfo a
left join BO_WeldReportMain b on a.DReportID=b.DReportID
left join bs_welder AS c ON a.JOT_FloorWelder = c.wed_id
WHERE a.ProjectId = @ProjectId and a.JOT_ID in ('" + string.Join("','", jotids) + "') ";
SqlParameter[] parameter1 = new SqlParameter[] { new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId) };
DataTable tb1 = SQLHelper.GetDataTableRunText(sqlData, parameter1);
string sqlTrust = @"select a.JOT_ID, c.DetectionTypeCode,b.CH_TrustType from CH_TrustItem AS a
LEFT JOIN CH_Trust AS b ON a.CH_TrustID = b.CH_TrustID
left join Base_DetectionType c on b.CH_NDTMethod = c.DetectionTypeId
where a.JOT_ID in ('" + string.Join("','", jotids) + "') ";
DataTable tbTrust = SQLHelper.GetDataTableRunText(sqlTrust, null);
Dictionary<string, string> DetectionTypeDic = new Dictionary<string, string>();
Dictionary<string, string> TrustTypeDic = new Dictionary<string, string>();
if (tbTrust != null)
{
foreach (DataRow row in tbTrust.Rows)
{
string JOT_ID = row["JOT_ID"].ToString();
string DetectionTypeCode = row["DetectionTypeCode"].ToString();
string CH_TrustType = row["CH_TrustType"].ToString();
if (!DetectionTypeDic.ContainsKey(JOT_ID))
{
DetectionTypeDic.Add(JOT_ID, DetectionTypeCode);
}
if (!TrustTypeDic.ContainsKey(JOT_ID)&& CH_TrustType=="2")
{
TrustTypeDic.Add(JOT_ID, CH_TrustType);
}
}
}
string sqlCheck = @"
select HotProessTrustId ,WeldJointId from HJGL_HotProess_TrustItem
where WeldJointId in ('" + string.Join("','", jotids) + "') ";
DataTable tbCheck = SQLHelper.GetDataTableRunText(sqlCheck, null);
Dictionary<string, string> HotProessDic = new Dictionary<string, string>();
if (tbCheck != null)
{
foreach (DataRow row in tbTrust.Rows)
{
string WeldJointId = row["WeldJointId"].ToString();
string HotProessTrustId = row["HotProessTrustId"].ToString();
if(!HotProessDic.ContainsKey(WeldJointId))
{
HotProessDic.Add(WeldJointId, HotProessTrustId);
}
}
}
if (tb1 != null)
{
foreach (DataRow row in tb1.Rows)
{
string JOT_ID = row["JOT_ID"].ToString();
if (DetectionTypeDic.ContainsKey(JOT_ID))
{
row["DetectionTypeCode"] = DetectionTypeDic[JOT_ID];
}
else
{
row["DetectionTypeCode"] = "/";
}
if (TrustTypeDic.ContainsKey(JOT_ID))
{
row["IsRepair"] = "是";
}
else
{
row["IsRepair"] = "/";
}
if (HotProessDic.ContainsKey(JOT_ID))
{
row["IsHotProcess"] ="是";
}
else
{
row["IsHotProcess"] = "/";
}
}
}
JointData = JsonConvert.SerializeObject(tb1);
}
}
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
}
}
}

View File

@ -0,0 +1,89 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.HJGL.JoinMarking
{
public partial class PDFShow
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// hdworkRecord 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden hdworkRecord;
/// <summary>
/// imgurl2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden imgurl2;
/// <summary>
/// imgurl1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlInputHidden imgurl1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// contentPanel 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel contentPanel;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.menu-item[data-v-6090802b]:hover{background-color:#f3f4f6!important}.annotation-detail-panel[data-v-6090802b]{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:16px;overflow:hidden}.panel-header[data-v-6090802b]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#334155;color:#fff}.close-btn[data-v-6090802b]{background:transparent;border:none;color:#fff;font-size:18px;cursor:pointer;padding:0 4px;line-height:1}.close-btn[data-v-6090802b]:hover{color:#fca5a5}.detail-content[data-v-6090802b]{padding:12px}.detail-row[data-v-6090802b]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.detail-row label[data-v-6090802b]{min-width:70px;font-size:12px;color:#64748b}.detail-row.readonly[data-v-6090802b]{color:#94a3b8;font-size:12px}.detail-row.readonly span[data-v-6090802b]{color:#475569}.label-preview[data-v-6090802b]{flex:1;padding:6px 10px;background:#1e293b;color:#f1f5f9;border-radius:4px;font-family:monospace;font-size:13px;text-align:center}.detail-input[data-v-6090802b]{flex:1;padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px}.detail-input[data-v-6090802b]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.detail-textarea[data-v-6090802b]{flex:1;padding:6px 8px;border:1px solid #d1d5db;border-radius:4px;font-size:12px;min-height:60px;resize:vertical;font-family:inherit}.detail-textarea[data-v-6090802b]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.detail-divider[data-v-6090802b]{height:1px;background:#e2e8f0;margin:12px 0}.detail-actions[data-v-6090802b]{display:flex;gap:8px;margin-top:12px}.detail-actions .btn-primary[data-v-6090802b]{flex:1;padding:8px;background:#3b82f6;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:12px}.detail-actions .btn-primary[data-v-6090802b]:hover{background:#2563eb}.detail-actions .btn-danger[data-v-6090802b]{padding:8px 12px;background:#fee2e2;color:#dc2626;border:1px solid #fecaca;border-radius:4px;cursor:pointer;font-size:12px}.detail-actions .btn-danger[data-v-6090802b]:hover{background:#fecaca}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1 @@
.viewer-container[data-v-0899ee83]{display:flex;height:100vh;padding:12px;box-sizing:border-box}.viewer-main[data-v-0899ee83]{flex:1;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:0 10px 30px -18px #00000059;padding:8px;box-sizing:border-box}

File diff suppressed because one or more lines are too long