From 6c67afae72fc525daef584d75530786ab85a5530 Mon Sep 17 00:00:00 2001 From: geh <1923421292@qq.com> Date: Sat, 9 May 2026 11:43:24 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=B3=E5=8A=A1=E4=BA=BA=E5=91=98=E7=9C=8B?= =?UTF-8?q?=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DataBase/版本日志/SUBQHSE_V2026-05-09-geh.sql | 4 + SUBQHSE/BLL/ZHGL/DataSync/ServerService.cs | 76 +- SUBQHSE/FineUIPro.Web/DataShow/kq.aspx | 874 +++++++++++ SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.cs | 268 ++++ .../DataShow/kq.aspx.designer.cs | 17 + SUBQHSE/FineUIPro.Web/FineUIPro.Web.csproj | 20 + .../HSSE/KqShowScreen/JZYScreen.aspx | 335 ++++ .../HSSE/KqShowScreen/JZYScreen.aspx.cs | 416 +++++ .../KqShowScreen/JZYScreen.aspx.designer.cs | 17 + .../HSSE/KqShowScreen/KqShowScreen.aspx | 327 ++++ .../HSSE/KqShowScreen/KqShowScreen.aspx.cs | 210 +++ .../KqShowScreen.aspx.designer.cs | 17 + SUBQHSE/FineUIPro.Web/common/main.aspx | 32 +- SUBQHSE/FineUIPro.Web/common/main.aspx.cs | 45 + SUBQHSE/FineUIPro.Web/res/css/jzyscreen.css | 209 +++ SUBQHSE/FineUIPro.Web/res/css/kq.css | 496 ++++++ .../FineUIPro.Web/res/css/kqshowscreen.css | 167 ++ SUBQHSE/FineUIPro.Web/res/homecss/index.css | 1394 ++++++++++++++++- SUBQHSE/FineUIPro.Web/res/images/rgs.png | Bin 0 -> 1288 bytes 19 files changed, 4902 insertions(+), 22 deletions(-) create mode 100644 DataBase/版本日志/SUBQHSE_V2026-05-09-geh.sql create mode 100644 SUBQHSE/FineUIPro.Web/DataShow/kq.aspx create mode 100644 SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.cs create mode 100644 SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.designer.cs create mode 100644 SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx create mode 100644 SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.cs create mode 100644 SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.designer.cs create mode 100644 SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx create mode 100644 SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.cs create mode 100644 SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.designer.cs create mode 100644 SUBQHSE/FineUIPro.Web/res/css/jzyscreen.css create mode 100644 SUBQHSE/FineUIPro.Web/res/css/kq.css create mode 100644 SUBQHSE/FineUIPro.Web/res/css/kqshowscreen.css create mode 100644 SUBQHSE/FineUIPro.Web/res/images/rgs.png diff --git a/DataBase/版本日志/SUBQHSE_V2026-05-09-geh.sql b/DataBase/版本日志/SUBQHSE_V2026-05-09-geh.sql new file mode 100644 index 0000000..c163945 --- /dev/null +++ b/DataBase/版本日志/SUBQHSE_V2026-05-09-geh.sql @@ -0,0 +1,4 @@ + + +INSERT INTO [dbo].[Sys_Menu] ([MenuId], [MenuName], [Icon], [Url], [SortIndex], [SuperMenu], [MenuType], [IsOffice], [IsEnd], [IsUsed]) VALUES (N'2FA61DF2-F2A2-4215-980E-005711E622AA', N'人员动态看板', NULL, N'HSSE/KqShowScreen/JZYScreen.aspx', 120, N'0', N'Menu_Person_P', '0', '1', '1'); +INSERT INTO [dbo].[Sys_Menu] ([MenuId], [MenuName], [Icon], [Url], [SortIndex], [SuperMenu], [MenuType], [IsOffice], [IsEnd], [IsUsed]) VALUES (N'CDB921B6-D9B3-4D6A-AF77-E4262ED20153', N'人员动态展示', NULL, N'HSSE/KqShowScreen/KqShowScreen.aspx', 115, N'0', N'Menu_Person_P', '0', '1', '1'); diff --git a/SUBQHSE/BLL/ZHGL/DataSync/ServerService.cs b/SUBQHSE/BLL/ZHGL/DataSync/ServerService.cs index 7ec72fd..5944425 100644 --- a/SUBQHSE/BLL/ZHGL/DataSync/ServerService.cs +++ b/SUBQHSE/BLL/ZHGL/DataSync/ServerService.cs @@ -216,17 +216,31 @@ namespace BLL string baseurl = "/api/Resources/getSafeLawListByType"; Dictionary dic = new Dictionary() { - {"type",type}, - {"pageIndex","0"} - + { "type", type }, + { "pageIndex", "0" } }; var returnData = GerDataFromCncec(baseurl, dic, 3000); - if (returnData != null && returnData.code == 1) + if (returnData != null && returnData.code == 1 && returnData.data != null) { - JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject(returnData.data.ToString()); - var data = jt["getDataList"].ToString(); - result = JsonConvert.DeserializeObject>(data); - + try + { + JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject(returnData.data.ToString()); + if (jt != null && jt["getDataList"] != null) + { + var data = jt["getDataList"].ToString(); + if (!string.IsNullOrEmpty(data)) + { + result = JsonConvert.DeserializeObject>(data) ?? + new List(); + } + } + } + catch (Exception ex) + { + // 记录异常日志,避免程序崩溃 + APICommonService.SaveSysHttpLog("Error_GetSafeLawList", baseurl, ex.Message); + result = new List(); + } } return result; } @@ -244,12 +258,25 @@ namespace BLL }; var returnData = GerDataFromCncec(baseurl, dic, 4000); - if (returnData != null && returnData.code == 1) + if (returnData != null && returnData.code == 1 && returnData.data != null) { - JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject(returnData.data.ToString()); - var data = jt["getDataList"].ToString(); - result = JsonConvert.DeserializeObject>(data); - + try + { + JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject(returnData.data.ToString()); + if (jt != null && jt["getDataList"] != null) + { + var data = jt["getDataList"].ToString(); + if (!string.IsNullOrEmpty(data)) + { + result = JsonConvert.DeserializeObject>(data) ?? new List(); + } + } + } + catch (Exception ex) + { + APICommonService.SaveSysHttpLog("Error_GetNoticeList", baseurl, ex.Message); + result = new List(); + } } return result; } @@ -275,12 +302,25 @@ namespace BLL }; var returnData = GerDataFromCncec(baseurl, dic, 3000); - if (returnData != null && returnData.code == 1) + if (returnData != null && returnData.code == 1 && returnData.data != null) { - JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject(returnData.data.ToString()); - var data = jt["getDataList"].ToString(); - result = JsonConvert.DeserializeObject>(data); - + try + { + JObject jt = Newtonsoft.Json.JsonConvert.DeserializeObject(returnData.data.ToString()); + if (jt != null && jt["getDataList"] != null) + { + var data = jt["getDataList"].ToString(); + if (!string.IsNullOrEmpty(data)) + { + result = JsonConvert.DeserializeObject>(data) ?? new List(); + } + } + } + catch (Exception ex) + { + APICommonService.SaveSysHttpLog("Error_GetNewsList", baseurl, ex.Message); + result = new List(); + } } return result; } diff --git a/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx b/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx new file mode 100644 index 0000000..7777e71 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx @@ -0,0 +1,874 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="kq.aspx.cs" Inherits="FineUIPro.Web.DataShow.kq" %> + + + + + + + + + + + + +
+
+ +
QHSE系统实名制管理看板
+ +
+
全屏
+
+
+
+
+
+
+ 劳务人员工种结构 TOP10 +
+
+
+
{{idx|formatNumber}}
+
+
+ + {{i.name}} + {{i.value}}个 +
+
+
+
+
+
+
+
+
+
+
+ 劳务人员 +
+
+
+ 序号头像 + + 姓名 + 工种时间 +
+
+
+
{{index + 1}}
+
+ +
+
{{item.PersonName}}
+
{{item.WorkPostName}}
+
{{item.ChangeTime}}
+
{{item.IsIn === 'out' ? '出' : '入'}}
+
+
+
+
+
+
+
+
+
总在册
+
{{form.person.allNum}}
+
+
+
当前在册
+
{{form.person.onDutyNum}}
+
+
+
今日出勤
+
{{form.person.todayAttendanceNum}}
+
+
+
今日出勤率
+
{{form.person.todayAttendanceRate}}
+
+
+
+ +
+
+ 出勤动态曲线 +
+
+
+
+
+
+
+ 考勤统计 +
+
+
+ 序号组织名称 + + 总在册 + 当前在册今日出勤 +
+
+
+ {{index + 1}} + {{item.projectName}} + {{item.allNum}} + {{item.onDutyNum}} + {{item.todayAttendanceNum}} +
+
+
+
+
+
+ 劳务人员年龄性别结构 +
+
+
+
+
+
+ 性别 + 占比统计 +
+
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.cs b/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.cs new file mode 100644 index 0000000..0ebce5f --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.cs @@ -0,0 +1,268 @@ +using BLL; +using Model; +using System; +using System.Collections.Generic; +using System.Web.Services; +using System.Linq; +using System.Web.UI.WebControls; +using System.Threading.Tasks; +using Newtonsoft.Json; + +namespace FineUIPro.Web.DataShow +{ + public partial class kq : PageBase + { + public static string userId; + + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + userId = this.CurrUser.UserId; + } + } + + /// + /// 根据身份证号计算年龄 + /// + private static int? CalculateAgeFromIdCard(string idCard) + { + if (string.IsNullOrEmpty(idCard) || idCard.Length < 17) + return null; + + try + { + string birthDateStr = idCard.Substring(6, 8); + DateTime birthDate = DateTime.ParseExact(birthDateStr, "yyyyMMdd", null); + + int age = DateTime.Now.Year - birthDate.Year; + if (DateTime.Now.Month < birthDate.Month || + (DateTime.Now.Month == birthDate.Month && DateTime.Now.Day < birthDate.Day)) + { + age--; + } + + return age > 0 ? age : (int?)null; + } + catch + { + return null; + } + } + + + /// + /// 看板数据 + /// + /// + [WebMethod] + public static object GetData() + { + try + { + var db = Funs.DB; + var projectList = (from project in db.Base_Project + where (project.ProjectAttribute == "GONGCHENG" || project.ProjectAttribute == null) + && (project.IsDelete == null || project.IsDelete == false) && project.ProjectState == "1" + select new + { + project.UnitId, + project.ProjectId, + ProjectName = string.IsNullOrEmpty(project.ShortName) ? project.ProjectName : project.ShortName, + project.ProjectAddress, + project.MapCoordinates, + }).ToList(); + + int unitType = CommonService.GetUnitTypeByUserId(userId); + if (unitType == 1) + { + projectList = projectList.Where(x => x.UnitId == userId).ToList(); + } + + var chinaMapData = projectList + .Where(x => !string.IsNullOrEmpty(x.MapCoordinates)) + .Select(x => + { + var coords = x.MapCoordinates.Split(','); + return new + { + id = x.ProjectId, + name = x.ProjectName, + address = x.ProjectAddress, + value = coords.Length >= 2 + ? new[] { Convert.ToDouble(coords[0]), Convert.ToDouble(coords[1]) } + : new double[] { 0, 0 } + }; + }).ToList(); + + + // 获取在建项目id列表 + List beUnderConstructionList = projectList.Select(p => p.ProjectId).ToList(); + //获取所有人员列表 + var persons = db.View_SitePerson_Person.Where(x => beUnderConstructionList.Contains(x.ProjectId)).ToList(); + + var onDutyNum = persons.Where(x => x.IsUsedType == "1").Count(); + + //获取今天所有出入场记录 + DateTime todayStart = DateTime.Now.Date; + DateTime todayEnd = todayStart.AddDays(1).AddSeconds(-1); + var outOuts = db.SitePerson_PersonInOut.Where(x => + x.ChangeTime.HasValue && x.ChangeTime.Value.Date >= todayStart && + x.ChangeTime.Value.Date <= todayEnd && beUnderConstructionList.Contains(x.ProjectId)).ToList(); + + var inNum = outOuts.Where(x => x.IsIn == true) + .GroupBy(x => x.PersonId) + .Select(grp => grp.First()) + .Count(); //入场数量 + + var inRate = "0.00%"; + if (onDutyNum > 0) + { + inRate = (inNum * 100.0 / onDutyNum).ToString("F2") + "%"; + } + + var attendanceStats = (from p in persons + join proj in projectList on p.ProjectId equals proj.ProjectId + group p by new { p.ProjectId, proj.ProjectName } into g + let todayInCount = outOuts.Where(x => x.ProjectId == g.Key.ProjectId && x.IsIn == true) + .GroupBy(x => x.PersonId) + .Select(grp => grp.First()) + .Count() + orderby g.Count() descending + select new + { + projectId = g.Key.ProjectId, + projectName = g.Key.ProjectName, + allNum = g.Count(), + onDutyNum = g.Count(x => x.IsUsedType == "1"), + todayAttendanceNum = todayInCount + }).ToList(); + + var workTypeStats = (from p in persons + where !string.IsNullOrEmpty(p.WorkPostId) + group p by new {p.WorkPostId,p.WorkPostName} into g + orderby g.Count() descending + select new + { + id = g.Key.WorkPostId, + name = g.Key.WorkPostName, + value = g.Count() + }).Take(10).ToList(); + + var personWithAge = persons + .Where(x => !string.IsNullOrEmpty(x.IdentityCard)) + .Select(x => new + { + Person = x, + Age = CalculateAgeFromIdCard(x.IdentityCard) + }).Where(x => x.Age.HasValue).ToList(); + + var ageStats = personWithAge + .Where(x => x.Age.Value >= 16 && x.Age.Value <= 55) + .GroupBy(x => + { + int age = x.Age.Value; + if (age >= 16 && age <= 25) return "16-25"; + if (age >= 26 && age <= 35) return "26-35"; + if (age >= 36 && age <= 45) return "36-45"; + return "46-55"; + }) + .Select(g => new { name = g.Key, value = g.Count() }) + .OrderByDescending(x => x.value) + .ToList(); + + var genderStats = persons.Where(x => !string.IsNullOrEmpty(x.Sex)) + .GroupBy(x => x.Sex) + .Select(g => new { + name = g.Key == "1" ? "男" : (g.Key == "2" ? "女" : g.Key), + value = g.Count() + }) + .ToList(); + + var lwInOutList = (from o in outOuts + join p in db.View_SitePerson_Person on o.PersonId equals p.PersonId into personGroup + from p in personGroup.DefaultIfEmpty() + where p != null + orderby o.ChangeTime descending + select new + { + PhotoUrl = p.PhotoUrl, + PersonName = o.PersonName ?? string.Empty, + WorkPostName = o.WorkPostName ?? string.Empty, + ChangeTime = o.ChangeTime.HasValue ? o.ChangeTime.Value.ToString("yyyy-MM-dd HH:mm:ss") : string.Empty, + IsIn = o.IsIn.HasValue && o.IsIn.Value ? "in" : "out" + }).Take(200).ToList(); + + //先获取管理人员的数据 + var projectUserList = (from a in db.Project_ProjectUser + join b in db.Sys_User on a.UserId equals b.UserId into userJoin + from b in userJoin.DefaultIfEmpty() + where beUnderConstructionList.Contains(a.ProjectId) + select new + { + ProjectId = a.ProjectId, + IdentityCard = b.IdentityCard, + }).ToList(); + //获取管理人员身份证 + var managerIdentityCards = projectUserList.Where(x => x.IdentityCard != null) + .Select(x => x.IdentityCard).ToList(); + + var managerData = new List(); + var workerData = new List(); + + for (int hour = 0; hour < 24; hour++) + { + DateTime hourStart = todayStart.AddHours(hour); + DateTime hourEnd = hourStart.AddHours(1).AddSeconds(-1); + + var hourRecords = outOuts.Where(x => x.ChangeTime.HasValue && + x.ChangeTime.Value >= hourStart && + x.ChangeTime.Value <= hourEnd).ToList(); + + int managerCount = 0; + int workerCount = 0; + if (hourRecords.Count > 0) + { + managerCount = hourRecords.Count(x => managerIdentityCards.Contains(x.IdentityCard)); + workerCount = hourRecords.Count - managerCount; + } + managerData.Add(managerCount); + workerData.Add(workerCount); + } + + + var returnData = new + { + success = true, + data = new + { + person = new + { + allNum = persons.Count, //总在册数 + onDutyNum = onDutyNum, //总在场数 + todayAttendanceNum = inNum, //今日出勤数 + todayAttendanceRate = inRate, //今日出勤率 + }, + attendanceCurve = new + { + managerData = managerData, + workerData = workerData + }, + attendanceStats = attendanceStats, + workTypeStats = workTypeStats, + ageStats = ageStats, + genderStats = genderStats, + lwInOutList = lwInOutList, + chinaMapData = chinaMapData, + } + }; + + return returnData; + } + catch (Exception ex) + { + return new { success = false, msg = ex.Message }; + } + } + } +} \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.designer.cs b/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.designer.cs new file mode 100644 index 0000000..0866aaf --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/DataShow/kq.aspx.designer.cs @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.DataShow +{ + + + public partial class kq + { + } +} diff --git a/SUBQHSE/FineUIPro.Web/FineUIPro.Web.csproj b/SUBQHSE/FineUIPro.Web/FineUIPro.Web.csproj index c5e0a4d..ec8315a 100644 --- a/SUBQHSE/FineUIPro.Web/FineUIPro.Web.csproj +++ b/SUBQHSE/FineUIPro.Web/FineUIPro.Web.csproj @@ -694,6 +694,7 @@ + @@ -1147,6 +1148,8 @@ + + @@ -1166,6 +1169,7 @@ + @@ -1260,6 +1264,7 @@ + @@ -9516,6 +9521,13 @@ HazardDetection.aspx + + kq.aspx + ASPXCodeBehind + + + kq.aspx + OccupationalDiseaseAccident.aspx ASPXCodeBehind @@ -12531,6 +12543,14 @@ ASPXCodeBehind + + ASPXCodeBehind + + + + ASPXCodeBehind + + MeetingManage.aspx ASPXCodeBehind diff --git a/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx new file mode 100644 index 0000000..87b3855 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx @@ -0,0 +1,335 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="JZYScreen.aspx.cs" Inherits="FineUIPro.Web.HSSE.KqShowScreen.JZYScreen" %> + + + + + + + + Document + + + + + +
+
+

<%=ProjectName%>

+
+
+
+
+
+ <%--
+ +
距离12·31中交目标还剩余(天)
+
0
+ + +
--%> +
+
+
0
+
+
+
+
0
+
+ +
+ +
+
+
+
+
+
+ +
+
+ +
+
+
+
+ + + +
+
+
+
+
+
+ + +
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.cs b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.cs new file mode 100644 index 0000000..1854626 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.cs @@ -0,0 +1,416 @@ +using BLL; +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Web; +using System.Web.Services; + +using System.Web.UI.WebControls; + + +namespace FineUIPro.Web.HSSE.KqShowScreen +{ + public partial class JZYScreen : PageBase + { + #region 项目主键 + /// + /// 项目主键 + /// + public string ProjectId + { + get + { + return (string)ViewState["ProjectId"]; + } + set + { + ViewState["ProjectId"] = value; + } + } + public string ProjectName + { + get + { + return (string)ViewState["ProjectName"]; + } + set + { + ViewState["ProjectName"] = value; + } + } + + + #endregion + + + #region 加载 + /// + /// 加载页面 + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + this.ProjectId = this.CurrUser.LoginProjectId; + var project = Funs.DB.Base_Project.FirstOrDefault(x => x.ProjectId == ProjectId); + string title = "现场人员动态看板"; + if (project != null) + { + if (!string.IsNullOrEmpty(project.ShortName)) + { + ProjectName = project.ShortName + title; + } + else + { + ProjectName = project.ProjectName + title; + } + } + title1 = "全屏"; + title2 = "退出全屏"; + remark1 = "施工人员"; + remark2 = "建投管理人员"; + remark3 = "监理管理人员"; + remark4 = "业主管理人员"; + remark5 = "当前现场人数"; + remark6 = "当日最高人数"; + } + } + #endregion + + protected string title1 = string.Empty; + protected string title2 = string.Empty; + protected string remark1 = string.Empty; + protected string remark2 = string.Empty; + protected string remark3 = string.Empty; + protected string remark4 = string.Empty; + protected string remark5 = string.Empty; + protected string remark6 = string.Empty; + + [WebMethod] + public static object getData(string projectId) + { + + //let leftLabel = ['施工人员', '十六化建管理人员', '天辰管理人员', '监理管理人员', '业主管理人员', '当前现场总人数', '当日最高人数'] + + int num1 = 0; + int num2 = 0; + int num3 = 0; + int num4 = 0; + int num5 = 0; + int num6 = 0; + int num7 = 0; + + try + { + int total = 0; + HashSet ids = new HashSet(); + HashSet idsIn = new HashSet(); + HashSet personAll = new HashSet(); + + Dictionary inperson = new Dictionary(); + Dictionary outPerson = new Dictionary(); + DateTime dateTime = DateTime.Now.AddDays(-1); + var inout = Funs.DB.SitePerson_PersonInOut.Where(x => x.ProjectId == projectId && x.ChangeTime > dateTime).OrderByDescending(x => x.ChangeTime); + var unitid1 = Funs.DB.Project_ProjectUnit.Where(x => x.ProjectId == projectId && x.UnitType == Const.ProjectUnitType_3).Select(x => x.UnitId).ToArray(); + var unitname1 = Funs.DB.Base_Unit.Where(x => unitid1.Contains(x.UnitId)).Select(x => x.UnitName).ToArray(); + var unitid2 = Funs.DB.Project_ProjectUnit.Where(x => x.ProjectId == projectId && x.UnitType == Const.ProjectUnitType_4).Select(x => x.UnitId); + var unitname2 = Funs.DB.Base_Unit.Where(x => unitid2.Contains(x.UnitId)).Select(x => x.UnitName).ToArray(); + Dictionary company = new Dictionary(); + Dictionary companySys = new Dictionary(); + Dictionary workPost = new Dictionary(); + Dictionary workPostSys = new Dictionary(); + + + foreach (var io in inout) + { + personAll.Add(io.PersonId); + ids.Add(io.PersonId); + if (io.IsIn.HasValue && io.IsIn.Value) //24小时内最晚的入场 + { + if (inperson.ContainsKey(io.PersonId)) + { + if (inperson[io.PersonId] < io.ChangeTime.Value) + { + inperson[io.PersonId] = io.ChangeTime.Value; + } + } + else + { + if (io.ChangeTime.HasValue) + { + inperson.Add(io.PersonId, io.ChangeTime.Value); + } + } + } + else //24小时内最晚的出场 + { + if (outPerson.ContainsKey(io.PersonId)) + { + if (outPerson[io.PersonId] < io.ChangeTime.Value) + { + outPerson[io.PersonId] = io.ChangeTime.Value; + } + } + else + { + if (io.ChangeTime.HasValue) + { + outPerson.Add(io.PersonId, io.ChangeTime.Value); + } + } + } + } + num7 = personAll.Count; + foreach (var id in ids) + { + if (inperson.ContainsKey(id) && !outPerson.ContainsKey(id))//只有入场没有出场 在场 + { + idsIn.Add(id); + num6++; + } + else if (inperson.ContainsKey(id) && outPerson.ContainsKey(id)) + { + if (inperson[id] > outPerson[id])//最晚入场时间 小于出场时间 在场 + { + idsIn.Add(id); + num6++; + } + } + } + num1 = num6; + HashSet keys1 = new HashSet(); + HashSet keys2 = new HashSet(); + + foreach (var io in inout) + { + if (idsIn.Contains(io.PersonId)) + { + if (!string.IsNullOrEmpty(io.WorkPostName)) + { + if (!keys1.Contains(io.PersonId)) + { + keys1.Add(io.PersonId); + if (workPost.ContainsKey(io.UnitName + ";" + io.WorkPostName)) + { + workPost[io.UnitName + ";" + io.WorkPostName] = workPost[io.UnitName + ";" + io.WorkPostName] + 1; + } + else + { + workPost[io.UnitName + ";" + io.WorkPostName] = 1; + } + } + } + if (!string.IsNullOrEmpty(io.UnitName)) + { + if (!keys2.Contains(io.PersonId)) + { + keys2.Add(io.PersonId); + if (company.ContainsKey(io.UnitName)) + { + company[io.UnitName] = company[io.UnitName] + 1; + } + else + { + company[io.UnitName] = 1; + } + } + } + } + } + + + + + + var workPosts = Funs.DB.Base_WorkPost.ToList(); + + string strSql = @"SELECT p.UnitId + ,ISNULL((case when u.UnitName=''then null else u.UnitName end),'未知') AS UnitName + ,p.WorkPostId as PostId + ,w.PostType + ,ISNULL((case when W.WorkPostName=''then null else W.WorkPostName end),'未知') AS PostName + ,COUNT( distinct PersonId) AS PersonCountSum + FROM dbo.SitePerson_Person AS P + LEFT JOIN dbo.Base_Unit AS U ON P.UnitId=U.UnitId + LEFT JOIN dbo.Base_WorkPost AS W ON P.WorkPostId=W.WorkPostId + LEFT JOIN dbo.Project_ProjectUnit AS pu ON pu.UnitId=p.UnitId and pu.ProjectId=p.ProjectId + WHERE pu.ProjectId is not null and P.ProjectId = '" + projectId + @"' and P.InTime <=GETDATE() and ( P.OutTime is null or P.OutTime > GETDATE()) and p.IsUsed =1 + GROUP BY P.ProjectId,P.UnitId,U.UnitName,P.WorkPostId,w.PostType,W.WorkPostName"; + + + System.Data.DataTable tb = SQLHelper.GetDataTableRunText(strSql, null); + + if (tb != null && tb.Rows.Count > 0) + { + foreach (DataRow row in tb.Rows) + { + if (!string.IsNullOrEmpty(row["PostName"].ToString())) + { + if (!workPostSys.ContainsKey(row["UnitName"].ToString() + ";" + row["PostName"].ToString())) + { + workPostSys.Add(row["UnitName"].ToString() + ";" + row["PostName"].ToString(), 0); + } + workPostSys[row["UnitName"].ToString() + ";" + row["PostName"].ToString()] = workPostSys[row["UnitName"].ToString() + ";" + row["PostName"].ToString()] + int.Parse(row["PersonCountSum"].ToString()); + } + + if (!string.IsNullOrEmpty(row["UnitName"].ToString())) + { + if (!companySys.ContainsKey(row["UnitName"].ToString())) + { + companySys.Add(row["UnitName"].ToString(), 0); + } + companySys[row["UnitName"].ToString()] = companySys[row["UnitName"].ToString()] + int.Parse(row["PersonCountSum"].ToString()); + } + } + } + + + + + + string html = ""; + List comStatic = new List(); + foreach (var key in company.Keys) + { + string unitName = key; + var unit = Funs.DB.Base_Unit.FirstOrDefault(x => x.UnitName == unitName); + if (unit != null && !string.IsNullOrEmpty(unit.ShortUnitName)) + { + unitName = unit.ShortUnitName; + } + + if (!unitname2.Contains(key) && !unitname1.Contains(key) && "中化学建设投资集团有限公司" != key) + { + html += @"
+
" + unitName + @"
+
" + company[key] + "/" + (companySys.ContainsKey(key) ? companySys[key] : 0) + @"
+
"; + } + int MPerson = 0; + int MPersonSys = 0; + + int SPerson = 0; + int SPersonSys = 0; + + string workPostName = ""; + string workPostNum = ""; + string workPostSysNum = ""; + + foreach (var key2 in workPost.Keys) + { + MPerson = 0; + SPerson = 0; + string[] keys = key2.Split(';'); + if (key == keys[0]) + { + if (unitname2.Contains(key)) + { + num5 += workPost[key2]; + } + else if ("中化学建设投资集团有限公司" == key) + { + num3 += workPost[key2]; + } + else if (unitname1.Contains(key)) + { + num4 += workPost[key2]; + } + var workPostTemp = workPosts.FirstOrDefault(w => w.WorkPostName == keys[1]); + if (workPostTemp != null) + { + if (workPostTemp.PostType == Const.PostType_1)//管理人员 + { + //if (Resources.Lan.ASPXSC_3064 == key)//十六化建管理人员 + //{ + // num2 += workPost[key2]; + //} + //else + + num1 -= workPost[key2]; + MPerson += workPost[key2]; + MPersonSys += workPostSys.ContainsKey(key2) ? workPostSys[key2] : 0; + } + else if (workPostTemp.PostType == Const.PostType_2)//特种作业人员 + { + SPerson += workPost[key2]; + SPersonSys += workPostSys.ContainsKey(key2) ? workPostSys[key2] : 0; + + workPostName += " " + keys[1] + " "; + workPostNum += " " + workPost[key2] + " "; + workPostSysNum += " " + (workPostSys.ContainsKey(key2) ? workPostSys[key2] : 0) + " "; + + } + } + } + } + var ZPerson = company[key] - MPerson - SPerson; + var ZPersonSys = company[key] - MPersonSys - SPersonSys; + + //workPostName += "作业人员 "; + //workPostNum += " " + ZPerson + ""; + //workPostSysNum += " " + ZPersonSys + ""; + + //workPostName += " 管理人员 "; + //workPostNum += " " + MPerson + ""; + //workPostSysNum += " " + MPersonSys + ""; + + if (!unitname2.Contains(key) && !unitname1.Contains(key) && "中化学建设投资集团有限公司" != key) + { + html += @"
" + + workPostName + + @"
+
" + + workPostSysNum + + @"
+
" + + workPostNum + + @"
+
+
"; + } + + } + + + + + int safeTotal = 0; + int safeTotalWeek = 0; + var getMax = from x in Funs.DB.SitePerson_DayReportDetail + join y in Funs.DB.SitePerson_DayReport on x.DayReportId equals y.DayReportId + where y.ProjectId == projectId + select x; + if (getMax.Count() > 0) + { + safeTotal = Convert.ToInt32(getMax.Sum(x => x.PersonWorkTime) ?? 0); + } + + var getWeek = from x in Funs.DB.SitePerson_DayReportDetail + join y in Funs.DB.SitePerson_DayReport on x.DayReportId equals y.DayReportId + where y.ProjectId == projectId + where y.CompileDate > DateTime.Now.AddDays(-7) + select x; + if (getWeek.Count() > 0) + { + safeTotalWeek = Convert.ToInt32(getWeek.Sum(x => x.PersonWorkTime) ?? 0); + } + + + num1 = num6 - num5 - num4 - num3; + + return new { company = html, total, num = new int[] { num1, num3, num4, num5, num6, num7 }, safeTotal, safeTotalWeek }; + } + catch (Exception e) + { + return new { company = e.Message }; + + } + + } + + + } +} \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.designer.cs b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.designer.cs new file mode 100644 index 0000000..1578991 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/JZYScreen.aspx.designer.cs @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.HSSE.KqShowScreen +{ + + + public partial class JZYScreen + { + } +} diff --git a/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx new file mode 100644 index 0000000..c955b46 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx @@ -0,0 +1,327 @@ +<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="KqShowScreen.aspx.cs" Inherits="FineUIPro.Web.HSSE.KqShowScreen.KqShowScreen" %> + + + + + + + + Document + + + + + +
+
+
+
+
+
+ 0 +
+
+
+
+
+
+
    + + +
+
+
+
+
+
+
+
+
    + +
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+ + + + + + \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.cs b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.cs new file mode 100644 index 0000000..e191d8d --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.cs @@ -0,0 +1,210 @@ +using BLL; +using FastReport.Data; +using FineUIPro.Web.HSSE.SitePerson; +using FineUIPro.Web.ProjectData; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Services; +using System.Web.UI; +using System.Web.UI.WebControls; + +namespace FineUIPro.Web.HSSE.KqShowScreen +{ + public partial class KqShowScreen : PageBase + { + #region 项目主键 + /// + /// 项目主键 + /// + public string ProjectId + { + get + { + return (string)ViewState["ProjectId"]; + } + set + { + ViewState["ProjectId"] = value; + } + } + #endregion + + protected static string title1 = string.Empty; + protected static string title2 = string.Empty; + + #region 加载 + /// + /// 加载页面 + /// + /// + /// + protected void Page_Load(object sender, EventArgs e) + { + if (!IsPostBack) + { + this.ProjectId = this.CurrUser.LoginProjectId; + if (!string.IsNullOrEmpty(Request.Params["projectId"]) && Request.Params["projectId"] != this.CurrUser.LoginProjectId) + { + this.ProjectId = Request.Params["projectId"]; + } + title1 = "出场时间"; + title2 = "入场时间"; + } + } + #endregion + + [WebMethod] + public static object getData(string projectId) + { + int total = 0; + HashSet ids = new HashSet(); + HashSet idsIn = new HashSet(); + Dictionary inperson = new Dictionary(); + Dictionary outPerson = new Dictionary(); + DateTime dateTime = DateTime.Now.AddDays(-1); + var inout = Funs.DB.SitePerson_PersonInOut.Where(x => x.ProjectId == projectId && x.ChangeTime > dateTime).OrderByDescending(x => x.ChangeTime); + Dictionary company = new Dictionary(); + Dictionary workPost = new Dictionary(); + foreach (var io in inout) + { + ids.Add(io.PersonId); + if (io.IsIn.HasValue && io.IsIn.Value) //24小时内最晚的入场 + { + if (inperson.ContainsKey(io.PersonId)) + { + if (inperson[io.PersonId] < io.ChangeTime.Value) + { + inperson[io.PersonId] = io.ChangeTime.Value; + } + } + else + { + if (io.ChangeTime.HasValue) + { + inperson.Add(io.PersonId, io.ChangeTime.Value); + } + } + } + else //24小时内最晚的出场 + { + if (outPerson.ContainsKey(io.PersonId)) + { + if (outPerson[io.PersonId] < io.ChangeTime.Value) + { + outPerson[io.PersonId] = io.ChangeTime.Value; + } + } + else + { + if (io.ChangeTime.HasValue) + { + outPerson.Add(io.PersonId, io.ChangeTime.Value); + } + } + } + } + foreach (var id in ids) + { + if (inperson.ContainsKey(id) && !outPerson.ContainsKey(id))//只有入场没有出场 在场 + { + idsIn.Add(id); + total++; + } + else if (inperson.ContainsKey(id) && outPerson.ContainsKey(id)) + { + if (inperson[id] > outPerson[id])//最晚入场时间 小于出场时间 在场 + { + idsIn.Add(id); + total++; + } + } + } + + HashSet keys1 = new HashSet(); + HashSet keys2 = new HashSet(); + + foreach (var io in inout) + { + if (idsIn.Contains(io.PersonId)) + { + if (!string.IsNullOrEmpty(io.WorkPostName)) + { + if (!keys1.Contains(io.PersonId)) + { + keys1.Add(io.PersonId); + if (workPost.ContainsKey(io.WorkPostName)) + { + workPost[io.WorkPostName] = workPost[io.WorkPostName] + 1; + } + else + { + workPost[io.WorkPostName] = 1; + } + } + } + if (!string.IsNullOrEmpty(io.UnitName)) + { + if (!keys2.Contains(io.PersonId)) + { + keys2.Add(io.PersonId); + if (company.ContainsKey(io.UnitName)) + { + company[io.UnitName] = company[io.UnitName] + 1; + } + else + { + company[io.UnitName] = 1; + } + } + } + } + } + var personInOut = inout.FirstOrDefault(); + string teamGroupName = ""; + string inOut = title1; + string PhotoUrl = ""; + string PersonName = ""; + string UnitName = ""; + string WorkPostName = ""; + string ChangeTime = ""; + if (personInOut != null) + { + var person = Funs.DB.SitePerson_Person.FirstOrDefault(x => x.PersonId == personInOut.PersonId); + PersonName = personInOut.PersonName ?? ""; + UnitName = personInOut.UnitName ?? ""; + WorkPostName = personInOut.WorkPostName ?? ""; + ChangeTime = personInOut.ChangeTime.Value.ToString("yyyy-MM-dd HH:mm"); + PhotoUrl = "../../" + person.PhotoUrl; + if (personInOut.IsIn == true) + { + inOut = title2; + } + if (!string.IsNullOrEmpty(person.TeamGroupId)) + { + var teamGroup = Funs.DB.ProjectData_TeamGroup.FirstOrDefault(x => x.TeamGroupId == person.TeamGroupId); + if (teamGroup != null) + { + teamGroupName = teamGroup.TeamGroupName; + } + } + } + List comStatic = new List(); + foreach (var key in company.Keys) + { + comStatic.Add(new { name = key, value = company[key] }); + } + List workPostName = new List(); + List workPostValue = new List(); + foreach (var key in workPost.Keys) + { + workPostName.Add(key); + workPostValue.Add(workPost[key]); + } + return new { company = comStatic, total, workPost = new { name = workPostName, value = workPostValue }, person = new { PersonName, UnitName, WorkPostName, inOut, PhotoUrl, teamGroupName, ChangeTime } }; + } + + + } +} \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.designer.cs b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.designer.cs new file mode 100644 index 0000000..afdc55c --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/HSSE/KqShowScreen/KqShowScreen.aspx.designer.cs @@ -0,0 +1,17 @@ +//------------------------------------------------------------------------------ +// <自动生成> +// 此代码由工具生成。 +// +// 对此文件的更改可能导致不正确的行为,如果 +// 重新生成代码,则所做更改将丢失。 +// +//------------------------------------------------------------------------------ + +namespace FineUIPro.Web.HSSE.KqShowScreen +{ + + + public partial class KqShowScreen + { + } +} diff --git a/SUBQHSE/FineUIPro.Web/common/main.aspx b/SUBQHSE/FineUIPro.Web/common/main.aspx index 92487fe..4d7b5d7 100644 --- a/SUBQHSE/FineUIPro.Web/common/main.aspx +++ b/SUBQHSE/FineUIPro.Web/common/main.aspx @@ -18,6 +18,9 @@ [v-cloak] { display: none; } + .content-body::-webkit-scrollbar{ + display: none; + } @@ -246,6 +249,15 @@
+
+ +
+
累计人工时(实名制)
+

+ {{form.manHour.totalManHour}} +

+
+
@@ -253,13 +265,13 @@

{{form.projectInfo.projectsUnderConstruction}}

-
+ <%--
停工项目

{{form.projectInfo.shutdownProject}}

-
+
--%>
@@ -688,6 +700,9 @@ participateInNum: 0,//参建人数 dangerousProject: 0,//在施危大工程 }, + manHour:{ + totalManHour: 0, + }, dangerousProject: {//危大工程管控数据 approvalCompleted: 0,//审批完成 @@ -762,7 +777,7 @@ // 组件挂载后执行的操作 this.show = true; // 显示内容 this.loadData(); // 加载数据 - this.createChinaMap(); + // this.createChinaMap(); this.createMap1(); this.createMap2(); this.startTimer(); //启动时间定时器 @@ -1014,6 +1029,12 @@ } this.chainaMap.setOption(chinaOption); this.chainaMap.on('click', function (params) { + // 控制台打印点击的地区名称 + if (params.seriesType == "effectScatter") { + var projectId = params.data && params.data.id ? params.data.id : ''; + var jumpUrl = "../HSSE/KqShowScreen/KqShowScreen.aspx?projectId=" + encodeURIComponent(projectId); + window.open(jumpUrl) + } // 控制台打印点击的地区名称 //if (params.seriesType == 'effectScatter') { // alert('点击了' + params.name); @@ -1493,6 +1514,11 @@ else if (type == 'AccidentEventData') { $('iframe').attr('src', '../DataShow/Accident.aspx') //事故事件数据 window.open("../DataShow/Accident.aspx") + }else if (type == 'manHour') { + // $('.container').hide() + // $('#contentContainer').show() + // $('#contentFrame').attr('src', '../DataShow/kq.aspx') + window.open("../DataShow/kq.aspx") } else { // $('iframe').attr('src', '../SysManage/Unit.aspx') diff --git a/SUBQHSE/FineUIPro.Web/common/main.aspx.cs b/SUBQHSE/FineUIPro.Web/common/main.aspx.cs index 1af08fc..4b54b55 100644 --- a/SUBQHSE/FineUIPro.Web/common/main.aspx.cs +++ b/SUBQHSE/FineUIPro.Web/common/main.aspx.cs @@ -203,6 +203,47 @@ namespace FineUIPro.Web.common #endregion + #region 累计人工时 + //累计人工时 + var allProjectsDetails = (from detail in db.SitePerson_DayReportDetail + join report in db.SitePerson_DayReport + on detail.DayReportId equals report.DayReportId + join unit in db.Base_Unit + on detail.UnitId equals unit.UnitId + join project in db.Base_Project + on report.ProjectId equals project.ProjectId + where BaseDataService.BeUnderConstructionList.Contains(report.ProjectId) && + report.CompileDate == (from r in db.SitePerson_DayReport + where r.ProjectId == report.ProjectId + select r.CompileDate).Max() + orderby project.ShortName, unit.UnitCode + select new + { + detail.DayReportDetailId, + report.ProjectId, + ProjectName = project.ShortName, + unit.UnitName, + detail.PersonWorkTime, + // 当年累计 + YearPersonWorkTime = (from d in db.SitePerson_DayReportDetail + join r in db.SitePerson_DayReport on d.DayReportId equals r.DayReportId + where r.ProjectId == report.ProjectId + && d.UnitId == detail.UnitId + && r.CompileDate <= report.CompileDate + && r.CompileDate.Value.Year == report.CompileDate.Value.Year + select d.PersonWorkTime ?? 0).Sum(), + // 总累计 + TotalPersonWorkTime = (from d in db.SitePerson_DayReportDetail + join r in db.SitePerson_DayReport on d.DayReportId equals r.DayReportId + where r.ProjectId == report.ProjectId + && d.UnitId == detail.UnitId + && r.CompileDate <= report.CompileDate + select d.PersonWorkTime ?? 0).Sum() + }).ToList(); + // 计算所有项目累计人工时总和 + var totalManHour = allProjectsDetails.Sum(x => x.TotalPersonWorkTime); + + #endregion // 构造返回数据 var returnData = new { @@ -350,6 +391,10 @@ namespace FineUIPro.Web.common useNum = inspectionMachineList.Where(x => x.InspectionType == "计量").Sum(x => x.UnitsCount ?? 0), okNum = inspectionMachineList.Where(x => x.InspectionType == "计量" && x.IsCheckOK.HasValue && x.IsCheckOK == true).Sum(x => x.UnitsCount ?? 0), }, + manHour = new + {//工时数 + totalManHour = totalManHour, + } } }; diff --git a/SUBQHSE/FineUIPro.Web/res/css/jzyscreen.css b/SUBQHSE/FineUIPro.Web/res/css/jzyscreen.css new file mode 100644 index 0000000..2fbadb8 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/res/css/jzyscreen.css @@ -0,0 +1,209 @@ +*{ + margin: 0; + padding: 0%; + box-sizing: border-box; +} +html, body, .wrap { + height: 100%; + font-family: 'Microsoft YaHei', '微软雅黑', sans-serif; + background-color: #0B5695; + font-size:20px; +} + +.header{ + height: 1rem; + background-color: #0E5D9F; + box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5); +} +.header>h1{ + text-align: center; + text-shadow: 0px 0px 0px #fff, -1px -1px 0px #000; + color: #ffffff; + height: 1rem; + line-height: 1rem; +} +.conterner{ + display: flex; + flex-direction: row; + height: calc(100% - 1rem); + width: 100%; + overflow: hidden; + padding: .25rem; + color: #fff; +} + +.c-row{ + width: 70%; + height: 100%; + padding: .375rem ; + margin-left: .375rem; + background-color: #0E5D9F; + box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5); +} +.table{ + height: 100%; + width: 100%; + /* border: 1px solid #f2f2f2; */ + +} +.table>.table-head{ + width: 100%; + display: flex; + flex-direction: row; + align-items: center; + justify-content: center; + border-bottom: 1px solid #fff; + background-color: #0a4a7f91; +} +.table>.table-head>.th{ + border-right: 1px solid #fff; + height: 1rem; + line-height: 1rem; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + font-weight: 800; + font-size:22px; + text-shadow: 0px 0px 0px #fff, -1px -1px 0px #000; +} +.table>.table-head>.th:last-child{ + border-right: none; +} +.table>.table-head>.th>.th-1{ + width: 100%; + height: .5rem; + line-height: .5rem; + text-align: center; + border-bottom: 1px solid #fff; +} +.table>.table-head>.th>.th-2{ + width: 100%; + display: flex; + flex-direction: row; + height: .5rem; + line-height: .5rem; + +} +.table>.table-head>.th>.th-2>span{ + height: 100%; + text-align: center; + border-right: 1px solid #fff ; +} +.table>.table-head>.th>.th-2>span:last-child{ + border-right: none; +} + +.table-body { + height: calc(100% - .75rem); + width: 100%; + overflow: hidden; + overflow-y: scroll; + font-size: 22px; + font-weight: 800; +} +.table-body::-webkit-scrollbar{ + display: none; +} + +.table-body>.scroll-box .tr{ + width: 100%; + display: flex; + flex-direction: row; + border-bottom: 1px solid #fff ; +} + .table-body > .scroll-box .tr:last-child { + /* margin-bottom: .375rem; */ + } +.row-box{ + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: flex-start; +} +.table-body>.scroll-box .tr .td{ + border-right: 1px solid #fff ; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} +.table-body>.scroll-box .tr>.row-box>.td{ + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + height: 100%; + +} +.table-body>.scroll-box .tr>.row-box>.td:last-child{ + border-right: none; +} + .table-body > .scroll-box .tr > .row-box > .td > span { + width: 100%; + flex: 1; + text-align: center; + padding: .05rem 0; + border-bottom: 1px solid #fff; + } +.table-body>.scroll-box .tr>.row-box>.td>span:last-child{ + border-bottom: none; +} + +.row{ + width: 30%; + +} + + +.row>.row-1{ + width: 100%; + height: 1.5rem; + background-color: #0E5D9F; + padding: .1875rem; + box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5); + /* 添加一个内阴影增加立体感 */ + /* box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5); */ +} +.row>.row-1>.label{ + width: 100%; + font-size: .35rem; + /* color: #bfe2ff; */ + color: #fff; + font-weight: 700; + text-shadow: 0px 0px 0px #fff, -1px -1px 0px #000; +} + +.row>.row-1>.number{ + width: 100%; + font-size: .65rem; + text-align: right; + margin-top: 0rem; + font-family: DIN; + font-weight: 700; + /* text-shadow: 0px 0px 0px #fff, -1px -1px 0px #000; */ + /* color: #fff; */ + letter-spacing: 4px; + background: linear-gradient(to bottom, #0b9576, #00ffff, #0072d1); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + font-size: 45px; +} + +#rs{ + margin-top: .25rem; + height: calc(100% - 5.25rem); + width: 100%; + background-color: #0E5D9F; + padding: .1875rem; + box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5); +} + + + +@font-face { + font-family: 'DIN'; + /* src: url(../font/font.ttf); */ + /* src: url(../font//DINCond-RegularAlternate.otf); */ + src: url(../fonts/dinfont.ttf); +} diff --git a/SUBQHSE/FineUIPro.Web/res/css/kq.css b/SUBQHSE/FineUIPro.Web/res/css/kq.css new file mode 100644 index 0000000..5fd9d1c --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/res/css/kq.css @@ -0,0 +1,496 @@ +* { + margin: 0; + padding: 0; + box-sizing: border-box; + font-size: 14px; +} + +html, +body, +#app { + width: 100%; + height: 100%; + background-color: #001B35; +} + +#content { + height: calc(100% - 1rem); + display: grid; + grid-template-columns: 1fr 1.5fr 1fr; + gap: 0.25rem; + padding: 20px; + overflow: hidden; +} + +#content>div { + width: 100%; + height: 100%; + display: grid; + overflow: hidden; +} + +#content>div:nth-child(1), +#content>div:nth-child(3) { + gap: 0.25rem; + grid-template-rows: 60% 40%; +} + +.block { + width: 100%; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/l01.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.125rem; +} +.flex-between{ + display: flex; + flex-direction:column; + justify-content: space-between; +} +.top-row { + width: 100%; + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} + +.top-row>.top-row-num { + width: 0.5rem; + font-weight: 700; + + font-size: 0.2rem; + line-height: 0.2rem; +} + +.top-row-r { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + + width: calc(100% - 0.5rem); +} + +.top-row-r-t { + width: 100%; + display: flex; + flex-direction: row; + justify-content: space-between; + margin-bottom: 0.05rem; +} +.top-row-r-t>span{ + font-size: 0.175rem; + font-weight: 700; +} +.top-row-r-b { + width: 100%; + background-color: #173A55; + height: 0.125rem; +} + +.top-row-r-b>.top-row-r-b-inner { + height: 0.125rem; + background: linear-gradient(90deg, #144269 0%, #34ECFE 100%); +} + +.color-blue { + text-align: left; + font-style: normal; + text-transform: none; + background: linear-gradient(180deg, #FFFFFF 0%, #00E9FF 100%); + -webkit-background-clip: text; + background-clip: text; + -webkit-text-fill-color: transparent; +} + +.color-05937B { + text-align: left; + font-style: normal; + text-transform: none; + background: linear-gradient(180deg, #FFFFFF 0%, #05937B 100%); + -webkit-background-clip: text; + background-clip: text; + -webkit-text-fill-color: transparent; + +} + +.ry>.th{ + padding: 0 0.1875rem; + line-height: 0.5rem; + height: 0.5rem; + background-color: #13395E; + display: grid; + grid-template-columns: 0.5rem 0.75rem 1.25rem 1.25rem 1fr ; +} +.ry>.th>span{ + text-align: left; + color: #ffffff; + font-size: 0.175rem; +} +.ry>.body>.tr{ + position: relative; + padding: 0 0.1875rem; + line-height: 0.5rem; + height: 0.5rem; + display: grid; + grid-template-columns: 0.5rem 0.75rem 1.25rem 1.25rem 1fr ; +} +.ry>.body>.tr>div{ + text-align: left; + color: #ffffff; +} +.ry>.body>.tr:nth-child(2n){ + + background-color: #13395E; +} +.ry>.body>.tr>.photo{ + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} +.ry>.body>.tr>.photo>img{ + width: 0.375rem; + height: 0.375rem; + border-radius: 50%; +} + +.ry>.body>.tr>.out{ + position: absolute; + top: 50%; + transform: translateY(-50%); + line-height: 1; + right: 10px; + color: #ffffff; + padding: 0.05rem; + background-color: #FF0000; + border-radius: 0.05rem; + +} +.ry>.body>.tr>.in{ + position: absolute; + top: 50%; + transform: translateY(-50%); + line-height: 1; + right: 10px; + color: #ffffff; + padding: 0.05rem; + border-radius: 0.05rem; + background-color: #278F77; +} +.ry>.body{ + overflow: hidden; + height: calc(100% - 0.5rem); +} + +.kq>.th{ + padding: 0 0.1875rem; + line-height: 0.5rem; + height: 0.5rem; + background-color: #13395E; + display: grid; + grid-template-columns: 0.5rem 1fr 1.25rem 1rem 1rem; +} +.kq>.th>span{ + text-align: left; + color: #ffffff; + font-size: 0.175rem; +} +.kq>.body{ + overflow: hidden; + height: calc(100% - 0.5rem); +} +.kq>.body>.tr{ + position: relative; + padding: 0 0.1875rem; + line-height: 0.5rem; + height: 0.5rem; + display: grid; + grid-template-columns: 0.5rem 1fr 1.25rem 1rem 1rem ; +} +.kq>.body>.tr>span{ + color: #ffffff; + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + padding: 0 0.025rem; +} +.kq>.body>.tr>.zc{ + color: #12CDA2; +} +.kq>.body>.tr:nth-child(2n){ + background-color: #13395E; +} + +#nlzb{ + width: 100%; + height: 50%; +} +.bl{ + width: 100%; + height: 50%; + display: grid; + grid-template-columns: 1fr 0.8rem 1fr; +} +.bl-txt>span{ + margin-bottom: 0.125rem; +} +.bl-txt{ + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + text-align: center; + font-size: 0.175rem; + color: #ffffff; + font-weight: 700; +} +#man,#woman{ + width: 100%; + height: 100%; + min-height: 120px; +} +#chainmap{ + height: 100%; + width: 100%; +} + +.block4 { + width: 100%; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block4-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/m07.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block4-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} +.block4-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.kq-box{ + position: absolute; + top: 0; + width: 100%; + display: grid; + grid-template-columns: repeat(4, 1fr); + column-gap: 0.375rem; + height: 0.75rem; +} +.kq-box>.kx-item{ + width: 100%; + height: 100%; + background: linear-gradient( 180deg, rgba(1,32,56,0.4) 0%, rgba(10,58,92,0.7) 100%); + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} +.kq-box>.kx-item>.kx-item-tit{ + color: #ffffff; + font-size: 0.2rem; +} +.kq-box>.kx-item>.kx-item-num{ + + font-size: 0.25rem; +} + + +header { + width: 100%; + height: 1rem; + background-image: url(../images/01/top.png); + background-repeat: no-repeat; + background-position: left top; + background-size: 100% 0.7125rem; + display: grid; + grid-template-columns: 8.2625rem 1fr 8.2625rem; + position: relative; +} +.nav-box{ + width: 100%; + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} +.logo-img{ + width: 1.9375rem; + height: 0.5rem; + background-image: url(../images/logo.png); + background-repeat: no-repeat; + background-size: 100% 100%; + +} +.refresh-img{ + margin-left: 0.125rem; + background: url('../images/sprite.png') no-repeat 0 0; + width: 27px; + height: 26px; +} +.navs{ + width: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; +} +.navs>.nav{ + + font-size: 14px; + color: #FFFFFF; + text-align: center; + height: 0.375rem; + line-height: 0.375rem; + width: 1.4rem; + + background-repeat: no-repeat; + background-position: center; + background-size: 100% 100%; +} +.navs>.nav-l{ + background-image: url(../images/nav01.png); +} +.navs>.nav-l-active{ + background-image: url(../images/nav02.png); +} +.navs>.nav-r{ + background-image: url(../images/nav03.png); +} +.navs>.nav-r-active{ + background-image: url(../images/nav04.png); +} +.timer{ + height: 0.425rem; + width: 2.375rem; + margin-left: 0.125rem; + color: #FFFFFF; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; +} +.timer>p{ + font-size: 0.175rem; +} +.timer>p>span{ + margin-left: 0.125rem; +} +.timer>p>span:first-child{ + margin: 0; +} +.logo-tit { + font-weight: bold; + font-size: 0.4rem; + line-height: 0.575rem; + letter-spacing: 3px; + text-align: center; + font-style: normal; + text-transform: none; + background: linear-gradient(179.9998548775837deg, #E7EDF3 0%, #3EAEE3 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} +.set{ + position: absolute; + left: 0;right: 0; + bottom: 0; + height: 14px; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; +} +.set>div{ + margin: 0 0.125rem; + cursor: pointer; +} +@font-face { + font-family: "iconfont"; /* Project id 4891760 */ + src: url('../font/iconfont.woff2?t=1744614833234') format('woff2'), + url('../font/iconfont.woff?t=1744614833234') format('woff'), + url('../font/iconfont.ttf?t=1744614833234') format('truetype'); +} + +.iconfont { + font-family: "iconfont" !important; + font-size: 14px; + font-style: normal; + color: #FFFFFF; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-nav07:before { + content: "\e601"; +} + +.icon-nav06:before { + content: "\e602"; +} + +.icon-nav08:before { + content: "\e603"; +} + +.icon-nav05:before { + content: "\e604"; +} + +.icon-l09:before { + content: "\e605"; +} + +.icon-l10:before { + content: "\e606"; +} diff --git a/SUBQHSE/FineUIPro.Web/res/css/kqshowscreen.css b/SUBQHSE/FineUIPro.Web/res/css/kqshowscreen.css new file mode 100644 index 0000000..b63bcc2 --- /dev/null +++ b/SUBQHSE/FineUIPro.Web/res/css/kqshowscreen.css @@ -0,0 +1,167 @@ +* { + padding: 0; + margin: 0; + box-sizing: border-box; + font-size: .175rem; + color: #1ab1ff; +} + + *::-webkit-scrollbar { + display: none; + } + +html, body { + height: 100%; + width: 100%; + overflow: hidden; + background-color: #010a2c; +} + +.context { + height: calc(100% - 1rem); + width: 100%; + display: flex; + flex-direction: row; + padding: .25rem; + background-color: #010a2c; +} + +.site { + flex: 1; + padding: .125rem; + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.block { + height: calc((100% - .5rem) / 3); + width: 100%; + border: 2px solid #112A67; + border-radius: .125rem; +} + + .block1 > .title, + .block > .title { + padding: .125rem 0; + color: #00ffff; + font-weight: 700; + font-size: .25rem; + text-align: center; + line-height: .35rem; + } + + .block > .main { + height: calc(100% - .35rem); + width: 100%; + padding: .25rem; + } + +.context > .right { + /* padding-top: .25rem; */ +} + +.block1 { + height: calc((100% - .5rem) / 3 * 2 + .25rem); + background-color: #010E35; + border: 2px solid #112A67; + border-radius: .125rem; +} + +.xc { + background-image: url(../image/y01.png); + background-position: center; + background-repeat: no-repeat; + background-size: 60% 90%; + /* background-size: ; */ +} + + .xc > .number { + text-align: center; + color: #1ab1ff; + margin-top: .375rem; + font-size: .625rem; + font-weight: 700; + } + +.gsxc { + height: 100%; + width: 100%; +} + +ul { + width: 100%; + padding: 0 .375rem; +} + + ul > li { + padding: .1rem 0; + width: 100%; + list-style: none; + display: flex; + } + + ul > li > span { + flex: 1; + font-size: .325rem; + font-weight: 500; + } + +.info > ul > li > span:nth-child(2) { + flex: 2.5; +} + +.gsxc ul > li > span:nth-child(2) { + color: #00ffff; + font-size: .35rem; + font-weight: 600; +} + +.context .right { + flex: 2; +} + +.context > .right > .block1 > .top { + height: 100%; + display: flex; + flex-direction: row; +} + + .context > .right > .block1 > .top > .info { + width: 58%; + padding: .75rem .5rem .25rem; + } + + .context > .right > .block1 > .top > .photo { + width: 42%; + padding: .25rem 1.5rem 1rem 1.875rem; + } + + .context > .right > .block1 > .top > .photo > img { + width: 100%; + height: 100%; + } + +img { + user-drag: none; + user-select: none; + -moz-user-select: none; + -webkit-user-drag: none; + -webkit-user-select: none; + -ms-user-select: none; +} + +#gwnum { + padding: .125rem; +} + +.header { + height: 1rem; + background-image: url(../image/header-bg.png); + background-position: center; + background-size: 100% 100%; + background-repeat: no-repeat; + font-size: .5rem; + line-height: 1rem; + text-align: center; +} diff --git a/SUBQHSE/FineUIPro.Web/res/homecss/index.css b/SUBQHSE/FineUIPro.Web/res/homecss/index.css index af1f64a..75107a7 100644 --- a/SUBQHSE/FineUIPro.Web/res/homecss/index.css +++ b/SUBQHSE/FineUIPro.Web/res/homecss/index.css @@ -1 +1,1393 @@ -.container {padding: 0 0.5rem 0;width: 100%;display: grid;grid-template-columns: 6.25rem 1fr 6.25rem;grid-gap: 0.25rem;}.block3 {width: 2.2625rem;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block3-tit {width: 100%;height: 0.4125rem;background-image: url(../images/01/r11.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block3-tit>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block3-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.block2 {width: 3.75rem;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block2-tit {width: 100%;height: 0.4125rem;background-image: url(../images/01/r10.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block2-tit>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block2-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.block1 {width: 3rem;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block-tit1 {width: 100%;height: 0.4125rem;background-image: url(../images/01/r01.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block-tit1>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block1-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.block {width: 6.25rem;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block-tit {width: 100%;height: 0.4125rem;background-image: url(../images/01/l01.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block-tit>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.org-row {display: flex;flex-direction: row;justify-content: space-between;align-items: center;}.org-row>.org-box {display: flex;flex-direction: column;justify-content: center;align-items: center;}.org-row>.org-box>.org-box-label {font-weight: bold;font-size: 0.175rem;line-height: 1;text-transform: none;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.org-row>.org-box>.org-box-value {margin-bottom: 0.075rem;font-weight: bold;font-size: 0.25rem;line-height: 1;text-transform: none;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.org-row1 {width: 100%;display: flex;flex-direction: row;justify-content: space-between;align-items: center;}.org-row1>i {background: url('../images/sprite.png') no-repeat -98px -5px;width: 20px;height: 20px;}.org-row1>.row1-inner {width: calc(100% - 30px);display: flex;flex-direction: row;justify-content: flex-start;align-items: center;border-bottom: 1px solid #205481;}.org-row1>.row1-inner>.row1-tit {width: 1rem;font-weight: bold;font-size: 0.175rem;line-height: 0.175rem;text-transform: none;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.row1-inner-children {width: calc(100% - 1rem);display: flex;flex-direction: row;justify-content: space-between;}.row1-inner-children>p {flex: 1;font-size: 0.175rem;line-height: 1;}.row1-inner-children>p>span:first-child {font-size: 0.175rem;color: #C2D5E7;}.row1-inner-children>p>span:last-child {font-weight: bold;margin-left: 0.125rem;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#org {display: flex;flex-direction: column;justify-content: space-between;}#Early>.block-main {display: grid;grid-template-columns: 1fr 1fr 1fr 1fr;gap: 10px;}.early-box {padding: 0.1rem 0;height: 100%;width: 100%;background: linear-gradient(183deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);display: flex;flex-direction: column;justify-content: space-around;align-items: center;}.early-box-laber {text-align: center;font-size: 0.175rem;color: #C2D5E7;line-height: 1;}.early-box-value {font-size: 0.2rem;color: #94DAFF;line-height: 1;}#check>.block-main {display: grid;grid-template-columns: 1fr 1fr 1fr 1fr;gap: 0.125rem;}#educat>.block-tit, #check>.block-tit {display: flex;flex-direction: row;justify-content: flex-start;align-items: center;}#educat>.block-tit>div, #check>.block-tit>div {height: 0.4125rem;line-height: 0.4125rem;padding: 0 0.125rem;color: #ffffff;}#educat>.block-tit>div>span, #check>.block-tit>div>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#educat>.block-tit>.selected, #check>.block-tit>.selected {color: #ffffff;background: linear-gradient(180deg, rgba(38, 144, 181, 0.1) 0%, #00A5DB 100%);z-index: 9;}#check .early-box-value {font-size: 0.25rem;color: #70C3FF;}#check .early-box-value {font-size: 0.2rem;}#check .early-box {justify-content: space-around;}#check .early-box-value>span {font-size: 0.15rem;color: #C2D5E7;}#risk>.block-main {display: grid;grid-template-columns: 1fr 1fr 1fr 1fr;gap: 0.25rem;}#risk .box {display: flex;flex-direction: row;justify-content: flex-start;align-items: center;}#risk .box>i {background-size: 256px 256px;width: 40px;height: 35px;}#risk .box:nth-child(1)>i {background-image: url('../images/sprite.png');background-repeat: no-repeat;background-position: -132px -80px;}#risk .box:nth-child(2)>i {background-image: url('../images/sprite.png');background-repeat: no-repeat;background-position: 0 -80px;}#risk .box:nth-child(3)>i {background-image: url('../images/sprite.png');background-repeat: no-repeat;background-position: -43px -80px;}#risk .box:nth-child(4)>i {background-image: url('../images/sprite.png');background-repeat: no-repeat;background-position: -89px -80px;}.box-row>.box-row-label {font-weight: bold;font-size: 0.175rem;text-align: left;background: linear-gradient(180deg, #FFFFFF 0%, #EF3B49 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.box-row>.box-row-value {margin-top: 0.25rem;font-weight: bold;font-size: 0.175rem;text-align: left;color: #EF3B49;}#risk .box:nth-child(2)>.box-row>.box-row-label {background: linear-gradient(180deg, #FFFFFF 0%, #EF893B 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#risk .box:nth-child(2)>.box-row>.box-row-value {color: #EF893B;}#risk .box:nth-child(3)>.box-row>.box-row-label {background: linear-gradient(180deg, #FFFFFF 0%, #EFCB3B 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#risk .box:nth-child(3)>.box-row>.box-row-value {color: #EFCB3B;}#risk .box:nth-child(4)>.box-row>.box-row-label {background: linear-gradient(180deg, #FFFFFF 0%, #3B8CEF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#risk .box:nth-child(4)>.box-row>.box-row-value {color: #3B8CEF;}#tools>.block-main {display: grid;grid-template-columns: 1fr 1fr 1fr;gap: 0.25rem;}#tools .t-box {display: flex;flex-direction: column;justify-content: space-between;align-items: flex-start;}#tools .t-box-tit {display: flex;flex-direction: row;justify-content: flex-start;align-items: center;}#tools .t-box-tit>p {font-size: 0.175rem;color: #FFFFFF;}#tools .r-row {height: 0.375rem;padding-left: 0.125rem;width: 100%;display: flex;flex-direction: row;justify-content: flex-start;align-items: center;background-image: url(../images/01/l08.png);background-position: left top;background-repeat: no-repeat;background-size: 100% 100%;}#tools .r-row>.r-row-label {font-size: 0.175rem;color: #FFFFFF;margin-right: 0.125rem;}#tools .r-row>.r-row-value>span:first-child {font-weight: bold;font-size: 0.225rem;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #1AEDFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#tools .r-row>.r-row-value>span:last-child {font-size: 0.175rem;color: #C2D5E7;}#tzsb .box, #tzh .box {display: flex;flex-direction: row;justify-content: center;align-items: center;}#tzsb .box>i {background: url('../images/sprite.png') no-repeat -1px -279px;width: 59px;height: 40px;}#tzsb .box>.row>.row-lab, #tzh .box>.row>.row-lab {width: 1.375rem;height: 0.3rem;text-align: center;line-height: 0.3rem;font-weight: bold;font-size: 0.2rem;color: #FFFFFF;background-image: url(../images/01/r18.png);background-position: center;background-repeat: no-repeat;background-size: 100% 100%;margin-bottom: 0.125rem;}#tzsb .box>.row>.row-val>span:first-child, #tzh .box>.row>.row-val>span:first-child {font-weight: bold;font-size: 0.375rem;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}#tzsb .box>.row>.row-val>span:last-child, #tzh .box>.row>.row-val>span:last-child {font-size: 0.175rem;color: #C2D5E7;}#tzh .box>i {background: url('../images/sprite.png') no-repeat -72px -279px;width: 59px;height: 40px;}#tzsb .box>.row, #tzh .box>.row {margin-left: 0.125rem;}.educa-box {height: 100%;width: 100%;display: grid;grid-template-columns: 1fr 1.925rem 1fr;gap: 0.125rem;}.educa-box>.box1:nth-child(2) {width: 1.925rem;height: 1.325rem;background-image: url(../images/01/r04.png);background-position: center;background-repeat: no-repeat;background-size: 100% 100%;}.educa-box>.box1:nth-child(1), .educa-box>.box1:nth-child(3) {display: flex;flex-direction: column;justify-content: space-between;}.educa-box>.box1:nth-child(1) {align-items: flex-end;}.educa-box>.box1:nth-child(1)>.box1-row, .educa-box>.box1:nth-child(3)>.box1-row {display: flex;flex-direction: row;}.educa-box>.box1:nth-child(1)>.box1-row>i {width: 27px;height: 30px;background: url('../images/sprite.png') no-repeat -62px 0;}.educa-lab {font-weight: bold;font-size: 0.175rem;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;display: flex;flex-direction: column;justify-content: space-between;align-items: center;}.educa-val>span:first-child {font-weight: bold;font-size: 0.2rem;text-transform: none;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.educa-val>span:last-child {font-size: 0.175rem;color: #C2D5E7;}.educa-box>.box1:nth-child(1)>.box1-row:nth-child(2)>i {width: 27px;height: 30px;background: url('../images/sprite.png') no-repeat -127px 0;}.educa-box>.box1:nth-child(3)>.box1-row:nth-child(1)>i {width: 27px;height: 30px;background: url('../images/sprite.png') no-repeat -31px 0;}.educa-box>.box1:nth-child(3)>.box1-row:nth-child(2)>i {width: 27px;height: 30px;background: url('../images/sprite.png') no-repeat -163px 0;}.center {display: grid;grid-template-rows: 1fr 1.425rem 1.85rem 2.725rem;gap: 0.25rem;}.block4 {width: 100%;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block4-tit {width: 100%;height: 0.4125rem;background-image: url(../images/01/m07.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block4-tit>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block4-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.block5 {width: 5.5rem;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block5-tit {width: 100%;height: 0.4125rem;background-image: url(../images/01/m08.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block5-tit>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block5-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.block6 {width: 4.25rem;background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%);border: 2px solid;border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2;border-top: none;}.block6-tit {width: 100%;height: 0.4125rem;background-image: url(../images/01/m09.png);background-position: left top;background-size: 100% 100%;background-repeat: no-repeat;line-height: 0.4125rem;padding-left: 0.6rem;}.block6-tit>span {font-weight: bold;font-size: 0.2rem;color: #E4FBFF;text-align: left;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.block6-main {height: calc(100% - 0.4125rem);width: 100%;padding: 0.1875rem 0.25rem;}.map {width: 100%;}.wd-box {width: 1.7rem;height: 0.65rem;display: flex;flex-direction: row;align-items: center;}.wd-box>i {width: 36px;height: 40px;}.wd-box:nth-child(2n-1)>i {background: url('../images/sprite.png') no-repeat -200px 0;}.wd-box:nth-child(2n)>i {background: url('../images/sprite.png') no-repeat -246px 0;}.wd-row {height: 100%;display: flex;flex-direction: column;justify-content: space-between;align-items: center;}.wd-row>.wd-row-label {background-image: url(../images/01/r16.png);background-position: center;background-repeat: no-repeat;background-size: 100% 100%;width: 1.1375rem;height: 0.3rem;line-height: 0.3rem;text-align: center;font-weight: bold;font-size: 0.2rem;color: #FFFFFF;}.wd-row>.wd-row-value>span:first-child {font-weight: bold;font-size: 0.225rem;}.wd-row>.wd-row-value>span:last-child {font-size: 0.175rem;color: #C2D5E7;margin-left: 0.05rem;}.wd {display: flex;flex-direction: row;justify-content: space-between;align-items: center;}.wd-box:nth-child(2n-1)>.wd-row>.wd-row-value>span:first-child {background: linear-gradient(180deg, #FFFFFF 17%, #1AEDFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.wd-box:nth-child(2n)>.wd-row>.wd-row-value>span:first-child {background: linear-gradient(180deg, #FFFFFF 17%, #E7ACEB 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.yjgl {width: 100%;height: 100%;display: grid;grid-template-columns: 1fr 1fr;grid-template-rows: 1fr 1fr;row-gap: 0.125rem;column-gap: 0.25rem;}.yjgl>.yjgl-row {background-image: url(../images/01/m12.png);background-position: left top;background-repeat: no-repeat;background-size: 100% 100%;display: flex;flex-direction: row;justify-content: flex-start;align-items: center;padding: 0 0.125rem;}.yjgl>.yjgl-row>i {width: 30px;height: 27px;}.yjgl>.yjgl-row:nth-child(1)>i {background: url('../images/sprite.png') no-repeat 0 -236px;}.yjgl>.yjgl-row:nth-child(2)>i {background: url('../images/sprite.png') no-repeat -71px -237px;}.yjgl>.yjgl-row:nth-child(3)>i {background: url('../images/sprite.png') no-repeat -38px -236px;}.yjgl>.yjgl-row:nth-child(4)>i {background: url('../images/sprite.png') no-repeat -106px -237px;}.yjgl>.yjgl-row>h6 {margin-left: 0.1rem;}.yjgl>.yjgl-row>p {margin-left: 0.1rem;}.yjgl>.yjgl-row:nth-child(2n-1)>h6 {font-weight: bold;font-size: 0.175rem;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.yjgl>.yjgl-row:nth-child(2n)>h6 {font-weight: bold;font-size: 0.175rem;background: linear-gradient(180deg, #FFFFFF 0%, #D1A326 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.yjgl>.yjgl-row:nth-child(2n-1)>p {font-weight: bold;font-size: 0.225rem;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.yjgl>.yjgl-row:nth-child(2n)>p {font-weight: bold;font-size: 0.225rem;background: linear-gradient(180deg, #FFFFFF 0%, #D1A326 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.yjgl>.yjgl-row>p>span:last-child {margin-left: 2px;font-size: 0.175rem;}.gchf {height: 100%;display: grid;grid-template-columns: repeat(3, 1fr);column-gap: 0.2rem;}.gc-box {display: flex;flex-direction: column;justify-content: space-between;align-items: center;}.gc-box>i {background: url('../images/sprite.png') no-repeat -142px -238px;width: 34px;height: 26px }.gc-box>h6 {width: 100%;height: 0.325rem;line-height: 0.325rem;background-image: url(../images/01/r16.png);background-position: center;background-repeat: no-repeat;background-size: 100% 100%;font-weight: bold;font-size: 0.175rem;text-align: center;color: #befaff;}.gc-box>p>span:first-child {font-weight: bold;font-size: 0.225rem;text-align: center;background: linear-gradient(180deg, #FFFFFF 17%, #1AEDFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.gc-box>p>span:last-child {font-size: 0.175rem;color: #C2D5E7;}.byjl {height: 100%;display: flex;flex-direction: column;justify-content: space-around;align-items: center;}.byjl::-webkit-scrollbar {display: none;}.byjl-item {display: flex;flex-direction: row;justify-content: space-between;align-items: center;}.byjl-item>i {background: url('../images/sprite.png') no-repeat -181px -241px;width: 20px;height: 20px;}.byjl-item>h6 {font-weight: bold;font-size: 0.175rem;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;margin-left: 0.25rem;margin-right: 0.25rem;}.byjl-item>p>span:first-child {font-weight: bold;font-size: 0.2rem;background: linear-gradient(180deg, #FFFFFF 0%, #05937B 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.byjl-item>p>span:last-child {font-size: 0.175rem;color: #C2D5E7;}.byjl-item>.row {margin-left: 0.25rem;display: flex;flex-direction: row;justify-content: flex-start;align-items: center;}.byjl-item>.row>h6 {font-weight: bold;font-size: 0.175rem;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.byjl-item>.row>.bar {width: 2rem;height: 0.075rem;background-color: #173A55;margin-left: 0.125rem;}.byjl-item>.row>.bar>.bar-inner {height: 0.075rem;background: linear-gradient(90deg, #1478AD 0%, #34ECFE 100%);}.sgfa {height: 100%;display: grid;grid-template-columns: 1fr 1fr 1fr;grid-column: 0.05rem;}.sgfa-item {height: 100%;display: flex;flex-direction: column;justify-content: space-around;align-items: center;}.sgfa-item>i {width: 57px;height: 41px }.sgfa-item:nth-child(1)>i {background: url('../images/sprite.png') no-repeat -131px -47px;}.sgfa-item:nth-child(2)>i {background: url('../images/sprite.png') no-repeat -201px -49px;}.sgfa-item:nth-child(3)>i {background: url('../images/sprite.png') no-repeat -272px -48px;}.sgfa-item>h6 {height: 0.3rem;font-size: 0.175rem;line-height: 0.3rem;padding: 0 0.075rem;text-align: center;color: #77cdec;background-image: url(../images/01/r16.png);background-position: center;background-repeat: no-repeat;background-size: 100% 100%;}.sgfa-item:nth-child(1)>h6 {background-image: url(../images/01/r15.png);color: #fddc70;}.sgfa-item>p>span:first-child {font-weight: bold;color: #77cdec;}.sgfa-item:nth-child(1)>p>span:first-child {font-size: 0.225rem;text-align: center;color: #fddc70;}.sgfa-item>p>span:last-child {font-size: 0.175rem;color: #C2D5E7;}.xkz {height: 100%;display: grid;grid-template-columns: 1fr 1fr;grid-column: 0.1875rem;}.xkz-box {display: flex;flex-direction: column;justify-content: space-around;align-items: center;}.xkz-box>i {width: 30px;height: 35px;}.xkz-box:nth-child(1)>i {background: url('../images/sprite.png') no-repeat -301px -1px;}.xkz-box:nth-child(2)>i {background: url('../images/sprite.png') no-repeat -347px -2px;}.xkz-box>h6 {width: 100%;height: 0.325rem;text-align: center;line-height: 0.325rem;background-position: center;background-repeat: no-repeat;background-size: 100% 100%;font-size: 0.175rem;color: #FFFFFF;}.xkz-box:nth-child(1)>h6 {background-image: url(../images/01/r18.png);}.xkz-box:nth-child(2)>h6 {background-image: url(../images/01/r20.png);}.xkz-box:nth-child(1)>p {font-weight: bold;font-size: 0.225rem;background: linear-gradient(90deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.xkz-box:nth-child(2)>p {font-weight: bold;font-size: 0.225rem;background: linear-gradient(180deg, #FFFFFF 17%, #49FCE7 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.jlqj {display: grid;grid-template-columns: 1fr 78px 1fr;column-gap: 0.375rem;}.jlqj>i {background: url('../images/sprite.png') no-repeat 0 -326px;width: 78px;height: 84px;}.jlqj>.jlqj-box {height: 100%;display: flex;flex-direction: row;justify-content: center;align-items: center;}.jlqj>.jlqj-box>i {background: url('../images/sprite.png') no-repeat -339px -49px;width: 30px;height: 29px;}.jlqj-item {margin-left: 0.25rem;height: 100%;display: flex;flex-direction: column;justify-content: space-between;align-content: flex-start;}.jlqj-item>h6 {height: 0.35rem;line-height: .35rem;width: 1.075rem;text-align: center;background-image: url(../images/01/r23.png);background-position: center;background-repeat: no-repeat;background-size: 100% 100%;font-size: 0.2rem;color: #FFFFFF;}.jlqj-item>p>span:nth-child(2) {margin-left: 0.05rem;font-size: 0.175rem;color: #C2D5E7;}.jlqj-item>p>span:nth-child(1) {font-weight: bold;font-size: 0.3rem;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.jlqj>.jlqj-box:nth-of-type(2)>.jlqj-item>h6 {background-image: url(../images/01/r25.png);}.jlqj>.jlqj-box:nth-of-type(2)>i {background: url('../images/sprite.png') no-repeat -385px -49px;}.jlqj>.jlqj-box:nth-of-type(2)>.jlqj-item>p>span:first-child {background: linear-gradient(180deg, #FFFFFF 17%, #49FCE7 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.zhl {height: 100%;width: 100%;display: grid;grid-template-columns: 50% 50%;}.project-box {height: 0.625rem;width: 100%;display: grid;grid-template-columns: 1fr 1fr 1fr 1fr;}.p-item {display: flex;flex-direction: row;justify-content: flex-start;align-items: center;}.p-item>i {width: 55px;height: 50px;}.p-item:nth-child(1)>i {background: url('../images/sprite.png') no-repeat 0 -38px;}.p-item:nth-child(2)>i {background: url('../images/sprite.png') no-repeat 0 -103px;}.p-item:nth-child(3)>i {background: url('../images/sprite.png') no-repeat -60px -39px;}.p-item:nth-child(4)>i {background: url('../images/sprite.png') no-repeat -60px -102px;}.p-row {margin-left: 0.15rem;height: 100%;display: flex;flex-direction: column;justify-content: space-between;align-items: flex-start;}.p-item:nth-child(2n-1)>.p-row>h6 {font-weight: bold;font-size: 0.2rem;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.p-item:nth-child(2n-1)>.p-row>p {font-weight: bold;font-size: 0.3rem;background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.p-item:nth-child(2n-1)>.p-row>p>span:last-child {font-size: 0.15rem;}.p-item:nth-child(2n)>.p-row>h6 {font-weight: bold;font-size: 0.2rem;background: linear-gradient(180deg, #FFFFFF 17%, #FC6D49 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.p-item:nth-child(2n)>.p-row>p {font-weight: bold;font-size: 0.3rem;background: linear-gradient(180deg, #FFFFFF 17%, #FC6D49 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.p-item:nth-child(2n)>.p-row>p>span:last-child {font-size: 0.15rem;}.mapandvideo {height: calc(100% - 0.875rem);display: grid;grid-template-columns: 1fr 4.225rem;}#video {position: relative;padding: 0 0.125rem;background: linear-gradient( 183deg, rgba(1,32,56,0.4) 0%, rgba(10,58,92,0.7) 100%);}.v-tit {margin-top: 0.375rem;font-weight: bold;text-align: center;font-size: 0.225rem;color: #E4FBFF;background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.v-player{margin-top: 0.2rem;height: 2.725rem;width: 100%;background-color: rgba(0, 0, 0, .4);}#video>p{position: absolute;bottom: 0.125rem;left: 0.125rem;right: 0.125rem;display: flex;flex-direction: row;justify-content: space-between;align-items: center;color: #7ECEF7;font-size: 0.15rem;}.a-box1{display: flex;flex-direction: column;justify-content: flex-start;align-items: center;}.a-box1>h6{font-weight: bold;font-size: 0.2rem;text-align: center;background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;}.a-box1>p{background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%);-webkit-background-clip: text;-webkit-text-fill-color: transparent;margin-top: 0.125rem;}.a-box1>p>span:first-child{font-size: 0.3rem;font-weight: bold;} \ No newline at end of file +.container { + padding: 0 0.5rem 0; + width: 100%; + display: grid; + grid-template-columns: 6.25rem 1fr 6.25rem; + grid-gap: 0.25rem; +} + +.block3 { + width: 2.2625rem; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block3-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/r11.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block3-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block3-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.block2 { + width: 3.75rem; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block2-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/r10.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block2-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block2-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.block1 { + width: 3rem; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block-tit1 { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/r01.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block-tit1>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block1-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.block { + width: 6.25rem; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/l01.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.org-row { + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; +} + +.org-row>.org-box { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; +} + +.org-row>.org-box>.org-box-label { + font-weight: bold; + font-size: 0.175rem; + line-height: 1; + text-transform: none; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.org-row>.org-box>.org-box-value { + margin-bottom: 0.075rem; + font-weight: bold; + font-size: 0.25rem; + line-height: 1; + text-transform: none; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.org-row1 { + width: 100%; + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; +} + +.org-row1>i { + background: url('../images/sprite.png') no-repeat -98px -5px; + width: 20px; + height: 20px; +} + +.org-row1>.row1-inner { + width: calc(100% - 30px); + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + border-bottom: 1px solid #205481; +} + +.org-row1>.row1-inner>.row1-tit { + width: 1rem; + font-weight: bold; + font-size: 0.175rem; + line-height: 0.175rem; + text-transform: none; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.row1-inner-children { + width: calc(100% - 1rem); + display: flex; + flex-direction: row; + justify-content: space-between; +} + +.row1-inner-children>p { + flex: 1; + font-size: 0.175rem; + line-height: 1; +} + +.row1-inner-children>p>span:first-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +.row1-inner-children>p>span:last-child { + font-weight: bold; + margin-left: 0.125rem; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#org { + display: flex; + flex-direction: column; + justify-content: space-between; +} + +#Early>.block-main { + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr; + gap: 10px; +} + +.early-box { + padding: 0.1rem 0; + height: 100%; + width: 100%; + background: linear-gradient(183deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + display: flex; + flex-direction: column; + justify-content: space-around; + align-items: center; +} + +.early-box-laber { + text-align: center; + font-size: 0.175rem; + color: #C2D5E7; + line-height: 1; +} + +.early-box-value { + font-size: 0.2rem; + color: #94DAFF; + line-height: 1; +} + +#check>.block-main { + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr; + gap: 0.125rem; +} + +#educat>.block-tit, +#check>.block-tit { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} + +#educat>.block-tit>div, +#check>.block-tit>div { + height: 0.4125rem; + line-height: 0.4125rem; + padding: 0 0.125rem; + color: #ffffff; +} + +#educat>.block-tit>div>span, +#check>.block-tit>div>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#educat>.block-tit>.selected, +#check>.block-tit>.selected { + color: #ffffff; + background: linear-gradient(180deg, rgba(38, 144, 181, 0.1) 0%, #00A5DB 100%); + z-index: 9; +} + +#check .early-box-value { + font-size: 0.25rem; + color: #70C3FF; +} + +#check .early-box-value { + font-size: 0.2rem; +} + +#check .early-box { + justify-content: space-around; +} + +#check .early-box-value>span { + font-size: 0.15rem; + color: #C2D5E7; +} + +#risk>.block-main { + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr; + gap: 0.25rem; +} + +#risk .box { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} + +#risk .box>i { + background-size: 256px 256px; + width: 40px; + height: 35px; +} + +#risk .box:nth-child(1)>i { + background-image: url('../images/sprite.png'); + background-repeat: no-repeat; + background-position: -132px -80px; +} + +#risk .box:nth-child(2)>i { + background-image: url('../images/sprite.png'); + background-repeat: no-repeat; + background-position: 0 -80px; +} + +#risk .box:nth-child(3)>i { + background-image: url('../images/sprite.png'); + background-repeat: no-repeat; + background-position: -43px -80px; +} + +#risk .box:nth-child(4)>i { + background-image: url('../images/sprite.png'); + background-repeat: no-repeat; + background-position: -89px -80px; +} + +.box-row>.box-row-label { + font-weight: bold; + font-size: 0.175rem; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 0%, #EF3B49 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.box-row>.box-row-value { + margin-top: 0.25rem; + font-weight: bold; + font-size: 0.175rem; + text-align: left; + color: #EF3B49; +} + +#risk .box:nth-child(2)>.box-row>.box-row-label { + background: linear-gradient(180deg, #FFFFFF 0%, #EF893B 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#risk .box:nth-child(2)>.box-row>.box-row-value { + color: #EF893B; +} + +#risk .box:nth-child(3)>.box-row>.box-row-label { + background: linear-gradient(180deg, #FFFFFF 0%, #EFCB3B 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#risk .box:nth-child(3)>.box-row>.box-row-value { + color: #EFCB3B; +} + +#risk .box:nth-child(4)>.box-row>.box-row-label { + background: linear-gradient(180deg, #FFFFFF 0%, #3B8CEF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#risk .box:nth-child(4)>.box-row>.box-row-value { + color: #3B8CEF; +} + +#tools>.block-main { + display: grid; + grid-template-columns: 1fr 1fr 1fr; + gap: 0.25rem; +} + +#tools .t-box { + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; +} + +#tools .t-box-tit { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} + +#tools .t-box-tit>p { + font-size: 0.175rem; + color: #FFFFFF; +} + +#tools .r-row { + height: 0.375rem; + padding-left: 0.125rem; + width: 100%; + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + background-image: url(../images/01/l08.png); + background-position: left top; + background-repeat: no-repeat; + background-size: 100% 100%; +} + +#tools .r-row>.r-row-label { + font-size: 0.175rem; + color: #FFFFFF; + margin-right: 0.125rem; +} + +#tools .r-row>.r-row-value>span:first-child { + font-weight: bold; + font-size: 0.225rem; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #1AEDFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#tools .r-row>.r-row-value>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +#tzsb .box, +#tzh .box { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; +} + +#tzsb .box>i { + background: url('../images/sprite.png') no-repeat -1px -279px; + width: 59px; + height: 40px; +} + +#tzsb .box>.row>.row-lab, +#tzh .box>.row>.row-lab { + width: 1.375rem; + height: 0.3rem; + text-align: center; + line-height: 0.3rem; + font-weight: bold; + font-size: 0.2rem; + color: #FFFFFF; + background-image: url(../images/01/r18.png); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + margin-bottom: 0.125rem; +} + +#tzsb .box>.row>.row-val>span:first-child, +#tzh .box>.row>.row-val>span:first-child { + font-weight: bold; + font-size: 0.375rem; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +#tzsb .box>.row>.row-val>span:last-child, +#tzh .box>.row>.row-val>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +#tzh .box>i { + background: url('../images/sprite.png') no-repeat -72px -279px; + width: 59px; + height: 40px; +} + +#tzsb .box>.row, +#tzh .box>.row { + margin-left: 0.125rem; +} + +.educa-box { + height: 100%; + width: 100%; + display: grid; + grid-template-columns: 1fr 1.925rem 1fr; + gap: 0.125rem; +} + +.educa-box>.box1:nth-child(2) { + width: 1.925rem; + height: 1.325rem; + background-image: url(../images/01/r04.png); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; +} + +.educa-box>.box1:nth-child(1), +.educa-box>.box1:nth-child(3) { + display: flex; + flex-direction: column; + justify-content: space-between; +} + +.educa-box>.box1:nth-child(1) { + align-items: flex-end; +} + +.educa-box>.box1:nth-child(1)>.box1-row, +.educa-box>.box1:nth-child(3)>.box1-row { + display: flex; + flex-direction: row; +} + +.educa-box>.box1:nth-child(1)>.box1-row>i { + width: 27px; + height: 30px; + background: url('../images/sprite.png') no-repeat -62px 0; +} + +.educa-lab { + font-weight: bold; + font-size: 0.175rem; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: center; +} + +.educa-val>span:first-child { + font-weight: bold; + font-size: 0.2rem; + text-transform: none; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.educa-val>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +.educa-box>.box1:nth-child(1)>.box1-row:nth-child(2)>i { + width: 27px; + height: 30px; + background: url('../images/sprite.png') no-repeat -127px 0; +} + +.educa-box>.box1:nth-child(3)>.box1-row:nth-child(1)>i { + width: 27px; + height: 30px; + background: url('../images/sprite.png') no-repeat -31px 0; +} + +.educa-box>.box1:nth-child(3)>.box1-row:nth-child(2)>i { + width: 27px; + height: 30px; + background: url('../images/sprite.png') no-repeat -163px 0; +} + +.center { + display: grid; + grid-template-rows: 1fr 1.425rem 1.85rem 2.725rem; + gap: 0.25rem; +} + +.block4 { + width: 100%; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block4-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/m07.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block4-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block4-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.block5 { + width: 5.5rem; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block5-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/m08.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block5-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block5-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.block6 { + width: 4.25rem; + background: linear-gradient(180deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); + border: 2px solid; + border-image: linear-gradient(176deg, rgba(78, 167, 203, 0), rgba(78, 167, 203, 1)) 2 2; + border-top: none; +} + +.block6-tit { + width: 100%; + height: 0.4125rem; + background-image: url(../images/01/m09.png); + background-position: left top; + background-size: 100% 100%; + background-repeat: no-repeat; + line-height: 0.4125rem; + padding-left: 0.6rem; +} + +.block6-tit>span { + font-weight: bold; + font-size: 0.2rem; + color: #E4FBFF; + text-align: left; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.block6-main { + height: calc(100% - 0.4125rem); + width: 100%; + padding: 0.1875rem 0.25rem; +} + +.map { + width: 100%; +} + +.wd-box { + width: 1.7rem; + height: 0.65rem; + display: flex; + flex-direction: row; + align-items: center; +} + +.wd-box>i { + width: 36px; + height: 40px; +} + +.wd-box:nth-child(2n-1)>i { + background: url('../images/sprite.png') no-repeat -200px 0; +} + +.wd-box:nth-child(2n)>i { + background: url('../images/sprite.png') no-repeat -246px 0; +} + +.wd-row { + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: center; +} + +.wd-row>.wd-row-label { + background-image: url(../images/01/r16.png); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + width: 1.1375rem; + height: 0.3rem; + line-height: 0.3rem; + text-align: center; + font-weight: bold; + font-size: 0.2rem; + color: #FFFFFF; +} + +.wd-row>.wd-row-value>span:first-child { + font-weight: bold; + font-size: 0.225rem; +} + +.wd-row>.wd-row-value>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; + margin-left: 0.05rem; +} + +.wd { + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; +} + +.wd-box:nth-child(2n-1)>.wd-row>.wd-row-value>span:first-child { + background: linear-gradient(180deg, #FFFFFF 17%, #1AEDFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.wd-box:nth-child(2n)>.wd-row>.wd-row-value>span:first-child { + background: linear-gradient(180deg, #FFFFFF 17%, #E7ACEB 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.yjgl { + width: 100%; + height: 100%; + display: grid; + grid-template-columns: 1fr 1fr; + grid-template-rows: 1fr 1fr; + row-gap: 0.125rem; + column-gap: 0.25rem; +} + +.yjgl>.yjgl-row { + background-image: url(../images/01/m12.png); + background-position: left top; + background-repeat: no-repeat; + background-size: 100% 100%; + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; + padding: 0 0.125rem; +} + +.yjgl>.yjgl-row>i { + width: 30px; + height: 27px; +} + +.yjgl>.yjgl-row:nth-child(1)>i { + background: url('../images/sprite.png') no-repeat 0 -236px; +} + +.yjgl>.yjgl-row:nth-child(2)>i { + background: url('../images/sprite.png') no-repeat -71px -237px; +} + +.yjgl>.yjgl-row:nth-child(3)>i { + background: url('../images/sprite.png') no-repeat -38px -236px; +} + +.yjgl>.yjgl-row:nth-child(4)>i { + background: url('../images/sprite.png') no-repeat -106px -237px; +} + +.yjgl>.yjgl-row>h6 { + margin-left: 0.1rem; +} + +.yjgl>.yjgl-row>p { + margin-left: 0.1rem; +} + +.yjgl>.yjgl-row:nth-child(2n-1)>h6 { + font-weight: bold; + font-size: 0.175rem; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.yjgl>.yjgl-row:nth-child(2n)>h6 { + font-weight: bold; + font-size: 0.175rem; + background: linear-gradient(180deg, #FFFFFF 0%, #D1A326 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.yjgl>.yjgl-row:nth-child(2n-1)>p { + font-weight: bold; + font-size: 0.225rem; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.yjgl>.yjgl-row:nth-child(2n)>p { + font-weight: bold; + font-size: 0.225rem; + background: linear-gradient(180deg, #FFFFFF 0%, #D1A326 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.yjgl>.yjgl-row>p>span:last-child { + margin-left: 2px; + font-size: 0.175rem; +} + +.gchf { + height: 100%; + display: grid; + grid-template-columns: repeat(3, 1fr); + column-gap: 0.2rem; +} + +.gc-box { + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: center; +} + +.gc-box>i { + background: url('../images/sprite.png') no-repeat -142px -238px; + width: 34px; + height: 26px +} + +.gc-box>h6 { + width: 100%; + height: 0.325rem; + line-height: 0.325rem; + background-image: url(../images/01/r16.png); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + font-weight: bold; + font-size: 0.175rem; + text-align: center; + color: #befaff; +} + +.gc-box>p>span:first-child { + font-weight: bold; + font-size: 0.225rem; + text-align: center; + background: linear-gradient(180deg, #FFFFFF 17%, #1AEDFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.gc-box>p>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +.byjl { + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-around; + align-items: center; +} + +.byjl::-webkit-scrollbar { + display: none; +} + +.byjl-item { + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; +} + +.byjl-item>i { + background: url('../images/sprite.png') no-repeat -181px -241px; + width: 20px; + height: 20px; +} + +.byjl-item>h6 { + font-weight: bold; + font-size: 0.175rem; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + margin-left: 0.25rem; + margin-right: 0.25rem; +} + +.byjl-item>p>span:first-child { + font-weight: bold; + font-size: 0.2rem; + background: linear-gradient(180deg, #FFFFFF 0%, #05937B 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.byjl-item>p>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +.byjl-item>.row { + margin-left: 0.25rem; + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} + +.byjl-item>.row>h6 { + font-weight: bold; + font-size: 0.175rem; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.byjl-item>.row>.bar { + width: 2rem; + height: 0.075rem; + background-color: #173A55; + margin-left: 0.125rem; +} + +.byjl-item>.row>.bar>.bar-inner { + height: 0.075rem; + background: linear-gradient(90deg, #1478AD 0%, #34ECFE 100%); +} + +.sgfa { + height: 100%; + display: grid; + grid-template-columns: 1fr 1fr 1fr; + grid-column: 0.05rem; +} + +.sgfa-item { + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-around; + align-items: center; +} + +.sgfa-item>i { + width: 57px; + height: 41px +} + +.sgfa-item:nth-child(1)>i { + background: url('../images/sprite.png') no-repeat -131px -47px; +} + +.sgfa-item:nth-child(2)>i { + background: url('../images/sprite.png') no-repeat -201px -49px; +} + +.sgfa-item:nth-child(3)>i { + background: url('../images/sprite.png') no-repeat -272px -48px; +} + +.sgfa-item>h6 { + height: 0.3rem; + font-size: 0.175rem; + line-height: 0.3rem; + padding: 0 0.075rem; + text-align: center; + color: #77cdec; + background-image: url(../images/01/r16.png); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; +} + +.sgfa-item:nth-child(1)>h6 { + background-image: url(../images/01/r15.png); + color: #fddc70; +} + +.sgfa-item>p>span:first-child { + font-weight: bold; + color: #77cdec; +} + +.sgfa-item:nth-child(1)>p>span:first-child { + font-size: 0.225rem; + text-align: center; + color: #fddc70; +} + +.sgfa-item>p>span:last-child { + font-size: 0.175rem; + color: #C2D5E7; +} + +.xkz { + height: 100%; + display: grid; + grid-template-columns: 1fr 1fr; + grid-column: 0.1875rem; +} + +.xkz-box { + display: flex; + flex-direction: column; + justify-content: space-around; + align-items: center; +} + +.xkz-box>i { + width: 30px; + height: 35px; +} + +.xkz-box:nth-child(1)>i { + background: url('../images/sprite.png') no-repeat -301px -1px; +} + +.xkz-box:nth-child(2)>i { + background: url('../images/sprite.png') no-repeat -347px -2px; +} + +.xkz-box>h6 { + width: 100%; + height: 0.325rem; + text-align: center; + line-height: 0.325rem; + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + font-size: 0.175rem; + color: #FFFFFF; +} + +.xkz-box:nth-child(1)>h6 { + background-image: url(../images/01/r18.png); +} + +.xkz-box:nth-child(2)>h6 { + background-image: url(../images/01/r20.png); +} + +.xkz-box:nth-child(1)>p { + font-weight: bold; + font-size: 0.225rem; + background: linear-gradient(90deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.xkz-box:nth-child(2)>p { + font-weight: bold; + font-size: 0.225rem; + background: linear-gradient(180deg, #FFFFFF 17%, #49FCE7 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.jlqj { + display: grid; + grid-template-columns: 1fr 78px 1fr; + column-gap: 0.375rem; +} + +.jlqj>i { + background: url('../images/sprite.png') no-repeat 0 -326px; + width: 78px; + height: 84px; +} + +.jlqj>.jlqj-box { + height: 100%; + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; +} + +.jlqj>.jlqj-box>i { + background: url('../images/sprite.png') no-repeat -339px -49px; + width: 30px; + height: 29px; +} + +.jlqj-item { + margin-left: 0.25rem; + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + align-content: flex-start; +} + +.jlqj-item>h6 { + height: 0.35rem; + line-height: .35rem; + width: 1.075rem; + text-align: center; + background-image: url(../images/01/r23.png); + background-position: center; + background-repeat: no-repeat; + background-size: 100% 100%; + font-size: 0.2rem; + color: #FFFFFF; +} + +.jlqj-item>p>span:nth-child(2) { + margin-left: 0.05rem; + font-size: 0.175rem; + color: #C2D5E7; +} + +.jlqj-item>p>span:nth-child(1) { + font-weight: bold; + font-size: 0.3rem; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.jlqj>.jlqj-box:nth-of-type(2)>.jlqj-item>h6 { + background-image: url(../images/01/r25.png); +} + +.jlqj>.jlqj-box:nth-of-type(2)>i { + background: url('../images/sprite.png') no-repeat -385px -49px; +} + +.jlqj>.jlqj-box:nth-of-type(2)>.jlqj-item>p>span:first-child { + background: linear-gradient(180deg, #FFFFFF 17%, #49FCE7 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.zhl { + height: 100%; + width: 100%; + display: grid; + grid-template-columns: 50% 50%; +} + +.project-box { + height: 0.625rem; + width: 100%; + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr; +} + +.p-item { + display: flex; + flex-direction: row; + justify-content: flex-start; + align-items: center; +} + +.p-item>i { + width: 55px; + height: 50px; +} + +.p-item:nth-child(2)>i { + background: url('../images/sprite.png') no-repeat 0 -38px; +} + +.p-item:nth-child(1)>i { + background: url('../images/rgs.png') no-repeat 0 0; +} + +.p-item:nth-child(3)>i { + background: url('../images/sprite.png') no-repeat -60px -39px; +} + +.p-item:nth-child(4)>i { + background: url('../images/sprite.png') no-repeat -60px -102px; +} + +.p-row { + margin-left: 0.15rem; + height: 100%; + display: flex; + flex-direction: column; + justify-content: space-between; + align-items: flex-start; +} + +.p-item:nth-child(2n-1)>.p-row>h6 { + font-weight: bold; + font-size: 0.2rem; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.p-item:nth-child(2n-1)>.p-row>p { + font-weight: bold; + font-size: 0.3rem; + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.p-item:nth-child(2n-1)>.p-row>p>span:last-child { + font-size: 0.15rem; +} + +.p-item:nth-child(2n)>.p-row>h6 { + font-weight: bold; + font-size: 0.2rem; + background: linear-gradient(180deg, #FFFFFF 17%, #FC6D49 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.p-item:nth-child(2n)>.p-row>p { + font-weight: bold; + font-size: 0.3rem; + background: linear-gradient(180deg, #FFFFFF 17%, #FC6D49 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.p-item:nth-child(2n)>.p-row>p>span:last-child { + font-size: 0.15rem; +} + +.mapandvideo { + height: calc(100% - 0.875rem); + display: grid; + grid-template-columns: 1fr 4.225rem; +} + +#video { + position: relative; + padding: 0 0.125rem; + background: linear-gradient(183deg, rgba(1, 32, 56, 0.4) 0%, rgba(10, 58, 92, 0.7) 100%); +} + +.v-tit { + margin-top: 0.375rem; + font-weight: bold; + text-align: center; + font-size: 0.225rem; + color: #E4FBFF; + background: linear-gradient(180deg, #FFFFFF 17%, #8CEEFF 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.v-player { + margin-top: 0.2rem; + height: 2.725rem; + width: 100%; + background-color: rgba(0, 0, 0, .4); +} + +#video>p { + position: absolute; + bottom: 0.125rem; + left: 0.125rem; + right: 0.125rem; + display: flex; + flex-direction: row; + justify-content: space-between; + align-items: center; + color: #7ECEF7; + font-size: 0.15rem; +} + +.a-box1 { + display: flex; + flex-direction: column; + justify-content: flex-start; + align-items: center; +} + +.a-box1>h6 { + font-weight: bold; + font-size: 0.2rem; + text-align: center; + background: linear-gradient(180deg, #FFFFFF 0%, #26A3D1 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; +} + +.a-box1>p { + background: linear-gradient(180deg, #FFFFFF 17%, #FCC349 100%); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + margin-top: 0.125rem; +} + +.a-box1>p>span:first-child { + font-size: 0.3rem; + font-weight: bold; +} \ No newline at end of file diff --git a/SUBQHSE/FineUIPro.Web/res/images/rgs.png b/SUBQHSE/FineUIPro.Web/res/images/rgs.png new file mode 100644 index 0000000000000000000000000000000000000000..6305d7eea0cc9ee486b7bd54593c55fa99e6437b GIT binary patch literal 1288 zcmV+j1^4=iP)-QV=Os+DMU71d>pgDrra&``$AlmEDA-1Sv&+q@*B?pPNu5QhuZqP$s0Y zt0eY&&rSg;pn?JrP*Bm*LIDLge6x2uUfYS-ytOHX;1p8I0CM*(0)S4ik@BL10}mTHM2zftvtdgLjz75berUIVxr6#3Nx zC=3=NHtmarX556I|1z2{KiwBh!VB@vy1WRhj98`pS2PC(wQslwTrm z=FHZ;3LvA`tvRDL<0Fh4ygOt7W#uDkCRQD%t2S`b8e)vl|JEe@n(+lw1yD2`lwt~C z(knGxftPy)a4O;e$)9ul^G?ep!H1?vnubu*?6lF=yaG7R?a=8Khm{^cEfT?prio|< z&}7+Wn}SfP8S|wF;2u5j$l=Q}hKT`?erFc+EuJv{kbZg#B;aqLyomBkS)cu=>}*|q zA^_mv4@9y7`Vley860~LgeuLTJPX;c#K|V!w8l5%Dqbi@BWq?=b2s3f>FCvNZs3VtY6| zr~E~!JNOGPNVnA~?hfvOU)2puOy^W)bSOc{SBE6D#d$UdRdAs9qub9ei1mEh|d%hrAfd*&VXhVZ+l&UDLoFyjxQ(77zw&=}lb z2$6S4GfkP0LiyC@O%i#_>ymKGE0AUPZE%DJ!r`pd14d8Z3L%Ax?gQ8bsyhHk=#eQW zbjtWWGCaTe9|>JHbD@jI?}ouXFg2zNNCcZ!2U86pmWPn%7rs(UKfU5Ig3k;imf8_! zRv($4DX)Y+#m%f%BBU#&de+SJ1fll5)eEKqfYXh2;$Y(uokV?U&qT$KNkJ496qs2z zG5yY`aMooR>35ETUr;%fSL%5-2dm0e0iYT{s-Lx2mERN97@^Nq%CZkI5l^hy#kO3A zv+j+INbZ7PfzFcY5IsYE5u5pXATzcWfVSdEa1n-|5Xm>_wEBmI&lvj0h4QgdJ1a zACE0Sy${caDta!05)0zmuNF3l#Op8)1_?hf4>8Tb?6&!POyWv^X~J~05h y@NHKr2Ohu+00030|5)#*761SM21!IgR09BEdB}gQL76-N0000