安全巡检接入真实数据库:编码字段自动生成、公示牌二维码修复、安全问题统计排除作废

- 安全巡检表新增编码字段(Code,全局唯一 XJ-序号),WebAPI/桌面端新增时自动生成,不可重复
- 修复危大超危工程公示牌二维码不显示:urlName 含非法字符?导致 image.Save 抛异常,改用主键+内容哈希安全文件名
- 安全问题统计(mainProject/main3)排除作废数据(States=4),图表口径与顶部计数一致
- Word 导出文件名改为 监督巡视部位+编号
- Model.cs 由 SqlMetal 重新生成,补齐巡检人ID/签收人ID/发现问题/处理要求等字段;新增 HSSE_SafetyPatrol.Code.cs 补充 Code 列
- 新增安全巡检完整建表脚本(SGGLDB_V2026-08-25-001);删除已过时的接口文档 SafetyPatrol_API.md
This commit is contained in:
2026-08-26 19:13:11 +08:00
parent 55944d732a
commit 192824ea90
27 changed files with 1601 additions and 309 deletions
@@ -20,12 +20,12 @@
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="危大、超危工程每日巡检记录" EnableCollapse="true"
runat="server" BoxFlex="1" EnableColumnLines="true" DataKeyNames="PatrolId"
EnableAjax="false" runat="server" BoxFlex="1" EnableColumnLines="true" DataKeyNames="PatrolId"
DataIDField="PatrolId" AllowSorting="true"
SortField="PatrolDate" SortDirection="DESC" OnSort="Grid1_Sort" AllowPaging="true"
IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick"
OnRowCommand="Grid1_RowCommand" EnableTextSelection="True">
OnRowCommand="Grid1_RowCommand" EnableTextSelection="True" EnableCheckBoxSelect="true" KeepCurrentSelection="true">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
@@ -46,6 +46,9 @@
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出Word" Text="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
<f:Button ID="btnNew" ToolTip="扫码巡检" Icon="Add" runat="server" OnClick="btnNew_Click">
</f:Button>
</Items>
@@ -58,22 +61,18 @@
<asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="180px" ColumnID="HazardProjectName" DataField="HazardProjectName"
SortField="HazardProjectName" FieldType="String" HeaderText="工程名称" HeaderTextAlign="Center"
<f:RenderField Width="90px" ColumnID="Code" DataField="Code"
SortField="Code" FieldType="String" HeaderText="编码" HeaderTextAlign="Center"
TextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="HazardProjectName" DataField="HazardProjectName"
SortField="HazardProjectName" FieldType="String" HeaderText="监督巡视部位" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="PatrolDate" DataField="PatrolDate"
SortField="PatrolDate" FieldType="Date" Renderer="Date" HeaderText="巡检日期" HeaderTextAlign="Center"
TextAlign="Center">
</f:RenderField>
<f:RenderField Width="80px" ColumnID="PatrolMan" DataField="PatrolMan"
SortField="PatrolMan" FieldType="String" HeaderText="巡检人" HeaderTextAlign="Center"
TextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="Content" DataField="Content"
SortField="Content" FieldType="String" HeaderText="巡检内容" HeaderTextAlign="Center" ExpandUnusedSpace="true"
TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="tfPatrolStatus" Width="120px" HeaderText="巡检状态" HeaderTextAlign="Center"
TextAlign="Center">
<ItemTemplate>
@@ -81,8 +80,19 @@
ForeColor='<%# GetPatrolStatusColor(Eval("PatrolStatus")) %>' Font-Bold="true"></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="200px" ColumnID="Problems" DataField="Problems"
SortField="Problems" FieldType="String" HeaderText="发现问题" HeaderTextAlign="Center" ExpandUnusedSpace="true"
TextAlign="Left">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="HandleRequire" DataField="HandleRequire"
SortField="HandleRequire" FieldType="String" HeaderText="处理要求" HeaderTextAlign="Center"
TextAlign="Left">
</f:RenderField>
<f:LinkButtonField Width="80px" ColumnID="Attach" CommandName="attchUrl"
HeaderText="巡检图片" HeaderTextAlign="Center" TextAlign="Center" Text="查看">
HeaderText="巡检附件" HeaderTextAlign="Center" TextAlign="Center" Text="查看">
</f:LinkButtonField>
<f:LinkButtonField Width="80px" ColumnID="AttachRectify" CommandName="attchUrlRectify"
HeaderText="整改附件" HeaderTextAlign="Center" TextAlign="Center" Text="查看">
</f:LinkButtonField>
</Columns>
<Listeners>