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

- 安全巡检表新增编码字段(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
+85 -4
View File
@@ -16,6 +16,15 @@ namespace Model
set;
}
/// <summary>
/// 编码(全局唯一,格式 XJ-序号,自动生成)
/// </summary>
public string Code
{
get;
set;
}
/// <summary>
/// 项目ID
/// </summary>
@@ -53,7 +62,7 @@ namespace Model
}
/// <summary>
/// 巡检人
/// 巡检人名称
/// </summary>
public string PatrolMan
{
@@ -62,7 +71,16 @@ namespace Model
}
/// <summary>
/// 巡检状态(正常/待整改)
/// 巡检人ID
/// </summary>
public string PatrolManId
{
get;
set;
}
/// <summary>
/// 巡检状态(正常/待整改/整改待复查)
/// </summary>
public string PatrolStatus
{
@@ -71,7 +89,7 @@ namespace Model
}
/// <summary>
/// 巡内容
/// 巡内容(勾选项合并后的文本)
/// </summary>
public string Content
{
@@ -80,12 +98,75 @@ namespace Model
}
/// <summary>
/// 附件URL(逗号分隔)
/// 发现问题
/// </summary>
public string Problems
{
get;
set;
}
/// <summary>
/// 签收人名称
/// </summary>
public string Receiver
{
get;
set;
}
/// <summary>
/// 签收人ID
/// </summary>
public string ReceiverId
{
get;
set;
}
/// <summary>
/// 处理要求
/// </summary>
public string HandleRequire
{
get;
set;
}
/// <summary>
/// 整改后复查情况
/// </summary>
public string RectifyReview
{
get;
set;
}
/// <summary>
/// 备注
/// </summary>
public string Remarks
{
get;
set;
}
/// <summary>
/// 附件URL(逗号分隔,巡视图片)
/// </summary>
public string AttachUrl
{
get;
set;
}
/// <summary>
/// 整改图片URL(逗号分隔)
/// </summary>
public string RectifyAttachUrl
{
get;
set;
}
}
}
+18
View File
@@ -0,0 +1,18 @@
using System;
using System.Data.Linq.Mapping;
namespace Model
{
/// <summary>
/// 【补充部分类】为 HSSE_SafetyPatrol 提供编码(Code) 列映射。
/// 说明:该列已由数据库脚本新增(见 DataBase/版本日志/SGGLDB_V2026-08-26-001-zones.sql),
/// 但本地无 SqlMetal,未通过 CreateModel.bat 重新生成 Model.cs,故以 partial 类补齐。
/// 注意:若以后用 CreateModel.bat 重新生成 Model.csSqlMetal 会把 Code 一并生成,
/// 届时请删除本文件,避免出现重复的 Code 成员导致编译错误。
/// </summary>
public partial class HSSE_SafetyPatrol
{
[Column(Name = "Code", DbType = "NVarChar(50)")]
public string Code { get; set; }
}
}
+168
View File
@@ -220506,10 +220506,24 @@ namespace Model
private string _PatrolMan;
private string _PatrolManId;
private string _PatrolStatus;
private string _Content;
private string _Problems;
private string _Receiver;
private string _ReceiverId;
private string _HandleRequire;
private string _RectifyReview;
private string _Remarks;
#region
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
@@ -220526,10 +220540,24 @@ namespace Model
partial void OnPatrolDateChanged();
partial void OnPatrolManChanging(string value);
partial void OnPatrolManChanged();
partial void OnPatrolManIdChanging(string value);
partial void OnPatrolManIdChanged();
partial void OnPatrolStatusChanging(string value);
partial void OnPatrolStatusChanged();
partial void OnContentChanging(string value);
partial void OnContentChanged();
partial void OnProblemsChanging(string value);
partial void OnProblemsChanged();
partial void OnReceiverChanging(string value);
partial void OnReceiverChanged();
partial void OnReceiverIdChanging(string value);
partial void OnReceiverIdChanged();
partial void OnHandleRequireChanging(string value);
partial void OnHandleRequireChanged();
partial void OnRectifyReviewChanging(string value);
partial void OnRectifyReviewChanged();
partial void OnRemarksChanging(string value);
partial void OnRemarksChanged();
#endregion
public HSSE_SafetyPatrol()
@@ -220657,6 +220685,26 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PatrolManId", DbType="NVarChar(50)")]
public string PatrolManId
{
get
{
return this._PatrolManId;
}
set
{
if ((this._PatrolManId != value))
{
this.OnPatrolManIdChanging(value);
this.SendPropertyChanging();
this._PatrolManId = value;
this.SendPropertyChanged("PatrolManId");
this.OnPatrolManIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PatrolStatus", DbType="NVarChar(50)")]
public string PatrolStatus
{
@@ -220697,6 +220745,126 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Problems", DbType="NVarChar(1000)")]
public string Problems
{
get
{
return this._Problems;
}
set
{
if ((this._Problems != value))
{
this.OnProblemsChanging(value);
this.SendPropertyChanging();
this._Problems = value;
this.SendPropertyChanged("Problems");
this.OnProblemsChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Receiver", DbType="NVarChar(50)")]
public string Receiver
{
get
{
return this._Receiver;
}
set
{
if ((this._Receiver != value))
{
this.OnReceiverChanging(value);
this.SendPropertyChanging();
this._Receiver = value;
this.SendPropertyChanged("Receiver");
this.OnReceiverChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ReceiverId", DbType="NVarChar(50)")]
public string ReceiverId
{
get
{
return this._ReceiverId;
}
set
{
if ((this._ReceiverId != value))
{
this.OnReceiverIdChanging(value);
this.SendPropertyChanging();
this._ReceiverId = value;
this.SendPropertyChanged("ReceiverId");
this.OnReceiverIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HandleRequire", DbType="NVarChar(1000)")]
public string HandleRequire
{
get
{
return this._HandleRequire;
}
set
{
if ((this._HandleRequire != value))
{
this.OnHandleRequireChanging(value);
this.SendPropertyChanging();
this._HandleRequire = value;
this.SendPropertyChanged("HandleRequire");
this.OnHandleRequireChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_RectifyReview", DbType="NVarChar(1000)")]
public string RectifyReview
{
get
{
return this._RectifyReview;
}
set
{
if ((this._RectifyReview != value))
{
this.OnRectifyReviewChanging(value);
this.SendPropertyChanging();
this._RectifyReview = value;
this.SendPropertyChanged("RectifyReview");
this.OnRectifyReviewChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remarks", DbType="NVarChar(500)")]
public string Remarks
{
get
{
return this._Remarks;
}
set
{
if ((this._Remarks != value))
{
this.OnRemarksChanging(value);
this.SendPropertyChanging();
this._Remarks = value;
this.SendPropertyChanged("Remarks");
this.OnRemarksChanged();
}
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
+1
View File
@@ -247,6 +247,7 @@
<Compile Include="JDGL\WBSSetInitItem.cs" />
<Compile Include="JDGL\WBSSetItem.cs" />
<Compile Include="Model.cs" />
<Compile Include="HSSE_SafetyPatrol.Code.cs" />
<Compile Include="ModelProc.cs" />
<Compile Include="Num.cs" />
<Compile Include="Pie.cs" />