五环大屏;进度管理;等
This commit is contained in:
@@ -0,0 +1,180 @@
|
||||
using BLL;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
//using FineUIPro.Web.DataShow;
|
||||
using Model;
|
||||
//using System.Runtime.Caching;
|
||||
using System.Threading.Tasks;
|
||||
//using System.Web;
|
||||
//using System.Web.UI;
|
||||
//using System.Web.UI.WebControls;
|
||||
//using Org.BouncyCastle.Ocsp;
|
||||
//using FineUIPro.Web.HJGL.FL;
|
||||
|
||||
namespace FineUIPro.Web.DataShow
|
||||
{
|
||||
public partial class JDStatistics : PageBase
|
||||
{
|
||||
List<Model.Base_Project> allProjects;
|
||||
#region 定义项
|
||||
/// <summary>
|
||||
/// 项目主键
|
||||
/// </summary>
|
||||
public string ProjectId
|
||||
{
|
||||
get
|
||||
{
|
||||
return (string)ViewState["ProjectId"];
|
||||
}
|
||||
set
|
||||
{
|
||||
ViewState["ProjectId"] = value;
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
protected async void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
allProjects = ProjectService.GetAllProjectDropDownList();
|
||||
|
||||
this.ProjectId = string.Empty;
|
||||
if (this.CurrUser != null && !string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
|
||||
{
|
||||
this.ProjectId = this.CurrUser.LoginProjectId;
|
||||
}
|
||||
|
||||
|
||||
//GetJdAsync();
|
||||
|
||||
var projectJDQKTask = GetJdAsync();
|
||||
var otherTasks = new List<Task>
|
||||
{
|
||||
//GetJdAsync(),// 进度情况
|
||||
GetMonthJDAsync(),// 月进度
|
||||
GetWeekJDAsync(),// 周进度
|
||||
};
|
||||
|
||||
await Task.WhenAll(otherTasks.Concat(new[] { projectJDQKTask }));
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#region 进度情况
|
||||
|
||||
//protected string ProjectAllJd;
|
||||
protected string ProjectJd;
|
||||
protected string ProjectMc;
|
||||
protected async Task GetJdAsync()
|
||||
{
|
||||
var list = allProjects;
|
||||
if (list.Any())
|
||||
{
|
||||
var progressCompletions = from x in Funs.DB.JDGL_ProgressCompletion select x;
|
||||
foreach (var item in list)
|
||||
{
|
||||
var pCs = progressCompletions.Where(x => x.ProjectId == item.ProjectId).ToList();
|
||||
|
||||
//ProjectAllJd += "'" + pCs.Sum(x => x.PlanNum ?? 0).ToString("0.##") + "',";
|
||||
ProjectJd += "'" + pCs.Sum(x => x.RealNum ?? 0).ToString("0.##") + "',";
|
||||
ProjectMc += "'" + item.ShortName + "',";
|
||||
}
|
||||
//ProjectAllJd = ProjectAllJd.TrimEnd(',');
|
||||
ProjectJd = ProjectJd.TrimEnd(',');
|
||||
ProjectMc = ProjectMc.TrimEnd(',');
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
|
||||
#region 月进度
|
||||
|
||||
protected string MonthJD;
|
||||
/// <summary>
|
||||
/// 月进度
|
||||
/// </summary>
|
||||
protected async Task GetMonthJDAsync()
|
||||
{
|
||||
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
|
||||
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
|
||||
List<string> listCategories = new List<string>();
|
||||
businessColumn.title = "月进度完成情况";
|
||||
businessColumn.xFontNum = 8;
|
||||
var date = DateTime.Now.AddMonths(1);
|
||||
var allItems = from x in Funs.DB.JDGL_MonthPlan
|
||||
where x.Months < new DateTime(date.Year, date.Month, 1)
|
||||
select x;
|
||||
Model.SingleSerie s = new Model.SingleSerie();
|
||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||
List<double> listdata = new List<double>();
|
||||
List<double> listdata2 = new List<double>();
|
||||
int okNum = 0;
|
||||
foreach (var pro in allProjects)
|
||||
{
|
||||
listCategories.Add(pro.ShortName);
|
||||
var proItems = allItems.Where(x => x.ProjectId == pro.ProjectId);
|
||||
okNum = proItems.Where(x => x.RealDate.HasValue).Count();
|
||||
listdata.Add(proItems.Count() - okNum);
|
||||
listdata2.Add(okNum);
|
||||
}
|
||||
s.data = listdata;
|
||||
s2.data = listdata2;
|
||||
series.Add(s);
|
||||
series.Add(s2);
|
||||
businessColumn.categories = listCategories;
|
||||
businessColumn.series = series;
|
||||
MonthJD = JsonConvert.SerializeObject(businessColumn);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region 周进度
|
||||
|
||||
protected string WeekJD;
|
||||
/// <summary>
|
||||
/// 周进度
|
||||
/// </summary>
|
||||
protected async Task GetWeekJDAsync()
|
||||
{
|
||||
List<Model.SingleSerie> series = new List<Model.SingleSerie>();
|
||||
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
|
||||
List<string> listCategories = new List<string>();
|
||||
businessColumn.title = "周进度完成情况";
|
||||
businessColumn.xFontNum = 8;
|
||||
var date = DateTime.Now.AddMonths(1);
|
||||
var allItems = from x in Funs.DB.JDGL_WeekPlan
|
||||
where x.EndDate < new DateTime(date.Year, date.Month, 1)
|
||||
select x;
|
||||
Model.SingleSerie s = new Model.SingleSerie();
|
||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||
List<double> listdata = new List<double>();
|
||||
List<double> listdata2 = new List<double>();
|
||||
int okNum = 0;
|
||||
foreach (var pro in allProjects)
|
||||
{
|
||||
listCategories.Add(pro.ShortName);
|
||||
var proItems = allItems.Where(x => x.ProjectId == pro.ProjectId);
|
||||
okNum = proItems.Where(x => x.IsOK.HasValue && x.IsOK == true).Count();
|
||||
listdata.Add(proItems.Count() - okNum);
|
||||
listdata2.Add(okNum);
|
||||
}
|
||||
s.data = listdata;
|
||||
s2.data = listdata2;
|
||||
series.Add(s);
|
||||
series.Add(s2);
|
||||
businessColumn.categories = listCategories;
|
||||
businessColumn.series = series;
|
||||
WeekJD = JsonConvert.SerializeObject(businessColumn);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user