1、项目级看板补充月计划完成情况和周计划完成情况
This commit is contained in:
parent
074fc70d96
commit
f91524d293
|
@ -1,8 +1,7 @@
|
|||
using System;
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace BLL
|
||||
{
|
||||
|
@ -20,7 +19,7 @@ namespace BLL
|
|||
/// <returns></returns>
|
||||
public static Model.JDGL_WeekPlan GetWeekPlanById(string WeekPlanId)
|
||||
{
|
||||
return Funs.DB.JDGL_WeekPlan.FirstOrDefault(e => e.WeekPlanId == WeekPlanId);
|
||||
return db.JDGL_WeekPlan.FirstOrDefault(e => e.WeekPlanId == WeekPlanId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -30,7 +29,7 @@ namespace BLL
|
|||
/// <returns></returns>
|
||||
public static List<Model.JDGL_WeekPlan> GetWeekPlansByWeeks(string projectId, string weekNo)
|
||||
{
|
||||
return (from x in Funs.DB.JDGL_WeekPlan where x.ProjectId == projectId && x.WeekNo == weekNo select x).ToList();
|
||||
return (from x in db.JDGL_WeekPlan where x.ProjectId == projectId && x.WeekNo == weekNo select x).ToList();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -39,7 +38,6 @@ namespace BLL
|
|||
/// <param name="WeekPlan"></param>
|
||||
public static void AddWeekPlan(Model.JDGL_WeekPlan WeekPlan)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.JDGL_WeekPlan newWeekPlan = new Model.JDGL_WeekPlan
|
||||
{
|
||||
WeekPlanId = WeekPlan.WeekPlanId,
|
||||
|
@ -69,7 +67,6 @@ namespace BLL
|
|||
/// <param name="WeekPlan"></param>
|
||||
public static void UpdateWeekPlan(Model.JDGL_WeekPlan WeekPlan)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.JDGL_WeekPlan newWeekPlan = db.JDGL_WeekPlan.FirstOrDefault(e => e.WeekPlanId == WeekPlan.WeekPlanId);
|
||||
if (newWeekPlan != null)
|
||||
{
|
||||
|
@ -95,7 +92,6 @@ namespace BLL
|
|||
/// <param name="WeekPlanId"></param>
|
||||
public static void DeleteWeekPlanByWeekPlanId(string WeekPlanId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var q = (from x in db.JDGL_WeekPlan where x.WeekPlanId == WeekPlanId select x).FirstOrDefault();
|
||||
if (q != null)
|
||||
{
|
||||
|
@ -104,13 +100,24 @@ namespace BLL
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 根据当前时间获取上一个周计划
|
||||
/// </summary>
|
||||
/// <param name="projectId"></param>
|
||||
/// <returns></returns>
|
||||
public static JDGL_WeekPlan GetLastWeekPlan(string projectId)
|
||||
{
|
||||
return (from x in db.JDGL_WeekPlan where x.ProjectId == projectId && DateTime.Now > ((DateTime)x.EndDate).AddDays(1) orderby x.EndDate select x).FirstOrDefault();
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 根据主键删除周计划情况
|
||||
/// </summary>
|
||||
/// <param name="WeekPlanId"></param>
|
||||
/// <param name="projectId"></param>
|
||||
/// <param name="weekNo"></param>
|
||||
public static void DeleteAllWeekPlan(string projectId, string weekNo)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var q = from x in db.JDGL_WeekPlan where x.ProjectId == projectId && x.WeekNo == weekNo select x;
|
||||
if (q != null)
|
||||
{
|
||||
|
@ -118,5 +125,17 @@ namespace BLL
|
|||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 获取周计划下责任单位Id
|
||||
/// </summary>
|
||||
/// <param name="projectId"></param>
|
||||
/// <returns></returns>
|
||||
public static List<string> GetWeekPlanUnitIdListByProjectIdWeekNo(string projectId)
|
||||
{
|
||||
var lstUnit = (from x in db.JDGL_WeekPlan where x.ProjectId == projectId orderby x.UnitId select x.UnitId).Distinct().ToList();
|
||||
return lstUnit;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1340,4 +1340,12 @@
|
|||
<value>Up to standard</value>
|
||||
<comment>合格</comment>
|
||||
</data>
|
||||
<data name="mainProject2_MonthPlanDone" xml:space="preserve">
|
||||
<value>Completion status of monthly plan</value>
|
||||
<comment>月计划完成情况</comment>
|
||||
</data>
|
||||
<data name="mainProject2_WeekPlanDone" xml:space="preserve">
|
||||
<value>Completion status of weekly plan</value>
|
||||
<comment>周计划完成情况</comment>
|
||||
</data>
|
||||
</root>
|
|
@ -1185,4 +1185,10 @@
|
|||
<data name="Up_to_standard" xml:space="preserve">
|
||||
<value>合格</value>
|
||||
</data>
|
||||
<data name="mainProject2_MonthPlanDone" xml:space="preserve">
|
||||
<value>月计划完成情况</value>
|
||||
</data>
|
||||
<data name="mainProject2_WeekPlanDone" xml:space="preserve">
|
||||
<value>周计划完成情况</value>
|
||||
</data>
|
||||
</root>
|
|
@ -1185,4 +1185,10 @@
|
|||
<data name="Up_to_standard" xml:space="preserve">
|
||||
<value>合格</value>
|
||||
</data>
|
||||
<data name="mainProject2_MonthPlanDone" xml:space="preserve">
|
||||
<value>月计划完成情况</value>
|
||||
</data>
|
||||
<data name="mainProject2_WeekPlanDone" xml:space="preserve">
|
||||
<value>周计划完成情况</value>
|
||||
</data>
|
||||
</root>
|
File diff suppressed because it is too large
Load Diff
|
@ -80,7 +80,7 @@ namespace FineUIPro.Web.JDGL.Check
|
|||
}
|
||||
else
|
||||
{
|
||||
this.txtWeekNo.Text = "0";
|
||||
this.txtWeekNo.Text = "1";
|
||||
//this.txtStartDate.Text = DateTime.Now.ToString("yyyy-MM-dd");
|
||||
//this.txtEndDate.Text = DateTime.Now.AddDays(6).ToString("yyyy-MM-dd");
|
||||
}
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using BLL;
|
||||
using NPOI.SS.UserModel;
|
||||
using NPOI.SS.Util;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
@ -496,7 +497,7 @@ namespace FineUIPro.Web.PZHGL.GJSX
|
|||
int i = 2;
|
||||
for (int j = 0; j < tb.Rows.Count; j++)
|
||||
{
|
||||
string state = tb.Rows[j]["State"].ToString();
|
||||
string state = tb.Rows[j]["State"].ToString().Trim();
|
||||
string createDate = string.Empty;
|
||||
if (tb.Rows[j]["CreateDate"] != DBNull.Value)
|
||||
{
|
||||
|
@ -534,7 +535,23 @@ namespace FineUIPro.Web.PZHGL.GJSX
|
|||
cell.CellStyle = cellStyle;
|
||||
cell.SetCellValue(tb.Rows[j]["GJSXTypeName"].ToString());
|
||||
cell = row.CreateCell(6);
|
||||
cell.CellStyle = cellStyle;
|
||||
var stateCellStyle = cellStyle;
|
||||
//if (state == "0")
|
||||
//{
|
||||
// stateCellStyle.FillForegroundColor = IndexedColors.Green.Index;
|
||||
// //stateCellStyle.FillBackgroundColor = IndexedColors.Green.Index;
|
||||
//}
|
||||
//else if (state == "2" || state == "3")
|
||||
//{
|
||||
// //stateCellStyle.FillForegroundColor = IndexedColors.Blue.Index;
|
||||
// stateCellStyle.FillBackgroundColor = IndexedColors.Blue.Index;
|
||||
//}
|
||||
//else if (state == "4")
|
||||
//{
|
||||
// //stateCellStyle.FillForegroundColor = IndexedColors.Red.Index;
|
||||
// stateCellStyle.FillBackgroundColor = IndexedColors.Red.Index;
|
||||
//}
|
||||
cell.CellStyle = stateCellStyle;
|
||||
cell.SetCellValue(tb.Rows[j]["StateStr"].ToString());
|
||||
cell = row.CreateCell(7);
|
||||
cell.CellStyle = cellStyle;
|
||||
|
|
|
@ -192,7 +192,7 @@ namespace FineUIPro.Web
|
|||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
var gjsxTypes = BLL.GJSXTypeService.GetGJSXTypeList();
|
||||
var allItems = from x in Funs.DB.GJSX
|
||||
var allItems = from x in db.GJSX
|
||||
where x.ProjectId == this.ProjectId && x.State != "1" && (x.CloseDate ?? DateTime.Now) > Convert.ToDateTime(x.CompleteDate)
|
||||
select x;
|
||||
StringBuilder sb = new StringBuilder();
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="mainProject2.aspx.cs" Inherits="FineUIPro.Web.common.mainProject2" Async="true" %>
|
||||
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="mainProject2.aspx.cs" Inherits="FineUIPro.Web.common.mainProject2" Async="true" %>
|
||||
|
||||
<!DOCTYPE html>
|
||||
|
||||
|
@ -11,13 +11,13 @@
|
|||
<link rel="stylesheet" href="css/project.css" />
|
||||
<link rel="stylesheet" href="css/swiper-bundle.min.css" />
|
||||
<script src="lib/jquery.js"></script>
|
||||
<link rel="stylesheet" href="~/res/css/swiper.min.css">
|
||||
<link rel="stylesheet" href="~/res/css/swiper.min.css" />
|
||||
<script src="~/res/lib/flex.js"></script>
|
||||
<script src="~/res/lib/jquery.js"></script>
|
||||
<script src="~/res/lib/china.js"></script>
|
||||
<script src="~/res/lib/echarts.min.js"></script>
|
||||
<script src="~/res/lib/swiper.min.js"></script>
|
||||
<link rel="stylesheet" href="~/res/css/company.css">
|
||||
<link rel="stylesheet" href="~/res/css/company.css?v=20250325" />
|
||||
</head>
|
||||
<style>
|
||||
html, body {
|
||||
|
@ -83,58 +83,82 @@
|
|||
<div class="fx-box">
|
||||
<div class="yj-bars">
|
||||
<div class="yj-bar">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,Quawarning %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,Quawarning %>" />
|
||||
</div>
|
||||
<div class="num"><%=EarlyWarningCounts %></div>
|
||||
</div>
|
||||
<div class="yj-bar">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,MechanicalWarning %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,MechanicalWarning %>" />
|
||||
</div>
|
||||
<div class="num"><%=JxyjNum %></div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wd-box">
|
||||
<div class="tit"><asp:Literal runat="server" Text="<%$ Resources:Lan,DangerousProject %>" /></div>
|
||||
<div class="tit">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,DangerousProject %>" />
|
||||
</div>
|
||||
<div class="inner">
|
||||
<div class="inner-box">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,ApprovalCompleted %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,ApprovalCompleted %>" />
|
||||
</div>
|
||||
<div class="num"><%=CompletedNum %></div>
|
||||
</div>
|
||||
<span></span>
|
||||
<div class="inner-box">
|
||||
<div class="lab" style="width: 1rem"><asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfTrainees %>" /></div>
|
||||
<div class="lab" style="width: 1rem">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfTrainees %>" />
|
||||
</div>
|
||||
<div class="num"><%=TrainPersonNum %></div>
|
||||
</div>
|
||||
<span></span>
|
||||
<div class="inner-box">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfConstructions %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfConstructions %>" />
|
||||
</div>
|
||||
<div class="num"><%=ConstructionNum %></div>
|
||||
</div>
|
||||
<span></span>
|
||||
<div class="inner-box">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfCompletions %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfCompletions %>" />
|
||||
</div>
|
||||
<div class="num"><%=FinishedNum %></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="wd-box">
|
||||
<div class="tit"><asp:Literal runat="server" Text="<%$ Resources:Lan,SuperDangerousProject %>" /></div>
|
||||
<div class="tit">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,SuperDangerousProject %>" />
|
||||
</div>
|
||||
<div class="inner">
|
||||
<div class="inner-box">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,ApprovalCompleted %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,ApprovalCompleted %>" />
|
||||
</div>
|
||||
<div class="num"><%=SuperCompletedNum %></div>
|
||||
</div>
|
||||
<span></span>
|
||||
<div class="inner-box">
|
||||
<div class="lab" style="width: 1rem;"><asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfTrainees %>" /></div>
|
||||
<div class="lab" style="width: 1rem;">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfTrainees %>" />
|
||||
</div>
|
||||
<div class="num"><%=SuperTrainPersonNum %></div>
|
||||
</div>
|
||||
<span></span>
|
||||
<div class="inner-box">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfConstructions %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfConstructions %>" />
|
||||
</div>
|
||||
<div class="num"><%=SuperConstructionNum %></div>
|
||||
</div>
|
||||
<span></span>
|
||||
<div class="inner-box">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfCompletions %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,NumberOfCompletions %>" />
|
||||
</div>
|
||||
<div class="num"><%=SuperFinishedNum %></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -150,11 +174,15 @@
|
|||
<div class="main">
|
||||
<div class="total">
|
||||
<div class="glry">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,QualityTraining %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,QualityTraining %>" />
|
||||
</div>
|
||||
<div class="num" id="divCqmsPxNum" runat="server">1307</div>
|
||||
</div>
|
||||
<div class="glry">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,ConPlanReviewBatch %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,ConPlanReviewBatch %>" />
|
||||
</div>
|
||||
<div class="num" id="div_sgfaSpl" runat="server">5217</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -171,19 +199,27 @@
|
|||
</div>
|
||||
<div class="total">
|
||||
<div class="zyp">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,LoseOneSTemper %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,LoseOneSTemper %>" />
|
||||
</div>
|
||||
<div class="num"><%=WrokCount0 %>/<%=AllWrokCount0 %></div>
|
||||
</div>
|
||||
<div class="zyp">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,altitude %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,altitude %>" />
|
||||
</div>
|
||||
<div class="num"><%=WrokCount1 %>/<%=AllWrokCount1 %></div>
|
||||
</div>
|
||||
<div class="zyp">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,altitude %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,altitude %>" />
|
||||
</div>
|
||||
<div class="num"><%=WrokCount2 %>/<%=AllWrokCount2 %></div>
|
||||
</div>
|
||||
<div class="zyp">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,other %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,other %>" />
|
||||
</div>
|
||||
<div class="num"><%=WrokCount3 %>/<%=AllWrokCount3 %></div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -206,54 +242,74 @@
|
|||
<div class="c-site">
|
||||
<div class="num-box">
|
||||
<div class="num" id="divSafeWorkTime" runat="server">1656059</div>
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,SafetyLaborHours %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,SafetyLaborHours %>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="num-box">
|
||||
<div class="num" id="divSafeWorkTimeMonth" runat="server">0</div>
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_SafeWorkHoursThisMonth %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_SafeWorkHoursThisMonth %>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="num-box">
|
||||
<div class="num" id="divSafePersonNum" runat="server">1161</div>
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_TotalSafeTrainingPersonnel %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_TotalSafeTrainingPersonnel %>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="num-box">
|
||||
<div class="num" id="divSafeManagePersonNum" runat="server">3</div>
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_SafeManagementPersonnel %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_SafeManagementPersonnel %>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="num-box">
|
||||
<div class="num" runat="server" id="divWS">4564</div>
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_NearMissIncidents %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_NearMissIncidents %>" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="aqyh">
|
||||
<div class="an-boxs">
|
||||
<div><asp:Literal runat="server" Text="<%$ Resources:Lan,RectificationData %>" /></div>
|
||||
<div>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,RectificationData %>" />
|
||||
</div>
|
||||
<div>
|
||||
<div class="dot">
|
||||
<div class="dot-c" style="background: #4F97F9;"></div>
|
||||
</div>
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_TotalRectificationData %>" /></p>
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_TotalRectificationData %>" />
|
||||
</p>
|
||||
<p style="color: #4F97F9;" runat="server" id="div_zgsj">265</p>
|
||||
</div>
|
||||
<div>
|
||||
<div class="dot">
|
||||
<div class="dot-c" style="background: #12CDA2;"></div>
|
||||
</div>
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,completed %>" /></p>
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,completed %>" />
|
||||
</p>
|
||||
<p style="color: #12CDA2;" runat="server" id="div_zgywc">265</p>
|
||||
</div>
|
||||
<div>
|
||||
<div class="dot">
|
||||
<div class="dot-c" style="background: #FF7474;"></div>
|
||||
</div>
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_UncompletedRectification %>" /></p>
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_UncompletedRectification %>" />
|
||||
</p>
|
||||
<p style="color: #FF7474;" runat="server" id="div_zgwwc">12</p>
|
||||
</div>
|
||||
<div>
|
||||
<div class="dot">
|
||||
<div class="dot-c" style="background: #FFD130;"></div>
|
||||
</div>
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_RectificationRate %>" /></p>
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_RectificationRate %>" />
|
||||
</p>
|
||||
<p style="color: #FFD130;" runat="server" id="div_zgwcl">100%</p>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -290,28 +346,57 @@
|
|||
|
||||
<div class="ht-boxs">
|
||||
<div class="ht-box">
|
||||
<div class="label"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ContractDuration %>" /></div>
|
||||
<div class="label">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ContractDuration %>" />
|
||||
</div>
|
||||
<div class="value" id="divProjectDays" runat="server">0<span>天</span></div>
|
||||
</div>
|
||||
<div class="ht-box">
|
||||
<div class="label"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ContractExpiryDate %>" /></div>
|
||||
<div class="label">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ContractExpiryDate %>" />
|
||||
</div>
|
||||
<div class="value" id="divEndDate" runat="server"></div>
|
||||
</div>
|
||||
<div class="ht-box">
|
||||
<div class="label"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ContractRemaining %>" /></div>
|
||||
<div class="label">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ContractRemaining %>" />
|
||||
</div>
|
||||
<div class="value" id="divRemainingDays" runat="server">0<span>天</span></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="site aqtj">
|
||||
<div class="gjl"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_KeyMattersTimelinessRate %>" /> <span><%=gjsxRate %></span></div>
|
||||
<div class="site aqtj jdtj">
|
||||
<div class="gjl">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_KeyMattersTimelinessRate %>" />
|
||||
<span><%=gjsxRate %></span>
|
||||
</div>
|
||||
<div class="label">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ProgressStatistics %>" />
|
||||
</div>
|
||||
<div class="main">
|
||||
<%-- <div id="aq-map"></div>--%>
|
||||
<div class="jdtj-tab">
|
||||
<div class="jdtj-btn jdtj-btn-act" id="span_jdtj" onclick="jdtjOnclick(0)" style="cursor: pointer">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ProgressStatistics %>" />
|
||||
</div>
|
||||
<div class="jdtj-btn" onclick="jdtjOnclick(1)" id="span_weekJdtj" style="cursor: pointer">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_WeekPlanDone %>" />
|
||||
</div>
|
||||
<div class="jdtj-btn" onclick="jdtjOnclick(2)" id="span_monthJdtj" style="cursor: pointer">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_MonthPlanDone %>" />
|
||||
</div>
|
||||
</div>
|
||||
<%-- <div id="aq-map"></div>--%>
|
||||
<%--<div id='left_one' style="width: 100%; height: 100%;"></div>--%>
|
||||
<div id='left_one' style="width: 100%; height: 100%;"></div>
|
||||
<div id='jdtj-content' class="table" style="width: 100%; height: 100%; display: none;">
|
||||
<div class="row" id="div_jdtjHead">
|
||||
<%=WeekJdtjHead %>
|
||||
</div>
|
||||
<div class="t-body" id="div_jdtjList">
|
||||
<%=MonthJdtjHtml %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -323,19 +408,27 @@
|
|||
<div class="main">
|
||||
<div class="total">
|
||||
<div class="zg" style="cursor: pointer;" runat="server" onclick="showGztm(0)" id="div_Gzgjsx">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_KeyMatters %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_KeyMatters %>" />
|
||||
</div>
|
||||
<div class="num" id="div_gjsx" runat="server">0</div>
|
||||
</div>
|
||||
<div class="zg" style="cursor: pointer" runat="server" onclick="showGztm(1)" id="div_Gzdbsx">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PendingMatters %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PendingMatters %>" />
|
||||
</div>
|
||||
<div class="num" id="div_dbsx" runat="server">0</div>
|
||||
</div>
|
||||
<div class="zg" style="cursor: pointer" runat="server" onclick="showGztm(2)" id="div_Gzgrlc">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PersonalProcess %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PersonalProcess %>" />
|
||||
</div>
|
||||
<div class="num" id="div_grlc" runat="server">0</div>
|
||||
</div>
|
||||
<div class="zg">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_CompletedTasks %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_CompletedTasks %>" />
|
||||
</div>
|
||||
<div class="num" id="div_ybrw" runat="server">0</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -362,15 +455,21 @@
|
|||
</div>
|
||||
<div class="total">
|
||||
<div class="rs">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,CurrentPersonnel %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,CurrentPersonnel %>" />
|
||||
</div>
|
||||
<div class="num" id="div_xcrs" runat="server">0</div>
|
||||
</div>
|
||||
<div class="rs">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_TotalWorkers %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_TotalWorkers %>" />
|
||||
</div>
|
||||
<div class="num" runat="server" id="div_zyxcrs">0</div>
|
||||
</div>
|
||||
<div class="rs">
|
||||
<div class="lab"><asp:Literal runat="server" Text="<%$ Resources:Lan,managersCount %>" /></div>
|
||||
<div class="lab">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,managersCount %>" />
|
||||
</div>
|
||||
<div class="num" runat="server" id="div_glxcrs">0</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -382,28 +481,51 @@
|
|||
</div>
|
||||
<div class="main" style="padding: .1875rem .25rem;">
|
||||
<div class="cl-tab">
|
||||
<div class="cl-btn cl-btn-act" id="span_gdcl" onclick="clOnclick(0)" style="cursor:pointer"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_MaterialLabel %>" /></div>
|
||||
<div class="cl-btn" onclick="clOnclick(1)" id="span_sbcl" style="cursor:pointer"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PipeMaterials %>" /></div>
|
||||
<div class="cl-btn cl-btn-act" id="span_gdcl" onclick="clOnclick(0)" style="cursor: pointer">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_MaterialLabel %>" />
|
||||
</div>
|
||||
<div class="cl-btn" onclick="clOnclick(1)" id="span_sbcl" style="cursor: pointer">
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PipeMaterials %>" />
|
||||
</div>
|
||||
</div>
|
||||
<div class="table">
|
||||
<div class="row" id="div_cldhHead">
|
||||
<div class="th-p"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_MaterialCategory %>" /></div>
|
||||
<div class="th-p"><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_DesignQuantity %>" /></div>
|
||||
<div class="th-p">
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PurchaseQuantity %>" /></p>
|
||||
<p><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PurchaseQuantity %>" /></span><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_Percentage %>" /></span></p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_MaterialCategory %>" />
|
||||
</div>
|
||||
<div class="th-p">
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ArrivalQuantity %>" /></p>
|
||||
<p><span><asp:Literal runat="server" Text="<%$ Resources:Lan,HaveArrived %>" /></span><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_Percentage %>" /></span></p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_DesignQuantity %>" />
|
||||
</div>
|
||||
<div class="th-p">
|
||||
<p><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_IssueQuantity %>" /></p>
|
||||
<p><span><asp:Literal runat="server" Text="<%$ Resources:Lan,MaterialReceived %>" /></span><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_Percentage %>" /></span></p>
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PurchaseQuantity %>" />
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_PurchaseQuantity %>" /></span><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_Percentage %>" /></span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="th-p">
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_ArrivalQuantity %>" />
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,HaveArrived %>" /></span><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_Percentage %>" /></span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="th-p">
|
||||
<p>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_IssueQuantity %>" />
|
||||
</p>
|
||||
<p>
|
||||
<span>
|
||||
<asp:Literal runat="server" Text="<%$ Resources:Lan,MaterialReceived %>" /></span><span><asp:Literal runat="server" Text="<%$ Resources:Lan,mainProject2_Percentage %>" /></span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="t-body" id="div_cldhList">
|
||||
<%=gdclHtml %>
|
||||
<%=gdclHtml %>
|
||||
<%--<div class="row">
|
||||
<div class="tr">材料类别</div>
|
||||
<div class="tr">154154.1</div>
|
||||
|
@ -557,7 +679,35 @@
|
|||
</html>
|
||||
<script src="lib/swiper-bundle.min.js"></script>
|
||||
<script src="lib/echarts.min.js"></script>
|
||||
<script>
|
||||
|
||||
function jdtjOnclick(objval) {
|
||||
if (objval == 1) {
|
||||
$("#span_jdtj").removeClass("jdtj-btn-act");
|
||||
$("#span_weekJdtj").addClass("jdtj-btn-act");
|
||||
$("#span_monthJdtj").removeClass("jdtj-btn-act");
|
||||
$("#jdtj-content").show();
|
||||
$("#left_one").hide();
|
||||
$("#div_jdtjHead").html('<%=WeekJdtjHead%>');
|
||||
$("#div_jdtjList").html('<%=WeekJdtjHtml%>');
|
||||
} else if (objval == 2) {
|
||||
$("#span_jdtj").removeClass("jdtj-btn-act");
|
||||
$("#span_weekJdtj").removeClass("jdtj-btn-act");
|
||||
$("#span_monthJdtj").addClass("jdtj-btn-act");
|
||||
$("#jdtj-content").show();
|
||||
$("#left_one").hide();
|
||||
$("#div_jdtjHead").html('<%=MonthJdtjHead%>');
|
||||
$("#div_jdtjList").html('<%=MonthJdtjHtml%>');
|
||||
} else {
|
||||
$("#span_jdtj").addClass("jdtj-btn-act");
|
||||
$("#span_weekJdtj").removeClass("jdtj-btn-act");
|
||||
$("#span_monthJdtj").removeClass("jdtj-btn-act");
|
||||
$("#jdtj-content").hide();
|
||||
$("#left_one").show();
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
<script>
|
||||
|
||||
function clOnclick(objval) {
|
||||
|
@ -1540,7 +1690,7 @@
|
|||
bottom: 40,
|
||||
|
||||
},
|
||||
tooltip: {
|
||||
tooltip: {
|
||||
formatter: '{b}: {c}'
|
||||
},
|
||||
xAxis: {
|
||||
|
@ -1788,7 +1938,7 @@
|
|||
createZL(e)
|
||||
})--%>
|
||||
createZL({ name: '<%=QualityRate%>', value1: <%=zlallNumber%>, value2: <%=zlfinishNumber%>, el: 'zl-map1' })
|
||||
createZL({ name: '<%=OnePassRate%>', value1: <%=zlgjallNumber%>, value2: <%=zlgjfinishNumber%>, el: 'zl-map2' })
|
||||
createZL({ name: '<%=OnePassRate%>', value1: <%=zlgjallNumber%>, value2: <%=zlgjfinishNumber%>, el: 'zl-map2' })
|
||||
createZL({ name: '<%=OnePassRateOfWelding%>', value1: <%=hjallNumber%>, value2: <%=hjfinishNumber%>, el: 'zl-map3' })
|
||||
function createZL(obj) {
|
||||
let AOption1 = {
|
||||
|
@ -1802,32 +1952,32 @@
|
|||
fontWeight: 100
|
||||
}
|
||||
}, {
|
||||
// text: `总计:${obj.value1} | 完成:${obj.value2}`,
|
||||
text: [`{a|<%=total%>:}{b|${obj.value1}}{c||}{a|<%=completed%>:}{d|${obj.value2}}`],
|
||||
top: '80%',
|
||||
left: 'center',
|
||||
textStyle: {
|
||||
rich: {
|
||||
a: {
|
||||
fontSize: 14,
|
||||
color: '#DADADA',
|
||||
},
|
||||
b: {
|
||||
color: '#FFFFFF',
|
||||
fontSize: 14,
|
||||
},
|
||||
c: {
|
||||
padding: [0, 6],
|
||||
fontSize: 14,
|
||||
color: '#FFFFFF',
|
||||
},
|
||||
d: {
|
||||
fontSize: 14,
|
||||
color: '#12CDA2',
|
||||
// text: `总计:${obj.value1} | 完成:${obj.value2}`,
|
||||
text: [`{a|<%=total%>:}{b|${obj.value1}}{c||}{a|<%=completed%>:}{d|${obj.value2}}`],
|
||||
top: '80%',
|
||||
left: 'center',
|
||||
textStyle: {
|
||||
rich: {
|
||||
a: {
|
||||
fontSize: 14,
|
||||
color: '#DADADA',
|
||||
},
|
||||
b: {
|
||||
color: '#FFFFFF',
|
||||
fontSize: 14,
|
||||
},
|
||||
c: {
|
||||
padding: [0, 6],
|
||||
fontSize: 14,
|
||||
color: '#FFFFFF',
|
||||
},
|
||||
d: {
|
||||
fontSize: 14,
|
||||
color: '#12CDA2',
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
},
|
||||
],
|
||||
series: [
|
||||
{
|
||||
|
@ -1957,7 +2107,7 @@
|
|||
createFXMap()
|
||||
function createFXMap() {
|
||||
|
||||
const list = [
|
||||
const list = [
|
||||
{ TypeName: "<%=majorRisk%>", ValueAmount: <%=riskData4%> },
|
||||
{ TypeName: "<%=LowRisk%>", ValueAmount: <%=riskData1%> },
|
||||
{ TypeName: "<%=GeneralRisk%>", ValueAmount: <%=riskData3%> },
|
||||
|
@ -1999,15 +2149,15 @@
|
|||
}
|
||||
}
|
||||
}, {
|
||||
text: '<%=majorRisk%>',
|
||||
top: 110,
|
||||
left: 'center',
|
||||
textStyle: {
|
||||
color: '#B4C0CC',
|
||||
fontSize: 12
|
||||
text: '<%=majorRisk%>',
|
||||
top: 110,
|
||||
left: 'center',
|
||||
textStyle: {
|
||||
color: '#B4C0CC',
|
||||
fontSize: 12
|
||||
|
||||
}
|
||||
},
|
||||
}
|
||||
},
|
||||
],
|
||||
graphic: [
|
||||
{
|
||||
|
@ -2299,50 +2449,50 @@
|
|||
//color: 'rgba(200,201,10, 1)'
|
||||
}
|
||||
}, {
|
||||
name: '<%=ActualValue%>',
|
||||
type: 'bar',
|
||||
//smooth: true,
|
||||
data: two.series[2].data,
|
||||
label: { //柱体上显示数值
|
||||
show: false,//开启显示
|
||||
position: 'top',//在上方显示
|
||||
textStyle: {//数值样式
|
||||
fontSize: '20px',
|
||||
color: '#fff'
|
||||
name: '<%=ActualValue%>',
|
||||
type: 'bar',
|
||||
//smooth: true,
|
||||
data: two.series[2].data,
|
||||
label: { //柱体上显示数值
|
||||
show: false,//开启显示
|
||||
position: 'top',//在上方显示
|
||||
textStyle: {//数值样式
|
||||
fontSize: '20px',
|
||||
color: '#fff'
|
||||
},
|
||||
formatter: '{c}',
|
||||
},
|
||||
formatter: '{c}',
|
||||
},
|
||||
}, {
|
||||
name: '<%=Cumulative_planned_value%>',
|
||||
type: 'line',
|
||||
//smooth: true,
|
||||
data: two.series[1].data,
|
||||
label: { //柱体上显示数值
|
||||
show: false,//开启显示
|
||||
position: 'top',//在上方显示
|
||||
textStyle: {//数值样式
|
||||
fontSize: '20px',
|
||||
color: '#fff'
|
||||
}, {
|
||||
name: '<%=Cumulative_planned_value%>',
|
||||
type: 'line',
|
||||
//smooth: true,
|
||||
data: two.series[1].data,
|
||||
label: { //柱体上显示数值
|
||||
show: false,//开启显示
|
||||
position: 'top',//在上方显示
|
||||
textStyle: {//数值样式
|
||||
fontSize: '20px',
|
||||
color: '#fff'
|
||||
},
|
||||
formatter: '{c}',
|
||||
},
|
||||
formatter: '{c}',
|
||||
},
|
||||
lineStyle: {
|
||||
//color: 'rgba(200,201,10, 1)'
|
||||
}
|
||||
}, {
|
||||
name: '<%=Cumulative_actual_value%>',
|
||||
type: 'line',
|
||||
//smooth: true,
|
||||
data: two.series[3].data,
|
||||
label: { //柱体上显示数值
|
||||
show: false,//开启显示
|
||||
position: 'top',//在上方显示
|
||||
textStyle: {//数值样式
|
||||
fontSize: '20px',
|
||||
color: '#fff'
|
||||
lineStyle: {
|
||||
//color: 'rgba(200,201,10, 1)'
|
||||
}
|
||||
}, {
|
||||
name: '<%=Cumulative_actual_value%>',
|
||||
type: 'line',
|
||||
//smooth: true,
|
||||
data: two.series[3].data,
|
||||
label: { //柱体上显示数值
|
||||
show: false,//开启显示
|
||||
position: 'top',//在上方显示
|
||||
textStyle: {//数值样式
|
||||
fontSize: '20px',
|
||||
color: '#fff'
|
||||
},
|
||||
formatter: '{c}',
|
||||
},
|
||||
formatter: '{c}',
|
||||
},
|
||||
}]
|
||||
}]
|
||||
line('left_one', xArr1, data1)
|
||||
</script>
|
|
@ -107,6 +107,8 @@ namespace FineUIPro.Web.common
|
|||
|
||||
var treeTask = GetTreeAsync();
|
||||
var personTask = GetPersonAsync();
|
||||
var weekJdtjTask = GetWeekJDAsync();
|
||||
var monthJdtjTask = GetMonthJDAsync();
|
||||
var otherTasks = new List<Task>
|
||||
{
|
||||
BindSafetyStatisticsAsync(), // 安全统计模块
|
||||
|
@ -150,6 +152,9 @@ namespace FineUIPro.Web.common
|
|||
|
||||
Tree = await treeTask;
|
||||
Person = await personTask;
|
||||
|
||||
WeekJdtjHtml = await weekJdtjTask;
|
||||
MonthJdtjHtml = await monthJdtjTask;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -466,9 +471,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetCompletedNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetFinishedNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetFinishedNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -478,9 +484,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetConstructionNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetConstructionNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetConstructionNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -489,15 +496,16 @@ namespace FineUIPro.Web.common
|
|||
/// </summary>
|
||||
protected async Task<int> getEarlyWarningCounts()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
int allCount = 0;
|
||||
var getPersonQualitys = from x in Funs.DB.QualityAudit_PersonQuality
|
||||
join y in Funs.DB.SitePerson_Person on x.PersonId equals y.PersonId
|
||||
where x.LimitDate.HasValue && x.LimitDate < DateTime.Now && y.ProjectId == ProjectId
|
||||
select x;
|
||||
//// 预警人数
|
||||
allCount = getPersonQualitys.Count();
|
||||
return allCount;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
int allCount = 0;
|
||||
var getPersonQualitys = from x in Funs.DB.QualityAudit_PersonQuality
|
||||
join y in Funs.DB.SitePerson_Person on x.PersonId equals y.PersonId
|
||||
where x.LimitDate.HasValue && x.LimitDate < DateTime.Now && y.ProjectId == ProjectId
|
||||
select x;
|
||||
//// 预警人数
|
||||
allCount = getPersonQualitys.Count();
|
||||
return allCount;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -507,9 +515,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetFinishedNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetFinishedNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetFinishedNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -519,17 +528,18 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetJxyjNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
int result = 0;
|
||||
//机具报验的到期提醒和过期提醒记录数加一起
|
||||
////机具报验的到期提醒数
|
||||
//var num1 = Funs.DB.Comprehensive_InspectionMachine.Where(x => x.IsOnSite == true && DateTime.Now < x.NextTestDate && x.ProjectId == ProjectId
|
||||
// && ((DateTime)x.NextTestDate).AddDays(-15) < DateTime.Now).Count();
|
||||
//过期提醒记录数
|
||||
var num2 = Funs.DB.Comprehensive_InspectionMachine.Where(x => x.IsOnSite == true && x.NextTestDate < DateTime.Now && x.ProjectId == ProjectId).Count();
|
||||
//result = num1 + num2;
|
||||
result = num2;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
int result = 0;
|
||||
//机具报验的到期提醒和过期提醒记录数加一起
|
||||
////机具报验的到期提醒数
|
||||
//var num1 = Funs.DB.Comprehensive_InspectionMachine.Where(x => x.IsOnSite == true && DateTime.Now < x.NextTestDate && x.ProjectId == ProjectId
|
||||
// && ((DateTime)x.NextTestDate).AddDays(-15) < DateTime.Now).Count();
|
||||
//过期提醒记录数
|
||||
var num2 = Funs.DB.Comprehensive_InspectionMachine.Where(x => x.IsOnSite == true && x.NextTestDate < DateTime.Now && x.ProjectId == ProjectId).Count();
|
||||
//result = num1 + num2;
|
||||
result = num2;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -539,9 +549,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetSuperCompletedNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetSuperFinishedNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetSuperFinishedNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -551,9 +562,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetSuperConstructionNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetSuperConstructionNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetSuperConstructionNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -563,9 +575,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetSuperFinishedNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetSuperFinishedNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetSuperFinishedNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -575,9 +588,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetSuperTrainPersonNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetSuperTrainPersonNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetSuperTrainPersonNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -587,9 +601,10 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> GetTrainPersonNum()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = Project_HSSEData_HSSEService.GetTrainPersonNum(ProjectId);
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = Project_HSSEData_HSSEService.GetTrainPersonNum(ProjectId);
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -675,7 +690,7 @@ namespace FineUIPro.Web.common
|
|||
var WrokCount1 = getWrokCount1();
|
||||
var WrokCount2 = getWrokCount2();
|
||||
var WrokCount3 = getWrokCount3();
|
||||
await Task.WhenAll( AllWrokCount0, AllWrokCount1, AllWrokCount2, AllWrokCount3, WrokCount0, WrokCount1, WrokCount2, WrokCount3);
|
||||
await Task.WhenAll(AllWrokCount0, AllWrokCount1, AllWrokCount2, AllWrokCount3, WrokCount0, WrokCount1, WrokCount2, WrokCount3);
|
||||
this.AllWrokCount0 = await AllWrokCount0;
|
||||
this.AllWrokCount1 = await AllWrokCount1;
|
||||
this.AllWrokCount2 = await AllWrokCount2;
|
||||
|
@ -690,18 +705,18 @@ namespace FineUIPro.Web.common
|
|||
{
|
||||
var query = from lm in Funs.DB.License_LicenseManager
|
||||
|
||||
join lt in Funs.DB.Base_LicenseType on lm.LicenseTypeId equals lt.LicenseTypeId into ltJoin
|
||||
from licenseType in ltJoin.DefaultIfEmpty()
|
||||
join lt in Funs.DB.Base_LicenseType on lm.LicenseTypeId equals lt.LicenseTypeId into ltJoin
|
||||
from licenseType in ltJoin.DefaultIfEmpty()
|
||||
|
||||
select new LicenseDto
|
||||
{
|
||||
ProjectId= lm.ProjectId,
|
||||
LicenseTypeName = licenseType.LicenseTypeName ?? "",
|
||||
WorkStatesStr = lm.WorkStates == "1" ? "待开工" :
|
||||
lm.WorkStates == "2" ? "作业中" :
|
||||
lm.WorkStates == "3" ? "已关闭" :
|
||||
lm.WorkStates == "-1" ? "已取消" : ""
|
||||
};
|
||||
select new LicenseDto
|
||||
{
|
||||
ProjectId = lm.ProjectId,
|
||||
LicenseTypeName = licenseType.LicenseTypeName ?? "",
|
||||
WorkStatesStr = lm.WorkStates == "1" ? "待开工" :
|
||||
lm.WorkStates == "2" ? "作业中" :
|
||||
lm.WorkStates == "3" ? "已关闭" :
|
||||
lm.WorkStates == "-1" ? "已取消" : ""
|
||||
};
|
||||
return query;
|
||||
}
|
||||
protected async Task<int> getAllCount()
|
||||
|
@ -713,34 +728,38 @@ namespace FineUIPro.Web.common
|
|||
|
||||
protected async Task<int> getALLWrokCount0()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "动火作业许可证").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "动火作业许可证").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
protected async Task<int> getALLWrokCount1()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "高处作业许可证").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "高处作业许可证").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
protected async Task<int> getALLWrokCount2()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "吊装作业许可证").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "吊装作业许可证").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
protected async Task<int> getALLWrokCount3()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId
|
||||
&& x.LicenseTypeName != "动火作业许可证" && x.LicenseTypeName != "高处作业许可证" && x.LicenseTypeName != "吊装作业许可证").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId
|
||||
&& x.LicenseTypeName != "动火作业许可证" && x.LicenseTypeName != "高处作业许可证" && x.LicenseTypeName != "吊装作业许可证").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -755,31 +774,35 @@ namespace FineUIPro.Web.common
|
|||
/// <returns></returns>
|
||||
protected async Task<int> getWrokCount0()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "动火作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "动火作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
protected async Task<int> getWrokCount1()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "高处作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "高处作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
protected async Task<int> getWrokCount2()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "吊装作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId && x.LicenseTypeName == "吊装作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
protected async Task<int> getWrokCount3()
|
||||
{
|
||||
return await Task.Run(() => {
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId
|
||||
&& x.LicenseTypeName != "动火作业许可证" && x.LicenseTypeName != "高处作业许可证" && x.LicenseTypeName != "吊装作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
var result = GetLicenseQuery().Where(x => x.ProjectId == ProjectId
|
||||
&& x.LicenseTypeName != "动火作业许可证" && x.LicenseTypeName != "高处作业许可证" && x.LicenseTypeName != "吊装作业许可证" && x.WorkStatesStr == "作业中").ToList().Count;
|
||||
return result;
|
||||
});
|
||||
}
|
||||
#endregion 作业许可
|
||||
|
@ -1118,6 +1141,7 @@ namespace FineUIPro.Web.common
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
protected async Task<string> GetTreeAsync()
|
||||
{
|
||||
return await Task.Run(() =>
|
||||
|
@ -1159,6 +1183,134 @@ namespace FineUIPro.Web.common
|
|||
|
||||
#endregion 赢得值曲线
|
||||
|
||||
#region 进度统计
|
||||
|
||||
protected string WeekJdtjHtml;
|
||||
//protected string WeekJdtjHead = "<div class=\"th-p\" >序号</div><div class=\"th-p\" >单位</div><div class=\"th-p\"><p>上周完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div><div class=\"th-p\"><p>累计完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div>";
|
||||
protected string WeekJdtjHead = "<div class=\"th-p\" >单位</div><div class=\"th-p\"><p>上周完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div><div class=\"th-p\"><p>累计完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div>";
|
||||
|
||||
protected string MonthJdtjHtml;
|
||||
//protected string MonthJdtjHead = "<div class=\"th-p\">序号</div><div class=\"th-p\">单位</div><div class=\"th-p\"><p>上月完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div><div class=\"th-p\"><p>累计完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div>";
|
||||
protected string MonthJdtjHead = "<div class=\"th-p\">单位</div><div class=\"th-p\"><p>上月完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div><div class=\"th-p\"><p>累计完成情况</p><p><span>计划项</span><span>完成项</span><span>百分比</span></p></div>";
|
||||
|
||||
/// <summary>
|
||||
/// 周进度完成情况
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
protected async Task<string> GetWeekJDAsync()
|
||||
{
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
string weekGridHtml = string.Empty;
|
||||
//获取当前时间所在周信息
|
||||
var lastWeek = WeekPlanService.GetLastWeekPlan(this.CurrUser.LoginProjectId);
|
||||
////根据当前时间获取上一个周计划信息
|
||||
//var lastWeekItem = WeekItemService.GetWeekItemByDateNow(this.CurrUser.LoginProjectId);
|
||||
if (lastWeek != null)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
//1、获取本项目周进度计划中所有责任单位Id
|
||||
var units = (from x in db.JDGL_WeekPlan
|
||||
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId && x.EndDate <= lastWeek.EndDate
|
||||
orderby x.UnitId
|
||||
select new { x.UnitId, y.UnitName }).Distinct().ToList();
|
||||
//2、获取当前项目指定周所有计划
|
||||
var allWeekPlans = (from x in db.JDGL_WeekPlan
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId && x.WeekNo == lastWeek.WeekNo
|
||||
orderby x.UnitId
|
||||
select x).ToList();
|
||||
//3、获取当前项目所有周计划
|
||||
var allPlans = (from x in db.JDGL_WeekPlan
|
||||
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId && x.EndDate <= lastWeek.EndDate
|
||||
orderby x.UnitId
|
||||
select x).ToList();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
int index = 1;
|
||||
foreach (var unit in units)
|
||||
{
|
||||
double weekPlanNum = allWeekPlans.Where(x => x.UnitId == unit.UnitId).Count();
|
||||
double weekPlanOkNum = allWeekPlans.Where(x => x.UnitId == unit.UnitId && x.IsOK == true).Count();
|
||||
double weekRate = weekPlanNum > 0 ? Math.Round((weekPlanOkNum / weekPlanNum) * 100, 2) : 0;
|
||||
double allWeekPlanNum = allPlans.Where(x => x.UnitId == unit.UnitId).Count();
|
||||
double allWeekPlanOkNum = allPlans.Where(x => x.UnitId == unit.UnitId && x.IsOK == true).Count();
|
||||
double allWeekRate = allWeekPlanNum > 0 ? Math.Round((allWeekPlanOkNum / allWeekPlanNum) * 100, 2) : 0;
|
||||
sb.Append("<div class=\"row\">");
|
||||
//sb.Append($"<div class=\"tr\" >{index}</div>");
|
||||
sb.Append($"<div class=\"tr\" >{unit.UnitName}</div>");
|
||||
sb.Append($"<div class=\"tr\" ><p><span>{weekPlanNum}</span><span>{weekPlanOkNum}</span><span>{weekRate}%</span></p></div>");
|
||||
sb.Append($"<div class=\"tr\" ><p><span>{allWeekPlanNum}</span><span>{allWeekPlanOkNum}</span><span>{allWeekRate}%</span></p></div>");
|
||||
sb.Append("</div>");
|
||||
index++;
|
||||
}
|
||||
weekGridHtml = sb.ToString();
|
||||
}
|
||||
return weekGridHtml;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 月进度完成情况
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
protected async Task<string> GetMonthJDAsync()
|
||||
{
|
||||
return await Task.Run(() =>
|
||||
{
|
||||
string monthGridHtml = string.Empty;
|
||||
//统计月份信息
|
||||
DateTime months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-01");
|
||||
if (DateTime.Now.Day < 26)
|
||||
{
|
||||
months = Convert.ToDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.AddMonths(-1).Month.ToString() + "-01");
|
||||
}
|
||||
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
//1、获取本项目月进度计划中所有责任单位Id
|
||||
var units = (from x in db.JDGL_MonthPlan
|
||||
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId && x.Months <= months
|
||||
orderby x.UnitId
|
||||
select new { x.UnitId, y.UnitName }).Distinct().ToList();
|
||||
//2、获取当前项目指定月所有计划
|
||||
var allMonthPlans = (from x in db.JDGL_MonthPlan
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId && x.Months == months
|
||||
orderby x.UnitId
|
||||
select x).ToList();
|
||||
//3、获取当前项目所有月计划
|
||||
var allPlans = (from x in db.JDGL_MonthPlan
|
||||
join y in db.Base_Unit on x.UnitId equals y.UnitId
|
||||
where x.ProjectId == this.CurrUser.LoginProjectId && x.Months <= months
|
||||
orderby x.UnitId
|
||||
select x).ToList();
|
||||
StringBuilder sb = new StringBuilder();
|
||||
int index = 1;
|
||||
foreach (var unit in units)
|
||||
{
|
||||
double monthPlanNum = allMonthPlans.Where(x => x.UnitId == unit.UnitId).Count();
|
||||
double monthPlanOkNum = allMonthPlans.Where(x => x.UnitId == unit.UnitId && x.RealDate != null).Count();
|
||||
double monthRate = monthPlanNum > 0 ? Math.Round((monthPlanOkNum / monthPlanNum) * 100, 2) : 0;
|
||||
double allMonthPlanNum = allPlans.Where(x => x.UnitId == unit.UnitId).Count();
|
||||
double allMonthPlanOkNum = allPlans.Where(x => x.UnitId == unit.UnitId && x.RealDate != null).Count();
|
||||
double allMonthRate = allMonthPlanNum > 0 ? Math.Round((allMonthPlanOkNum / allMonthPlanNum) * 100, 2) : 0;
|
||||
sb.Append("<div class=\"row\">");
|
||||
//sb.Append($"<div class=\"tr\" >{index}</div>");
|
||||
sb.Append($"<div class=\"tr\" >{unit.UnitName}</div>");
|
||||
sb.Append($"<div class=\"tr\" ><p><span>{monthPlanNum}</span><span>{monthPlanOkNum}</span><span>{monthRate}%</span></p></div>");
|
||||
sb.Append($"<div class=\"tr\" ><p><span>{allMonthPlanNum}</span><span>{allMonthPlanOkNum}</span><span>{allMonthRate}%</span></p></div>");
|
||||
sb.Append("</div>");
|
||||
index++;
|
||||
}
|
||||
monthGridHtml = sb.ToString();
|
||||
return monthGridHtml;
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region 人力情况
|
||||
|
||||
protected string Person
|
||||
|
@ -1277,20 +1429,20 @@ namespace FineUIPro.Web.common
|
|||
+ "</div>";
|
||||
}*/
|
||||
var result = (from x in Funs.DB.License_LicenseManager
|
||||
join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId into units
|
||||
from unit in units.DefaultIfEmpty()
|
||||
join z in Funs.DB.WBS_UnitWork on x.WorkAreaId equals z.UnitWorkId into areas
|
||||
from area in areas.DefaultIfEmpty()
|
||||
join w in Funs.DB.Base_LicenseType on x.LicenseTypeId equals w.LicenseTypeId
|
||||
where x.ProjectId == ProjectId
|
||||
select new
|
||||
{
|
||||
x.LicenseManagerCode,
|
||||
WorkAreaName=area.UnitWorkName,
|
||||
w.LicenseTypeName,
|
||||
x.IsHighRisk,
|
||||
unit.ShortUnitName
|
||||
})
|
||||
join y in Funs.DB.Base_Unit on x.UnitId equals y.UnitId into units
|
||||
from unit in units.DefaultIfEmpty()
|
||||
join z in Funs.DB.WBS_UnitWork on x.WorkAreaId equals z.UnitWorkId into areas
|
||||
from area in areas.DefaultIfEmpty()
|
||||
join w in Funs.DB.Base_LicenseType on x.LicenseTypeId equals w.LicenseTypeId
|
||||
where x.ProjectId == ProjectId
|
||||
select new
|
||||
{
|
||||
x.LicenseManagerCode,
|
||||
WorkAreaName = area.UnitWorkName,
|
||||
w.LicenseTypeName,
|
||||
x.IsHighRisk,
|
||||
unit.ShortUnitName
|
||||
})
|
||||
.AsEnumerable() // 后续操作在内存中进行
|
||||
.Select(x => new
|
||||
{
|
||||
|
@ -1507,7 +1659,7 @@ namespace FineUIPro.Web.common
|
|||
//总计
|
||||
//计划值
|
||||
//累计计划值
|
||||
//累计实际值
|
||||
//累计实际值
|
||||
|
||||
private async Task getCNEN()
|
||||
{
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue