20211202 与集团安全信息报表及检查对接接口实现
This commit is contained in:
+11
-7
@@ -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>
|
||||
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -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();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user