提交代码
This commit is contained in:
parent
1bd8090ab4
commit
9c2298c68f
|
@ -153,11 +153,9 @@
|
||||||
<div class="bw-b-bottom-up">
|
<div class="bw-b-bottom-up">
|
||||||
<div class="tab-wrap">
|
<div class="tab-wrap">
|
||||||
<div class="tab" data-value="2">
|
<div class="tab" data-value="2">
|
||||||
<div class="t-item ">施工分包商</div>
|
<div class="t-item active">施工分包商</div>
|
||||||
<div class="spline"></div>
|
<div class="spline"></div>
|
||||||
<div class="t-item active">安装单位工程</div>
|
<div class="t-item">单位工程</div>
|
||||||
<div class="spline"></div>
|
|
||||||
<div class="t-item">建筑单位工程</div>
|
|
||||||
<div class="spline"></div>
|
<div class="spline"></div>
|
||||||
<div class="t-item">专业</div>
|
<div class="t-item">专业</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -193,9 +191,7 @@
|
||||||
<div class="bw-b-bottom-up">
|
<div class="bw-b-bottom-up">
|
||||||
<div class="tab-wrap">
|
<div class="tab-wrap">
|
||||||
<div class="tab" data-value="4">
|
<div class="tab" data-value="4">
|
||||||
<div class="t-item active">安装单位工程</div>
|
<div class="t-item active">单位工程</div>
|
||||||
<div class="spline"></div>
|
|
||||||
<div class="t-item">建筑单位工程</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="bw-item-content">
|
<div class="bw-item-content">
|
||||||
|
@ -296,7 +292,7 @@
|
||||||
var one2 =<%=One2 %>
|
var one2 =<%=One2 %>
|
||||||
var one3 =<%=One3 %>
|
var one3 =<%=One3 %>
|
||||||
category_One('one1', "质量验收一次合格率", one1, one1 + "%")
|
category_One('one1', "质量验收一次合格率", one1, one1 + "%")
|
||||||
category_One('one2', "施工资料同步率", one2, one2 + "%")
|
category_One('one2', "焊接一次拍片合格率", one2, one2 + "%")
|
||||||
category_One('one3', "质量问题整改完成率", one3, one3 + "%")
|
category_One('one3', "质量问题整改完成率", one3, one3 + "%")
|
||||||
</script>
|
</script>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
|
@ -587,7 +583,7 @@
|
||||||
textStyle: {
|
textStyle: {
|
||||||
color: 'rgba(255, 255, 255, 0.8)'
|
color: 'rgba(255, 255, 255, 0.8)'
|
||||||
}
|
}
|
||||||
}
|
},
|
||||||
},
|
},
|
||||||
series: data,
|
series: data,
|
||||||
grid: {
|
grid: {
|
||||||
|
@ -608,7 +604,7 @@
|
||||||
// 使用刚指定的配置项和数据显示图表。
|
// 使用刚指定的配置项和数据显示图表。
|
||||||
myChart.setOption(option)
|
myChart.setOption(option)
|
||||||
}
|
}
|
||||||
var two2 =<%=Two2 %>;
|
var two2 =<%=Two %>;
|
||||||
//var xArr = ["分包1", "分包2", "分包3", "分包4", "分包5", "分包6", "分包7", "分包8", "分包9"]
|
//var xArr = ["分包1", "分包2", "分包3", "分包4", "分包5", "分包6", "分包7", "分包8", "分包9"]
|
||||||
var xArr = two2.categories
|
var xArr = two2.categories
|
||||||
var data = [
|
var data = [
|
||||||
|
@ -619,6 +615,15 @@
|
||||||
barWidth: 40,
|
barWidth: 40,
|
||||||
//data: [3, 5, 8, 10, 6, 4, 5, 9, 12],
|
//data: [3, 5, 8, 10, 6, 4, 5, 9, 12],
|
||||||
data: two2.series[0].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -628,6 +633,15 @@
|
||||||
barWidth: 40,
|
barWidth: 40,
|
||||||
//data: [2, 7, 5, 9, 12, 9, 2, 8, 10],
|
//data: [2, 7, 5, 9, 12, 9, 2, 8, 10],
|
||||||
data: two2.series[1].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -728,7 +742,7 @@
|
||||||
itemStyle: { normal: { color: 'rgba(43,155,176,1)' } }
|
itemStyle: { normal: { color: 'rgba(43,155,176,1)' } }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: '施工资料同步率',
|
name: '焊接一次拍片合格率',
|
||||||
type: 'bar',
|
type: 'bar',
|
||||||
data: three.series[1].data,
|
data: three.series[1].data,
|
||||||
barCategoryGap: 10,
|
barCategoryGap: 10,
|
||||||
|
@ -849,15 +863,16 @@
|
||||||
barWidth: 30,
|
barWidth: 30,
|
||||||
barGap: 0,
|
barGap: 0,
|
||||||
data: four.series[0].data,
|
data: four.series[0].data,
|
||||||
|
label: { //柱体上显示数值
|
||||||
|
show: true,//开启显示
|
||||||
|
position: ['0%', '50%'],//在上方显示
|
||||||
|
textStyle: {//数值样式
|
||||||
|
fontSize: '20px',
|
||||||
|
color: '#fff'
|
||||||
|
},
|
||||||
|
formatter: '{c}',
|
||||||
|
},
|
||||||
itemStyle: { normal: { color: 'rgba(43,155,176,1)' } }
|
itemStyle: { normal: { color: 'rgba(43,155,176,1)' } }
|
||||||
},
|
|
||||||
{
|
|
||||||
name: '施工资料同步率',
|
|
||||||
type: 'bar',
|
|
||||||
data: four.series[1].data,
|
|
||||||
barWidth: 30,
|
|
||||||
//barCategoryGap:20,
|
|
||||||
itemStyle: { normal: { color: 'rgba(140,202,214, 1)' } }
|
|
||||||
}];
|
}];
|
||||||
category('four', xArr, series)
|
category('four', xArr, series)
|
||||||
</script>
|
</script>
|
||||||
|
@ -892,6 +907,15 @@
|
||||||
stack: '总量',
|
stack: '总量',
|
||||||
//data: [3, 5, 8, 10, 6, 4, 5, 9, 12],
|
//data: [3, 5, 8, 10, 6, 4, 5, 9, 12],
|
||||||
data: two.series[0].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -900,6 +924,15 @@
|
||||||
stack: '总量',
|
stack: '总量',
|
||||||
//data: [2, 7, 5, 9, 12, 9, 2, 8, 10],
|
//data: [2, 7, 5, 9, 12, 9, 2, 8, 10],
|
||||||
data: two.series[1].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
@ -914,6 +947,15 @@
|
||||||
stack: '总量',
|
stack: '总量',
|
||||||
//data: [13, 5, 18, 10, 6, 4, 5, 9, 22],
|
//data: [13, 5, 18, 10, 6, 4, 5, 9, 22],
|
||||||
data: two2.series[0].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -922,35 +964,21 @@
|
||||||
stack: '总量',
|
stack: '总量',
|
||||||
//data: [2, 7, 15, 9, 12, 29, 12, 18, 10],
|
//data: [2, 7, 15, 9, 12, 29, 12, 18, 10],
|
||||||
data: two2.series[1].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
num = two2.xFontNum;
|
num = two2.xFontNum;
|
||||||
}
|
}
|
||||||
else if (index == 4) {
|
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 = ["专业1", "专业2", "专业3", "专业4", "专业5", "专业6", "专业7", "专业8", "专业9"]
|
||||||
xArr = two3.categories
|
xArr = two3.categories
|
||||||
data = [
|
data = [
|
||||||
|
@ -960,6 +988,15 @@
|
||||||
stack: '总量',
|
stack: '总量',
|
||||||
//data: [23, 25, 18, 10, 16, 4, 5, 29, 2],
|
//data: [23, 25, 18, 10, 16, 4, 5, 29, 2],
|
||||||
data: two3.series[0].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(162,63,21, 1)' } }
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -968,6 +1005,15 @@
|
||||||
stack: '总量',
|
stack: '总量',
|
||||||
//data: [2, 27, 15, 9, 12, 29, 32, 18, 1],
|
//data: [2, 27, 15, 9, 12, 29, 32, 18, 1],
|
||||||
data: two3.series[1].data,
|
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)' } }
|
itemStyle: { normal: { color: 'rgba(206,143,135,1)' } }
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
|
@ -38,20 +38,17 @@ namespace FineUIPro.Web
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 项目施工资料同步率
|
#region 焊接一次拍片合格率
|
||||||
protected string One2
|
protected string One2
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
List<Model.View_Check_SoptCheckDetail> totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
|
||||||
List<Model.View_Check_SoptCheckDetail> totalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
|
|
||||||
totalCheckDetailOKLists = totalCheckDetailOKLists.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
|
|
||||||
double result = 0;
|
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);
|
result = Convert.ToDouble(ndtList.TotalRate) / 100;
|
||||||
var b = Convert.ToDouble(totalCheckDetailOKLists.Count);
|
|
||||||
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
|
||||||
}
|
}
|
||||||
return JsonConvert.SerializeObject(result);
|
return JsonConvert.SerializeObject(result);
|
||||||
}
|
}
|
||||||
|
@ -83,63 +80,32 @@ namespace FineUIPro.Web
|
||||||
{
|
{
|
||||||
var db = new Model.SGGLDB(Funs.ConnString);
|
var db = new Model.SGGLDB(Funs.ConnString);
|
||||||
Model.Num num = new Model.Num();
|
Model.Num num = new Model.Num();
|
||||||
var controlItemAndCycles = (from x in db.WBS_ControlItemAndCycle
|
var controlItemAndCycles = from x in db.WBS_BreakdownProject
|
||||||
where x.ProjectId == CurrUser.LoginProjectId && x.IsApprove == true
|
where x.ProjectId == CurrUser.LoginProjectId && x.IsSelected == true
|
||||||
orderby x.ControlItemAndCycleCode
|
orderby x.BreakdownCode
|
||||||
select x).ToList();
|
select x;
|
||||||
var oKSpotCheckDetails = (from x in db.Check_SpotCheckDetail
|
var oKSpotCheckDetails = (from x in db.ProcessControl_InspectionManagementDetail
|
||||||
join y in db.Check_SpotCheck
|
join y in db.ProcessControl_InspectionManagement
|
||||||
on x.SpotCheckCode equals y.SpotCheckCode
|
on x.InspectionId equals y.InspectionId
|
||||||
where x.IsOK == true && y.ProjectId == CurrUser.LoginProjectId
|
join z in db.WBS_BreakdownProject
|
||||||
select x).ToList();
|
on x.ControlPointType equals z.BreakdownProjectId
|
||||||
|
where y.IsOnceQualified == true && y.ProjectId == CurrUser.LoginProjectId
|
||||||
|
select new { x.ControlPointType, z.Class }).Distinct().ToList();
|
||||||
//A类
|
//A类
|
||||||
var Alist = controlItemAndCycles.Where(x => x.ControlPoint.Contains("A"));
|
var Alist = controlItemAndCycles.Where(x => x.Class.Contains("A"));
|
||||||
int a = 0;
|
int a = oKSpotCheckDetails.Count(x => x.Class.Contains("A"));
|
||||||
foreach (var item in Alist)
|
|
||||||
{
|
|
||||||
if (item.CheckNum != 0) //检查次数为0表示一直检查
|
|
||||||
{
|
|
||||||
List<Model.Check_SpotCheckDetail> details = oKSpotCheckDetails.Where(x => x.ControlItemAndCycleId == item.ControlItemAndCycleId).ToList();
|
|
||||||
if (details.Count == item.CheckNum) //检查次数已达到最大值
|
|
||||||
{
|
|
||||||
a++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
num.num2 = a;
|
num.num2 = a;
|
||||||
num.num3 = Alist.Count();
|
num.num3 = Alist.Count();
|
||||||
num.num1 = num.num3 - num.num2;
|
num.num1 = num.num3 - num.num2;
|
||||||
//B类
|
//B类
|
||||||
var Blist = controlItemAndCycles.Where(x => x.ControlPoint.Contains("B"));
|
var Blist = controlItemAndCycles.Where(x => x.Class.Contains("B"));
|
||||||
int b = 0;
|
int b = oKSpotCheckDetails.Count(x => x.Class.Contains("B"));
|
||||||
foreach (var item in Blist)
|
|
||||||
{
|
|
||||||
if (item.CheckNum != 0) //检查次数为0表示一直检查
|
|
||||||
{
|
|
||||||
List<Model.Check_SpotCheckDetail> details = oKSpotCheckDetails.Where(x => x.ControlItemAndCycleId == item.ControlItemAndCycleId).ToList();
|
|
||||||
if (details.Count == item.CheckNum) //检查次数已达到最大值
|
|
||||||
{
|
|
||||||
b++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
num.num5 = b;
|
num.num5 = b;
|
||||||
num.num6 = Blist.Count();
|
num.num6 = Blist.Count();
|
||||||
num.num4 = num.num6 - num.num5;
|
num.num4 = num.num6 - num.num5;
|
||||||
//C类
|
//C类
|
||||||
var Clist = controlItemAndCycles.Where(x => x.ControlPoint.Contains("C"));
|
var Clist = controlItemAndCycles.Where(x => x.Class.Contains("C"));
|
||||||
int c = 0;
|
int c = oKSpotCheckDetails.Count(x => x.Class.Contains("C"));
|
||||||
foreach (var item in Clist)
|
|
||||||
{
|
|
||||||
if (item.CheckNum != 0) //检查次数为0表示一直检查
|
|
||||||
{
|
|
||||||
List<Model.Check_SpotCheckDetail> details = oKSpotCheckDetails.Where(x => x.ControlItemAndCycleId == item.ControlItemAndCycleId).ToList();
|
|
||||||
if (details.Count == item.CheckNum) //检查次数已达到最大值
|
|
||||||
{
|
|
||||||
c++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
num.num8 = c;
|
num.num8 = c;
|
||||||
num.num9 = Clist.Count();
|
num.num9 = Clist.Count();
|
||||||
num.num7 = num.num9 - num.num8;
|
num.num7 = num.num9 - num.num8;
|
||||||
|
@ -159,7 +125,9 @@ namespace FineUIPro.Web
|
||||||
businessColumn.title = "质量问题统计";
|
businessColumn.title = "质量问题统计";
|
||||||
businessColumn.xFontNum = 8;
|
businessColumn.xFontNum = 8;
|
||||||
var units = BLL.ProjectUnitService.GetProjectUnitListByProjectIdUnitType(CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2);
|
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 s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
|
@ -169,7 +137,7 @@ namespace FineUIPro.Web
|
||||||
{
|
{
|
||||||
listCategories.Add(BLL.UnitService.GetShortUnitNameByUnitId(unit.UnitId));
|
listCategories.Add(BLL.UnitService.GetShortUnitNameByUnitId(unit.UnitId));
|
||||||
var unitChecks = checks.Where(x => x.UnitId == 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);
|
listdata.Add(unitChecks.Count() - okNum);
|
||||||
listdata2.Add(okNum);
|
listdata2.Add(okNum);
|
||||||
}
|
}
|
||||||
|
@ -193,8 +161,9 @@ namespace FineUIPro.Web
|
||||||
businessColumn.title = "质量问题统计";
|
businessColumn.title = "质量问题统计";
|
||||||
businessColumn.xFontNum = 5;
|
businessColumn.xFontNum = 5;
|
||||||
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
||||||
unitWorks = unitWorks.Where(x => x.ProjectType == "2").ToList();
|
var checks = from x in Funs.DB.Check_CheckControl
|
||||||
var checks = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
where x.CheckDate <= DateTime.Now && x.ProjectId == CurrUser.LoginProjectId
|
||||||
|
select x;
|
||||||
Model.SingleSerie s = new Model.SingleSerie();
|
Model.SingleSerie s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
|
@ -204,7 +173,7 @@ namespace FineUIPro.Web
|
||||||
{
|
{
|
||||||
listCategories.Add(unitWork.UnitWorkName);
|
listCategories.Add(unitWork.UnitWorkName);
|
||||||
var unitChecks = checks.Where(x => x.UnitWorkId == unitWork.UnitWorkId);
|
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);
|
listdata.Add(unitChecks.Count() - okNum);
|
||||||
listdata2.Add(okNum);
|
listdata2.Add(okNum);
|
||||||
}
|
}
|
||||||
|
@ -228,7 +197,9 @@ namespace FineUIPro.Web
|
||||||
businessColumn.title = "质量问题统计";
|
businessColumn.title = "质量问题统计";
|
||||||
businessColumn.xFontNum = 5;
|
businessColumn.xFontNum = 5;
|
||||||
var cns = BLL.CNProfessionalService.GetList();
|
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 s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
|
@ -238,7 +209,7 @@ namespace FineUIPro.Web
|
||||||
{
|
{
|
||||||
listCategories.Add(cn.ProfessionalName);
|
listCategories.Add(cn.ProfessionalName);
|
||||||
var unitChecks = checks.Where(x => x.CNProfessionalCode == cn.CNProfessionalId);
|
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);
|
listdata.Add(unitChecks.Count() - okNum);
|
||||||
listdata2.Add(okNum);
|
listdata2.Add(okNum);
|
||||||
}
|
}
|
||||||
|
@ -263,7 +234,9 @@ namespace FineUIPro.Web
|
||||||
businessColumn.xFontNum = 5;
|
businessColumn.xFontNum = 5;
|
||||||
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
||||||
unitWorks = unitWorks.Where(x => x.ProjectType == "1").ToList();
|
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 s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
|
@ -273,7 +246,7 @@ namespace FineUIPro.Web
|
||||||
{
|
{
|
||||||
listCategories.Add(unitWork.UnitWorkName);
|
listCategories.Add(unitWork.UnitWorkName);
|
||||||
var unitChecks = checks.Where(x => x.UnitWorkId == unitWork.UnitWorkId);
|
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);
|
listdata.Add(unitChecks.Count() - okNum);
|
||||||
listdata2.Add(okNum);
|
listdata2.Add(okNum);
|
||||||
}
|
}
|
||||||
|
@ -297,10 +270,14 @@ namespace FineUIPro.Web
|
||||||
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
|
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
|
||||||
List<string> listCategories = new List<string>();
|
List<string> listCategories = new List<string>();
|
||||||
businessColumn.title = "质量一次合格率";
|
businessColumn.title = "质量一次合格率";
|
||||||
|
Model.SGGLDB db = Funs.DB;
|
||||||
var units = BLL.ProjectUnitService.GetProjectUnitListByProjectIdUnitType(CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2);
|
var units = BLL.ProjectUnitService.GetProjectUnitListByProjectIdUnitType(CurrUser.LoginProjectId, BLL.Const.ProjectUnitType_2);
|
||||||
List<Model.View_Check_SoptCheckDetail> TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
|
List<Model.ProcessControl_InspectionManagement> TotalCheckDetailOKLists = (from x in db.ProcessControl_InspectionManagement
|
||||||
List<Model.View_Check_SoptCheckDetail> TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
where x.ProjectId == this.CurrUser.LoginProjectId && x.IsOnceQualified == true
|
||||||
List<Model.View_Check_SoptCheckDetail> totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
select x).ToList();
|
||||||
|
List<Model.ProcessControl_InspectionManagement> TotalCheckDetailLists = (from x in db.ProcessControl_InspectionManagement
|
||||||
|
where x.ProjectId == this.CurrUser.LoginProjectId
|
||||||
|
select x).ToList();
|
||||||
Model.SingleSerie s = new Model.SingleSerie();
|
Model.SingleSerie s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
|
@ -317,13 +294,10 @@ namespace FineUIPro.Web
|
||||||
var b = Convert.ToDouble(totalChecks.Count);
|
var b = Convert.ToDouble(totalChecks.Count);
|
||||||
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
||||||
}
|
}
|
||||||
var dataOkChecks = totalCheckDetailDataOKLists.Where(x => x.UnitId == unit.UnitId).ToList();
|
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();
|
||||||
okChecks = okChecks.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
|
if (ndtList != null && !string.IsNullOrEmpty(ndtList.TotalRate))
|
||||||
if (dataOkChecks.Count > 0 && okChecks.Count > 0)
|
|
||||||
{
|
{
|
||||||
var a = Convert.ToDouble(dataOkChecks.Count);
|
result2 = Convert.ToDouble(ndtList.TotalRate);
|
||||||
var b = Convert.ToDouble(okChecks.Count);
|
|
||||||
result2 = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
|
||||||
}
|
}
|
||||||
listdata.Add(result);
|
listdata.Add(result);
|
||||||
listdata2.Add(result2);
|
listdata2.Add(result2);
|
||||||
|
@ -349,9 +323,13 @@ namespace FineUIPro.Web
|
||||||
List<string> listCategories = new List<string>();
|
List<string> listCategories = new List<string>();
|
||||||
businessColumn.title = "质量一次合格率";
|
businessColumn.title = "质量一次合格率";
|
||||||
var cns = BLL.CNProfessionalService.GetList();
|
var cns = BLL.CNProfessionalService.GetList();
|
||||||
List<Model.View_Check_SoptCheckDetail> TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
|
Model.SGGLDB db = Funs.DB;
|
||||||
List<Model.View_Check_SoptCheckDetail> TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
List<Model.ProcessControl_InspectionManagement> TotalCheckDetailOKLists = (from x in db.ProcessControl_InspectionManagement
|
||||||
List<Model.View_Check_SoptCheckDetail> totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
where x.ProjectId == this.CurrUser.LoginProjectId && x.IsOnceQualified == true
|
||||||
|
select x).ToList();
|
||||||
|
List<Model.ProcessControl_InspectionManagement> TotalCheckDetailLists = (from x in db.ProcessControl_InspectionManagement
|
||||||
|
where x.ProjectId == this.CurrUser.LoginProjectId
|
||||||
|
select x).ToList();
|
||||||
Model.SingleSerie s = new Model.SingleSerie();
|
Model.SingleSerie s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
|
@ -360,21 +338,21 @@ namespace FineUIPro.Web
|
||||||
foreach (var cn in cns)
|
foreach (var cn in cns)
|
||||||
{
|
{
|
||||||
listCategories.Add(cn.ProfessionalName);
|
listCategories.Add(cn.ProfessionalName);
|
||||||
var okChecks = TotalCheckDetailOKLists.Where(x => x.CNProfessionalCode == cn.CNProfessionalId).ToList();
|
var okChecks = TotalCheckDetailOKLists.Where(x => x.CNProfessionalId == cn.CNProfessionalId).ToList();
|
||||||
var totalChecks = TotalCheckDetailLists.Where(x => x.CNProfessionalCode == cn.CNProfessionalId).ToList();
|
var totalChecks = TotalCheckDetailLists.Where(x => x.CNProfessionalId == cn.CNProfessionalId).ToList();
|
||||||
if (okChecks.Count > 0 && totalChecks.Count > 0)
|
if (okChecks.Count > 0 && totalChecks.Count > 0)
|
||||||
{
|
{
|
||||||
var a = Convert.ToDouble(okChecks.Count);
|
var a = Convert.ToDouble(okChecks.Count);
|
||||||
var b = Convert.ToDouble(totalChecks.Count);
|
var b = Convert.ToDouble(totalChecks.Count);
|
||||||
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
||||||
}
|
}
|
||||||
var dataOkChecks = totalCheckDetailDataOKLists.Where(x => x.CNProfessionalCode == cn.CNProfessionalId).ToList();
|
if (cn.ProfessionalName.Contains("管道"))
|
||||||
okChecks = okChecks.Where(x => x.IsShow == true).ToList(); //需要上传资料的IsShow为true
|
|
||||||
if (dataOkChecks.Count > 0 && okChecks.Count > 0)
|
|
||||||
{
|
{
|
||||||
var a = Convert.ToDouble(dataOkChecks.Count);
|
var ndtList = (from x in db.ProcessControl_NondestructiveTest_New where x.ProfessionalName == "工艺管道" && x.ProjectId == this.CurrUser.LoginProjectId orderby x.CreateDate descending select x).FirstOrDefault();
|
||||||
var b = Convert.ToDouble(okChecks.Count);
|
if (ndtList != null && !string.IsNullOrEmpty(ndtList.TotalRate))
|
||||||
result2 = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
{
|
||||||
|
result2 = Convert.ToDouble(ndtList.TotalRate);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
listdata.Add(result);
|
listdata.Add(result);
|
||||||
listdata2.Add(result2);
|
listdata2.Add(result2);
|
||||||
|
@ -399,44 +377,33 @@ namespace FineUIPro.Web
|
||||||
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
|
Model.BusinessColumn businessColumn = new Model.BusinessColumn();
|
||||||
List<string> listCategories = new List<string>();
|
List<string> listCategories = new List<string>();
|
||||||
businessColumn.title = "质量一次合格率";
|
businessColumn.title = "质量一次合格率";
|
||||||
|
Model.SGGLDB db = Funs.DB;
|
||||||
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
var unitWorks = BLL.UnitWorkService.GetUnitWorkLists(CurrUser.LoginProjectId);
|
||||||
unitWorks = unitWorks.Where(x => x.ProjectType == "2").ToList();
|
var TotalCheckDetailOKLists = from x in db.ProcessControl_InspectionManagementDetail
|
||||||
List<Model.View_Check_SoptCheckDetail> TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, DateTime.Now);
|
join y in db.ProcessControl_InspectionManagement on x.InspectionId equals y.InspectionId
|
||||||
List<Model.View_Check_SoptCheckDetail> TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
join z in db.WBS_BreakdownProject on x.ControlPointType equals z.BreakdownProjectId
|
||||||
List<Model.View_Check_SoptCheckDetail> totalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, DateTime.Now);
|
where y.ProjectId == this.CurrUser.LoginProjectId
|
||||||
|
select new { z.UnitWorkId, y.IsOnceQualified };
|
||||||
Model.SingleSerie s = new Model.SingleSerie();
|
Model.SingleSerie s = new Model.SingleSerie();
|
||||||
Model.SingleSerie s2 = new Model.SingleSerie();
|
Model.SingleSerie s2 = new Model.SingleSerie();
|
||||||
List<double> listdata = new List<double>();
|
List<double> listdata = new List<double>();
|
||||||
List<double> listdata2 = new List<double>();
|
double result = 0;
|
||||||
double result = 0, result2 = 0;
|
|
||||||
foreach (var unitWork in unitWorks)
|
foreach (var unitWork in unitWorks)
|
||||||
{
|
{
|
||||||
listCategories.Add(unitWork.UnitWorkName);
|
listCategories.Add(unitWork.UnitWorkName);
|
||||||
var okChecks = TotalCheckDetailOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
|
var okChecks = TotalCheckDetailOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId && x.IsOnceQualified == true).ToList();
|
||||||
var totalChecks = TotalCheckDetailLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
|
var totalChecks = TotalCheckDetailOKLists.Where(x => x.UnitWorkId == unitWork.UnitWorkId).ToList();
|
||||||
if (okChecks.Count > 0 && totalChecks.Count > 0)
|
if (okChecks.Count > 0 && totalChecks.Count > 0)
|
||||||
{
|
{
|
||||||
var a = Convert.ToDouble(okChecks.Count);
|
var a = Convert.ToDouble(okChecks.Count);
|
||||||
var b = Convert.ToDouble(totalChecks.Count);
|
var b = Convert.ToDouble(totalChecks.Count);
|
||||||
result = Convert.ToDouble(decimal.Round(decimal.Parse((a / b * 100).ToString()), 1));
|
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);
|
listdata.Add(result);
|
||||||
listdata2.Add(result2);
|
|
||||||
result = 0;
|
result = 0;
|
||||||
result2 = 0;
|
|
||||||
}
|
}
|
||||||
s.data = listdata;
|
s.data = listdata;
|
||||||
s2.data = listdata2;
|
|
||||||
series.Add(s);
|
series.Add(s);
|
||||||
series.Add(s2);
|
|
||||||
businessColumn.categories = listCategories;
|
businessColumn.categories = listCategories;
|
||||||
businessColumn.series = series;
|
businessColumn.series = series;
|
||||||
return JsonConvert.SerializeObject(businessColumn);
|
return JsonConvert.SerializeObject(businessColumn);
|
||||||
|
|
Loading…
Reference in New Issue