-
安装单位工程
-
-
建筑单位工程
+
单位工程
@@ -296,7 +292,7 @@
var one2 =<%=One2 %>
var one3 =<%=One3 %>
category_One('one1', "质量验收一次合格率", one1, one1 + "%")
- category_One('one2', "施工资料同步率", one2, one2 + "%")
+ category_One('one2', "焊接一次拍片合格率", one2, one2 + "%")
category_One('one3', "质量问题整改完成率", one3, one3 + "%")
@@ -892,6 +907,15 @@
stack: '总量',
//data: [3, 5, 8, 10, 6, 4, 5, 9, 12],
data: two.series[0].data,
+ label: { //柱体上显示数值
+ show: true,//开启显示
+ position: ['0%', '50%'],//在上方显示
+ textStyle: {//数值样式
+ fontSize: '20px',
+ color: '#fff'
+ },
+ formatter: '{c}',
+ },
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
},
{
@@ -900,6 +924,15 @@
stack: '总量',
//data: [2, 7, 5, 9, 12, 9, 2, 8, 10],
data: two.series[1].data,
+ label: { //柱体上显示数值
+ show: true,//开启显示
+ position: ['0%', '50%'],//在上方显示
+ textStyle: {//数值样式
+ fontSize: '20px',
+ color: '#fff'
+ },
+ formatter: '{c}',
+ },
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
}
];
@@ -914,6 +947,15 @@
stack: '总量',
//data: [13, 5, 18, 10, 6, 4, 5, 9, 22],
data: two2.series[0].data,
+ label: { //柱体上显示数值
+ show: true,//开启显示
+ position: ['0%', '50%'],//在上方显示
+ textStyle: {//数值样式
+ fontSize: '20px',
+ color: '#fff'
+ },
+ formatter: '{c}',
+ },
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
},
{
@@ -922,35 +964,21 @@
stack: '总量',
//data: [2, 7, 15, 9, 12, 29, 12, 18, 10],
data: two2.series[1].data,
+ label: { //柱体上显示数值
+ show: true,//开启显示
+ position: ['0%', '50%'],//在上方显示
+ textStyle: {//数值样式
+ fontSize: '20px',
+ color: '#fff'
+ },
+ formatter: '{c}',
+ },
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
}
];
num = two2.xFontNum;
}
else if (index == 4) {
- //xArr = ["专业1", "专业2", "专业3", "专业4", "专业5", "专业6", "专业7", "专业8", "专业9"]
- xArr = two4.categories
- data = [
- {
- name: '未整改',
- type: 'bar',
- stack: '总量',
- //data: [23, 25, 18, 10, 16, 4, 5, 29, 2],
- data: two4.series[0].data,
- itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
- },
- {
- name: '已整改',
- type: 'bar',
- stack: '总量',
- //data: [2, 27, 15, 9, 12, 29, 32, 18, 1],
- data: two4.series[1].data,
- itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
- }
- ];
- num = two4.xFontNum;
- }
- else if (index == 6) {
//xArr = ["专业1", "专业2", "专业3", "专业4", "专业5", "专业6", "专业7", "专业8", "专业9"]
xArr = two3.categories
data = [
@@ -960,6 +988,15 @@
stack: '总量',
//data: [23, 25, 18, 10, 16, 4, 5, 29, 2],
data: two3.series[0].data,
+ label: { //柱体上显示数值
+ show: true,//开启显示
+ position: ['0%', '50%'],//在上方显示
+ textStyle: {//数值样式
+ fontSize: '20px',
+ color: '#fff'
+ },
+ formatter: '{c}',
+ },
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
},
{
@@ -968,6 +1005,15 @@
stack: '总量',
//data: [2, 27, 15, 9, 12, 29, 32, 18, 1],
data: two3.series[1].data,
+ label: { //柱体上显示数值
+ show: true,//开启显示
+ position: ['0%', '50%'],//在上方显示
+ textStyle: {//数值样式
+ fontSize: '20px',
+ color: '#fff'
+ },
+ formatter: '{c}',
+ },
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
}
];
diff --git a/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs b/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs
index c9ea9bf5..d781c6c9 100644
--- a/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs
+++ b/SGGL/FineUIPro.Web/common/mainMenu_CQMS.aspx.cs
@@ -38,20 +38,17 @@ namespace FineUIPro.Web
}
#endregion
- #region 项目施工资料同步率
+ #region 焊接一次拍片合格率
protected string One2
{
get
{
- List totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
- List totalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
- totalCheckDetailOKLists = totalCheckDetailOKLists.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
double result = 0;
- if (totalCheckDetailDataOKLists.Count > 0 && totalCheckDetailOKLists.Count > 0)
+ var ndtList = (from x in Funs.DB.ProcessControl_NondestructiveTest_New where x.ProfessionalName == "工艺管道" && x.ProjectId == this.CurrUser.LoginProjectId orderby x.CreateDate descending select x).FirstOrDefault();
+
+ if (ndtList != null && !string.IsNullOrEmpty(ndtList.TotalRate))
{
- var a = Convert.ToDouble(totalCheckDetailDataOKLists.Count);
- var b = Convert.ToDouble(totalCheckDetailOKLists.Count);
- result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
+ result = Convert.ToDouble(ndtList.TotalRate) / 100;
}
return JsonConvert.SerializeObject(result);
}
@@ -83,63 +80,32 @@ namespace FineUIPro.Web
{
var db = new Model.SGGLDB(Funs.ConnString);
Model.Num num = new Model.Num();
- var controlItemAndCycles = (from x in db.WBS_ControlItemAndCycle
- where x.ProjectId == CurrUser.LoginProjectId && x.IsApprove == true
- orderby x.ControlItemAndCycleCode
- select x).ToList();
- var oKSpotCheckDetails = (from x in db.Check_SpotCheckDetail
- join y in db.Check_SpotCheck
- on x.SpotCheckCode equals y.SpotCheckCode
- where x.IsOK == true && y.ProjectId == CurrUser.LoginProjectId
- select x).ToList();
+ var controlItemAndCycles = from x in db.WBS_BreakdownProject
+ where x.ProjectId == CurrUser.LoginProjectId && x.IsSelected == true
+ orderby x.BreakdownCode
+ select x;
+ var oKSpotCheckDetails = (from x in db.ProcessControl_InspectionManagementDetail
+ join y in db.ProcessControl_InspectionManagement
+ on x.InspectionId equals y.InspectionId
+ join z in db.WBS_BreakdownProject
+ on x.ControlPointType equals z.BreakdownProjectId
+ where y.IsOnceQualified == true && y.ProjectId == CurrUser.LoginProjectId
+ select new { x.ControlPointType, z.Class }).Distinct().ToList();
//A类
- var Alist = controlItemAndCycles.Where(x => x.ControlPoint.Contains("A"));
- int a = 0;
- foreach (var item in Alist)
- {
- if (item.CheckNum != 0) //检查次数为0表示一直检查
- {
- List details = oKSpotCheckDetails.Where(x => x.ControlItemAndCycleId == item.ControlItemAndCycleId).ToList();
- if (details.Count == item.CheckNum) //检查次数已达到最大值
- {
- a++;
- }
- }
- }
+ var Alist = controlItemAndCycles.Where(x => x.Class.Contains("A"));
+ int a = oKSpotCheckDetails.Count(x => x.Class.Contains("A"));
num.num2 = a;
num.num3 = Alist.Count();
num.num1 = num.num3 - num.num2;
//B类
- var Blist = controlItemAndCycles.Where(x => x.ControlPoint.Contains("B"));
- int b = 0;
- foreach (var item in Blist)
- {
- if (item.CheckNum != 0) //检查次数为0表示一直检查
- {
- List details = oKSpotCheckDetails.Where(x => x.ControlItemAndCycleId == item.ControlItemAndCycleId).ToList();
- if (details.Count == item.CheckNum) //检查次数已达到最大值
- {
- b++;
- }
- }
- }
+ var Blist = controlItemAndCycles.Where(x => x.Class.Contains("B"));
+ int b = oKSpotCheckDetails.Count(x => x.Class.Contains("B"));
num.num5 = b;
num.num6 = Blist.Count();
num.num4 = num.num6 - num.num5;
//C类
- var Clist = controlItemAndCycles.Where(x => x.ControlPoint.Contains("C"));
- int c = 0;
- foreach (var item in Clist)
- {
- if (item.CheckNum != 0) //检查次数为0表示一直检查
- {
- List details = oKSpotCheckDetails.Where(x => x.ControlItemAndCycleId == item.ControlItemAndCycleId).ToList();
- if (details.Count == item.CheckNum) //检查次数已达到最大值
- {
- c++;
- }
- }
- }
+ var Clist = controlItemAndCycles.Where(x => x.Class.Contains("C"));
+ int c = oKSpotCheckDetails.Count(x => x.Class.Contains("C"));
num.num8 = c;
num.num9 = Clist.Count();
num.num7 = num.num9 - num.num8;
@@ -159,7 +125,9 @@ namespace FineUIPro.Web
businessColumn.title = "质量问题统计";
businessColumn.xFontNum = 8;
var units = BLL.ProjectUnitService.GetProjectUnitListByProjectIdUnitType(CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2);
- var checks = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ var checks = from x in Funs.DB.Check_CheckControl
+ where x.CheckDate <= DateTime.Now && x.ProjectId == CurrUser.LoginProjectId
+ select x;
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
@@ -169,7 +137,7 @@ namespace FineUIPro.Web
{
listCategories.Add(BLL.UnitService.GetShortUnitNameByUnitId(unit.UnitId));
var unitChecks = checks.Where(x => x.UnitId == unit.UnitId);
- okNum = unitChecks.Where(x => x.OK == 1).Count();
+ okNum = unitChecks.Where(x => x.State == "7").Count();
listdata.Add(unitChecks.Count() - okNum);
listdata2.Add(okNum);
}
@@ -193,8 +161,9 @@ namespace FineUIPro.Web
businessColumn.title = "质量问题统计";
businessColumn.xFontNum = 5;
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
- unitWorks = unitWorks.Where(x => x.ProjectType == "2").ToList();
- var checks = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ var checks = from x in Funs.DB.Check_CheckControl
+ where x.CheckDate <= DateTime.Now && x.ProjectId == CurrUser.LoginProjectId
+ select x;
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
@@ -204,7 +173,7 @@ namespace FineUIPro.Web
{
listCategories.Add(unitWork.UnitWorkName);
var unitChecks = checks.Where(x => x.UnitWorkId == unitWork.UnitWorkId);
- okNum = unitChecks.Where(x => x.OK == 1).Count();
+ okNum = unitChecks.Where(x => x.State == "7").Count();
listdata.Add(unitChecks.Count() - okNum);
listdata2.Add(okNum);
}
@@ -228,7 +197,9 @@ namespace FineUIPro.Web
businessColumn.title = "质量问题统计";
businessColumn.xFontNum = 5;
var cns = BLL.CNProfessionalService.GetList();
- var checks = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ var checks = from x in Funs.DB.Check_CheckControl
+ where x.CheckDate <= DateTime.Now && x.ProjectId == CurrUser.LoginProjectId
+ select x;
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
@@ -238,7 +209,7 @@ namespace FineUIPro.Web
{
listCategories.Add(cn.ProfessionalName);
var unitChecks = checks.Where(x => x.CNProfessionalCode == cn.CNProfessionalId);
- okNum = unitChecks.Where(x => x.OK == 1).Count();
+ okNum = unitChecks.Where(x => x.State == "7").Count();
listdata.Add(unitChecks.Count() - okNum);
listdata2.Add(okNum);
}
@@ -263,7 +234,9 @@ namespace FineUIPro.Web
businessColumn.xFontNum = 5;
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
unitWorks = unitWorks.Where(x => x.ProjectType == "1").ToList();
- var checks = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ var checks = from x in Funs.DB.Check_CheckControl
+ where x.CheckDate <= DateTime.Now && x.ProjectId == CurrUser.LoginProjectId
+ select x;
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
@@ -273,7 +246,7 @@ namespace FineUIPro.Web
{
listCategories.Add(unitWork.UnitWorkName);
var unitChecks = checks.Where(x => x.UnitWorkId == unitWork.UnitWorkId);
- okNum = unitChecks.Where(x => x.OK == 1).Count();
+ okNum = unitChecks.Where(x => x.State == "7").Count();
listdata.Add(unitChecks.Count() - okNum);
listdata2.Add(okNum);
}
@@ -297,10 +270,14 @@ namespace FineUIPro.Web
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List listCategories = new List();
businessColumn.title = "质量一次合格率";
+ Model.SGGLDB db = Funs.DB;
var units = BLL.ProjectUnitService.GetProjectUnitListByProjectIdUnitType(CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2);
- List TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
- List TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
- List totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ List TotalCheckDetailOKLists = (from x in db.ProcessControl_InspectionManagement
+ where x.ProjectId == this.CurrUser.LoginProjectId && x.IsOnceQualified == true
+ select x).ToList();
+ List TotalCheckDetailLists = (from x in db.ProcessControl_InspectionManagement
+ where x.ProjectId == this.CurrUser.LoginProjectId
+ select x).ToList();
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
@@ -317,13 +294,10 @@ namespace FineUIPro.Web
var b = Convert.ToDouble(totalChecks.Count);
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
}
- var dataOkChecks = totalCheckDetailDataOKLists.Where(x => x.UnitId == unit.UnitId).ToList();
- okChecks = okChecks.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
- if (dataOkChecks.Count > 0 && okChecks.Count > 0)
+ var ndtList = (from x in db.ProcessControl_NondestructiveTest_New where x.ProfessionalName == "工艺管道" && x.UnitId == unit.UnitId && x.ProjectId == this.CurrUser.LoginProjectId orderby x.CreateDate descending select x).FirstOrDefault();
+ if (ndtList != null && !string.IsNullOrEmpty(ndtList.TotalRate))
{
- var a = Convert.ToDouble(dataOkChecks.Count);
- var b = Convert.ToDouble(okChecks.Count);
- result2 = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
+ result2 = Convert.ToDouble(ndtList.TotalRate);
}
listdata.Add(result);
listdata2.Add(result2);
@@ -349,9 +323,13 @@ namespace FineUIPro.Web
List listCategories = new List();
businessColumn.title = "质量一次合格率";
var cns = BLL.CNProfessionalService.GetList();
- List TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
- List TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
- List totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ Model.SGGLDB db = Funs.DB;
+ List TotalCheckDetailOKLists = (from x in db.ProcessControl_InspectionManagement
+ where x.ProjectId == this.CurrUser.LoginProjectId && x.IsOnceQualified == true
+ select x).ToList();
+ List TotalCheckDetailLists = (from x in db.ProcessControl_InspectionManagement
+ where x.ProjectId == this.CurrUser.LoginProjectId
+ select x).ToList();
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
@@ -360,21 +338,21 @@ namespace FineUIPro.Web
foreach (var cn in cns)
{
listCategories.Add(cn.ProfessionalName);
- var okChecks = TotalCheckDetailOKLists.Where(x => x.CNProfessionalCode == cn.CNProfessionalId).ToList();
- var totalChecks = TotalCheckDetailLists.Where(x => x.CNProfessionalCode == cn.CNProfessionalId).ToList();
+ var okChecks = TotalCheckDetailOKLists.Where(x => x.CNProfessionalId == cn.CNProfessionalId).ToList();
+ var totalChecks = TotalCheckDetailLists.Where(x => x.CNProfessionalId == cn.CNProfessionalId).ToList();
if (okChecks.Count > 0 && totalChecks.Count > 0)
{
var a = Convert.ToDouble(okChecks.Count);
var b = Convert.ToDouble(totalChecks.Count);
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
}
- var dataOkChecks = totalCheckDetailDataOKLists.Where(x => x.CNProfessionalCode == cn.CNProfessionalId).ToList();
- okChecks = okChecks.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
- if (dataOkChecks.Count > 0 && okChecks.Count > 0)
+ if (cn.ProfessionalName.Contains("管道"))
{
- var a = Convert.ToDouble(dataOkChecks.Count);
- var b = Convert.ToDouble(okChecks.Count);
- result2 = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
+ var ndtList = (from x in db.ProcessControl_NondestructiveTest_New where x.ProfessionalName == "工艺管道" && x.ProjectId == this.CurrUser.LoginProjectId orderby x.CreateDate descending select x).FirstOrDefault();
+ if (ndtList != null && !string.IsNullOrEmpty(ndtList.TotalRate))
+ {
+ result2 = Convert.ToDouble(ndtList.TotalRate);
+ }
}
listdata.Add(result);
listdata2.Add(result2);
@@ -399,44 +377,33 @@ namespace FineUIPro.Web
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
List listCategories = new List();
businessColumn.title = "质量一次合格率";
+ Model.SGGLDB db = Funs.DB;
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
- unitWorks = unitWorks.Where(x => x.ProjectType == "2").ToList();
- List TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
- List TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
- List totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
+ var TotalCheckDetailOKLists = from x in db.ProcessControl_InspectionManagementDetail
+ join y in db.ProcessControl_InspectionManagement on x.InspectionId equals y.InspectionId
+ join z in db.WBS_BreakdownProject on x.ControlPointType equals z.BreakdownProjectId
+ where y.ProjectId == this.CurrUser.LoginProjectId
+ select new { z.UnitWorkId, y.IsOnceQualified };
Model.SingleSerie s = new Model.SingleSerie();
Model.SingleSerie s2 = new Model.SingleSerie();
List listdata = new List();
- List listdata2 = new List();
- double result = 0, result2 = 0;
+ double result = 0;
foreach (var unitWork in unitWorks)
{
listCategories.Add(unitWork.UnitWorkName);
- var okChecks = TotalCheckDetailOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
- var totalChecks = TotalCheckDetailLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
+ var okChecks = TotalCheckDetailOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId && x.IsOnceQualified == true).ToList();
+ var totalChecks = TotalCheckDetailOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
if (okChecks.Count > 0 && totalChecks.Count > 0)
{
var a = Convert.ToDouble(okChecks.Count);
var b = Convert.ToDouble(totalChecks.Count);
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
}
- var dataOkChecks = totalCheckDetailDataOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
- okChecks = okChecks.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
- if (dataOkChecks.Count > 0 && okChecks.Count > 0)
- {
- var a = Convert.ToDouble(dataOkChecks.Count);
- var b = Convert.ToDouble(okChecks.Count);
- result2 = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
- }
listdata.Add(result);
- listdata2.Add(result2);
result = 0;
- result2 = 0;
}
s.data = listdata;
- s2.data = listdata2;
series.Add(s);
- series.Add(s2);
businessColumn.categories = listCategories;
businessColumn.series = series;
return JsonConvert.SerializeObject(businessColumn);