|
@@ -15,7 +15,7 @@ class weeklyReportModel extends Staple_Model
|
|
|
for($i=1;$i<53;$i++)
|
|
|
{
|
|
|
$weeks[$i] = $this->getStartAndEndDate($i, $year);
|
|
|
-
|
|
|
+
|
|
|
$sql = "
|
|
|
SELECT ROUND((TIME_TO_SEC(SEC_TO_TIME(SUM(outTime - inTime)-SUM(lessTime*60)))/3600)*4)/4 AS 'totalTime' FROM timeEntries WHERE inTime >= ".$weeks[$i]['start']['unix']." AND outTime <= ".$weeks[$i]['end']['unix']." AND userId = $uid;
|
|
|
";
|
|
@@ -27,13 +27,37 @@ class weeklyReportModel extends Staple_Model
|
|
|
$result = $query->fetch_assoc();
|
|
|
$total = $result['totalTime'];
|
|
|
}
|
|
|
-
|
|
|
$weeks[$i]['hoursWorked'] = $total;
|
|
|
}
|
|
|
|
|
|
return $weeks;
|
|
|
}
|
|
|
|
|
|
+ function getWeekWorked($uid,$week,$year)
|
|
|
+ {
|
|
|
+ $week = $this->getStartAndEndDate($week, $year);
|
|
|
+
|
|
|
+ $sql = "
|
|
|
+ SELECT ROUND((TIME_TO_SEC(SEC_TO_TIME(SUM(outTime - inTime)-SUM(lessTime*60)))/3600)*4)/4 AS 'totalTime' FROM timeEntries WHERE inTime >= ".$week['start']['unix']." AND outTime <= ".$week['end']['unix']." AND userId = $uid;
|
|
|
+ ";
|
|
|
+
|
|
|
+ $total = 0;
|
|
|
+ if($this->db->query($sql)->num_rows > 0)
|
|
|
+ {
|
|
|
+ $query = $this->db->query($sql);
|
|
|
+ $result = $query->fetch_assoc();
|
|
|
+ $total = $result['totalTime'];
|
|
|
+ }
|
|
|
+
|
|
|
+ if($total == 0)
|
|
|
+ {
|
|
|
+ $total = "0";
|
|
|
+ }
|
|
|
+
|
|
|
+ $week['total'] = $total;
|
|
|
+ return $week;
|
|
|
+ }
|
|
|
+
|
|
|
function getStartAndEndDate($week, $year)
|
|
|
{
|
|
|
$dto = new DateTime();
|
|
@@ -44,18 +68,18 @@ class weeklyReportModel extends Staple_Model
|
|
|
$ret['year'] = $year;
|
|
|
|
|
|
//Week Start
|
|
|
- $dto->setTime(0,0,0);
|
|
|
+ $dto->setTime(24,0,0);
|
|
|
$ret['start']['unix'] = $dto->format('U');
|
|
|
- $ret['start']['formatted'] = $dto->format('Y-m-d h:i:s');
|
|
|
+ $ret['start']['formatted'] = $dto->format('Y-m-d');
|
|
|
$ret['start']['dayName'] = $dto->format('l');
|
|
|
$ret['start']['day'] = $dto->format('jS');
|
|
|
$ret['start']['month'] = $dto->format('F');
|
|
|
$ret['start']['year'] = $dto->format('Y');
|
|
|
|
|
|
//Week End
|
|
|
- $dto->modify('+5 days')->setTime(24,0,0);
|
|
|
+ $dto->modify('+5 days')->setTime(23,59,59);
|
|
|
$ret['end']['unix'] = $dto->format('U');
|
|
|
- $ret['end']['formatted'] = $dto->format('Y-m-d h:i:s');
|
|
|
+ $ret['end']['formatted'] = $dto->format('Y-m-d');
|
|
|
$ret['end']['dayName'] = $dto->format('l');
|
|
|
$ret['end']['day'] = $dto->format('jS');
|
|
|
$ret['end']['month'] = $dto->format('F');
|