问题修改
This commit is contained in:
parent
bff52f8137
commit
46dfa6338d
|
|
@ -229,6 +229,7 @@ public class ParamSecureHandler implements AsyncHandlerInterceptor {
|
||||||
* 判断是否越权
|
* 判断是否越权
|
||||||
*/
|
*/
|
||||||
private boolean checkIsYq(HttpServletRequest request) throws Exception {
|
private boolean checkIsYq(HttpServletRequest request) throws Exception {
|
||||||
|
|
||||||
String head=request.getHeader(SecurityConstants.FROM_SOURCE);
|
String head=request.getHeader(SecurityConstants.FROM_SOURCE);
|
||||||
if(SecurityConstants.INNER.equals(head)){
|
if(SecurityConstants.INNER.equals(head)){
|
||||||
return true;
|
return true;
|
||||||
|
|
|
||||||
|
|
@ -35,16 +35,6 @@ public class SjMaxDeviceServiceImpl implements SjMaxDeviceService{
|
||||||
String endTime = endDate.toString();
|
String endTime = endDate.toString();
|
||||||
o.setStartTime(startTime);
|
o.setStartTime(startTime);
|
||||||
o.setEndTime(endTime);
|
o.setEndTime(endTime);
|
||||||
String sql = "SELECT DATE_ADD("+startTime+", INTERVAL (ones.a + tens.a * 10) DAY) AS dt\n" +
|
|
||||||
" FROM\n" +
|
|
||||||
" (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3\n" +
|
|
||||||
" UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7\n" +
|
|
||||||
" UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones\n" +
|
|
||||||
" CROSS JOIN\n" +
|
|
||||||
" (SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3\n" +
|
|
||||||
" UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens\n" +
|
|
||||||
" WHERE DATE_ADD("+startTime+", INTERVAL (ones.a + tens.a * 10) DAY) <= "+endTime;
|
|
||||||
o.setSql(sql);
|
|
||||||
List<SjMaxDevice> workerList = mapper.selectWorkerEcharts(o);
|
List<SjMaxDevice> workerList = mapper.selectWorkerEcharts(o);
|
||||||
result.put("workerEcharts", workerList);
|
result.put("workerEcharts", workerList);
|
||||||
result.put("todayDutyRate", 0);
|
result.put("todayDutyRate", 0);
|
||||||
|
|
@ -56,10 +46,10 @@ public class SjMaxDeviceServiceImpl implements SjMaxDeviceService{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//整体人员利用率和设备使用率
|
//整体人员利用率和设备使用率
|
||||||
double totalActualCount = list.stream()
|
double totalActualCount = workerList.stream()
|
||||||
.mapToDouble(SjMaxDevice::getActualCount)
|
.mapToDouble(SjMaxDevice::getActualCount)
|
||||||
.sum();
|
.sum();
|
||||||
double totalShouldCount = list.stream()
|
double totalShouldCount = workerList.stream()
|
||||||
.mapToDouble(SjMaxDevice::getShouldCount)
|
.mapToDouble(SjMaxDevice::getShouldCount)
|
||||||
.sum();
|
.sum();
|
||||||
double workerUtilization = 0;
|
double workerUtilization = 0;
|
||||||
|
|
|
||||||
|
|
@ -66,7 +66,18 @@ SELECT
|
||||||
COALESCE(p_summary.planned_count, 0) AS planned_count,
|
COALESCE(p_summary.planned_count, 0) AS planned_count,
|
||||||
COALESCE(a_summary.actual_count, 0) AS actual_count
|
COALESCE(a_summary.actual_count, 0) AS actual_count
|
||||||
FROM (
|
FROM (
|
||||||
#{sql}
|
|
||||||
|
SELECT DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) AS dt
|
||||||
|
FROM
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7
|
||||||
|
UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones
|
||||||
|
CROSS JOIN
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens
|
||||||
|
WHERE DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) <= #{endTime}
|
||||||
|
|
||||||
|
|
||||||
) AS date_list
|
) AS date_list
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
SELECT
|
SELECT
|
||||||
|
|
@ -74,7 +85,15 @@ SELECT
|
||||||
p.pro_type,
|
p.pro_type,
|
||||||
COUNT(p.id) AS planned_count
|
COUNT(p.id) AS planned_count
|
||||||
FROM (
|
FROM (
|
||||||
#{sql}
|
SELECT DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) AS dt
|
||||||
|
FROM
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7
|
||||||
|
UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones
|
||||||
|
CROSS JOIN
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens
|
||||||
|
WHERE DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) <= #{endTime}
|
||||||
) AS dl_inner
|
) AS dl_inner
|
||||||
INNER JOIN sj_construction_progress p
|
INNER JOIN sj_construction_progress p
|
||||||
ON dl_inner.dt BETWEEN p.plan_start_time AND p.plan_end_time
|
ON dl_inner.dt BETWEEN p.plan_start_time AND p.plan_end_time
|
||||||
|
|
@ -86,7 +105,15 @@ SELECT
|
||||||
a.pro_type,
|
a.pro_type,
|
||||||
COUNT(a.id) AS actual_count
|
COUNT(a.id) AS actual_count
|
||||||
FROM (
|
FROM (
|
||||||
#{sql}
|
SELECT DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) AS dt
|
||||||
|
FROM
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7
|
||||||
|
UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones
|
||||||
|
CROSS JOIN
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens
|
||||||
|
WHERE DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) <= #{endTime}
|
||||||
) AS dl_inner
|
) AS dl_inner
|
||||||
INNER JOIN sj_construction_progress a
|
INNER JOIN sj_construction_progress a
|
||||||
ON dl_inner.dt BETWEEN a.start_time AND a.end_time
|
ON dl_inner.dt BETWEEN a.start_time AND a.end_time
|
||||||
|
|
|
||||||
|
|
@ -100,7 +100,15 @@
|
||||||
(SELECT DISTINCT type FROM sj_energy_reduction WHERE type IS NOT NULL) t
|
(SELECT DISTINCT type FROM sj_energy_reduction WHERE type IS NOT NULL) t
|
||||||
CROSS JOIN
|
CROSS JOIN
|
||||||
-- 生成日期序列
|
-- 生成日期序列
|
||||||
( #{sql} ) AS date_list
|
( SELECT DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) AS dt
|
||||||
|
FROM
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7
|
||||||
|
UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones
|
||||||
|
CROSS JOIN
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens
|
||||||
|
WHERE DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) <= #{endTime} ) AS date_list
|
||||||
LEFT JOIN sj_energy_reduction e
|
LEFT JOIN sj_energy_reduction e
|
||||||
ON t.type = e.type
|
ON t.type = e.type
|
||||||
AND date_list.dt = e.create_time
|
AND date_list.dt = e.create_time
|
||||||
|
|
|
||||||
|
|
@ -25,19 +25,22 @@
|
||||||
</sql>
|
</sql>
|
||||||
|
|
||||||
<select id="selectDeviceEcharts" resultMap="BaseResultMap">
|
<select id="selectDeviceEcharts" resultMap="BaseResultMap">
|
||||||
SELECT dev_name,
|
SELECT
|
||||||
-- 入场天数:如果未出场,则算到今天
|
dev_name,
|
||||||
sum(DATEDIFF(IF(out_time IS NOT NULL AND out_time < CURDATE(), out_time, CURDATE()), in_time) +
|
-- 入场天数:如果未出场,则算到今天
|
||||||
1) AS ein_day,
|
IFNULL(SUM(
|
||||||
sum(used_day) AS used_day
|
DATEDIFF(IF(out_time IS NOT NULL AND out_time < CURDATE(), out_time, CURDATE()), in_time) + 1
|
||||||
|
), 0) AS ein_day,
|
||||||
|
-- 使用天数:直接求和,NULL 显示为 0
|
||||||
|
IFNULL(SUM(used_day), 0) AS used_day
|
||||||
FROM sj_max_device
|
FROM sj_max_device
|
||||||
WHERE
|
WHERE
|
||||||
-- 确保有入场时间
|
-- 确保有入场时间
|
||||||
in_time IS NOT NULL
|
in_time IS NOT NULL
|
||||||
-- 入场时间不能在未来
|
-- 入场时间不能在未来
|
||||||
AND in_time <= CURDATE()
|
AND in_time <= CURDATE()
|
||||||
GROUP BY dev_name
|
GROUP BY dev_name
|
||||||
ORDER BY ein_day DESC
|
ORDER BY ein_day DESC;
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectWorkerEcharts" resultMap="BaseResultMap">
|
<select id="selectWorkerEcharts" resultMap="BaseResultMap">
|
||||||
|
|
@ -46,7 +49,15 @@
|
||||||
COALESCE(should.should_count, 0) AS should_count,
|
COALESCE(should.should_count, 0) AS should_count,
|
||||||
COALESCE(actual.actual_count, 0) AS actual_count
|
COALESCE(actual.actual_count, 0) AS actual_count
|
||||||
FROM (
|
FROM (
|
||||||
#{sql}
|
SELECT DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) AS dt
|
||||||
|
FROM
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7
|
||||||
|
UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones
|
||||||
|
CROSS JOIN
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens
|
||||||
|
WHERE DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) <= #{endTime}
|
||||||
) AS date_list
|
) AS date_list
|
||||||
-- 应到人数:每天 = 班组总人数(固定)
|
-- 应到人数:每天 = 班组总人数(固定)
|
||||||
CROSS JOIN (
|
CROSS JOIN (
|
||||||
|
|
@ -90,7 +101,15 @@
|
||||||
GROUP BY team_id
|
GROUP BY team_id
|
||||||
) tp_count ON wt.id = tp_count.team_id
|
) tp_count ON wt.id = tp_count.team_id
|
||||||
CROSS JOIN (
|
CROSS JOIN (
|
||||||
#{sql}
|
SELECT DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) AS dt
|
||||||
|
FROM
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5 UNION ALL SELECT 6 UNION ALL SELECT 7
|
||||||
|
UNION ALL SELECT 8 UNION ALL SELECT 9) AS ones
|
||||||
|
CROSS JOIN
|
||||||
|
(SELECT 0 AS a UNION ALL SELECT 1 UNION ALL SELECT 2 UNION ALL SELECT 3
|
||||||
|
UNION ALL SELECT 4 UNION ALL SELECT 5) AS tens
|
||||||
|
WHERE DATE_ADD(#{startTime}, INTERVAL (ones.a + tens.a * 10) DAY) <= #{endTime}
|
||||||
) AS date_list
|
) AS date_list
|
||||||
-- 关联每天实到人数
|
-- 关联每天实到人数
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
|
|
|
||||||
|
|
@ -34,10 +34,14 @@
|
||||||
sum(accept_item) as accept_item,
|
sum(accept_item) as accept_item,
|
||||||
sum(accept_table) as accept_table,
|
sum(accept_table) as accept_table,
|
||||||
sum(accept_qualified_table) as accept_qualified_table,
|
sum(accept_qualified_table) as accept_qualified_table,
|
||||||
sum(accept_item)/sum(total_item) as accept_rate,
|
|
||||||
sum(accept_qualified_table)/sum(accept_table) as accept_tb_rate,
|
ROUND(SUM(accept_item) * 100.0 / SUM(total_item), 1) AS accept_rate,
|
||||||
sum( main_one_accept_num)/sum(main_accept_num) as main_accept_rate,
|
|
||||||
sum(comm_one_accept)/sum(comm_accept) as comm_accept_rate
|
ROUND(SUM(accept_qualified_table) * 100.0 / SUM(accept_table), 1) AS accept_tb_rate,
|
||||||
|
|
||||||
|
ROUND(SUM(main_one_accept_num) * 100.0 / SUM(main_accept_num), 1) AS main_accept_rate,
|
||||||
|
|
||||||
|
ROUND(SUM(comm_one_accept) * 100.0 / SUM(comm_accept), 1) AS comm_accept_rate
|
||||||
from sj_project_quality
|
from sj_project_quality
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue