From 3768e3788e39541a4a2629ed7b0cf83b5583ced9 Mon Sep 17 00:00:00 2001 From: geh <1923421292@qq.com> Date: Wed, 16 Apr 2025 10:19:33 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=B8=80=E4=BA=BA=E4=B8=80=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DataBase/版本日志/SGGLDB_2025-04-14-geh.sql | 6 +- DataBase/版本日志/SGGLDB_2025-04-15-geh.sql | 72 +++++++++ .../Person/安全教育培训打印整套(电工).doc | Bin 134144 -> 135680 bytes .../HSSE/SitePerson/PersonList.aspx.cs | 18 +-- SUBQHSE/Model/Model.cs | 149 ++++++++++++++++++ .../HSSE/InformedConsentFormController.cs | 103 ++++++++++++ SUBQHSE/WebAPI/WebAPI.csproj | 1 + 7 files changed, 335 insertions(+), 14 deletions(-) create mode 100644 DataBase/版本日志/SGGLDB_2025-04-15-geh.sql create mode 100644 SUBQHSE/WebAPI/Controllers/HSSE/InformedConsentFormController.cs diff --git a/DataBase/版本日志/SGGLDB_2025-04-14-geh.sql b/DataBase/版本日志/SGGLDB_2025-04-14-geh.sql index 846fcf4..ceb9bce 100644 --- a/DataBase/版本日志/SGGLDB_2025-04-14-geh.sql +++ b/DataBase/版本日志/SGGLDB_2025-04-14-geh.sql @@ -1,5 +1,5 @@ ALTER TABLE Training_TestRecord -ADD COLUMN Signature NVARCHAR(1000), -ADD COLUMN Fingerprint NVARCHAR(1000), -ADD COLUMN CompanyTrainingItemId NVARCHAR(50); +ADD Signature NVARCHAR(1000), +ADD Fingerprint NVARCHAR(1000), +ADD CompanyTrainingItemId NVARCHAR(50); go \ No newline at end of file diff --git a/DataBase/版本日志/SGGLDB_2025-04-15-geh.sql b/DataBase/版本日志/SGGLDB_2025-04-15-geh.sql new file mode 100644 index 0000000..0526406 --- /dev/null +++ b/DataBase/版本日志/SGGLDB_2025-04-15-geh.sql @@ -0,0 +1,72 @@ + + +CREATE TABLE [dbo].[InformedConsentForm] ( + [FormId] nvarchar(50) COLLATE Chinese_PRC_CI_AS NOT NULL, + [WorkPostName] nvarchar(50) COLLATE Chinese_PRC_CI_AS NULL, + [JobRiskNotice] nvarchar(max) NULL, + [HealthCommitment] nvarchar(max) NULL, + [SafetyCommitment] nvarchar(max) NULL, + [SafetyQualityResponsibility] nvarchar(max) NULL, +) + +GO + +EXEC sp_addextendedproperty +'MS_Description', N'主键', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm', +'COLUMN', N'FormId' +GO + +EXEC sp_addextendedproperty +'MS_Description', N'岗位', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm', +'COLUMN', N'WorkPostName' +GO + +EXEC sp_addextendedproperty +'MS_Description', N'岗位危险告知书', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm', +'COLUMN', N'JobRiskNotice' +GO + +EXEC sp_addextendedproperty +'MS_Description', N'入场工人健康承诺书', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm', +'COLUMN', N'HealthCommitment' +GO + +EXEC sp_addextendedproperty +'MS_Description', N'安全承诺书', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm', +'COLUMN', N'SafetyCommitment' +GO + +EXEC sp_addextendedproperty +'MS_Description', N'安全质量责任书', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm', +'COLUMN', N'SafetyQualityResponsibility' +GO + +EXEC sp_addextendedproperty +'MS_Description', N'告知承诺书', +'SCHEMA', N'dbo', +'TABLE', N'InformedConsentForm' + + + +ALTER TABLE SitePerson_Person +ADD SignTime datetime NULL +go + +EXEC sp_addextendedproperty +'MS_Description', N'签字时间', +'SCHEMA', N'dbo', +'TABLE', N'SitePerson_Person', +'COLUMN', N'SignTime' +GO diff --git a/SUBQHSE/FineUIPro.Web/File/Word/Person/安全教育培训打印整套(电工).doc b/SUBQHSE/FineUIPro.Web/File/Word/Person/安全教育培训打印整套(电工).doc index 444d2f8d33bbbe2cbb7c19a1b3e257a30e5859ea..654848158cc3aeef102d796b870e0185c210abf6 100644 GIT binary patch delta 8602 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 G-Txb@Z0|z= delta 8148 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 x.PersonId == Grid1.SelectedRowID); + var personData = Funs.DB.SitePerson_Person.FirstOrDefault(x => x.PersonId == Grid1.SelectedRowID); if (person != null) { @@ -903,7 +904,6 @@ namespace FineUIPro.Web.HSSE.SitePerson join user in Funs.DB.Sys_User on TestPlan.PlanManId equals user.UserId into gUser from user in gUser.DefaultIfEmpty() where x.TestManId == person.PersonId - // where x.TestManId == "d9f795a2-b8eb-4872-9e4c-4a3dba028b5c" orderby x.TestEndTime descending select new { @@ -998,20 +998,16 @@ namespace FineUIPro.Web.HSSE.SitePerson helper.AddImage(string.Empty, "sign2", 0, 0, 0, 0); } - DateTime dateTime2 = new DateTime(2024, 6, 25); - // 构建格式化的字符串 - string date2 = $" {dateTime2.Year} 年 {dateTime2.Month:D2} 月 {dateTime2.Day:D2} 日"; + string date2 = personData.SignTime.HasValue + ? $" {personData.SignTime.Value.Year} 年 {personData.SignTime.Value.Month:D2} 月 {personData.SignTime.Value.Day:D2} 日" + : ""; string IdentityCard = person.IdentityCard; string Telephone = person.Telephone; - // 假设我们有一个DateTime对象 - DateTime dateTime = new DateTime(2024, 6, 25); - - // 提取年、月、日 - int year = dateTime.Year; - int month = dateTime.Month; - int day = dateTime.Day; + string year = person.InTime.HasValue ? person.InTime.Value.Year.ToString() : ""; + string month = person.InTime.HasValue ? person.InTime.Value.Month.ToString() : ""; + string day = person.InTime.HasValue ? person.InTime.Value.Day.ToString() : ""; string sign3 = AttachFileService.getFileUrl(person.PersonId + "_3"); if (!string.IsNullOrEmpty(sign3)) diff --git a/SUBQHSE/Model/Model.cs b/SUBQHSE/Model/Model.cs index f8e0ad8..f4004d7 100644 --- a/SUBQHSE/Model/Model.cs +++ b/SUBQHSE/Model/Model.cs @@ -6909,6 +6909,14 @@ namespace Model } } + public System.Data.Linq.Table InformedConsentForm + { + get + { + return this.GetTable(); + } + } + public System.Data.Linq.Table InterFaceLog { get @@ -237894,6 +237902,123 @@ namespace Model } } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.InformedConsentForm")] + public partial class InformedConsentForm + { + + private string _FormId; + + private string _WorkPostName; + + private string _JobRiskNotice; + + private string _HealthCommitment; + + private string _SafetyCommitment; + + private string _SafetyQualityResponsibility; + + public InformedConsentForm() + { + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FormId", DbType="NVarChar(50) NOT NULL", CanBeNull=false)] + public string FormId + { + get + { + return this._FormId; + } + set + { + if ((this._FormId != value)) + { + this._FormId = value; + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPostName", DbType="NVarChar(50)")] + public string WorkPostName + { + get + { + return this._WorkPostName; + } + set + { + if ((this._WorkPostName != value)) + { + this._WorkPostName = value; + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_JobRiskNotice", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + public string JobRiskNotice + { + get + { + return this._JobRiskNotice; + } + set + { + if ((this._JobRiskNotice != value)) + { + this._JobRiskNotice = value; + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HealthCommitment", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + public string HealthCommitment + { + get + { + return this._HealthCommitment; + } + set + { + if ((this._HealthCommitment != value)) + { + this._HealthCommitment = value; + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SafetyCommitment", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + public string SafetyCommitment + { + get + { + return this._SafetyCommitment; + } + set + { + if ((this._SafetyCommitment != value)) + { + this._SafetyCommitment = value; + } + } + } + + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SafetyQualityResponsibility", DbType="NVarChar(MAX)", UpdateCheck=UpdateCheck.Never)] + public string SafetyQualityResponsibility + { + get + { + return this._SafetyQualityResponsibility; + } + set + { + if ((this._SafetyQualityResponsibility != value)) + { + this._SafetyQualityResponsibility = value; + } + } + } + } + [global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.InterFaceLog")] public partial class InterFaceLog : INotifyPropertyChanging, INotifyPropertyChanged { @@ -363390,6 +363515,8 @@ namespace Model private string _PersonStates; + private System.Nullable _SignTime; + private EntitySet _Accident_AccidentPersonRecord; private EntitySet _Accident_AccidentReportOtherItem; @@ -363592,6 +363719,8 @@ namespace Model partial void OnLanguagesChanged(); partial void OnPersonStatesChanging(string value); partial void OnPersonStatesChanged(); + partial void OnSignTimeChanging(System.Nullable value); + partial void OnSignTimeChanged(); #endregion public SitePerson_Person() @@ -365022,6 +365151,26 @@ namespace Model } } + [global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SignTime", DbType="DateTime")] + public System.Nullable SignTime + { + get + { + return this._SignTime; + } + set + { + if ((this._SignTime != value)) + { + this.OnSignTimeChanging(value); + this.SendPropertyChanging(); + this._SignTime = value; + this.SendPropertyChanged("SignTime"); + this.OnSignTimeChanged(); + } + } + } + [global::System.Data.Linq.Mapping.AssociationAttribute(Name="FK_Accident_AccidentPersonRecord_SitePerson_Person", Storage="_Accident_AccidentPersonRecord", ThisKey="PersonId", OtherKey="PersonId", DeleteRule="NO ACTION")] public EntitySet Accident_AccidentPersonRecord { diff --git a/SUBQHSE/WebAPI/Controllers/HSSE/InformedConsentFormController.cs b/SUBQHSE/WebAPI/Controllers/HSSE/InformedConsentFormController.cs new file mode 100644 index 0000000..9dd1fec --- /dev/null +++ b/SUBQHSE/WebAPI/Controllers/HSSE/InformedConsentFormController.cs @@ -0,0 +1,103 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Net.Http; +using System.Web.Http; +using BLL; +using Model; + +namespace WebAPI.Controllers.HSSE +{ + public class InformedConsentFormController:ApiController + { + #region 根据用户获取告知书 + + /// + /// + /// + /// + public Model.ResponeData getFormByWorkPostName(string PersonId) + { + var responeData = new Model.ResponeData(); + try + { + var person = Funs.DB.View_SitePerson_Person.FirstOrDefault(x => x.PersonId == PersonId); + InformedConsentForm getData = new InformedConsentForm(); + if (person != null) + { + string projectName = Funs.DB.Base_Project.First(z => z.ProjectId == person.ProjectId).ProjectName; + string name = person.PersonName; + string IdentityCard = person.IdentityCard; + string Telephone = person.Telephone; + string year = person.InTime.HasValue ? person.InTime.Value.Year.ToString() : ""; + string month = person.InTime.HasValue ? person.InTime.Value.Month.ToString() : ""; + string day = person.InTime.HasValue ? person.InTime.Value.Day.ToString() : ""; + getData = (from x in Funs.DB.InformedConsentForm + where x.WorkPostName == person.WorkPostName + select x).FirstOrDefault(); + if (getData != null) + { + // 替换$name占位符 + getData.JobRiskNotice = getData.JobRiskNotice.Replace("$name", name); + // 替换多个占位符 + getData.HealthCommitment = getData.HealthCommitment.Replace("$name", name) + .Replace("$IdentityCard", IdentityCard) + .Replace("$Telephone", Telephone) + .Replace("$year", year) + .Replace("$month", month) + .Replace("$day", day) + .Replace("$projectName", projectName); + } + } + + responeData.data = new { getData }; + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + + #endregion + + #region 签字保存后根据人员id修改签字时间 + + /// + /// 保存签字图片的时格式是tokenkey=PersonId_1 + /// + /// + [HttpPost] + public Model.ResponeData updateSignTime(string PersonId, DateTime? newSignTime = null) + { + using (Model.SUBQHSEDB db = new Model.SUBQHSEDB(Funs.ConnString)) + { + var responeData = new Model.ResponeData(); + try + { + // 查找要修改的记录 + var person = db.SitePerson_Person.FirstOrDefault(x => x.PersonId == PersonId); + if (person != null) + { + person.SignTime = newSignTime.HasValue ? newSignTime.Value : DateTime.Now; // 更新签字时间 + db.SubmitChanges(); + responeData.code = 1; + responeData.message = "保存成功。"; + } + } + catch (Exception ex) + { + responeData.code = 0; + responeData.message = ex.Message; + } + + return responeData; + } + } + + #endregion + } +} \ No newline at end of file diff --git a/SUBQHSE/WebAPI/WebAPI.csproj b/SUBQHSE/WebAPI/WebAPI.csproj index 81556ae..31706d2 100644 --- a/SUBQHSE/WebAPI/WebAPI.csproj +++ b/SUBQHSE/WebAPI/WebAPI.csproj @@ -201,6 +201,7 @@ +