김유현

Modify calcular time & 출근 전일 경우

1 node_modules/ 1 node_modules/
2 *.json 2 *.json
3 public/css/ 3 public/css/
4 +test.js
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -4,16 +4,13 @@ ...@@ -4,16 +4,13 @@
4 </head> 4 </head>
5 <body> 5 <body>
6 <link rel="stylesheet" href="css/graph_style.css"> 6 <link rel="stylesheet" href="css/graph_style.css">
7 - <div style = "padding: 20px" class="out"> 7 + <div style= "padding : 20px;"class="out">
8 <div id = "dpTime" class="in"></div> 8 <div id = "dpTime" class="in"></div>
9 <br> 9 <br>
10 - <div id = "salary" class="in"></div>
11 - <br>
12 <div id = "payPerDay" class="in"></div> 10 <div id = "payPerDay" class="in"></div>
13 <br> 11 <br>
14 - <div id = "moneyPerSec" class="in"></div> 12 + <div style="font-weight: bold;" id = "moneyPerSec" class="in"></div>
15 - 13 + <br>
16 -
17 </div> 14 </div>
18 <div class="progress-bar"></div> 15 <div class="progress-bar"></div>
19 <h1 class="count"></h1> 16 <h1 class="count"></h1>
...@@ -30,26 +27,44 @@ ...@@ -30,26 +27,44 @@
30 return sval; 27 return sval;
31 } 28 }
32 29
30 + String.format = function() {
31 + // The string containing the format items (e.g. "{0}")
32 + // will and always has to be the first argument.
33 + var theString = arguments[0];
34 +
35 + // start with the second argument (i = 1)
36 + for (var i = 1; i < arguments.length; i++) {
37 + // "gm" = RegEx options for Global search (more than one instance)
38 + // and for Multiline search
39 + var regEx = new RegExp("\\{" + (i - 1) + "\\}", "gm");
40 + theString = theString.replace(regEx, arguments[i]);
41 + }
42 +
43 + return theString;
44 + }
45 +
33 //document.getElementById("payDay").innerHTML = "pay day : " + getParam("payDay"); 46 //document.getElementById("payDay").innerHTML = "pay day : " + getParam("payDay");
34 var salary = Number(getParam("salary")); 47 var salary = Number(getParam("salary"));
35 var workTime = Number(getParam("workTime")); 48 var workTime = Number(getParam("workTime"));
36 var offWork = Number(getParam("offWork")); 49 var offWork = Number(getParam("offWork"));
37 var workingDayNum = getParam("workDay").length / 9; 50 var workingDayNum = getParam("workDay").length / 9;
38 var payPerDay = salary/(4*workingDayNum); 51 var payPerDay = salary/(4*workingDayNum);
39 - document.getElementById("salary").innerHTML = "salary : " + salary; 52 + //document.getElementById("salary").innerHTML = "salary : " + salary;
40 - document.getElementById("payPerDay").innerHTML = "charge per day : " + payPerDay; 53 + document.getElementById("payPerDay").innerHTML = "The daily wage is " + payPerDay + "won";
41 54
42 //document.getElementById("workDay").innerHTML = "working day : " + getParam("workDay"); 55 //document.getElementById("workDay").innerHTML = "working day : " + getParam("workDay");
43 - //document.getElementById("workTime").innerHTML = "working time : " + workTime;
44 //document.getElementById("offWork").innerHTML = "time of work : " + offWork; 56 //document.getElementById("offWork").innerHTML = "time of work : " + offWork;
45 //document.getElementById("workedHour").innerHTML = "worked hour : " + String(offWork - workTime); 57 //document.getElementById("workedHour").innerHTML = "worked hour : " + String(offWork - workTime);
46 58
47 var nowTime = new Date(); 59 var nowTime = new Date();
48 - var workStart = new Date(nowTime.getFullYear(), nowTime.getMonth(), nowTime.getDate(), workTime,00, 00); 60 + var strWorkTime = workTime
49 - 61 + if (strWorkTime < 10){
50 - var diff = (nowTime.getTime() - workStart.getTime())/1000; 62 + strWorkTime = "0" + strWorkTime;
51 - //document.getElementById("diff").innerHTML = diff; 63 + }
52 - var moneyPerSec = diff*salary/(60*60*(offWork - workTime)*workingDayNum*4); 64 + var dayStr = String.format("{0}-{1}-{2}T{3}:00:00",nowTime.getFullYear(), nowTime.getMonth()+1, nowTime.getDate(), strWorkTime);
65 + var workStart = new Date(dayStr);
66 + var diff = (nowTime.getTime() - workStart.getTime());
67 + var moneyPerSec = diff*(payPerDay/(1000*60*60*(offWork - workTime)));
53 setInterval("dpTime()",1); 68 setInterval("dpTime()",1);
54 function dpTime(){ 69 function dpTime(){
55 var now = new Date(); 70 var now = new Date();
...@@ -70,13 +85,18 @@ ...@@ -70,13 +85,18 @@
70 } if (seconds < 10){ 85 } if (seconds < 10){
71 seconds = "0" + seconds; 86 seconds = "0" + seconds;
72 } 87 }
73 - document.getElementById("dpTime").innerHTML = "현재 시간 : "+ hours + ":" + minutes + ":" + seconds; 88 + document.getElementById("dpTime").innerHTML = "The current time is "+ hours + ":" + minutes + ":" + seconds;
74 if (hours < workTime){ 89 if (hours < workTime){
75 - document.getElementById("moneyPerSec").innerHTML = "출근할 때까지 " + String(workTime - hours) + "시간 남았당"; 90 + var diff2 = (workStart.getTime() - now.getTime());
91 + var hour2 = (diff2/(1000*60*60))%24 - ((diff2/(1000*60*60))%24)%1;
92 + var min2 = (diff2/(1000*60))%60 - ((diff2/(1000*60))%60)%1;
93 + var sec2 = (diff2/1000)%60;
94 +
95 + document.getElementById("moneyPerSec").innerHTML = "출근할 때까지 "+ String(hour2) + "시간" + String(min2) + "분" + String(sec2.toFixed(2)) + "초 남았당";
76 } 96 }
77 else{ 97 else{
78 - moneyPerSec += salary/(60*60*(offWork - workTime)*workingDayNum*30); 98 + moneyPerSec += payPerDay/(1000*60*60*(offWork - workTime));
79 - document.getElementById("moneyPerSec").innerHTML = moneyPerSec.toFixed(3) + "원 버는중.."; 99 + document.getElementById("moneyPerSec").innerHTML = + moneyPerSec.toFixed(3) + "won earging today !!";
80 } 100 }
81 } 101 }
82 102
......