feat(hjgl): 完善焊前检查和防腐检查流程

焊前检查需要同时覆盖下料、组对和防腐检查,并支持移动端查询与保存。
扩展焊前检查模型、服务和页面字段,补充检查结果、不合格原因、整改要求、
附件和防腐检查记录,便于按焊口和材料追溯检查过程。
This commit is contained in:
2026-07-07 10:40:21 +08:00
parent 02b524b895
commit bb6615ebb0
57 changed files with 5035 additions and 2057 deletions
+52 -3
View File
@@ -33,9 +33,9 @@
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="材料库存表" EnableCollapse="true" ForceFit="true"
runat="server" BoxFlex="1" DataKeyNames="Id" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id"
ClicksToEdit="2" DataIDField="Id" AllowSorting="true" SortField="Id" OnRowCommand="Grid1_RowCommand"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true" EnableTextSelection="True"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange">
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" AllowColumnLocking="true">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
@@ -91,6 +91,7 @@
<f:RenderField Width="150px" ColumnID="StockNum" DataField="StockNum" SortField="StockNum"
FieldType="String" HeaderText="库存数量" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:LinkButtonField Width="120px" ColumnID="btnBarCodePrint" TextAlign="Center" CommandName="btnBarCodePrint" Text="入库条码打印" Locked="true" />
</Columns>
<%-- <Listeners>
@@ -135,8 +136,56 @@
return false;
}--%>
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
__doPostBack(null, 'reloadGrid');
}
function printByHiddenFrame(url) {
var frameId = 'fastreport-print-frame-' + new Date().getTime();
var frame = document.createElement('iframe');
frame.id = frameId;
frame.name = frameId;
frame.style.position = 'fixed';
frame.style.left = '-10000px';
frame.style.top = '-10000px';
frame.style.width = '1px';
frame.style.height = '1px';
frame.style.border = '0';
frame.style.opacity = '0';
frame.onload = function() {
setTimeout(function() {
try {
frame.contentWindow.onafterprint = cleanupPrintFrame;
frame.contentWindow.focus();
frame.contentWindow.print();
} catch (e) {
window.print();
}
}, 500);
};
frame.src = url;
document.body.appendChild(frame);
var cleaned = false;
function cleanupPrintFrame() {
if (cleaned) {
return;
}
cleaned = true;
if (frame && frame.parentNode) {
frame.parentNode.removeChild(frame);
}
window.removeEventListener('afterprint', cleanupPrintFrame);
}
window.addEventListener('afterprint', cleanupPrintFrame);
setTimeout(cleanupPrintFrame, 300000);
}
window.addEventListener('message', function(event) {
if (!event.data || event.data.type !== 'fastreport-print-finished') {
return;
}
var frame = document.getElementById(event.data.frameId);
if (frame && frame.parentNode) {
frame.parentNode.removeChild(frame);
}
});
</script>
</body>
</html>