DashboardController.cs
4.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
using Hh.Mes.POJO.Response;
using Hh.Mes.Service.ApiService;
using Hh.Mes.Service.Equipment;
using Hh.Mes.Service.SystemAuth;
using Microsoft.AspNetCore.Mvc;
using System;
namespace WebMvc.Controllers
{
[Route("api/[controller]/[action]")]
[ApiController]
public class DashboardController : BaseController
{
private readonly DashboardService _dashboardService;
public DashboardController(IAuth authUtil, DashboardService dashboardService) : base(authUtil)
{
_dashboardService = dashboardService;
}
#region 故障报告
[HttpGet]
public string GetFaultReport(string yyyyMonth, string projectCode, string equipmentTypeCode)
{
var response = new Response();
var ds = _dashboardService.GetFaultReport(yyyyMonth, projectCode, equipmentTypeCode);
//当天是否在本周内
var nowDay = DateTime.Now;
var selectDay = Convert.ToDateTime(yyyyMonth);
var startWeekDay = nowDay.AddDays(-(int)nowDay.DayOfWeek + 1).ToString("yyyy-MM-dd 00:00:00");//当前周的周一日期
var weekOne = selectDay.AddDays(0 - (Convert.ToInt16(selectDay.DayOfWeek) == 0 ? 7 : Convert.ToInt16(selectDay.DayOfWeek)) + 1).ToString("yyyy-MM-dd 00:00:00");//当前所选周的周一日期
var isInterval = false;
if (startWeekDay == weekOne) isInterval = true;
response.Result = new
{
listMonth = ds.Item1.Tables[0],
listWeek = ds.Item1.Tables[1],
listAlarmSum40 = ds.Item1.Tables[2],
diffDay = ds.Item2,
monthStr = ds.Item3,
weekStr = ds.Item4,
weekDefault = ds.Item1.Tables[3],
properlyTarget = ds.Item1.Tables[4],
factoryTarget = ds.Item1.Tables[5],
};
return Serialize(response);
}
/// <summary>
/// 故障报告-本周故障分析-具体每天故障分析
/// </summary>
/// <param name="startTime"></param>
/// <param name="endTime"></param>
/// <returns></returns>
[HttpGet]
public string GetEquipmentWeekDayFaultInfo(string startTime, string endTime, string projectCode)
{
var response = new Response();
var result = _dashboardService.GetEquipmentWeekDayFaultInfo(startTime, endTime, projectCode);
response.Result = new
{
top = result.Tables[0],
table = result.Tables[1],
};
response.Count = result.Tables[1].Rows.Count;
return Serialize(response);
}
#endregion
#region 故障分析
/// <summary>
/// 故障統計分析
/// </summary>
/// <returns></returns>
[HttpGet]
public string FaultStatistics(string begin, string end, string projectCode,string equipmentTypeCode)
{
var response = new Response();
var result = _dashboardService.FaultStatistics(begin, end, projectCode,equipmentTypeCode);
response.Result = result.Item1;
response.Count = result.Item2;
return Serialize(response);
}
#endregion
#region 妥善率
/// <summary>
/// 妥善率趋势图
/// </summary>
/// <param name="startTime"></param>
/// <param name="endTime"></param>
/// <param name="yearOrdaySelectVal"></param>
/// <param name="timeFlag"></param>
/// <returns></returns>
[HttpGet]
public string GetProperRate(string startTime, string endTime, string yearOrdaySelectVal, string timeFlag,string projecCode,string equipmentTypeCode)
{
var response = new Response();
var result = _dashboardService.GetProperRate(startTime, endTime, yearOrdaySelectVal, timeFlag,projecCode,equipmentTypeCode);
response.Result = result;
response.Count = result.Rows.Count;
return Serialize(response);
}
#endregion
}
}