20211202 与集团安全信息报表及检查对接接口实现

This commit is contained in:
2021-12-02 10:44:15 +08:00
parent 8932645f54
commit 39cd93e266
43 changed files with 3072 additions and 2026 deletions
+11 -7
View File
@@ -564,6 +564,8 @@
<Compile Include="OfficeCheck\Check\ProjectSupervision_RectifyItemService.cs" />
<Compile Include="OfficeCheck\Check\ProjectSupervision_RectifyService.cs" />
<Compile Include="OfficeCheck\ProjectEvaluation\ProjectEvaluationService.cs" />
<Compile Include="OpenService\FileInsertService.cs" />
<Compile Include="OpenService\FileStructService.cs" />
<Compile Include="OpenService\MonitorService.cs" />
<Compile Include="DynamicTHeaderHepler.cs" />
<Compile Include="OpenService\GetDataService.cs" />
@@ -707,12 +709,14 @@
<Compile Include="TestRun\TestRunService.cs" />
<Compile Include="WebService\MCSWebService.cs" />
<Compile Include="WebService\CNCECHSSEWebService.cs" />
<Compile Include="WebService\CNCECHSSEMonitorService.cs" />
<Compile Include="ZHGL\DataStatistics\DataStatisticsService.cs" />
<Compile Include="ZHGL\HSSESystem\HSSEManageItemService.cs" />
<Compile Include="ZHGL\HSSESystem\HSSEManageService.cs" />
<Compile Include="ZHGL\HSSESystem\HSSEOrganizeService.cs" />
<Compile Include="ZHGL\Information\AccidentCauseReportItemService.cs" />
<Compile Include="ZHGL\Information\AccidentCauseReportService.cs" />
<Compile Include="ZHGL\Information\UrgeReportService.cs" />
<Compile Include="ZHGL\Information\AnalyseResourceService.cs" />
<Compile Include="ZHGL\Information\DrillConductedQuarterlyReportItemService.cs" />
<Compile Include="ZHGL\Information\DrillConductedQuarterlyReportService.cs" />
@@ -895,13 +899,6 @@
<Content Include="Scripts\jquery-3.5.1.min.js" />
<Content Include="Scripts\jquery-3.5.1.slim.js" />
<Content Include="Scripts\jquery-3.5.1.slim.min.js" />
<None Include="Service References\MCSService\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<None Include="Service References\MCSService\configuration.svcinfo" />
<None Include="Service References\MCSService\configuration91.svcinfo" />
<None Include="Service References\MCSService\WebService1.disco" />
<None Include="Service References\CNCECHSSEService\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
@@ -909,6 +906,13 @@
<None Include="Service References\CNCECHSSEService\configuration.svcinfo" />
<None Include="Service References\CNCECHSSEService\configuration91.svcinfo" />
<None Include="Service References\CNCECHSSEService\HSSEService.disco" />
<None Include="Service References\MCSService\Reference.svcmap">
<Generator>WCF Proxy Generator</Generator>
<LastGenOutput>Reference.cs</LastGenOutput>
</None>
<None Include="Service References\MCSService\configuration.svcinfo" />
<None Include="Service References\MCSService\configuration91.svcinfo" />
<None Include="Service References\MCSService\WebService1.disco" />
</ItemGroup>
<ItemGroup>
<WCFMetadataStorage Include="Service References\CNCECHSSEService\" />
@@ -1,5 +1,6 @@
namespace BLL
{
using System;
using System.Collections;
using System.Linq;
@@ -162,6 +163,21 @@
return unFlowOperate;
}
/// <summary>
///
/// </summary>
public static void CloseFlowOperate(string menuId, string dataId, string opinion)
{
var updateUnFlowOperate = db.ProjectData_FlowOperate.FirstOrDefault(x => x.MenuId == menuId && x.DataId == dataId && (x.IsClosed == false || !x.IsClosed.HasValue));
if (updateUnFlowOperate != null)
{
updateUnFlowOperate.OperaterTime = DateTime.Now;
updateUnFlowOperate.IsClosed = true;
updateUnFlowOperate.Opinion = opinion;
BLL.ProjectDataFlowSetService.UpdateFlowOperateOpinion(updateUnFlowOperate);
}
}
/// <summary>
/// 更新处理意见
/// </summary>
+133
View File
@@ -0,0 +1,133 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.IO;
using System.Web;
namespace BLL
{
public static class FileInsertService
{
/// <summary>
/// 获取附件数据流类
/// </summary>
/// <param name="attachUrl">附件路径</param>
/// <returns></returns>
public static void FileInsert(List<byte[]> fileContextList, string attachUrl)
{
if (fileContextList != null && fileContextList.Count > 0)
{
string physicalpath = Funs.RootPath;
//HttpContext.Current.Request.PhysicalApplicationPath;
string fullPath = physicalpath + attachUrl;
if (!File.Exists(fullPath))
{
byte[] fileContext = fileContextList[0];
int index = fullPath.LastIndexOf("\\");
string filePath = fullPath.Substring(0, index);
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
//string savePath = fullPath + fileName;
//文件读写模式
System.IO.FileMode fileMode = System.IO.FileMode.Create;
//写入文件
using (System.IO.FileStream fs = new System.IO.FileStream(fullPath, fileMode, System.IO.FileAccess.Write))
{
fs.Write(fileContext, 0, fileContext.Length);
}
}
}
}
/// <summary>
/// 获取多附件数据流类
/// </summary>
/// <param name="attachUrl">附件路径</param>
/// <returns></returns>
public static void FileMoreInsert(List<byte[]> fileContextList, string attachUrl)
{
if (fileContextList != null && fileContextList.Count() > 0)
{
if (fileContextList.Count > 0)
{
string[] strs = attachUrl.Trim().Split(',');
int i = 0;
foreach (var item in fileContextList)
{
if (strs.Count() > i)
{
string physicalpath = Funs.RootPath;
//HttpContext.Current.Request.PhysicalApplicationPath;
string fullPath = physicalpath + strs[i];
if (!File.Exists(fullPath))
{
byte[] fileContext = item;
int index = fullPath.LastIndexOf("\\");
string filePath = fullPath.Substring(0, index);
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
//string savePath = fullPath + fileName;
//文件读写模式
System.IO.FileMode fileMode = System.IO.FileMode.Create;
//写入文件
using (System.IO.FileStream fs = new System.IO.FileStream(fullPath, fileMode, System.IO.FileAccess.Write))
{
fs.Write(fileContext, 0, fileContext.Length);
}
}
i++;
}
}
}
}
}
/// <summary>
/// 数据和附件插入到多附件表
/// </summary>
public static void InsertAttachFile(string attachFileId, string dataId, string attachSource, string attachUrl, List<byte[]> fileContext)
{
//多附件
var attachFile = Funs.DB.AttachFile.FirstOrDefault(x => x.ToKeyId == dataId);
if (attachFile == null && !string.IsNullOrEmpty(attachSource))
{
Model.AttachFile newAttachFile = new Model.AttachFile
{
AttachFileId = attachFileId,
ToKeyId = dataId,
AttachSource = attachSource,
AttachUrl = attachUrl
};
Funs.DB.AttachFile.InsertOnSubmit(newAttachFile);
Funs.DB.SubmitChanges();
////插入附件文件
BLL.FileInsertService.FileMoreInsert(fileContext, attachUrl);
}
else
{
if (attachFile.AttachUrl != attachUrl)
{
///删除附件文件
BLL.UploadAttachmentService.DeleteFile(Funs.RootPath, attachFile.AttachUrl);
////插入附件文件
BLL.FileInsertService.FileMoreInsert(fileContext, attachUrl);
attachFile.AttachSource = attachSource;
attachFile.AttachUrl = attachUrl;
Funs.DB.SubmitChanges();
}
}
}
}
}
+107
View File
@@ -0,0 +1,107 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
using System.IO;
using System.Web;
namespace BLL
{
public static class FileStructService
{
/// <summary>
/// 获取附件数据流类
/// </summary>
/// <param name="attachUrl">附件路径</param>
/// <returns></returns>
public static List<byte[]> GetFileStructByAttachUrl(string attachUrl)
{
List<byte[]> fileContext = new List<byte[]>();
if (!String.IsNullOrEmpty(attachUrl))
{
string filePath = string.Empty;
string physicalpath = Funs.RootPath;
//HttpContext.Current.Request.PhysicalApplicationPath;
filePath = physicalpath + attachUrl;
if (File.Exists(filePath))
{
FileInfo fileInfo = new FileInfo(filePath);
Stream stream = fileInfo.OpenRead();
//读取指定大小的文件流内容到uploadFile.Context以便上传
int b;
while (stream.Position > -1 && stream.Position < stream.Length)
{
if (stream.Length - stream.Position >= 20000000)
{
b = 20000000;
}
else
{
b = (int)(stream.Length - stream.Position);
}
byte[] filebyte = new byte[b];
stream.Read(filebyte, 0, b);
fileContext.Add(filebyte);
}
stream.Close();
}
}
return fileContext;
}
/// <summary>
/// 获取附件数据流类 多附件的情况
/// </summary>
/// <param name="attachUrl">附件路径</param>
/// <returns></returns>
public static List<byte[]> GetMoreFileStructByAttachUrl(string attachUrl)
{
List<byte[]> fileContext = new List<byte[]>();
if (!String.IsNullOrEmpty(attachUrl))
{
string[] strs = attachUrl.Trim().Split(',');
foreach (var item in strs)
{
string filePath = string.Empty;
string physicalpath = Funs.RootPath;
//HttpContext.Current.Request.PhysicalApplicationPath;
filePath = physicalpath + item;
if (File.Exists(filePath))
{
FileInfo fileInfo = new FileInfo(filePath);
if (fileInfo != null)
{
Stream stream = fileInfo.OpenRead();
if (stream != null)
{
//读取指定大小的文件流内容到uploadFile.Context以便上传
int b;
while (stream.Position > -1 && stream.Position < stream.Length)
{
if (stream.Length - stream.Position >= 20000000)
{
b = 20000000;
}
else
{
b = (int)(stream.Length - stream.Position);
}
byte[] filebyte = new byte[b];
stream.Read(filebyte, 0, b);
fileContext.Add(filebyte);
}
}
stream.Close();
}
}
}
}
return fileContext;
}
}
}
File diff suppressed because it is too large Load Diff
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<ReferenceGroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ID="c4a63ba6-f614-4c7a-bae5-6b10deb65e28" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap">
<ReferenceGroup xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ID="076ede5d-778e-4d77-9e6f-2effe6be6e71" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap">
<ClientOptions>
<GenerateAsynchronousMethods>false</GenerateAsynchronousMethods>
<GenerateTaskBasedAsynchronousMethod>true</GenerateTaskBasedAsynchronousMethod>
@@ -9,7 +9,9 @@
<GenerateInternalTypes>false</GenerateInternalTypes>
<GenerateMessageContracts>false</GenerateMessageContracts>
<NamespaceMappings />
<CollectionMappings />
<CollectionMappings>
<CollectionMapping TypeName="System.Collections.Generic.List`1" Category="List" />
</CollectionMappings>
<GenerateSerializableTypes>true</GenerateSerializableTypes>
<Serializer>Auto</Serializer>
<UseSerializerForFaults>true</UseSerializerForFaults>
@@ -22,13 +24,13 @@
<MetadataSource Address="http://114.247.88.70:1080/cncechsse/HSSEService.svc" Protocol="http" SourceId="1" />
</MetadataSources>
<Metadata>
<MetadataFile FileName="HSSEService.xsd" MetadataType="Schema" ID="aa0b1103-af3c-4b49-814b-d78dbf7f4ca1" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd2" />
<MetadataFile FileName="HSSEService1.xsd" MetadataType="Schema" ID="12c2b8b6-574f-40de-9782-a974fddbb113" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd3" />
<MetadataFile FileName="HSSEService.disco" MetadataType="Disco" ID="62c3d597-a7fb-4d32-b5b0-98709c3f4c94" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?disco" />
<MetadataFile FileName="HSSEService.wsdl" MetadataType="Wsdl" ID="4dca5c5a-8c62-4c00-9dcb-c3bc379b2b60" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?wsdl=wsdl0" />
<MetadataFile FileName="HSSEService1.wsdl" MetadataType="Wsdl" ID="55a39362-5606-4116-a2fe-96f2b0a7dbe0" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?wsdl" />
<MetadataFile FileName="HSSEService2.xsd" MetadataType="Schema" ID="23f3e40a-167c-4f75-bc2f-530be1013768" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd0" />
<MetadataFile FileName="HSSEService3.xsd" MetadataType="Schema" ID="6d4ad663-cbbf-4aab-98f5-3adbaafe0469" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd1" />
<MetadataFile FileName="HSSEService.xsd" MetadataType="Schema" ID="a22facd0-13b9-4f60-9bbc-14d0d2f064fb" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd2" />
<MetadataFile FileName="HSSEService1.xsd" MetadataType="Schema" ID="af46e4e0-e9e5-48c5-af61-ba67b6789be6" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd3" />
<MetadataFile FileName="HSSEService.disco" MetadataType="Disco" ID="58fa3d89-453c-4c80-80d1-ac5a1b5d56cf" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?disco" />
<MetadataFile FileName="HSSEService.wsdl" MetadataType="Wsdl" ID="aa1ac6bb-9545-4d9f-9f59-83d9c3983b72" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?wsdl=wsdl0" />
<MetadataFile FileName="HSSEService1.wsdl" MetadataType="Wsdl" ID="d5da94a4-5dd7-40f5-92ed-3384b674b80d" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?wsdl" />
<MetadataFile FileName="HSSEService2.xsd" MetadataType="Schema" ID="9b3d4c8b-2385-4a9a-a859-e00208bab2d1" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd0" />
<MetadataFile FileName="HSSEService3.xsd" MetadataType="Schema" ID="d75d7b04-44d2-4ab5-8ed4-79674ef7fe02" SourceId="1" SourceUrl="http://114.247.88.70:1080/CNCECHSSE/HSSEService.svc?xsd=xsd1" />
</Metadata>
<Extensions>
<ExtensionFile FileName="configuration91.svcinfo" Name="configuration91.svcinfo" />
@@ -0,0 +1,62 @@
using System.Linq;
using System.Timers;
using System.Configuration;
using System;
namespace BLL
{
public class CNCECHSSEMonitorService
{
#region 5
/// <summary>
/// 监视组件
/// </summary>
private static Timer messageTimer;
/// <summary>
/// 启动监视器,不一定能成功,根据系统设置决定对监视器执行的操作 系统启动5分钟
/// </summary>
public static void StartMonitor()
{
int adTimeJ = 120;
if (messageTimer != null)
{
messageTimer.Stop();
messageTimer.Dispose();
messageTimer = null;
}
if (adTimeJ > 0)
{
messageTimer = new Timer
{
AutoReset = true
};
messageTimer.Elapsed += new ElapsedEventHandler(AdUserInProcess);
messageTimer.Interval = 1000 * 60 * adTimeJ;// 60000 * adTimeJ;
messageTimer.Start();
}
}
/// <summary>
/// 流程确认 定时执行 系统启动5分钟
/// </summary>
/// <param name="sender">Timer组件</param>
/// <param name="e">事件参数</param>
private static void AdUserInProcess(object sender, ElapsedEventArgs e)
{
try
{
CNCECHSSEWebService.getSupervise_SubUnitReport();
CNCECHSSEWebService.getCheck_CheckInfo_Table8Item();
CNCECHSSEWebService.getCheck_CheckRectify();
CNCECHSSEWebService.getInformation_UrgeReport();
}
catch (Exception ex)
{
StartMonitor();
ErrLogInfo.WriteLog(ex, "数据接口定时器", "RealNameMonitorService.AdUserInProcess");
}
}
#endregion
}
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,43 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
/// <summary>
///
/// </summary>
public static class UrgeReportService
{
/// <summary>
/// 更新催报完成
/// </summary>
/// <param name="unitId"></param>
/// <param name="reportType"></param>
/// <param name="Year"></param>
/// <param name="Month"></param>
public static void SetComplete(string unitId, string reportType, string year, string value)
{
Model.Information_UrgeReport urgeReport = new Model.Information_UrgeReport();
if (reportType == Const.ReportType_1 || reportType == Const.ReportType_2)
{
urgeReport = Funs.DB.Information_UrgeReport.FirstOrDefault(x => x.UnitId == unitId && x.ReprotType == reportType && x.YearId == year && x.MonthId == value);
}
else if (reportType == Const.ReportType_3 || reportType == Const.ReportType_4)
{
urgeReport = Funs.DB.Information_UrgeReport.FirstOrDefault(x => x.UnitId == unitId && x.ReprotType == reportType && x.YearId == year && x.QuarterId == value);
}
else if (reportType == Const.ReportType_5)
{
urgeReport = Funs.DB.Information_UrgeReport.FirstOrDefault(x => x.UnitId == unitId && x.ReprotType == reportType && x.YearId == year && x.HalfYearId == value);
}
if (urgeReport != null)
{
urgeReport.IsComplete = true;
Funs.DB.SubmitChanges();
}
}
}
}