From e962cf661de96f69d3173dc7b8c2273eba08d8e6 Mon Sep 17 00:00:00 2001 From: fly-l <1420031550@qq.com> Date: Tue, 18 Jun 2024 10:32:39 +0800 Subject: [PATCH] 1 --- .vs/SGGL_CD/v17/.wsuo | Bin 123904 -> 123904 bytes SGGL/BLL/API/APICdPuService.cs | 88 ++++++++++++++++++ SGGL/BLL/BLL.csproj | 1 + .../TaskScheduling/TimerTask/TimerTaskBase.cs | 15 ++- SGGL/FineUIPro.Web/Global.asax.cs | 2 +- SGGL/Model/APIItem/ProjectDataItem.cs | 79 ++++++++++++++++ SGGL/Model/Model.csproj | 1 + SGGL/WebAPI/Controllers/HomeController.cs | 23 ++++- 8 files changed, 199 insertions(+), 10 deletions(-) create mode 100644 SGGL/BLL/API/APICdPuService.cs create mode 100644 SGGL/Model/APIItem/ProjectDataItem.cs diff --git a/.vs/SGGL_CD/v17/.wsuo b/.vs/SGGL_CD/v17/.wsuo index 78356be05d82d2a2d3838fc9bd76bccb351a94d1..ea051b27a40f097b61aed9de8ab667cff5e7ca7d 100644 GIT binary patch delta 1304 zcmcgqOH31C5bl)igYC8yTA)z0&@_buC4E`iAfbQ(geoPFV8nx43I}|K&_oHz){7@& zpku^?CrrHgToW!H%8i7B95gW=j0evi44crP)cH#*)o{Rzvzg57JpS*S`Tz8$F1@LH zc};D6^dc!`KY>f7Qe~TPQN0NBsHi2F!c>K1JWJs#q)ZG5oWom1UcM;$qHiIqBdsPi zks3+wlA1{|&JAf=$+_`r%mMgT6Xt4Ico!B-@ej|B0M{15yUW2#kOu1gNk99=0E1?J zCD}SsMuXAfSH|oZ)5rdVuC!9B(22m?(aZ}RPZ4b6qc(O*Nl#Lc`OPeu=9kQ+1hf4V z%v@AEu8crLUGQ5?$#Qd9v2~DASMeNK7O$4d`uaKr8{R!eh)beEVzxGQ#-rQ_iuDs>WEz*POXp1qq=LNiG} z6_|5u3H9XJ%Tn@An*bT78O^5fKTfG(Z$yxD_Cv0gJvPkA!Y~dAdQow_I|8yf4G_hY zQvwGn&b)4&&_{wgccg+N+wbnitUC%S+;HbXiyN&y8P_e~@V0A2uu&x&l1X7N zJFab^<*%ScLjm?^nH=MIIoh5D{L&uHbSyBM9R->ld7+%<@1ocKGupz4CD?=e3C9cN z<*RniKQ(~MYi{}K z?gPN|^*+43>|g!%5gOO;t6|*;&oegVvU&b$Bs delta 1524 zcmcgsUuaup6wkRynl!md*Ctuh|9=*;s!i;gEXgJ9cH7jh-8$PPZCch2Y?>5g%$3?e zEyJ4${sR%rdAKOs(}pjiXs$Am!EVPM1`{kYHn)d84AD1>&^*Lx|&hK}>lVoliGPez%pW`gQ{d_(5^+RxJ$l7p&+kjUw&q=U=X{}^APSLY0MP@?K zbv$DwuSjO3wZ7~dXx&G!5X^)+!doAlvSoQ4zN8Dm`7cf#0KBdb8DFPN0|9@B6|1;! zuiiD~-hSx06jI{OE$yQN*R$QUrcme&0Q#)_p3)Lmzz4UQS7{^?)K`rBCzf~kXN z)$B9__LxLxYgK>+JIZ^^m@e4Ge)tMWKtZq?0}3hcOIo`zN2G>5Z% z>;K==I%aGkBBZ8>7wcWPW}V{MV>zpW(1v-d1SU+^Nl>fg>n1rIu^+)V8dhNv^9>Tb zh-sSy6PULZVI1>z2_l$wNcv&A#fXK*;}+n_<*F{lHRq%S*sHLasPu<<%sVAGjp?SC z(NUG)=V+rPFw6c|)_OJpyi#yH0sR=cCZ*6;aj{@~!bo?PNO%2By6FzzM5SGX3Oi+| zI|DF;X_o|@n0FQR?UbFy!a*kfwVo3^oAt)36S&i}#kZ9Mm21p;3a~jN!yDrVu-o0P z1r1=tJ*d}}qHnsx0J!NcVjri&TL%ZS&A0ZT)64^^&(W2g{QzT1Ubs^a!?+nf z$^%s}yl`@K8u^u0_datNM91efkjE}bM ziub4QZE|Z4E`4GP5$KvXukG72did74UwPMoIyiWpr`5L92k#2 zi(>SwLlauI-`u^~K5_MO@-w-8TbR&neS>N=j`0{(#QFwFI%q!Bu3wyYt&22%&(kk~ z4S*|^@cDfHP{6a43X=FlLhyuypy25X^am6ELxGSGS|srthubst2KN2P@Ygv3#kgpg z`;PtNY4Gj1fSGtt projectDataItems = new List(); + + 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 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; + } + + } + } +} diff --git a/SGGL/BLL/BLL.csproj b/SGGL/BLL/BLL.csproj index b42381db..1642ce2a 100644 --- a/SGGL/BLL/BLL.csproj +++ b/SGGL/BLL/BLL.csproj @@ -186,6 +186,7 @@ + diff --git a/SGGL/BLL/TaskScheduling/TimerTask/TimerTaskBase.cs b/SGGL/BLL/TaskScheduling/TimerTask/TimerTaskBase.cs index c4459a66..ebf08f23 100644 --- a/SGGL/BLL/TaskScheduling/TimerTask/TimerTaskBase.cs +++ b/SGGL/BLL/TaskScheduling/TimerTask/TimerTaskBase.cs @@ -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>(); + var jobAndTriggerMapping = new Dictionary>(); // 将映射关系包装成制度字典集合 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); } } diff --git a/SGGL/FineUIPro.Web/Global.asax.cs b/SGGL/FineUIPro.Web/Global.asax.cs index c413cd2c..4255458a 100644 --- a/SGGL/FineUIPro.Web/Global.asax.cs +++ b/SGGL/FineUIPro.Web/Global.asax.cs @@ -61,7 +61,7 @@ ////通用定时器 try { - QuartzServices.Init(); + QuartzServices.Init(); BLL.MonitorService.StartMonitor(); BLL.MonitorService.StartMonitorEve(); BLL.MonitorService.StartPersonQuarterCheck(); diff --git a/SGGL/Model/APIItem/ProjectDataItem.cs b/SGGL/Model/APIItem/ProjectDataItem.cs new file mode 100644 index 00000000..cca578ae --- /dev/null +++ b/SGGL/Model/APIItem/ProjectDataItem.cs @@ -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 + { /// + /// 项目编号 + /// + public string projectnumber { get; set; } + /// + /// 工程名称 + /// + public string projectname { get; set; } + /// + /// 工程造价(万元) + /// + public string projcost { get; set; } + /// + /// 建设范围 + /// + public string buildco { get; set; } + /// + /// 施工单位 + /// + public string constructionco { get; set; } + /// + /// 监理单位 + /// + public string supervisoryco { get; set; } + /// + /// 合同工期 + /// + public string contractdurition { get; set; } + /// + /// 合同到期时间 + /// + public string contractenddate { get; set; } + /// + /// + /// + public string remains { get; set; } + /// + /// 工程地址 + /// + public string location { get; set; } + /// + /// 安全人工时 + /// + public string safehours { get; set; } + /// + /// 损失安全人工时 + /// + public string losshours { get; set; } + /// + /// 未关闭NCR + /// + public string ncr { get; set; } + /// + /// 项目现场总人数 + /// + public string onsiteworkers { get; set; } + /// + /// 一级风险预警数量 + /// + public string risknum { get; set; } + /// + /// 安全事故数量 + /// + public string accidentsnum { get; set; } + /// + /// 施工项目数量 + /// + public string constructionnum { get; set; } + } +} diff --git a/SGGL/Model/Model.csproj b/SGGL/Model/Model.csproj index 4a6ca202..f27ca851 100644 --- a/SGGL/Model/Model.csproj +++ b/SGGL/Model/Model.csproj @@ -115,6 +115,7 @@ + diff --git a/SGGL/WebAPI/Controllers/HomeController.cs b/SGGL/WebAPI/Controllers/HomeController.cs index 10b37665..d74876ee 100644 --- a/SGGL/WebAPI/Controllers/HomeController.cs +++ b/SGGL/WebAPI/Controllers/HomeController.cs @@ -166,6 +166,27 @@ namespace WebAPI.Controllers { return View(); } + /// + /// 给pu推送数据 + /// + /// + /// + [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; + } + } }