feat(hjgl)焊前准备,日报管理增加附件

This commit is contained in:
2026-06-24 16:56:00 +08:00
parent dfc9095282
commit 4670220614
23 changed files with 598 additions and 65 deletions
@@ -7,6 +7,32 @@
<head runat="server">
<title>焊接日报</title>
<meta name="sourcefiles" content="~/HJGL/WeldingManage/GetWdldingDailyItem.ashx"/>
<link href="../../res/css/viewer.min.css" rel="stylesheet" />
<script src="../../res/js/viewer.min.js" type="text/javascript"></script>
<style type="text/css">
.imgPreview {
display: none;
top: 0;
left: 0;
width: 100%; /*容器占满整个屏幕*/
height: 100%;
position: fixed;
background: rgba(0, 0, 0, 0.5);
}
.imgPreview img {
z-index: 100;
width: 60%;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
}
/*添加鼠标移入图片效果*/
.img {
cursor: url("ico/放大镜.png"), auto;
}
</style>
</head>
<body>
<form id="form1" runat="server">
@@ -177,6 +203,18 @@
DataField="WeldingLocationCode" SortField="WeldingLocationCode" FieldType="String" HeaderTextAlign="Center"
TextAlign="Left" Width="100px">
</f:RenderField>
<f:TemplateField ColumnID="tfReportBeforePhotoUrl" MinWidth="120px" HeaderText="焊前附件" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbReportBeforePhotoUrl" runat="server" Text='<%# ConvertImageUrlByImage(Eval("BeforePhotoUrl")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField ColumnID="tfReportAfterPhotoUrl" MinWidth="120px" HeaderText="焊后附件" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbReportAfterPhotoUrl" runat="server" Text='<%# ConvertImageUrlByImage(Eval("AfterPhotoUrl")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@@ -205,7 +243,7 @@
<f:Toolbar ID="ToolbarPending" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DatePicker ID="txtPendingWeldingDate" runat="server" Label="焊接日期" LabelAlign="Right"
LabelWidth="90px" Width="220px" AutoPostBack="true" OnTextChanged="PendingFilter_TextChanged">
LabelWidth="90px" Width="220px" AutoPostBack="true" OnTextChanged="PendingFilter_TextChanged" AutoShowClearIcon="true">
</f:DatePicker>
<f:TextBox ID="txtPendingPipelineCode" runat="server" Label="管线号" EmptyText="输入查询条件"
LabelAlign="Right" AutoPostBack="true" OnTextChanged="PendingFilter_TextChanged">
@@ -265,6 +303,18 @@
<f:RenderField HeaderText="提交时间" ColumnID="SubmitDate" DataField="SubmitDate" FieldType="Date"
Renderer="Date" HeaderTextAlign="Center" TextAlign="Center" Width="140px">
</f:RenderField>
<f:TemplateField ColumnID="tfPendingBeforePhotoUrl" MinWidth="120px" HeaderText="焊前附件" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbPendingBeforePhotoUrl" runat="server" Text='<%# ConvertImageUrlByImage(Eval("BeforePhotoUrl")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField ColumnID="tfPendingAfterPhotoUrl" MinWidth="120px" HeaderText="焊后附件" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
<asp:Label ID="lbPendingAfterPhotoUrl" runat="server" Text='<%# ConvertImageUrlByImage(Eval("AfterPhotoUrl")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparatorPending" runat="server">
@@ -329,8 +379,38 @@
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
__doPostBack(null, 'reloadGrid');
}
var imgIDs = ['<%=Grid1.ClientID %>', '<%=GridPending.ClientID %>'];
function showImg() {
$.each(imgIDs, function(_, imgID) {
var $wrap = $("#" + imgID);
$wrap.find('img').off('click.weldreport').on('click.weldreport', function() {
var src = $(this).attr('src');
if (!src || src.indexOf("/res/icon") != -1) {
return;
}
var div = document.createElement('div');
div.style.display = 'none';
div.innerHTML = '<img src="' + src + '">'; // 创建一个包含图片的 div 元素
document.body.appendChild(div); // 将 div 元素添加到页面中
var viewer = new Viewer(div.firstChild); // 创建 Viewer 实例并传入图片元素
viewer.show(); // 显示图片预览
// 在 Viewer 关闭后移除添加的 div 元素
viewer.on('hidden', function() {
document.body.removeChild(div);
});
});
});
$('.imgPreview').on('click', function() {
// $('.imgPreview').hide()
});
}
F.ready(function() {
showImg();
})
</script>
</body>
</html>