diff --git a/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs b/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs index 568b6bdf..71747f51 100644 --- a/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs +++ b/SGGL/BLL/ZHGL/DataSync/HJGLData_HJGLService.cs @@ -1,6 +1,7 @@ using FineUIPro; using Model; using Newtonsoft.Json; +using NPOI.SS.Formula.Functions; using System; using System.Collections; using System.Collections.Generic; @@ -543,31 +544,36 @@ namespace BLL // //UnitName = UnitService.getUnitNamesUnitIds(x.UnitIds), // }).ToList(); - List list =new List(); - var ndtLists = from x in Funs.DB.ProcessControl_NondestructiveTest_New where x.ProfessionalName == "工艺管道" select x; + List list = new List(); + var ndtLists = (from x in Funs.DB.ProcessControl_NondestructiveTest_New where BeUnderConstructionList.Contains(x.ProjectId) select x).ToList(); + if (ndtLists.Count() > 0) { + //取每个项目、单位、专业最新的一条数据 + var datalist = ndtLists.GroupBy(r => new { r.ProjectId, r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList(); foreach (var project in BeUnderConstructionList) { - var ndt = (from x in ndtLists - where x.ProjectId == project - orderby x.CreateDate descending - select x).FirstOrDefault(); - if (ndt != null) + decimal a = 0, b = 0; + var projectDataList = datalist.Where(x => x.ProjectId == project); + foreach (var item in projectDataList) { - if (ndt.TotalQuantity.HasValue) + if (item.TotalQuantity.HasValue) { - list.Add(new CHCheckItemOutput { - Id = ndt.Id, - ProjectId = project, - //UnitId = y.UnitId, - CHT_TotalFilm = ndt.TotalQuantity, - CHT_PassFilm = Convert.ToInt32(ndt.TotalQuantity.Value * Funs.GetNewDecimalOrZero(ndt.TotalRate) / 100) - }); + a += Math.Floor(item.TotalQuantity.Value * Funs.GetNewDecimalOrZero(item.TotalRate) / 100); + b += item.TotalQuantity.Value; } } + list.Add(new CHCheckItemOutput + { + Id = project, + ProjectId = project, + //UnitId = y.UnitId, + CHT_TotalFilm = (int)Math.Round(b), + CHT_PassFilm = (int)Math.Round(a) + }); } } + return list; } /// diff --git a/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_HJGLService.cs b/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_HJGLService.cs index 04cc5518..a20ce277 100644 --- a/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_HJGLService.cs +++ b/SGGL/BLL/ZHGL/DataSync/ProjectDataSync/Project_HJGLData_HJGLService.cs @@ -281,10 +281,11 @@ namespace BLL } if (hJGLDateType == HJGLDateType.NumberOfFilms || hJGLDateType == HJGLDateType.All) { - table.TotalFilmNum = GetTotalFilmNum(projectid); - table.OKFilmNum = GetOKFilmNum(projectid); - - + //table.TotalFilmNum = GetTotalFilmNum(projectid); + //table.OKFilmNum = GetOKFilmNum(projectid); + var filmObj = GetFilm(projectid); + table.TotalFilmNum = filmObj.CHT_TotalFilm; + table.OKFilmNum = filmObj.CHT_PassFilm; } if (hJGLDateType == HJGLDateType.DefectAnalysis || hJGLDateType == HJGLDateType.All) { @@ -373,6 +374,37 @@ namespace BLL } return result; } + + /// + /// 获取焊接总片数信息数据 + /// + /// + /// + public static CHCheckItemOutput GetFilm(string projectid) + { + var result = new CHCheckItemOutput(); + var ndtLists = (from x in Funs.DB.ProcessControl_NondestructiveTest_New where x.ProjectId == projectid select x).ToList(); + + if (ndtLists.Count() > 0) + { + //取每个项目、单位、专业最新的一条数据 + var datalist = ndtLists.GroupBy(r => new { r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList(); + decimal a = 0, b = 0; + foreach (var item in datalist) + { + if (item.TotalQuantity.HasValue) + { + a += Math.Floor(item.TotalQuantity.Value * Funs.GetNewDecimalOrZero(item.TotalRate) / 100); + b += item.TotalQuantity.Value; + } + } + result.CHT_TotalFilm = (int)Math.Round(b); + result.CHT_PassFilm = (int)Math.Round(a); + } + + return result; + } + /// /// 获取总片数 /// diff --git a/SGGL/FineUIPro.Web/common/main_new.aspx.cs b/SGGL/FineUIPro.Web/common/main_new.aspx.cs index 32603c2e..1804313a 100644 --- a/SGGL/FineUIPro.Web/common/main_new.aspx.cs +++ b/SGGL/FineUIPro.Web/common/main_new.aspx.cs @@ -844,8 +844,8 @@ namespace FineUIPro.Web.common if (ndtLists.Count > 0) { - //取每个单位、专业最新的一条数据 - var datalist = ndtLists.GroupBy(r => new { r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList(); + //取每个项目、单位、专业最新的一条数据 + var datalist = ndtLists.GroupBy(r => new { r.ProjectId, r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList(); foreach (var item in datalist) { if (item.TotalQuantity.HasValue) @@ -854,7 +854,8 @@ namespace FineUIPro.Web.common b += item.TotalQuantity.Value; } } - result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a); + //result = Convert.ToDouble(Convert.ToDecimal(100.0) * b / a); + result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 2)); } //else //{ diff --git a/SGGL/FineUIPro.Web/common/main_new1.aspx.cs b/SGGL/FineUIPro.Web/common/main_new1.aspx.cs index dd525be3..151d6125 100644 --- a/SGGL/FineUIPro.Web/common/main_new1.aspx.cs +++ b/SGGL/FineUIPro.Web/common/main_new1.aspx.cs @@ -67,6 +67,42 @@ namespace FineUIPro.Web.common getEarlyWarningCounts(); getCNEN(); + + //焊接数据 + double result = 0; + Model.SGGLDB db = Funs.DB; + var ndtLists = (from x in db.ProcessControl_NondestructiveTest_New select x).ToList(); + if (pids != null) + { + ndtLists = ndtLists.Where(x => pids.Contains(x.ProjectId)).ToList(); + } + decimal a = 0, b = 0; + + if (ndtLists.Count > 0) + { + //取每个项目、单位、专业最新的一条数据 + var datalist = ndtLists.GroupBy(r => new { r.ProjectId, r.UnitId, r.ProfessionalName }).Select(g => g.OrderByDescending(r => r.CreateDate).First()).ToList(); + foreach (var item in datalist) + { + if (item.TotalQuantity.HasValue) + { + a += Math.Floor(item.TotalQuantity.Value * Funs.GetNewDecimalOrZero(item.TotalRate) / 100); + b += item.TotalQuantity.Value; + } + } + //result = Convert.ToDouble(Convert.ToDecimal(100.0) * a / b); + result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 2)); + + } + if (b > 0) + { + hjallNumber = b.ToString(); + hjfinishNumber = a.ToString(); + hjzgl = result.ToString() + "%"; + } + + /****** 焊接数据 + //在建项目 var allProjects = ProjectService.GetAllProjectDropDownList(); //焊接数据 @@ -100,6 +136,8 @@ namespace FineUIPro.Web.common hjfinishNumber = a.ToString(); hjzgl = result.ToString() + "%"; } + + ********/ } } diff --git a/SGGL/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user b/SGGL/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user index 84905aa2..74911479 100644 --- a/SGGL/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user +++ b/SGGL/WebAPI/Properties/PublishProfiles/FolderProfile.pubxml.user @@ -6,7 +6,7 @@ <_PublishTargetUrl>G:\发布\五环WebApi - True|2025-07-01T02:14:59.0471052Z||;True|2025-06-28T11:40:36.0544739+08:00||;True|2025-06-27T15:10:24.4628086+08:00||;True|2025-06-27T10:31:14.8332810+08:00||;True|2025-06-27T10:13:13.3022394+08:00||;True|2025-06-26T23:51:04.1304509+08:00||;True|2025-06-26T23:34:06.4223762+08:00||;True|2025-06-26T22:42:08.9018138+08:00||;True|2025-06-26T22:16:01.8954571+08:00||;True|2025-06-26T21:19:42.2638204+08:00||;True|2025-06-25T23:22:39.7267591+08:00||;True|2025-06-25T23:19:33.2378458+08:00||;True|2025-06-25T22:18:16.2863303+08:00||;True|2025-06-25T22:10:29.2540175+08:00||;True|2025-06-25T22:00:58.5212166+08:00||;True|2025-06-25T22:00:31.2531214+08:00||;True|2025-06-25T18:33:01.5770030+08:00||;True|2025-06-25T17:47:33.7779622+08:00||;True|2025-06-25T17:40:26.9905954+08:00||;True|2025-06-20T11:24:58.4099232+08:00||;True|2025-06-19T16:42:45.2358810+08:00||;True|2025-06-16T19:28:10.6447738+08:00||;True|2025-06-12T11:00:02.3559090+08:00||;True|2025-06-12T10:40:29.0324520+08:00||;True|2025-06-04T23:24:01.0324973+08:00||;True|2025-06-04T18:39:41.7304136+08:00||;True|2025-06-04T11:23:17.3803405+08:00||;True|2025-06-04T11:04:32.4212196+08:00||;True|2025-05-26T19:19:09.7246357+08:00||;True|2025-05-26T19:16:39.1283077+08:00||;True|2025-05-26T19:09:24.1561616+08:00||;True|2025-04-07T16:11:44.5172315+08:00||;True|2025-04-02T18:10:22.8695984+08:00||;True|2025-04-02T17:59:51.2978116+08:00||;True|2025-04-02T17:50:55.8630437+08:00||;True|2025-04-02T17:49:22.5114405+08:00||;True|2025-04-02T17:47:11.0650205+08:00||;True|2025-04-02T17:39:09.8576853+08:00||;True|2025-04-02T17:38:15.3079030+08:00||;True|2025-04-02T17:22:03.6735964+08:00||;True|2025-04-02T17:19:04.4220913+08:00||;True|2025-04-02T17:17:14.0244636+08:00||;True|2025-04-02T17:11:09.6583011+08:00||;True|2025-04-02T17:07:23.6330597+08:00||;True|2025-04-02T16:58:45.4070649+08:00||;True|2025-04-02T16:50:20.5907511+08:00||;True|2025-04-02T16:44:18.5351224+08:00||;True|2025-04-02T16:31:11.1297141+08:00||;True|2025-04-02T16:18:43.1126995+08:00||;True|2025-04-02T14:50:42.5384021+08:00||;True|2025-04-01T10:53:08.9403414+08:00||;True|2025-04-01T10:52:08.7646389+08:00||;True|2025-04-01T09:52:56.3095742+08:00||;True|2025-03-13T16:44:25.3220313+08:00||;True|2025-03-13T15:31:10.3223071+08:00||;True|2025-03-13T10:58:17.1401575+08:00||;True|2025-01-23T23:10:37.9664637+08:00||;True|2024-09-24T09:51:10.8028974+08:00||;True|2024-09-20T17:30:59.6144803+08:00||;True|2024-09-20T15:28:40.2547949+08:00||;True|2024-09-19T16:30:51.3047517+08:00||;True|2024-09-19T15:53:23.2431713+08:00||;True|2024-09-19T15:48:55.0571748+08:00||;True|2024-09-19T15:06:29.5748482+08:00||;True|2024-09-19T14:55:42.1477578+08:00||;True|2024-09-19T10:07:53.8666329+08:00||;True|2024-09-03T16:26:17.4985546+08:00||;True|2024-07-17T10:29:15.9472548+08:00||; + True|2025-07-01T07:52:16.6767496Z||;True|2025-07-01T10:14:59.0471052+08:00||;True|2025-06-28T11:40:36.0544739+08:00||;True|2025-06-27T15:10:24.4628086+08:00||;True|2025-06-27T10:31:14.8332810+08:00||;True|2025-06-27T10:13:13.3022394+08:00||;True|2025-06-26T23:51:04.1304509+08:00||;True|2025-06-26T23:34:06.4223762+08:00||;True|2025-06-26T22:42:08.9018138+08:00||;True|2025-06-26T22:16:01.8954571+08:00||;True|2025-06-26T21:19:42.2638204+08:00||;True|2025-06-25T23:22:39.7267591+08:00||;True|2025-06-25T23:19:33.2378458+08:00||;True|2025-06-25T22:18:16.2863303+08:00||;True|2025-06-25T22:10:29.2540175+08:00||;True|2025-06-25T22:00:58.5212166+08:00||;True|2025-06-25T22:00:31.2531214+08:00||;True|2025-06-25T18:33:01.5770030+08:00||;True|2025-06-25T17:47:33.7779622+08:00||;True|2025-06-25T17:40:26.9905954+08:00||;True|2025-06-20T11:24:58.4099232+08:00||;True|2025-06-19T16:42:45.2358810+08:00||;True|2025-06-16T19:28:10.6447738+08:00||;True|2025-06-12T11:00:02.3559090+08:00||;True|2025-06-12T10:40:29.0324520+08:00||;True|2025-06-04T23:24:01.0324973+08:00||;True|2025-06-04T18:39:41.7304136+08:00||;True|2025-06-04T11:23:17.3803405+08:00||;True|2025-06-04T11:04:32.4212196+08:00||;True|2025-05-26T19:19:09.7246357+08:00||;True|2025-05-26T19:16:39.1283077+08:00||;True|2025-05-26T19:09:24.1561616+08:00||;True|2025-04-07T16:11:44.5172315+08:00||;True|2025-04-02T18:10:22.8695984+08:00||;True|2025-04-02T17:59:51.2978116+08:00||;True|2025-04-02T17:50:55.8630437+08:00||;True|2025-04-02T17:49:22.5114405+08:00||;True|2025-04-02T17:47:11.0650205+08:00||;True|2025-04-02T17:39:09.8576853+08:00||;True|2025-04-02T17:38:15.3079030+08:00||;True|2025-04-02T17:22:03.6735964+08:00||;True|2025-04-02T17:19:04.4220913+08:00||;True|2025-04-02T17:17:14.0244636+08:00||;True|2025-04-02T17:11:09.6583011+08:00||;True|2025-04-02T17:07:23.6330597+08:00||;True|2025-04-02T16:58:45.4070649+08:00||;True|2025-04-02T16:50:20.5907511+08:00||;True|2025-04-02T16:44:18.5351224+08:00||;True|2025-04-02T16:31:11.1297141+08:00||;True|2025-04-02T16:18:43.1126995+08:00||;True|2025-04-02T14:50:42.5384021+08:00||;True|2025-04-01T10:53:08.9403414+08:00||;True|2025-04-01T10:52:08.7646389+08:00||;True|2025-04-01T09:52:56.3095742+08:00||;True|2025-03-13T16:44:25.3220313+08:00||;True|2025-03-13T15:31:10.3223071+08:00||;True|2025-03-13T10:58:17.1401575+08:00||;True|2025-01-23T23:10:37.9664637+08:00||;True|2024-09-24T09:51:10.8028974+08:00||;True|2024-09-20T17:30:59.6144803+08:00||;True|2024-09-20T15:28:40.2547949+08:00||;True|2024-09-19T16:30:51.3047517+08:00||;True|2024-09-19T15:53:23.2431713+08:00||;True|2024-09-19T15:48:55.0571748+08:00||;True|2024-09-19T15:06:29.5748482+08:00||;True|2024-09-19T14:55:42.1477578+08:00||;True|2024-09-19T10:07:53.8666329+08:00||;True|2024-09-03T16:26:17.4985546+08:00||;True|2024-07-17T10:29:15.9472548+08:00||; @@ -86,22 +86,22 @@ 10/28/2024 14:02:50 - 07/01/2025 10:14:57 + 07/01/2025 15:52:14 - 07/01/2025 10:14:57 + 07/01/2025 15:52:14 12/06/2024 20:13:58 - 07/01/2025 10:14:38 + 07/01/2025 15:51:54 12/26/2024 09:46:52 - 07/01/2025 10:14:38 + 07/01/2025 15:51:54 12/18/2020 05:32:28 @@ -389,13 +389,13 @@ 02/09/2013 00:42:28 - 07/01/2025 10:14:42 + 07/01/2025 15:51:57 - 07/01/2025 10:14:42 + 07/01/2025 15:51:57 - 07/01/2025 10:14:42 + 07/01/2025 15:51:57 01/23/2014 21:57:34 @@ -479,7 +479,7 @@ 10/28/2024 14:02:50 - 07/01/2025 10:14:43 + 07/01/2025 15:51:58 10/28/2024 14:02:50 diff --git a/SGGL/WebAPI/WebAPI.csproj.user b/SGGL/WebAPI/WebAPI.csproj.user index 1a1a9a6c..17978b44 100644 --- a/SGGL/WebAPI/WebAPI.csproj.user +++ b/SGGL/WebAPI/WebAPI.csproj.user @@ -1,7 +1,7 @@  - Release|Any CPU + Debug|Any CPU true