<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="itheima" uri="http://itcast.cn/common/"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
+ path + "/";
%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Smart Lighting Management System</title>
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/assets/vendors/bootstrap/css/bootstrap.css">
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/assets/vendors/font-awesome/css/font-awesome.css">
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/assets/css/admin.css">
<script src="${pageContext.request.contextPath}/static/assets/vendors/nprogress/nprogress.js"></script>
<script src="${pageContext.request.contextPath}/static/assets/vendors/jquery/jquery.js"></script>
<script src="${pageContext.request.contextPath}/static/assets/vendors/bootstrap/js/bootstrap.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath }/js/bootbox.all.min.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-1.8.3.js"></script>
<script src="${pageContext.request.contextPath}/js/My97DatePicker/WdatePicker.js"></script>
<style type="text/css">
* {
font-family: Century Gothic;
}
.main {
background-image: url(${pageContext.request.contextPath}/img/BG1.jpg);
}
#green_bar{
width:100%;
height:34.2px;
background-color: #15a2b3;
}
a{
text-decoration:none;
}
/* tab栏切换area/block/floor/light部分 */
.tab_dv {
margin: 5px auto;
width: 629px;
height: 42px;
/*border: 1px solid red;*/
position: relative;
text-align:center;
}
.all_info {
margin: 20px auto;
width: 1200px;
height: 690px;
/* border: 1px solid #D7D8DA; */
/* overflow: hidden; */
}
.all_info div {
width: 1200px;
height: 815px;
/* border: 1px solid #D7D8DA; */
/*float: left;*/
display: none;
position: relative;
}
.all_info div.selected {
display: block;
}
/* 展示Area部分 */
.span_s_area_area {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 80px;
}
.span_date_area {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 905px;
}
.span_s_area_area select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.span_s_area_area select option:hover {
background-color: #f80;
color: #FFB6C1;
}
/* 添加Block部分 */
.block_span {
display: inline-block;
width: 820px;
height: 650px;
/*border: 1px solid red;*/
overflow: auto;
}
.area_block {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 80px;
}
.area_block select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.area_block select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.span_date_block {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 905px;
}
.span_s_block {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 285px;
}
.span_s_block select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.span_s_block select option:hover {
background-color: #f80;
color: #FFB6C1;
}
/* 添加floor部分 */
.area_floor {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 80px;
}
.area_floor select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.area_floor select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.block_floor {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 285px;
}
.block_floor select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.block_floor select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.floor_floor {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 492px;
}
.floor_floor select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.floor_floor select option:hover {
background-color: #f80;
}
.span_date_floor {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 905px;
}
/* 添加light部分 */
.area_light {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 80px;
}
.area_light select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.area_light select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.block_light {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 285px;
}
.block_light select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.block_light select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.floor_light {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 492px;
}
.floor_light select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.floor_light select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.Wdate {
height: 28px;
width: 108px;
}
.light_light {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 692px;
}
.light_light select {
width: 145px;
height: 29px;
padding: 0.2em 0.4em 0.2em 0.4em;
vertical-align : middle;
border: 1px solid #626462;
-moz-border-radius: 0.2em;
-webkit-border-radius: 0.2em;
border-radius: 0.2em;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
font-family: Century Gothic;
font-size: 12px;
color: #8D8E92;
cursor: pointer;
background: #F4F4F6 url(${pageContext.request.contextPath}/img/select_arrow.png) no-repeat right;
}
.light_light select option:hover {
background-color: #f80;
color: #FFB6C1;
}
.span_date_light {
/*margin-right: 5px;*/
position: absolute;
width: 120px;
height: 20px;
/*border: 1px solid red;*/
display: inline-block;
top: -8px;
left: 905px;
}
</style>
<script>
function today(){
var today=new Date();
var y = today.getFullYear();
var m = today.getMonth()+1;
var d = today.getDate();
return y+"-"+m+"-"+d;
}
function changeAreaDate(){
var date = $("#areaDate").val();
$("#blockDate").val(date);
$("#floorDate").val(date);
$("#lightDate").val(date);
// console.log("date",date);
drawAreaTriggerTimes();
}
function drawHorizontalLine(context){
var valueOfY = 800;
//判断不能越界
while(valueOfY>50){
context.beginPath();
context.moveTo(40,valueOfY+0.5);
context.lineTo(1140,valueOfY+0.5);
context.lineWidth = 1;
context.strokeStyle = "#D7D8DA";
context.stroke();
//y月往上其实值是-step
valueOfY -= 250;
}
//画y轴的坐标
context.beginPath();
context.moveTo(40.5,800);
context.lineTo(40.5,50);
context.lineWidth = 1;
context.strokeStyle = "#D7D8DA";
context.stroke();
}
// 画Hour的x轴的函数
function drawHourXMark(context){
for(var i=0;i<24;i++){
// 画刻度线
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText((i+1), 40+45*i, 312);
}
}
function drawAreaHourDayMonthTitle(context){
// Area Consumption
context.font = "24px Century Gothic";
context.fillStyle = "#4CAF50";
context.fillText("Area ", 445, 55);
context.fillText("Trigger Times", 569, 55);
context.fillStyle = "#FF69B4";
context.fillText("OVP ", 510, 55);
}
function drawUnitTitleInfo(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("Month", 1112, 812);
context.fillText("Day", 1112, 562);
context.fillText("Hours", 1112, 314);
}
// 画Month的x轴的函数
function drawMonthXMark(context){
for(var i=0;i<12;i++){
// 画刻度线
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText((i+1), 40+94*i, 814);
}
}
// 画y轴能量单位方法
function drawEnergyUnitDescription(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("KW.H", 25, 48);
}
function drawHoursYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("5", 15, 253);
context.fillText("10", 15, 208);
context.fillText("15", 15, 163);
context.fillText("20", 15, 118);
}
// 画Hours的Y轴的Line标线
function drawHoursYLineMarks(context){
context.beginPath();
context.moveTo(40,253-0.5);
context.lineTo(1140,253-0.5);
context.lineWidth = 1;
context.strokeStyle = "#D7D8DA";
context.stroke();
context.beginPath();
context.moveTo(40,208-0.5);
context.lineTo(1140,208-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,163-0.5);
context.lineTo(1140,163-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,118-0.5);
context.lineTo(1140,118-0.5);
context.stroke();
}
// 画Hours的Y轴的Line标线
function drawHoursYLineMarks(context){
context.beginPath();
context.moveTo(40,253-0.5);
context.lineTo(1140,253-0.5);
context.lineWidth = 1;
context.strokeStyle = "#D7D8DA";
context.stroke();
context.beginPath();
context.moveTo(40,208-0.5);
context.lineTo(1140,208-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,163-0.5);
context.lineTo(1140,163-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,118-0.5);
context.lineTo(1140,118-0.5);
context.stroke();
}
function drawDaysYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("10", 15, 503);
context.fillText("20", 15, 458);
context.fillText("30", 15, 413);
context.fillText("40", 15, 368);
}
// 画Days的Y轴的Line标线
function drawDaysYLineMarks(context){
context.beginPath();
context.moveTo(40,503-0.5);
context.lineTo(1140,503-0.5);
context.lineWidth = 1;
context.strokeStyle = "#D7D8DA";
context.stroke();
context.beginPath();
context.moveTo(40,458-0.5);
context.lineTo(1140,458-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,413-0.5);
context.lineTo(1140,413-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,368-0.5);
context.lineTo(1140,368-0.5);
context.stroke();
}
// 画month的Y轴mark
function drawMonthsYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("20", 15, 753);
context.fillText("40", 15, 708);
context.fillText("60", 15, 663);
context.fillText("80", 15, 618);
}
// 画Month的Y轴的Line标线
function drawMonthsYLineMarks(context){
context.beginPath(context);
context.moveTo(40,753-0.5);
context.lineTo(1140,753-0.5);
context.lineWidth = 1;
context.strokeStyle = "#D7D8DA";
context.stroke();
context.beginPath();
context.moveTo(40,708-0.5);
context.lineTo(1140,708-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,663-0.5);
context.lineTo(1140,663-0.5);
context.stroke();
context.beginPath();
context.moveTo(40,618-0.5);
context.lineTo(1140,618-0.5);
context.stroke();
}
// 画一个月有多少天的刻度
function drawDayXMark(days,context){
for(var i=1;i<=days;i++){
//画刻度线
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText(i, 40+34*(i-1), 564);
}
}
function getCommunityDayOVPNumberArray(data){
var communityDayOVPNumberArray = new Array();
// console.log("communityDayOVPNumberArray before:" + communityDayOVPNumberArray);
// console.log("communityDayOVPNumberArray before length:" + communityDayOVPNumberArray.length);
communityDayOVPNumberArray[0] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber1;
communityDayOVPNumberArray[1] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber2;
communityDayOVPNumberArray[2] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber3;
communityDayOVPNumberArray[3] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber4;
communityDayOVPNumberArray[4] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber5;
communityDayOVPNumberArray[5] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber6;
communityDayOVPNumberArray[6] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber7;
communityDayOVPNumberArray[7] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber8;
communityDayOVPNumberArray[8] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber9;
communityDayOVPNumberArray[9] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber10;
communityDayOVPNumberArray[10] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber11;
communityDayOVPNumberArray[11] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber12;
communityDayOVPNumberArray[12] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber13;
communityDayOVPNumberArray[13] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber14;
communityDayOVPNumberArray[14] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber15;
communityDayOVPNumberArray[15] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber16;
communityDayOVPNumberArray[16] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber17;
communityDayOVPNumberArray[17] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber18;
communityDayOVPNumberArray[18] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber19;
communityDayOVPNumberArray[19] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber20;
communityDayOVPNumberArray[20] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber21;
communityDayOVPNumberArray[21] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber22;
communityDayOVPNumberArray[22] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber23;
communityDayOVPNumberArray[23] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber24;
communityDayOVPNumberArray[24] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber25;
communityDayOVPNumberArray[25] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber26;
communityDayOVPNumberArray[26] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber27;
communityDayOVPNumberArray[27] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber28;
communityDayOVPNumberArray[28] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber29;
communityDayOVPNumberArray[29] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber30;
communityDayOVPNumberArray[30] = data.communityMonthOVPNumberDTO.comumunityDayOVPNumber31;
// console.log("communityDayOVPNumberArray after:" + communityDayOVPNumberArray);
// console.log("communityDayOVPNumberArray after length:" + communityDayOVPNumberArray.length);
return communityDayOVPNumberArray;
}
// 画Area的Day的 OVP Trigger Times
function drawAreaDaysOVPNumberArray(days,communityDayOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<days;i++){
var j = 4.5*parseFloat(communityDayOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45+34*i-0.5,548);
context.lineTo(45+34*i-0.5,548-j);
context.stroke();
// console.log(j>0);
if(j>0){
var communityDayOVPTriggerTimes = communityDayOVPNumberArray[i];
// console.log("communityDayOVPTriggerTimes",communityDayOVPTriggerTimes);
context.fillText(communityDayOVPTriggerTimes, 45+34*i-0.5-4, 548-j-4);
}
}
}
function getCommunityHourOVPNumberArray(data){
var communityHourOVPNumberArray =new Array();
// console.log("communityHourOVPNumberArray before:" + communityHourOVPNumberArray);
// console.log("communityHourOVPNumberArray before length:" + communityHourOVPNumberArray.length);
communityHourOVPNumberArray[0] = data.communityDayOVPNumberDTO.communityHourOVPNumber1;
communityHourOVPNumberArray[1] = data.communityDayOVPNumberDTO.communityHourOVPNumber2;
communityHourOVPNumberArray[2] = data.communityDayOVPNumberDTO.communityHourOVPNumber3;
communityHourOVPNumberArray[3] = data.communityDayOVPNumberDTO.communityHourOVPNumber4;
communityHourOVPNumberArray[4] = data.communityDayOVPNumberDTO.communityHourOVPNumber5;
communityHourOVPNumberArray[5] = data.communityDayOVPNumberDTO.communityHourOVPNumber6;
communityHourOVPNumberArray[6] = data.communityDayOVPNumberDTO.communityHourOVPNumber7;
communityHourOVPNumberArray[7] = data.communityDayOVPNumberDTO.communityHourOVPNumber8;
communityHourOVPNumberArray[8] = data.communityDayOVPNumberDTO.communityHourOVPNumber9;
communityHourOVPNumberArray[9] = data.communityDayOVPNumberDTO.communityHourOVPNumber10;
communityHourOVPNumberArray[10] = data.communityDayOVPNumberDTO.communityHourOVPNumber11;
communityHourOVPNumberArray[11] = data.communityDayOVPNumberDTO.communityHourOVPNumber12;
communityHourOVPNumberArray[12] = data.communityDayOVPNumberDTO.communityHourOVPNumber13;
communityHourOVPNumberArray[13] = data.communityDayOVPNumberDTO.communityHourOVPNumber14;
communityHourOVPNumberArray[14] = data.communityDayOVPNumberDTO.communityHourOVPNumber15;
communityHourOVPNumberArray[15] = data.communityDayOVPNumberDTO.communityHourOVPNumber16;
communityHourOVPNumberArray[16] = data.communityDayOVPNumberDTO.communityHourOVPNumber17;
communityHourOVPNumberArray[17] = data.communityDayOVPNumberDTO.communityHourOVPNumber18;
communityHourOVPNumberArray[18] = data.communityDayOVPNumberDTO.communityHourOVPNumber19;
communityHourOVPNumberArray[19] = data.communityDayOVPNumberDTO.communityHourOVPNumber20;
communityHourOVPNumberArray[20] = data.communityDayOVPNumberDTO.communityHourOVPNumber21;
communityHourOVPNumberArray[21] = data.communityDayOVPNumberDTO.communityHourOVPNumber22;
communityHourOVPNumberArray[22] = data.communityDayOVPNumberDTO.communityHourOVPNumber23;
communityHourOVPNumberArray[23] = data.communityDayOVPNumberDTO.communityHourOVPNumber24;
// console.log("communityHourOVPNumberArray after:" + communityHourOVPNumberArray);
// console.log("communityHourOVPNumberArray after length:" + communityHourOVPNumberArray.length);
return communityHourOVPNumberArray;
}
function getCommunityHourOCPNumberArray(data){
var communityHourOCPNumberArray =new Array();
// console.log("communityHourOCPNumberArray before:" + communityHourOCPNumberArray);
// console.log("communityHourOCPNumberArray before length:" + communityHourOCPNumberArray.length);
communityHourOCPNumberArray[0] = data.communityDayOCPNumberDTO.communityHourOCPNumber1;
communityHourOCPNumberArray[1] = data.communityDayOCPNumberDTO.communityHourOCPNumber2;
communityHourOCPNumberArray[2] = data.communityDayOCPNumberDTO.communityHourOCPNumber3;
communityHourOCPNumberArray[3] = data.communityDayOCPNumberDTO.communityHourOCPNumber4;
communityHourOCPNumberArray[4] = data.communityDayOCPNumberDTO.communityHourOCPNumber5;
communityHourOCPNumberArray[5] = data.communityDayOCPNumberDTO.communityHourOCPNumber6;
communityHourOCPNumberArray[6] = data.communityDayOCPNumberDTO.communityHourOCPNumber7;
communityHourOCPNumberArray[7] = data.communityDayOCPNumberDTO.communityHourOCPNumber8;
communityHourOCPNumberArray[8] = data.communityDayOCPNumberDTO.communityHourOCPNumber9;
communityHourOCPNumberArray[9] = data.communityDayOCPNumberDTO.communityHourOCPNumber10;
communityHourOCPNumberArray[10] = data.communityDayOCPNumberDTO.communityHourOCPNumber11;
communityHourOCPNumberArray[11] = data.communityDayOCPNumberDTO.communityHourOCPNumber12;
communityHourOCPNumberArray[12] = data.communityDayOCPNumberDTO.communityHourOCPNumber13;
communityHourOCPNumberArray[13] = data.communityDayOCPNumberDTO.communityHourOCPNumber14;
communityHourOCPNumberArray[14] = data.communityDayOCPNumberDTO.communityHourOCPNumber15;
communityHourOCPNumberArray[15] = data.communityDayOCPNumberDTO.communityHourOCPNumber16;
communityHourOCPNumberArray[16] = data.communityDayOCPNumberDTO.communityHourOCPNumber17;
communityHourOCPNumberArray[17] = data.communityDayOCPNumberDTO.communityHourOCPNumber18;
communityHourOCPNumberArray[18] = data.communityDayOCPNumberDTO.communityHourOCPNumber19;
communityHourOCPNumberArray[19] = data.communityDayOCPNumberDTO.communityHourOCPNumber20;
communityHourOCPNumberArray[20] = data.communityDayOCPNumberDTO.communityHourOCPNumber21;
communityHourOCPNumberArray[21] = data.communityDayOCPNumberDTO.communityHourOCPNumber22;
communityHourOCPNumberArray[22] = data.communityDayOCPNumberDTO.communityHourOCPNumber23;
communityHourOCPNumberArray[23] = data.communityDayOCPNumberDTO.communityHourOCPNumber24;
// console.log("communityHourOCPNumberArray after:" + communityHourOCPNumberArray);
// console.log("communityHourOCPNumberArray after length:" + communityHourOCPNumberArray.length);
return communityHourOCPNumberArray;
}
function drawAreaHoursOVPNumber(communityHourOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=1;i<=communityHourOVPNumberArray.length;i++){
var j = 9*parseFloat(communityHourOVPNumberArray[i-1]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
context.beginPath();
context.moveTo(45*i-0.5,298);
context.lineTo(45*i-0.5,298-j);
context.stroke();
if(j>0){
var communityHourOVPNumber = communityHourOVPNumberArray[i-1];
context.fillText(communityHourOVPNumber, 45*i-0.5-4, 298-j-4);
}
}
}
function getCommunityMonthOVPNumberArray(data){
var communityMonthOVPNumberArray =new Array();
// console.log("communityMonthOVPNumberArray before:" + communityMonthOVPNumberArray);
// console.log("communityMonthOVPNumberArray before length:" + communityMonthOVPNumberArray.length);
communityMonthOVPNumberArray[0] = data.communityYearOVPNumberDTO.communityMonthOVPNumber1;
communityMonthOVPNumberArray[1] = data.communityYearOVPNumberDTO.communityMonthOVPNumber2;
communityMonthOVPNumberArray[2] = data.communityYearOVPNumberDTO.communityMonthOVPNumber3;
communityMonthOVPNumberArray[3] = data.communityYearOVPNumberDTO.communityMonthOVPNumber4;
communityMonthOVPNumberArray[4] = data.communityYearOVPNumberDTO.communityMonthOVPNumber5;
communityMonthOVPNumberArray[5] = data.communityYearOVPNumberDTO.communityMonthOVPNumber6;
communityMonthOVPNumberArray[6] = data.communityYearOVPNumberDTO.communityMonthOVPNumber7;
communityMonthOVPNumberArray[7] = data.communityYearOVPNumberDTO.communityMonthOVPNumber8;
communityMonthOVPNumberArray[8] = data.communityYearOVPNumberDTO.communityMonthOVPNumber9;
communityMonthOVPNumberArray[9] = data.communityYearOVPNumberDTO.communityMonthOVPNumber10;
communityMonthOVPNumberArray[10] = data.communityYearOVPNumberDTO.communityMonthOVPNumber11;
communityMonthOVPNumberArray[11] = data.communityYearOVPNumberDTO.communityMonthOVPNumber12;
// console.log("communityMonthOVPNumberArray after:" + communityMonthOVPNumberArray);
// console.log("communityMonthOVPNumberArray after length:" + communityMonthOVPNumberArray.length);
return communityMonthOVPNumberArray;
}
function drawAreaMonthOVPNumberArray(communityMonthOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<communityMonthOVPNumberArray.length;i++){
var j = 2.25*parseFloat(communityMonthOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
context.beginPath();
context.moveTo(45+94*i-0.5,798);
context.lineTo(45+94*i-0.5,798-j);
context.stroke();
if(j>0){
var communityMonthOVPTriggerTimes = communityMonthOVPNumberArray[i];
// console.log("communityMonthOVPTriggerTimes",communityMonthOVPTriggerTimes);
context.fillText(communityMonthOVPTriggerTimes, 45+94*i-0.5-4, 798-j-4);
}
}
}
function drawCommunityCanvasInfo(context,paramsStr){
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCommunityOVPTriggerTimesCanvasInfo.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
var days = data.communityMonthOVPNumberDTO.days;
// console.log("days",days);
// 画一个月有多少天的刻度
drawDayXMark(days,context);
var communityHourOVPNumberArray = getCommunityHourOVPNumberArray(data);
// console.log("communityHourOVPNumberArray",communityHourOVPNumberArray);
drawAreaHoursOVPNumber(communityHourOVPNumberArray,context);
var communityDayOVPNumberArray = getCommunityDayOVPNumberArray(data);
// console.log("communityDayOVPNumberArray",communityDayOVPNumberArray);
drawAreaDaysOVPNumberArray(days,communityDayOVPNumberArray,context);
var communityMonthOVPNumberArray = getCommunityMonthOVPNumberArray(data);
// console.log("communityMonthOVPNumberArray",communityMonthOVPNumberArray);
drawAreaMonthOVPNumberArray(communityMonthOVPNumberArray,context);
}
});
}
function drawAreaTriggerTimes(){
var communityId = $("#s_area_area option:selected").val();
communityId = parseInt(communityId);
// console.log("communityId",communityId);
var date = $("#areaDate").val();
// console.log("date",date);
var canvas = document.getElementById("areaTriggerTimesCanvas");
var context = canvas.getContext("2d");
context.clearRect(0,0,canvas.width,canvas.height);
drawHorizontalLine(context);
// 画Hour的x轴的函数
drawHourXMark(context);
// 写标题信息
drawAreaHourDayMonthTitle(context);
// 画小标题信息
drawUnitTitleInfo(context);
// 画Month的x轴的函数
drawMonthXMark(context);
// 画y轴能量单位方法
drawEnergyUnitDescription(context);
// 画Hours的Y轴mark
drawHoursYMark(context);
// 画Hours的Y轴的Line标线
drawHoursYLineMarks(context);
// 画Days的Y轴mark
drawDaysYMark(context);
// 画Days的Y轴的Line标线
drawDaysYLineMarks(context);
// 画month的Y轴mark
drawMonthsYMark(context);
// 画Month的Y轴的Line标线
drawMonthsYLineMarks(context);
var areaParams = {
"communityId":communityId,
"date":date
};
// console.log("areaParams",areaParams);
var paramsStr = JSON.stringify(areaParams);
// console.log("paramsStr",paramsStr);
// 填充后台传过来的数据
drawCommunityCanvasInfo(context,paramsStr);
console.log("drawAreaTriggerTimes()");
}
function drawBlockOVPTriggerTimesTitle(context){
// Block OVP Trigger Times
context.font = "24px Century Gothic";
context.fillStyle = "#4CAF50";
context.fillText("Block ", 442, 55);
context.fillText("Trigger Times", 569, 55);
context.fillStyle = "#FF69B4";
context.fillText("OVP ", 510, 55);
}
function changeBlockDate(){
// console.log(11);
var date = $("#blockDate").val();
$("#areaDate").val(date);
$("#floorDate").val(date);
$("#lightDate").val(date);
// console.log("date",date);
drawBlockTriggerTimes();
}
function getBlockHourOVPNumberArray(data){
var blockHourOVPNumberArray =new Array();
// console.log("blockHourOVPNumberArray before:" + blockHourOVPNumberArray);
// console.log("blockHourOVPNumberArray before length:" + blockHourOVPNumberArray.length);
blockHourOVPNumberArray[0] = data.blockDayOVPNumberDTO.blockHourOVPNumber1;
blockHourOVPNumberArray[1] = data.blockDayOVPNumberDTO.blockHourOVPNumber2;
blockHourOVPNumberArray[2] = data.blockDayOVPNumberDTO.blockHourOVPNumber3;
blockHourOVPNumberArray[3] = data.blockDayOVPNumberDTO.blockHourOVPNumber4;
blockHourOVPNumberArray[4] = data.blockDayOVPNumberDTO.blockHourOVPNumber5;
blockHourOVPNumberArray[5] = data.blockDayOVPNumberDTO.blockHourOVPNumber6;
blockHourOVPNumberArray[6] = data.blockDayOVPNumberDTO.blockHourOVPNumber7;
blockHourOVPNumberArray[7] = data.blockDayOVPNumberDTO.blockHourOVPNumber8;
blockHourOVPNumberArray[8] = data.blockDayOVPNumberDTO.blockHourOVPNumber9;
blockHourOVPNumberArray[9] = data.blockDayOVPNumberDTO.blockHourOVPNumber10;
blockHourOVPNumberArray[10] = data.blockDayOVPNumberDTO.blockHourOVPNumber11;
blockHourOVPNumberArray[11] = data.blockDayOVPNumberDTO.blockHourOVPNumber12;
blockHourOVPNumberArray[12] = data.blockDayOVPNumberDTO.blockHourOVPNumber13;
blockHourOVPNumberArray[13] = data.blockDayOVPNumberDTO.blockHourOVPNumber14;
blockHourOVPNumberArray[14] = data.blockDayOVPNumberDTO.blockHourOVPNumber15;
blockHourOVPNumberArray[15] = data.blockDayOVPNumberDTO.blockHourOVPNumber16;
blockHourOVPNumberArray[16] = data.blockDayOVPNumberDTO.blockHourOVPNumber17;
blockHourOVPNumberArray[17] = data.blockDayOVPNumberDTO.blockHourOVPNumber18;
blockHourOVPNumberArray[18] = data.blockDayOVPNumberDTO.blockHourOVPNumber19;
blockHourOVPNumberArray[19] = data.blockDayOVPNumberDTO.blockHourOVPNumber20;
blockHourOVPNumberArray[20] = data.blockDayOVPNumberDTO.blockHourOVPNumber21;
blockHourOVPNumberArray[21] = data.blockDayOVPNumberDTO.blockHourOVPNumber22;
blockHourOVPNumberArray[22] = data.blockDayOVPNumberDTO.blockHourOVPNumber23;
blockHourOVPNumberArray[23] = data.blockDayOVPNumberDTO.blockHourOVPNumber24;
// console.log("blockHourOVPNumberArray after:" + blockHourOVPNumberArray);
// console.log("blockHourOVPNumberArray after length:" + blockHourOVPNumberArray.length);
return blockHourOVPNumberArray;
}
function drawBlockHoursOVPNumber(blockHourOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=1;i<=blockHourOVPNumberArray.length;i++){
var j = 9*parseFloat(blockHourOVPNumberArray[i-1]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45*i-0.5,298);
context.lineTo(45*i-0.5,298-j);
context.stroke();
if(j>0){
var blockHourEnergyOVPNumber = blockHourOVPNumberArray[i-1];
context.fillText(blockHourEnergyOVPNumber, 45*i-0.5-4, 298-j-4);
}
}
}
function getBlockDayOVPNumberArray(data){
var blockDayOVPNumberArray = new Array();
// console.log("blockDayOVPNumberArray before:" + blockDayOVPNumberArray);
// console.log("blockDayOVPNumberArray before length:" + blockDayOVPNumberArray.length);
blockDayOVPNumberArray[0] = data.blockMonthOVPNumberDTO.blockDayOVPNumber1;
blockDayOVPNumberArray[1] = data.blockMonthOVPNumberDTO.blockDayOVPNumber2;
blockDayOVPNumberArray[2] = data.blockMonthOVPNumberDTO.blockDayOVPNumber3;
blockDayOVPNumberArray[3] = data.blockMonthOVPNumberDTO.blockDayOVPNumber4;
blockDayOVPNumberArray[4] = data.blockMonthOVPNumberDTO.blockDayOVPNumber5;
blockDayOVPNumberArray[5] = data.blockMonthOVPNumberDTO.blockDayOVPNumber6;
blockDayOVPNumberArray[6] = data.blockMonthOVPNumberDTO.blockDayOVPNumber7;
blockDayOVPNumberArray[7] = data.blockMonthOVPNumberDTO.blockDayOVPNumber8;
blockDayOVPNumberArray[8] = data.blockMonthOVPNumberDTO.blockDayOVPNumber9;
blockDayOVPNumberArray[9] = data.blockMonthOVPNumberDTO.blockDayOVPNumber10;
blockDayOVPNumberArray[10] = data.blockMonthOVPNumberDTO.blockDayOVPNumber11;
blockDayOVPNumberArray[11] = data.blockMonthOVPNumberDTO.blockDayOVPNumber12;
blockDayOVPNumberArray[12] = data.blockMonthOVPNumberDTO.blockDayOVPNumber13;
blockDayOVPNumberArray[13] = data.blockMonthOVPNumberDTO.blockDayOVPNumber14;
blockDayOVPNumberArray[14] = data.blockMonthOVPNumberDTO.blockDayOVPNumber15;
blockDayOVPNumberArray[15] = data.blockMonthOVPNumberDTO.blockDayOVPNumber16;
blockDayOVPNumberArray[16] = data.blockMonthOVPNumberDTO.blockDayOVPNumber17;
blockDayOVPNumberArray[17] = data.blockMonthOVPNumberDTO.blockDayOVPNumber18;
blockDayOVPNumberArray[18] = data.blockMonthOVPNumberDTO.blockDayOVPNumber19;
blockDayOVPNumberArray[19] = data.blockMonthOVPNumberDTO.blockDayOVPNumber20;
blockDayOVPNumberArray[20] = data.blockMonthOVPNumberDTO.blockDayOVPNumber21;
blockDayOVPNumberArray[21] = data.blockMonthOVPNumberDTO.blockDayOVPNumber22;
blockDayOVPNumberArray[22] = data.blockMonthOVPNumberDTO.blockDayOVPNumber23;
blockDayOVPNumberArray[23] = data.blockMonthOVPNumberDTO.blockDayOVPNumber24;
blockDayOVPNumberArray[24] = data.blockMonthOVPNumberDTO.blockDayOVPNumber25;
blockDayOVPNumberArray[25] = data.blockMonthOVPNumberDTO.blockDayOVPNumber26;
blockDayOVPNumberArray[26] = data.blockMonthOVPNumberDTO.blockDayOVPNumber27;
blockDayOVPNumberArray[27] = data.blockMonthOVPNumberDTO.blockDayOVPNumber28;
blockDayOVPNumberArray[28] = data.blockMonthOVPNumberDTO.blockDayOVPNumber29;
blockDayOVPNumberArray[29] = data.blockMonthOVPNumberDTO.blockDayOVPNumber30;
blockDayOVPNumberArray[30] = data.blockMonthOVPNumberDTO.blockDayOVPNumber31;
// console.log("blockDayOVPNumberArray after:" + blockDayOVPNumberArray);
// console.log("blockDayOVPNumberArray after length:" + blockDayOVPNumberArray.length);
return blockDayOVPNumberArray;
}
// 画Block的Day的 OVP Trigger Times
function drawBlockDaysOVPNumber(days,blockDayOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<days;i++){
var j = 4.5*parseFloat(blockDayOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45+34*i-0.5,548);
context.lineTo(45+34*i-0.5,548-j);
context.stroke();
if(j>0){
var blockDayTriggerTimes = blockDayOVPNumberArray[i];
// console.log("blockDayTriggerTimes",blockDayTriggerTimes);
context.fillText(blockDayTriggerTimes, 45+34*i-0.5-4, 548-j-4);
}
}
}
function getBlockMonthOVPNumberArray(data){
var blockMonthOVPNumberArray = new Array();
// console.log("blockMonthOVPNumberArray before:" + blockMonthOVPNumberArray);
// console.log("blockMonthOVPNumberArray before length:" + blockMonthOVPNumberArray.length);
blockMonthOVPNumberArray[0] = data.blockYearOVPNumberDTO.blockMonthOVPNumber1;
blockMonthOVPNumberArray[1] = data.blockYearOVPNumberDTO.blockMonthOVPNumber2;
blockMonthOVPNumberArray[2] = data.blockYearOVPNumberDTO.blockMonthOVPNumber3;
blockMonthOVPNumberArray[3] = data.blockYearOVPNumberDTO.blockMonthOVPNumber4;
blockMonthOVPNumberArray[4] = data.blockYearOVPNumberDTO.blockMonthOVPNumber5;
blockMonthOVPNumberArray[5] = data.blockYearOVPNumberDTO.blockMonthOVPNumber6;
blockMonthOVPNumberArray[6] = data.blockYearOVPNumberDTO.blockMonthOVPNumber7;
blockMonthOVPNumberArray[7] = data.blockYearOVPNumberDTO.blockMonthOVPNumber8;
blockMonthOVPNumberArray[8] = data.blockYearOVPNumberDTO.blockMonthOVPNumber9;
blockMonthOVPNumberArray[9] = data.blockYearOVPNumberDTO.blockMonthOVPNumber10;
blockMonthOVPNumberArray[10] = data.blockYearOVPNumberDTO.blockMonthOVPNumber11;
blockMonthOVPNumberArray[11] = data.blockYearOVPNumberDTO.blockMonthOVPNumber12;
// console.log("blockMonthOVPNumberArray after:" + blockMonthOVPNumberArray);
// console.log("blockMonthOVPNumberArray after length:" + blockMonthOVPNumberArray.length);
return blockMonthOVPNumberArray;
}
function drawBlockMonthOVPNumber(days,blockMonthOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<blockMonthOVPNumberArray.length;i++){
var j = 2.25*parseFloat(blockMonthOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
context.beginPath();
context.moveTo(45+94*i-0.5,798);
context.lineTo(45+94*i-0.5,798-j);
context.stroke();
if(j>0){
var blockMonthOVPTriggerTimes = blockMonthOVPNumberArray[i];
// console.log("blockMonthOVPTriggerTimes",blockMonthOVPTriggerTimes);
context.fillText(blockMonthOVPTriggerTimes, 45+94*i-0.5-4, 798-j-4);
}
}
}
function drawBlockCanvasInfo(context,paramsStr){
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getBlockOVPTriggerTimesCanvasInfo.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
var days = data.blockMonthOVPNumberDTO.days;
// console.log("days",days);
// 画一个月有多少天的刻度
drawDayXMark(days,context);
var blockHourOVPNumberArray = getBlockHourOVPNumberArray(data);
// console.log("blockHourOVPNumberArray",blockHourOVPNumberArray);
drawBlockHoursOVPNumber(blockHourOVPNumberArray,context);
var blockDayOVPNumberArray = getBlockDayOVPNumberArray(data);
// console.log("blockDayOVPNumberArray",blockDayOVPNumberArray);
drawBlockDaysOVPNumber(days,blockDayOVPNumberArray,context);
var blockMonthOVPNumberArray = getBlockMonthOVPNumberArray(data);
// console.log("blockMonthOVPNumberArray",blockMonthOVPNumberArray);
drawBlockMonthOVPNumber(days,blockMonthOVPNumberArray,context);
}
});
}
function getInitialFloorSelections(){
var blockId = $("#s_block_floor option:selected").val();
// console.log("blockId",blockId);
var params = {"blockId":blockId};
// console.log("params",params);
paramsStr = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserFloor.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var floorHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var floorId = item["floorId"];
var floorName = item["floorName"];
if(floorId!=null && floorId!=undefined){
floorHtml += "<option value='"+floorId+"' selected='selected'>"+floorName+"</option>";
}
}
});
// console.log(floorHtml);
$("#s_floor_floor").html(floorHtml);
drawFloorTriggerTimes();
$("#s_floor_light").html(floorHtml);
getInitialLightSelections();
}
}
});
}
function getInitialLightSelections(){
var floorId = $("#s_floor_light option:selected").val().trim();
// console.log("floorId",floorId);
var params = {"floorId":floorId};
// console.log("params",params);
var paramsStr = params = JSON.stringify(params);
// 初始化Light信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserLight.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var lightHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var lightId = item["lightId"];
var lightName = item["lightName"];
if(lightId!=null && lightId!=undefined){
lightHtml += "<option value='"+lightId+"' selected='selected'>"+lightName+"</option>";
}
}
});
// console.log(lightHtml);
// console.log("getInitialLightSelections()");
$("#s_light_light").html(lightHtml);
drawLightTriggerTimes();
}
}
});
}
function getInitialBlockSelections(){
var communityId = $("#s_area_block option:selected").val().trim();
// console.log("communityId",communityId);
var params = {"communityId":communityId};
// console.log("params",params);
var paramsStr = params = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserBlock.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var blockHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var blockId = item["blockId"];
var blockName = item["blockName"];
if(blockId!=null && blockId!=undefined){
blockHtml += "<option value='"+blockId+"' selected='selected'>"+blockName+"</option>";
}
}
});
// console.log(blockHtml);
$("#s_block_block").html(blockHtml);
drawBlockTriggerTimes();
$("#s_block_floor").html(blockHtml);
getInitialFloorSelections();
$("#s_block_light").html(blockHtml);
}
}
});
}
function changeBlockAreaSelections(communityId){
// console.log("communityId",communityId);
var params = {"communityId":communityId};
// console.log("params",params);
params = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserBlock.action",
contentType:"application/json;charset=UTF-8",
data : params,
success : function(data){
// console.log(data);
var blockHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var blockId = item["blockId"];
var blockName = item["blockName"];
if(blockId!=null && blockId!=undefined){
blockHtml += "<option value='"+blockId+"' selected='selected'>"+blockName+"</option>";
}
}
});
// console.log(blockHtml);
$("#s_block_block").html(blockHtml);
drawBlockTriggerTimes();
}
}
});
}
function getAreaSelections(){
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserCommunity.action",
contentType:"application/json;charset=UTF-8",
//data : areaParams,
success : function(data){
// console.log(data);
var areaHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
var communityId = item["communityId"];
var communityName = item["communityName"];
areaHtml += "<option value='"+communityId+"' selected='selected'>"+communityName+"</option>";
});
}
// console.log(areaHtml);
$("#s_area_area").html(areaHtml);
drawAreaTriggerTimes();
$("#s_area_block").html(areaHtml);
$("#s_area_floor").html(areaHtml);
$("#s_area_light").html(areaHtml);
}
});
}
function drawBlockTriggerTimes(){
var blockId = $("#s_block_block option:selected").val();
blockId = parseInt(blockId);
// console.log("blockId",blockId);
var blockDate = $("#blockDate").val();
// console.log("blockDate",blockDate);
var canvas = document.getElementById("blockTriggerTimesCanvas");
var context = canvas.getContext("2d");
context.clearRect(0,0,canvas.width,canvas.height);
drawHorizontalLine(context);
// 画Hour的x轴的函数
drawHourXMark(context);
// 写标题信息
drawBlockOVPTriggerTimesTitle(context);
// 画小标题信息
drawUnitTitleInfo(context);
// 画Month的x轴的函数
drawMonthXMark(context);
// 画y轴能量单位方法
drawEnergyUnitDescription(context);
// 画Hours的Y轴mark
drawHoursYMark(context);
// 画Hours的Y轴的Line标线
drawHoursYLineMarks(context);
// 画Days的Y轴mark
drawDaysYMark(context);
// 画Days的Y轴的Line标线
drawDaysYLineMarks(context);
// 画month的Y轴mark
drawMonthsYMark(context);
// 画Month的Y轴的Line标线
drawMonthsYLineMarks(context);
var blockParams = {
"blockId":blockId,
"date":blockDate
};
// console.log("blockParams",blockParams);
var paramsStr = JSON.stringify(blockParams);
// console.log("paramsStr",paramsStr);
// 填充后台传过来的数据
drawBlockCanvasInfo(context,paramsStr);
console.log("drawBlockTriggerTimes()");
}
function changeFloorDate(){
// console.log(11);
var date = $("#floorDate").val();
$("#areaDate").val(date);
$("#blockDate").val(date);
$("#lightDate").val(date);
// console.log("date",date);
drawFloorTriggerTimes();
}
function drawFloorOVPTriggerTimesTitle(context){
// Floor OVP Trigger Times
context.font = "24px Century Gothic";
context.fillStyle = "#4CAF50";
context.fillText("Floor ", 445, 55);
context.fillText("Trigger Times", 569, 55);
context.fillStyle = "#FF69B4";
context.fillText("OVP ", 510, 55);
}
function drawFloorHoursYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("5", 15, 253);
context.fillText("10", 15, 208);
context.fillText("15", 15, 163);
context.fillText("20", 15, 118);
}
function drawFloorDaysYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("10", 15, 503);
context.fillText("20", 15, 458);
context.fillText("30", 15, 413);
context.fillText("40", 15, 368);
}
function drawFloorMonthsYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("20", 15, 753);
context.fillText("40", 15, 708);
context.fillText("60", 15, 663);
context.fillText("80", 15, 618);
}
function getFloorHourOVPNumberArray(data){
var floorHourOVPNumberArray =new Array();
// console.log("floorHourOVPNumberArray before:" + floorHourOVPNumberArray);
// console.log("floorHourOVPNumberArray before length:" + floorHourOVPNumberArray.length);
floorHourOVPNumberArray[0] = data.floorDayOVPNumberDTO.floorHourOVPNumber1;
floorHourOVPNumberArray[1] = data.floorDayOVPNumberDTO.floorHourOVPNumber2;
floorHourOVPNumberArray[2] = data.floorDayOVPNumberDTO.floorHourOVPNumber3;
floorHourOVPNumberArray[3] = data.floorDayOVPNumberDTO.floorHourOVPNumber4;
floorHourOVPNumberArray[4] = data.floorDayOVPNumberDTO.floorHourOVPNumber5;
floorHourOVPNumberArray[5] = data.floorDayOVPNumberDTO.floorHourOVPNumber6;
floorHourOVPNumberArray[6] = data.floorDayOVPNumberDTO.floorHourOVPNumber7;
floorHourOVPNumberArray[7] = data.floorDayOVPNumberDTO.floorHourOVPNumber8;
floorHourOVPNumberArray[8] = data.floorDayOVPNumberDTO.floorHourOVPNumber9;
floorHourOVPNumberArray[9] = data.floorDayOVPNumberDTO.floorHourOVPNumber10;
floorHourOVPNumberArray[10] = data.floorDayOVPNumberDTO.floorHourOVPNumber11;
floorHourOVPNumberArray[11] = data.floorDayOVPNumberDTO.floorHourOVPNumber12;
floorHourOVPNumberArray[12] = data.floorDayOVPNumberDTO.floorHourOVPNumber13;
floorHourOVPNumberArray[13] = data.floorDayOVPNumberDTO.floorHourOVPNumber14;
floorHourOVPNumberArray[14] = data.floorDayOVPNumberDTO.floorHourOVPNumber15;
floorHourOVPNumberArray[15] = data.floorDayOVPNumberDTO.floorHourOVPNumber16;
floorHourOVPNumberArray[16] = data.floorDayOVPNumberDTO.floorHourOVPNumber17;
floorHourOVPNumberArray[17] = data.floorDayOVPNumberDTO.floorHourOVPNumber18;
floorHourOVPNumberArray[18] = data.floorDayOVPNumberDTO.floorHourOVPNumber19;
floorHourOVPNumberArray[19] = data.floorDayOVPNumberDTO.floorHourOVPNumber20;
floorHourOVPNumberArray[20] = data.floorDayOVPNumberDTO.floorHourOVPNumber21;
floorHourOVPNumberArray[21] = data.floorDayOVPNumberDTO.floorHourOVPNumber22;
floorHourOVPNumberArray[22] = data.floorDayOVPNumberDTO.floorHourOVPNumber23;
floorHourOVPNumberArray[23] = data.floorDayOVPNumberDTO.floorHourOVPNumber24;
// console.log("floorHourOVPNumberArray after:" + floorHourOVPNumberArray);
// console.log("floorHourOVPNumberArray after length:" + floorHourOVPNumberArray.length);
return floorHourOVPNumberArray;
}
function drawFloorHoursOVPNumber(floorHourOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=1;i<=floorHourOVPNumberArray.length;i++){
var j = 9*parseFloat(floorHourOVPNumberArray[i-1]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45*i-0.5,298);
context.lineTo(45*i-0.5,298-j);
context.stroke();
if(j>0){
var floorHourOVPTriggerTimes = floorHourOVPNumberArray[i-1];
context.fillText(floorHourOVPTriggerTimes, 45*i-0.5-4, 298-j-4);
}
}
}
function getFloorDayOVPNumberArray(data){
var floorDayOVPNumberArray = new Array();
// console.log("floorDayOVPNumberArray before:" + floorDayOVPNumberArray);
// console.log("floorDayOVPNumberArray before length:" + floorDayOVPNumberArray.length);
floorDayOVPNumberArray[0] = data.floorMonthOVPNumberDTO.floorDayOVPNumber1;
floorDayOVPNumberArray[1] = data.floorMonthOVPNumberDTO.floorDayOVPNumber2;
floorDayOVPNumberArray[2] = data.floorMonthOVPNumberDTO.floorDayOVPNumber3;
floorDayOVPNumberArray[3] = data.floorMonthOVPNumberDTO.floorDayOVPNumber4;
floorDayOVPNumberArray[4] = data.floorMonthOVPNumberDTO.floorDayOVPNumber5;
floorDayOVPNumberArray[5] = data.floorMonthOVPNumberDTO.floorDayOVPNumber6;
floorDayOVPNumberArray[6] = data.floorMonthOVPNumberDTO.floorDayOVPNumber7;
floorDayOVPNumberArray[7] = data.floorMonthOVPNumberDTO.floorDayOVPNumber8;
floorDayOVPNumberArray[8] = data.floorMonthOVPNumberDTO.floorDayOVPNumber9;
floorDayOVPNumberArray[9] = data.floorMonthOVPNumberDTO.floorDayOVPNumber10;
floorDayOVPNumberArray[10] = data.floorMonthOVPNumberDTO.floorDayOVPNumber11;
floorDayOVPNumberArray[11] = data.floorMonthOVPNumberDTO.floorDayOVPNumber12;
floorDayOVPNumberArray[12] = data.floorMonthOVPNumberDTO.floorDayOVPNumber13;
floorDayOVPNumberArray[13] = data.floorMonthOVPNumberDTO.floorDayOVPNumber14;
floorDayOVPNumberArray[14] = data.floorMonthOVPNumberDTO.floorDayOVPNumber15;
floorDayOVPNumberArray[15] = data.floorMonthOVPNumberDTO.floorDayOVPNumber16;
floorDayOVPNumberArray[16] = data.floorMonthOVPNumberDTO.floorDayOVPNumber17;
floorDayOVPNumberArray[17] = data.floorMonthOVPNumberDTO.floorDayOVPNumber18;
floorDayOVPNumberArray[18] = data.floorMonthOVPNumberDTO.floorDayOVPNumber19;
floorDayOVPNumberArray[19] = data.floorMonthOVPNumberDTO.floorDayOVPNumber20;
floorDayOVPNumberArray[20] = data.floorMonthOVPNumberDTO.floorDayOVPNumber21;
floorDayOVPNumberArray[21] = data.floorMonthOVPNumberDTO.floorDayOVPNumber22;
floorDayOVPNumberArray[22] = data.floorMonthOVPNumberDTO.floorDayOVPNumber23;
floorDayOVPNumberArray[23] = data.floorMonthOVPNumberDTO.floorDayOVPNumber24;
floorDayOVPNumberArray[24] = data.floorMonthOVPNumberDTO.floorDayOVPNumber25;
floorDayOVPNumberArray[25] = data.floorMonthOVPNumberDTO.floorDayOVPNumber26;
floorDayOVPNumberArray[26] = data.floorMonthOVPNumberDTO.floorDayOVPNumber27;
floorDayOVPNumberArray[27] = data.floorMonthOVPNumberDTO.floorDayOVPNumber28;
floorDayOVPNumberArray[28] = data.floorMonthOVPNumberDTO.floorDayOVPNumber29;
floorDayOVPNumberArray[29] = data.floorMonthOVPNumberDTO.floorDayOVPNumber30;
floorDayOVPNumberArray[30] = data.floorMonthOVPNumberDTO.floorDayOVPNumber31;
// console.log("floorDayOVPNumberArray after:" + floorDayOVPNumberArray);
// console.log("floorDayOVPNumberArray after length:" + floorDayOVPNumberArray.length);
return floorDayOVPNumberArray;
}
function drawFloorDaysOVPNumber(days,floorDayOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<days;i++){
var j = 4.5*parseFloat(floorDayOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45+34*i-0.5,548);
context.lineTo(45+34*i-0.5,548-j);
context.stroke();
if(j>0){
var floorDayOVPTriggerTimes = floorDayOVPNumberArray[i];
// console.log("floorDayOVPTriggerTimes",floorDayOVPTriggerTimes);
context.fillText(floorDayOVPTriggerTimes, 45+34*i-0.5-4, 548-j-4);
}
}
}
function getFloorMonthOVPNumberArray(data){
var floorMonthOVPNumberArray = new Array();
// console.log("floorMonthOVPNumberArray before:" + floorMonthOVPNumberArray);
// console.log("floorMonthOVPNumberArray before length:" + floorMonthOVPNumberArray.length);
floorMonthOVPNumberArray[0] = data.floorYearOVPNumberDTO.floorMonthOVPNumber1;
floorMonthOVPNumberArray[1] = data.floorYearOVPNumberDTO.floorMonthOVPNumber2;
floorMonthOVPNumberArray[2] = data.floorYearOVPNumberDTO.floorMonthOVPNumber3;
floorMonthOVPNumberArray[3] = data.floorYearOVPNumberDTO.floorMonthOVPNumber4;
floorMonthOVPNumberArray[4] = data.floorYearOVPNumberDTO.floorMonthOVPNumber5;
floorMonthOVPNumberArray[5] = data.floorYearOVPNumberDTO.floorMonthOVPNumber6;
floorMonthOVPNumberArray[6] = data.floorYearOVPNumberDTO.floorMonthOVPNumber7;
floorMonthOVPNumberArray[7] = data.floorYearOVPNumberDTO.floorMonthOVPNumber8;
floorMonthOVPNumberArray[8] = data.floorYearOVPNumberDTO.floorMonthOVPNumber9;
floorMonthOVPNumberArray[9] = data.floorYearOVPNumberDTO.floorMonthOVPNumber10;
floorMonthOVPNumberArray[10] = data.floorYearOVPNumberDTO.floorMonthOVPNumber11;
floorMonthOVPNumberArray[11] = data.floorYearOVPNumberDTO.floorMonthOVPNumber12;
// console.log("floorMonthOVPNumberArray after:" + floorMonthOVPNumberArray);
// console.log("floorMonthOVPNumberArray after length:" + floorMonthOVPNumberArray.length);
return floorMonthOVPNumberArray;
}
function drawFloorMonthOVPNumber(days,floorMonthOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<floorMonthOVPNumberArray.length;i++){
var j = 2.25*parseFloat(floorMonthOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
context.beginPath();
context.moveTo(45+94*i-0.5,798);
context.lineTo(45+94*i-0.5,798-j);
context.stroke();
if(j>0){
var floorMonthOVPTriggerTimes = floorMonthOVPNumberArray[i];
// console.log("floorMonthOVPTriggerTimes",floorMonthOVPTriggerTimes);
context.fillText(floorMonthOVPTriggerTimes, 45+94*i-0.5-4, 798-j-4);
}
}
}
function drawFloorCanvasInfo(context,paramsStr){
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getFloorOVPTriggerTimesCanvasInfo.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
var days = data.floorMonthOVPNumberDTO.days;
// console.log("days",days);
// 画一个月有多少天的刻度
drawDayXMark(days,context);
var floorHourOVPNumberArray = getFloorHourOVPNumberArray(data);
// console.log("floorHourOVPNumberArray",floorHourOVPNumberArray);
drawFloorHoursOVPNumber(floorHourOVPNumberArray,context);
var floorDayOVPNumberArray = getFloorDayOVPNumberArray(data);
// console.log("floorDayOVPNumberArray",floorDayOVPNumberArray);
drawFloorDaysOVPNumber(days,floorDayOVPNumberArray,context);
var floorMonthOVPNumberArray = getFloorMonthOVPNumberArray(data);
// console.log("floorMonthOVPNumberArray",floorMonthOVPNumberArray);
drawFloorMonthOVPNumber(days,floorMonthOVPNumberArray,context);
}
});
}
function changeFloorAreaSelections(communityId){
// console.log("communityId",communityId);
var params = {"communityId":communityId};
// console.log("params",params);
params = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserBlock.action",
contentType:"application/json;charset=UTF-8",
data : params,
success : function(data){
// console.log(data);
var blockHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var blockId = item["blockId"];
var blockName = item["blockName"];
if(blockId!=null && blockId!=undefined){
blockHtml += "<option value='"+blockId+"' selected='selected'>"+blockName+"</option>";
}
}
});
// console.log(blockHtml);
$("#s_block_floor").html(blockHtml);
getCurrentFloorSelections();
}
}
});
}
function getCurrentFloorSelections(){
var blockId = $("#s_block_floor option:selected").val();
// console.log("blockId",blockId);
var params = {"blockId":blockId};
// console.log("params",params);
paramsStr = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserFloor.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var floorHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var floorId = item["floorId"];
var floorName = item["floorName"];
if(floorId!=null && floorId!=undefined){
floorHtml += "<option value='"+floorId+"' selected='selected'>"+floorName+"</option>";
}
}
});
// console.log(floorHtml);
$("#s_floor_floor").html(floorHtml);
drawFloorTriggerTimes();
}
}
});
}
function changeFloorBlockSelections(blockId){
// console.log("blockId",blockId);
var params = {"blockId":blockId};
// console.log("params",params);
var paramsStr = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserFloor.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var floorHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var floorId = item["floorId"];
var floorName = item["floorName"];
if(floorId!=null && floorId!=undefined){
floorHtml += "<option value='"+floorId+"' selected='selected'>"+floorName+"</option>";
}
}
});
}
// console.log(floorHtml);
// $("#s_floor_light").html(floorHtml);
$("#s_floor_floor").html(floorHtml);
drawFloorTriggerTimes();
}
});
}
function drawFloorTriggerTimes(){
var floorId = $("#s_floor_floor option:selected").val();
floorId = parseInt(floorId);
// console.log("floorId",floorId);
var floorDate = $("#floorDate").val();
// console.log("floorDate",floorDate);
var canvas = document.getElementById("floorTriggerTimesCanvas");
var context = canvas.getContext("2d");
context.clearRect(0,0,canvas.width,canvas.height);
drawHorizontalLine(context);
// 画Hour的x轴的函数
drawHourXMark(context);
// 写标题信息
drawFloorOVPTriggerTimesTitle(context);
// 画小标题信息
drawUnitTitleInfo(context);
// 画Month的x轴的函数
drawMonthXMark(context);
// 画y轴能量单位方法
drawEnergyUnitDescription(context);
// 画Floor的Hours的Y轴mark
drawFloorHoursYMark(context);
// 画Hours的Y轴的Line标线
drawHoursYLineMarks(context);
// 画Floor的Days的Y轴mark
drawFloorDaysYMark(context);
// 画Block的Days的Y轴的Line标线
drawDaysYLineMarks(context);
// 画Floor的month的Y轴mark
drawFloorMonthsYMark(context);
// 画Month的Y轴的Line标线
drawMonthsYLineMarks(context);
var floorParams = {
"floorId":floorId,
"date":floorDate
};
// console.log("floorParams",floorParams);
var paramsStr = JSON.stringify(floorParams);
// console.log("paramsStr",paramsStr);
// 填充后台传过来的数据
drawFloorCanvasInfo(context,paramsStr);
console.log("drawFloorTriggerTimes()");
}
function drawLightOVPTriggerTimesTitle(context){
// Light OVP Trigger Times
context.font = "24px Century Gothic";
context.fillStyle = "#4CAF50";
context.fillText("Light ", 445, 55);
context.fillText("Trigger Times", 569, 55);
context.fillStyle = "#FF69B4";
context.fillText("OVP ", 510, 55);
}
function drawLightHoursYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("1", 15, 253);
context.fillText("2", 15, 208);
context.fillText("3", 15, 163);
context.fillText("4", 15, 118);
}
function drawLightDaysYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("2", 15, 503);
context.fillText("4", 15, 458);
context.fillText("6", 15, 413);
context.fillText("8", 15, 368);
}
function drawLightMonthsYMark(context){
context.font = "12px Century Gothic";
context.fillStyle = "#2f4050";
context.fillText("5", 15, 753);
context.fillText("10", 15, 708);
context.fillText("15", 15, 663);
context.fillText("20", 15, 618);
}
function changeLightAreaSelections(communityId){
// console.log("communityId",communityId);
var params = {"communityId":communityId};
// console.log("params",params);
var paramsStr = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserBlock.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var blockHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var blockId = item["blockId"];
var blockName = item["blockName"];
if(blockId!=null && blockId!=undefined){
blockHtml += "<option value='"+blockId+"' selected='selected'>"+blockName+"</option>";
}
}
});
// console.log(blockHtml);
// console.log("changeLightAreaSelections()");
$("#s_block_light").html(blockHtml);
getLightCurrentFloorSelections();
}
}
});
}
function getLightCurrentFloorSelections(){
var blockId = $("#s_block_light option:selected").val();
// console.log("blockId",blockId);
var params = {"blockId":blockId};
// console.log("params",params);
paramsStr = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserFloor.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var floorHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var floorId = item["floorId"];
var floorName = item["floorName"];
if(floorId!=null && floorId!=undefined){
floorHtml += "<option value='"+floorId+"' selected='selected'>"+floorName+"</option>";
}
}
});
// console.log(floorHtml);
// console.log("getLightCurrentFloorSelections()");
$("#s_floor_light").html(floorHtml);
getInitialLightSelections();
}
}
});
}
function changeLightBlockSelections(blockId){
// console.log("blockId",blockId);
var params = {"blockId":blockId};
// console.log("params",params);
var paramsStr = JSON.stringify(params);
// 初始化Area信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserFloor.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var floorHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var floorId = item["floorId"];
var floorName = item["floorName"];
if(floorId!=null && floorId!=undefined){
floorHtml += "<option value='"+floorId+"' selected='selected'>"+floorName+"</option>";
}
}
});
}
// console.log(floorHtml);
// console.log("changeLightBlockSelections(blockId)");
$("#s_floor_light").html(floorHtml);
getInitialLightSelections();
}
});
}
function changeLightFloorSelections(floorId){
var params = {"floorId":floorId};
// console.log("params",params);
var paramsStr = params = JSON.stringify(params);
// 初始化Light信息
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getCurrentUserLight.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
// console.log(data);
var lightHtml = "";
if(data!=null && data.length>0){
$(data).each(function(index,item){
if(item){
var lightId = item["lightId"];
var lightName = item["lightName"];
if(lightId!=null && lightId!=undefined){
lightHtml += "<option value='"+lightId+"' selected='selected'>"+lightName+"</option>";
}
}
});
// console.log(lightHtml);
// console.log("changeLightFloorSelections("+floorId+")");
$("#s_light_light").html(lightHtml);
drawLightTriggerTimes();
}
}
});
}
function changeLightDate(){
// console.log(11);
var date = $("#lightDate").val();
$("#areaDate").val(date);
$("#blockDate").val(date);
$("#floorDate").val(date);
// console.log("date",date);
drawLightTriggerTimes();
}
function getLightHourOVPNumberArray(data){
var lightHourOVPNumberArray = new Array();
// console.log("lightHourOVPNumberArray before:" + lightHourOVPNumberArray);
// console.log("lightHourOVPNumberArray before length:" + lightHourOVPNumberArray.length);
lightHourOVPNumberArray[0] = data.dayOVPNumberDTO.hourOVPNumber1;
lightHourOVPNumberArray[1] = data.dayOVPNumberDTO.hourOVPNumber2;
lightHourOVPNumberArray[2] = data.dayOVPNumberDTO.hourOVPNumber3;
lightHourOVPNumberArray[3] = data.dayOVPNumberDTO.hourOVPNumber4;
lightHourOVPNumberArray[4] = data.dayOVPNumberDTO.hourOVPNumber5;
lightHourOVPNumberArray[5] = data.dayOVPNumberDTO.hourOVPNumber6;
lightHourOVPNumberArray[6] = data.dayOVPNumberDTO.hourOVPNumber7;
lightHourOVPNumberArray[7] = data.dayOVPNumberDTO.hourOVPNumber8;
lightHourOVPNumberArray[8] = data.dayOVPNumberDTO.hourOVPNumber9;
lightHourOVPNumberArray[9] = data.dayOVPNumberDTO.hourOVPNumber10;
lightHourOVPNumberArray[10] = data.dayOVPNumberDTO.hourOVPNumber11;
lightHourOVPNumberArray[11] = data.dayOVPNumberDTO.hourOVPNumber12;
lightHourOVPNumberArray[12] = data.dayOVPNumberDTO.hourOVPNumber13;
lightHourOVPNumberArray[13] = data.dayOVPNumberDTO.hourOVPNumber14;
lightHourOVPNumberArray[14] = data.dayOVPNumberDTO.hourOVPNumber15;
lightHourOVPNumberArray[15] = data.dayOVPNumberDTO.hourOVPNumber16;
lightHourOVPNumberArray[16] = data.dayOVPNumberDTO.hourOVPNumber17;
lightHourOVPNumberArray[17] = data.dayOVPNumberDTO.hourOVPNumber18;
lightHourOVPNumberArray[18] = data.dayOVPNumberDTO.hourOVPNumber19;
lightHourOVPNumberArray[19] = data.dayOVPNumberDTO.hourOVPNumber20;
lightHourOVPNumberArray[20] = data.dayOVPNumberDTO.hourOVPNumber21;
lightHourOVPNumberArray[21] = data.dayOVPNumberDTO.hourOVPNumber22;
lightHourOVPNumberArray[22] = data.dayOVPNumberDTO.hourOVPNumber23;
lightHourOVPNumberArray[23] = data.dayOVPNumberDTO.hourOVPNumber24;
// console.log("lightHourOVPNumberArray after:" + lightHourOVPNumberArray);
// console.log("lightHourOVPNumberArray after length:" + lightHourOVPNumberArray.length);
return lightHourOVPNumberArray;
}
function drawLightHoursOVPNumber(lightHourOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=1;i<=lightHourOVPNumberArray.length;i++){
var j = 45*parseFloat(lightHourOVPNumberArray[i-1]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45*i-0.5,298);
context.lineTo(45*i-0.5,298-j);
context.stroke();
if(j>0){
var lightHourOVPTriggerTimes = lightHourOVPNumberArray[i-1];
context.fillText(lightHourOVPTriggerTimes, 45*i-0.5-4, 298-j-4);
}
}
}
function getLightDayOVPNumberArray(data){
var lightDayOVPNumberArray = new Array();
// console.log("lightDayOVPNumberArray before:" + lightDayOVPNumberArray);
// console.log("lightDayOVPNumberArray before length:" + lightDayOVPNumberArray.length);
lightDayOVPNumberArray[0] = data.monthOVPNumberDTO.dayOVPNumber1;
lightDayOVPNumberArray[1] = data.monthOVPNumberDTO.dayOVPNumber2;
lightDayOVPNumberArray[2] = data.monthOVPNumberDTO.dayOVPNumber3;
lightDayOVPNumberArray[3] = data.monthOVPNumberDTO.dayOVPNumber4;
lightDayOVPNumberArray[4] = data.monthOVPNumberDTO.dayOVPNumber5;
lightDayOVPNumberArray[5] = data.monthOVPNumberDTO.dayOVPNumber6;
lightDayOVPNumberArray[6] = data.monthOVPNumberDTO.dayOVPNumber7;
lightDayOVPNumberArray[7] = data.monthOVPNumberDTO.dayOVPNumber8;
lightDayOVPNumberArray[8] = data.monthOVPNumberDTO.dayOVPNumber9;
lightDayOVPNumberArray[9] = data.monthOVPNumberDTO.dayOVPNumber10;
lightDayOVPNumberArray[10] = data.monthOVPNumberDTO.dayOVPNumber11;
lightDayOVPNumberArray[11] = data.monthOVPNumberDTO.dayOVPNumber12;
lightDayOVPNumberArray[12] = data.monthOVPNumberDTO.dayOVPNumber13;
lightDayOVPNumberArray[13] = data.monthOVPNumberDTO.dayOVPNumber14;
lightDayOVPNumberArray[14] = data.monthOVPNumberDTO.dayOVPNumber15;
lightDayOVPNumberArray[15] = data.monthOVPNumberDTO.dayOVPNumber16;
lightDayOVPNumberArray[16] = data.monthOVPNumberDTO.dayOVPNumber17;
lightDayOVPNumberArray[17] = data.monthOVPNumberDTO.dayOVPNumber18;
lightDayOVPNumberArray[18] = data.monthOVPNumberDTO.dayOVPNumber19;
lightDayOVPNumberArray[19] = data.monthOVPNumberDTO.dayOVPNumber20;
lightDayOVPNumberArray[20] = data.monthOVPNumberDTO.dayOVPNumber21;
lightDayOVPNumberArray[21] = data.monthOVPNumberDTO.dayOVPNumber22;
lightDayOVPNumberArray[22] = data.monthOVPNumberDTO.dayOVPNumber23;
lightDayOVPNumberArray[23] = data.monthOVPNumberDTO.dayOVPNumber24;
lightDayOVPNumberArray[24] = data.monthOVPNumberDTO.dayOVPNumber25;
lightDayOVPNumberArray[25] = data.monthOVPNumberDTO.dayOVPNumber26;
lightDayOVPNumberArray[26] = data.monthOVPNumberDTO.dayOVPNumber27;
lightDayOVPNumberArray[27] = data.monthOVPNumberDTO.dayOVPNumber28;
lightDayOVPNumberArray[28] = data.monthOVPNumberDTO.dayOVPNumber29;
lightDayOVPNumberArray[29] = data.monthOVPNumberDTO.dayOVPNumber30;
lightDayOVPNumberArray[30] = data.monthOVPNumberDTO.dayOVPNumber31;
// console.log("lightDayOVPNumberArray after:" + lightDayOVPNumberArray);
// console.log("lightDayOVPNumberArray after length:" + lightDayOVPNumberArray.length);
return lightDayOVPNumberArray;
}
function drawLightDaysOVPNumber(days,lightDayOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<days;i++){
var j = 22.5*parseFloat(lightDayOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
// console.log("j:" + j);
context.beginPath();
context.moveTo(45+34*i-0.5,548);
context.lineTo(45+34*i-0.5,548-j);
context.stroke();
if(j>0){
var lightDayTriggerTimes = lightDayOVPNumberArray[i];
// console.log("lightDayTriggerTimes",lightDayTriggerTimes);
context.fillText(lightDayTriggerTimes, 45+34*i-0.5-4, 548-j-4);
}
}
}
function getLightMonthOVPNumberArray(data){
var lightMonthOVPNumberArray = new Array();
// console.log("lightMonthOVPNumberArray before:" + lightMonthOVPNumberArray);
// console.log("lightMonthOVPNumberArray before length:" + lightMonthOVPNumberArray.length);
lightMonthOVPNumberArray[0] = data.yearOVPNumberDTO.monthOVPNumber1;
lightMonthOVPNumberArray[1] = data.yearOVPNumberDTO.monthOVPNumber2;
lightMonthOVPNumberArray[2] = data.yearOVPNumberDTO.monthOVPNumber3;
lightMonthOVPNumberArray[3] = data.yearOVPNumberDTO.monthOVPNumber4;
lightMonthOVPNumberArray[4] = data.yearOVPNumberDTO.monthOVPNumber5;
lightMonthOVPNumberArray[5] = data.yearOVPNumberDTO.monthOVPNumber6;
lightMonthOVPNumberArray[6] = data.yearOVPNumberDTO.monthOVPNumber7;
lightMonthOVPNumberArray[7] = data.yearOVPNumberDTO.monthOVPNumber8;
lightMonthOVPNumberArray[8] = data.yearOVPNumberDTO.monthOVPNumber9;
lightMonthOVPNumberArray[9] = data.yearOVPNumberDTO.monthOVPNumber10;
lightMonthOVPNumberArray[10] = data.yearOVPNumberDTO.monthOVPNumber11;
lightMonthOVPNumberArray[11] = data.yearOVPNumberDTO.monthOVPNumber12;
// console.log("lightMonthOVPNumberArray after:" + lightMonthOVPNumberArray);
// console.log("lightMonthOVPNumberArray after length:" + lightMonthOVPNumberArray.length);
return lightMonthOVPNumberArray;
}
function drawLightMonthOVPNumber(lightMonthOVPNumberArray,context){
context.lineWidth = 10;
context.strokeStyle = "#FF69B4";
// 这是显示实际的数值
context.font = "12px Century Gothic";
context.fillStyle = "#FF69B4";
for(var i=0;i<lightMonthOVPNumberArray.length;i++){
var j = 9*parseFloat(lightMonthOVPNumberArray[i]);
if(j>180){
j=180;
}else if(j<0){
j=0;
}
context.beginPath();
context.moveTo(45+94*i-0.5,798);
context.lineTo(45+94*i-0.5,798-j);
context.stroke();
if(j>0){
var lightMonthOVPTriggerTimes = lightMonthOVPNumberArray[i];
// console.log("lightMonthOVPTriggerTimes",lightMonthOVPTriggerTimes);
context.fillText(lightMonthOVPTriggerTimes, 45+94*i-0.5-4, 798-j-4);
}
}
}
function drawLightCanvasInfo(context,paramsStr){
$.ajax({
type : "POST",
dataType : "JSON",
url : "${pageContext.request.contextPath}/admin/getLightOVPTriggerTimesCanvasInfo.action",
contentType:"application/json;charset=UTF-8",
data : paramsStr,
success : function(data){
var days = data.monthOVPNumberDTO.days;
// console.log("days",days);
// 画一个月有多少天的刻度
drawDayXMark(days,context);
var lightHourOVPNumberArray = getLightHourOVPNumberArray(data);
// console.log("lightHourOVPNumberArray",lightHourOVPNumberArray);
drawLightHoursOVPNumber(lightHourOVPNumberArray,context);
var lightDayOVPNumberArray = getLightDayOVPNumberArray(data);
// console.log("lightDayOVPNumberArray",lightDayOVPNumberArray);
drawLightDaysOVPNumber(days,lightDayOVPNumberArray,context);
var lightMonthOVPNumberArray = getLightMonthOVPNumberArray(data);
// console.log("lightMonthOVPNumberArray",lightMonthOVPNumberArray);
drawLightMonthOVPNumber(lightMonthOVPNumberArray,context);
}
});
}
function drawLightTriggerTimes(){
var lightId = $("#s_light_light option:selected").val();
lightId = parseInt(lightId);
// console.log("lightId",lightId);
var lightDate = $("#lightDate").val();
// console.log("lightDate",lightDate);
var canvas = document.getElementById("lightTriggerTimesCanvas");
var context = canvas.getContext("2d");
context.clearRect(0,0,canvas.width,canvas.height);
drawHorizontalLine(context);
// 画Hour的x轴的函数
drawHourXMark(context);
// 写标题信息
drawLightOVPTriggerTimesTitle(context);
// 画小标题信息
drawUnitTitleInfo(context);
// 画Month的x轴的函数
drawMonthXMark(context);
// 画y轴能量单位方法
drawEnergyUnitDescription(context);
// 画Light的Hours的Y轴mark
drawLightHoursYMark(context);
// 画Hours的Y轴的Line标线
drawHoursYLineMarks(context);
// 画Light的Days的Y轴mark
drawLightDaysYMark(context);
// 画Light的Days的Y轴的Line标线
drawDaysYLineMarks(context);
// 画Light的month的Y轴mark
drawLightMonthsYMark(context);
// 画Month的Y轴的Line标线
drawMonthsYLineMarks(context);
var lightParams = {
"lightId":lightId,
"date":lightDate
};
// console.log("lightParams",lightParams);
var paramsStr = JSON.stringify(lightParams);
// console.log("paramsStr",paramsStr);
// 填充后台传过来的数据
drawLightCanvasInfo(context,paramsStr);
console.log("drawLightTriggerTimes()");
}
$(function(){
// 初始化Area信息
getAreaSelections();
// 给Area一个默认时间是当天
var date = today();
$("#areaDate").val(date);
$("#blockDate").val(date);
$("#floorDate").val(date);
$("#lightDate").val(date);
$('#s_area_area').change(function(){
// var communityId = $("#s_area_area option:selected").val();
var communityId = $(this).children('option:selected').val();
communityId = parseInt(communityId);
drawAreaTriggerTimes();
// console.log("communityId",communityId);
});
/* Block Consumption 部分 */
$('#s_area_block').change(function(){
var communityId = $(this).children('option:selected').val();
communityId = parseInt(communityId);
// console.log("communityId",communityId);
changeBlockAreaSelections(communityId);
});
$('#s_block_block').change(function(){
var blockId = $(this).val();
blockId = parseInt(blockId);
// console.log("blockId",blockId);
drawBlockTriggerTimes();
});
/* Floor Consumption 部分 */
$('#s_area_floor').change(function(){
var communityId = $(this).children('option:selected').val();
communityId = parseInt(communityId);
// console.log("communityId",communityId);
changeFloorAreaSelections(communityId);
});
$('#s_block_floor').change(function(){
var blockId = $(this).children('option:selected').val();
blockId = parseInt(blockId);
// console.log("blockId",blockId);
changeFloorBlockSelections(blockId);
});
$('#s_floor_floor').change(function(){
var floorId = $(this).val();
floorId = parseInt(floorId);
// console.log("floorId",floorId);
drawFloorTriggerTimes();
});
/* 添加Light部分 */
$('#s_area_light').change(function(){
var communityId = $(this).children('option:selected').val();
communityId = parseInt(communityId);
// console.log("communityId",communityId);
changeLightAreaSelections(communityId);
});
$('#s_block_light').change(function(){
var blockId = $(this).children('option:selected').val();
blockId = parseInt(blockId);
//console.log("blockId",blockId);
changeLightBlockSelections(blockId);
});
$('#s_floor_light').change(function(){
var floorId = $(this).children('option:selected').val();
floorId = parseInt(floorId);
//console.log("blockId",blockId);
changeLightFloorSelections(floorId);
});
$('#s_light_light').change(function(){
var lightId = $(this).children('option:selected').val();
lightId = parseInt(lightId);
// console.log("lightId",lightId);
drawLightTriggerTimes();
});
// tab栏切换area/block/floor/light部分
$(function(){
// 获取所有的li标签,添加鼠标进入事件
$(".tab_dv>button").click(function(){
// 设置当前鼠标进入的li添加类样式,同时移除当前li的所有兄弟元素
// 类样式
$(this).removeClass("btn-success btn-info").addClass("btn-success").siblings("button").removeClass("btn-success btn-info");
$(this).siblings("button").addClass("btn-info");
// 设置鼠标进入的li对应的div的样式
// 获取当前鼠标进入的li的索引值
var index = $(this).index();
$(".all_info>div:eq("+index+")").addClass("selected")
.siblings('div')
.removeClass('selected');
getAreaSelections();
getInitialBlockSelections();
});
});
});
</script>
</head>
<body>
<div class="main">
<c:import url="navbar.jsp"></c:import>
<div class="container-fluid">
<!-- tab area/block/floor/light部分 -->
<div class="tab_dv">
<button type="button" class="btn btn-success" >Area Trigger Times</button>
<button type="button" class="btn btn-info" >Block Trigger Times</button>
<button type="button" class="btn btn-info" >Floor Trigger Times</button>
<button type="button" class="btn btn-info" >Light Trigger Times</button>
</div>
<div class="all_info">
<!-- Area Trigger Times 部分 -->
<div class="area selected">
<canvas id="areaTriggerTimesCanvas" width="1200" height="815" >
Your browser does not support HTML5.
</canvas>
<span class="span_s_area_area">
<select name="" id="s_area_area">
</select>
</span>
<span class="span_date_area">
<input type="text" onClick="WdatePicker({lang:'en',onpicked:changeAreaDate,maxDate:new Date()})" readonly="readonly" class="Wdate" id=areaDate />
</span>
</div>
<!-- Block Trigger Times 部分 -->
<div class="block">
<canvas id="blockTriggerTimesCanvas" width="1200" height="815" >
Your browser does not support HTML5.
</canvas>
<span class="area_block">
<select name="" id="s_area_block">
</select>
</span>
<span class="span_date_block">
<input type="text" onClick="WdatePicker({lang:'en',onpicked:changeBlockDate,maxDate:new Date()})" readonly="readonly" class="Wdate" id=blockDate />
</span>
<span class="span_s_block">
<select name="" id="s_block_block">
</select>
</span>
</div>
<!-- Floor Trigger Times 部分 -->
<div class="floor">
<canvas id="floorTriggerTimesCanvas" width="1200" height="815" >
Your browser does not support HTML5.
</canvas>
<span class="area_floor">
<select name="" id="s_area_floor">
</select>
</span>
<span class="block_floor">
<select name="" id="s_block_floor">
</select>
</span>
<span class="floor_floor">
<select name="" id="s_floor_floor">
</select>
</span>
<span class="span_date_floor">
<input type="text" onClick="WdatePicker({lang:'en',onpicked:changeFloorDate,maxDate:new Date()})" readonly="readonly" class="Wdate" id=floorDate />
</span>
</div>
<!-- light Trigger Times 部分 -->
<div class="light">
<canvas id="lightTriggerTimesCanvas" width="1200" height="815" >
Your browser does not support HTML5.
</canvas>
<span class="area_light">
<select name="" id="s_area_light">
</select>
</span>
<span class="block_light">
<select name="" id="s_block_light">
</select>
</span>
<span class="floor_light">
<select name="" id="s_floor_light">
</select>
</span>
<span class="light_light">
<select name="" id="s_light_light">
</select>
</span>
<span class="span_date_light">
<input type="text" onClick="WdatePicker({lang:'en',onpicked:changeLightDate,maxDate:new Date()})" readonly="readonly" class="Wdate" id=lightDate />
</span>
</div>
</div>
</div>
</div>
<c:set var="current_page" scope="session" value="ovp_trigger_times"/>
<c:import url="sidebar.jsp"></c:import>
</body>
</html>