This commit is contained in:
李鹏飞 2024-06-18 10:32:39 +08:00
parent 9574a1dff8
commit e962cf661d
8 changed files with 199 additions and 10 deletions

Binary file not shown.

View File

@ -0,0 +1,88 @@
using Microsoft.SqlServer.Dts.Runtime;
using Model;
using NPOI.SS.Formula.Functions;
using Pipelines.Sockets.Unofficial.Arenas;
using RestSharp;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.PeerToPeer;
using System.Runtime.InteropServices.ComTypes;
using System.Text;
using System.Threading.Tasks;
namespace BLL
{
public static class APICdPuService
{
public static string PushData()
{
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
{
List<ProjectDataItem> projectDataItems = new List<ProjectDataItem>();
var projectlist = ProjectService.GetProjectWorkList().Where(x=>x.ProjectCode== "E21028");
foreach (var item in projectlist)
{
var getSGName = (from x in db.Project_ProjectUnit
join y in db.Base_Unit on x.UnitId equals y.UnitId
where x.ProjectId == item.ProjectId && x.UnitType == Const.ProjectUnitType_2
select y.UnitName);
ProjectDataItem projectDataItem = new ProjectDataItem();
projectDataItem.projectnumber = item.ProjectCode;
projectDataItem.projectname = item.ProjectName;
projectDataItem.projcost = item.ProjectMoney.ToString();
projectDataItem.buildco = item.WorkRange;
projectDataItem.constructionco= string .Join(",", getSGName);
string unit_JL = ProjectService.getProjectUnitNameByUnitType(item.ProjectId, Const.ProjectUnitType_3);
if (!string.IsNullOrEmpty(unit_JL))
{
projectDataItem.supervisoryco = unit_JL;
}
if (item.EndDate.HasValue)
{
projectDataItem.contractenddate = string.Format("{0:yyyy-MM-dd}", item.EndDate);
if (item.StartDate.HasValue)
{
int pdays = (item.EndDate.Value - item.StartDate.Value).Days;
if (pdays >= 0)
{
projectDataItem.contractdurition = pdays.ToString();
}
}
}
projectDataItem.location = item.ProjectAddress;
projectDataItem.safehours = Project_HSSEData_HSSEService.GetSafeWorkingHour(item.ProjectId).ToString();
projectDataItem.losshours = Project_HSSEData_HSSEService.GetLostWorkingHour(item.ProjectId).ToString();
List<Model.Comprehensive_NCRManagement> NondestructiveTestList = (from x in db.Comprehensive_NCRManagement
where x.ProjectId == item.ProjectId && (x.IssuedDate ==null || x.IssuedDate >DateTime.Now) select x).ToList();
projectDataItem.ncr = NondestructiveTestList.Count.ToString();
projectDataItems.Add(projectDataItem);
}
var JsonBody = Newtonsoft.Json.JsonConvert.SerializeObject(projectDataItems);
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
string Baseurl = "https://pu.chengda.com/cdpu//report/saveNbdData";
var client = new RestClient(Baseurl);
client.Timeout = -1;
var request = new RestRequest(Method.POST);
//request.AddHeader("ClientId", SysConstSetService.ClientId);
request.AddHeader("OperationCode", Baseurl.Substring(Baseurl.LastIndexOf("/", StringComparison.Ordinal) + 1));
if (!string.IsNullOrEmpty(JsonBody))
{
request.AddJsonBody(JsonBody);
}
APICommonService.SaveSysHttpLog("CDPU", Baseurl, " Body :" + JsonBody, "Request|" + request.Method.ToString());
IRestResponse response = client.Execute(request);
APICommonService.SaveSysHttpLog("CDPU", Baseurl, "Header :" + response.Headers + "| Body :" + response.Content, "Response|" + request.Method.ToString());
return response.Content;
}
}
}
}

View File

@ -186,6 +186,7 @@
<Compile Include="ADomain\ADDataInService.cs" />
<Compile Include="ADomain\ADomainService.cs" />
<Compile Include="API\APIBaseInfoService.cs" />
<Compile Include="API\APICdPuService.cs" />
<Compile Include="API\APICommonService.cs" />
<Compile Include="API\APIGetHttpService.cs" />
<Compile Include="API\APIIDCardInfoService.cs" />

View File

@ -19,13 +19,12 @@ using System.Threading.Tasks;
public static async Task Init()
{
//初始化计划者
StdSchedulerFactory factory = new StdSchedulerFactory();
// StdSchedulerFactory factory = new StdSchedulerFactory(properties);
IScheduler scheduler = await factory.GetScheduler();
var jobAndTriggerMapping = new Dictionary<IJobDetail, IReadOnlyCollection<ITrigger>>();
var jobAndTriggerMapping = new Dictionary<IJobDetail, IReadOnlyCollection<ITrigger>>();
// 将映射关系包装成制度字典集合
var model = new Model.InterFaceTask();
model.Enable = true;
@ -74,15 +73,15 @@ using System.Threading.Tasks;
{
var jobDetail1 = GetJobDetailByInterFaceTaskId(model.InterFaceTaskId);
var trigger1 = GetTriggerByTime(model.InterFaceTaskId, model.Frequency);
await scheduler.ScheduleJob(jobDetail1, trigger1,true);
await scheduler.ScheduleJob(jobDetail1, trigger1, true);
}
else
{
var jobDetail1 = GetJobDetailByInterFaceTaskId(model.InterFaceTaskId);
var trigger1 = GetTriggerByTime(model.InterFaceTaskId, model.Frequency);
await scheduler.ScheduleJob(jobDetail1, trigger1,true);
await scheduler.ScheduleJob(jobDetail1, trigger1, true);
}
}
@ -91,9 +90,9 @@ using System.Threading.Tasks;
if (scheduler.GetJobDetail(jk, default) != null)
{
await scheduler.DeleteJob(jk, default);
// SyncScheduledTasks(model.InterFaceTaskId, scheduler, 2);
// SyncScheduledTasks(model.InterFaceTaskId, scheduler, 2);
}
}

View File

@ -61,7 +61,7 @@
////通用定时器
try
{
QuartzServices.Init();
QuartzServices.Init();
BLL.MonitorService.StartMonitor();
BLL.MonitorService.StartMonitorEve();
BLL.MonitorService.StartPersonQuarterCheck();

View File

@ -0,0 +1,79 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Model
{
public class ProjectDataItem
{ /// <summary>
/// 项目编号
/// </summary>
public string projectnumber { get; set; }
/// <summary>
/// 工程名称
/// </summary>
public string projectname { get; set; }
/// <summary>
/// 工程造价(万元)
/// </summary>
public string projcost { get; set; }
/// <summary>
/// 建设范围
/// </summary>
public string buildco { get; set; }
/// <summary>
/// 施工单位
/// </summary>
public string constructionco { get; set; }
/// <summary>
/// 监理单位
/// </summary>
public string supervisoryco { get; set; }
/// <summary>
/// 合同工期
/// </summary>
public string contractdurition { get; set; }
/// <summary>
/// 合同到期时间
/// </summary>
public string contractenddate { get; set; }
/// <summary>
///
/// </summary>
public string remains { get; set; }
/// <summary>
/// 工程地址
/// </summary>
public string location { get; set; }
/// <summary>
/// 安全人工时
/// </summary>
public string safehours { get; set; }
/// <summary>
/// 损失安全人工时
/// </summary>
public string losshours { get; set; }
/// <summary>
/// 未关闭NCR
/// </summary>
public string ncr { get; set; }
/// <summary>
/// 项目现场总人数
/// </summary>
public string onsiteworkers { get; set; }
/// <summary>
/// 一级风险预警数量
/// </summary>
public string risknum { get; set; }
/// <summary>
/// 安全事故数量
/// </summary>
public string accidentsnum { get; set; }
/// <summary>
/// 施工项目数量
/// </summary>
public string constructionnum { get; set; }
}
}

View File

@ -115,6 +115,7 @@
<Compile Include="APIItem\HSSE\RoutingInspectionItem.cs" />
<Compile Include="APIItem\HSSE\SeDinMonthReport4OtherItem.cs" />
<Compile Include="APIItem\OperationReportDto.cs" />
<Compile Include="APIItem\ProjectDataItem.cs" />
<Compile Include="APIItem\ProjectGpsPointItem.cs" />
<Compile Include="APIItem\ProjectItem.cs" />
<Compile Include="APIItem\HSSE\PunishNoticeItem.cs" />

View File

@ -166,6 +166,27 @@ namespace WebAPI.Controllers
{
return View();
}
/// <summary>
/// 给pu推送数据
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
[HttpGet]
public Model.ResponeData PushPuData()
{
var responeData = new Model.ResponeData();
try
{
}
responeData.data = APICdPuService.PushData();
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = ex.Message;
}
return responeData;
}
}
}