performance report issues fixed
This commit is contained in:
parent
26d9df5894
commit
0d39ee5faf
@ -988,7 +988,58 @@ class report extends BaseController
|
||||
|
||||
|
||||
}
|
||||
public function per()
|
||||
/*******************Performance report start **************/
|
||||
public function getFinancialStartDate()
|
||||
{
|
||||
|
||||
|
||||
|
||||
$CURMONTH = date('n');
|
||||
$CURYEAR = date('Y');
|
||||
$FINYEAR = 0;
|
||||
if ($CURMONTH >= 4)
|
||||
{
|
||||
$FINYEAR = $CURYEAR;
|
||||
} else
|
||||
{
|
||||
$FINYEAR = $CURYEAR - 1;
|
||||
}
|
||||
|
||||
$dateInString = $FINYEAR . '-4-1';
|
||||
$result = date_create($dateInString);
|
||||
// print_r($result);
|
||||
|
||||
return $result;
|
||||
|
||||
}
|
||||
|
||||
|
||||
/*this function uesd to finance EndDate */
|
||||
public function getFinancialEndDate()
|
||||
{
|
||||
$CURMONTH = date('n');
|
||||
$CURYEAR = date('Y');
|
||||
$FINYEAR = 0;
|
||||
if ($CURMONTH < 4)
|
||||
{
|
||||
$FINYEAR = $CURYEAR;
|
||||
} else
|
||||
{
|
||||
$FINYEAR = $CURYEAR + 1;
|
||||
}
|
||||
|
||||
$dateInString = $FINYEAR . '-3-31';
|
||||
$result = date_create($dateInString);
|
||||
|
||||
|
||||
// print_r($result);
|
||||
return $result;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
public function per()
|
||||
{
|
||||
|
||||
$this->global['pageTitle'] = 'Siddharth : Reports';
|
||||
@ -1004,13 +1055,222 @@ class report extends BaseController
|
||||
|
||||
$data['fy']=$this->dahsboard_Model->fy();
|
||||
$data['per']=$this->dahsboard_Model->per($fa,$aa,$m);
|
||||
|
||||
$cur_month = date('M');
|
||||
//echo $cur_month;
|
||||
if($cur_month == $m ){
|
||||
|
||||
$cur_date = date('d');
|
||||
}else{
|
||||
|
||||
$cur_date = date('t',strtotime($m));
|
||||
}
|
||||
$data['cur_month'] = $cur_date;
|
||||
|
||||
$CURMONTH = date('m');
|
||||
$CURDATE = date('d');
|
||||
$CURYEAR = date('Y');
|
||||
$EmpID = '';
|
||||
$empId = $this->dahsboard_Model->get_employee();
|
||||
foreach($empId as $Employee){
|
||||
|
||||
$day = array();
|
||||
|
||||
$DateofJoiningInString = $Employee->DateofJoining;
|
||||
$DateofJoining = date_create($DateofJoiningInString);
|
||||
// print_r($DateofJoining);
|
||||
$doj_month = date_format($DateofJoining, "n");
|
||||
$doj_year = date_format($DateofJoining, "Y");
|
||||
$doj_day = date_format($DateofJoining, "j");
|
||||
|
||||
$finStart = $this->getFinancialStartDate();
|
||||
$finEnd = $this->getFinancialEndDate();
|
||||
|
||||
$JoinedMonth = date_format($DateofJoining, "n");
|
||||
//print_r($JoinedMonth);echo "1285<br/>";
|
||||
// print_r($finStart);print_r($finEnd);
|
||||
//print $JoinedMonth;
|
||||
|
||||
if ($DateofJoining >= $finStart && $DateofJoining <= $finEnd)
|
||||
{
|
||||
$JoinedMonthAttendance = $this->dahsboard_Model->getAllAttendances($EmpID,$JoinedMonth);
|
||||
$joinedMonthDaysCount = cal_days_in_month(CAL_GREGORIAN, $doj_month, $doj_year);
|
||||
|
||||
if ($CURMONTH == $doj_month && $CURYEAR == $doj_year)
|
||||
{
|
||||
$joinedMonthWorkingDayCount = $CURDATE - $doj_day +1 ;
|
||||
}
|
||||
else
|
||||
{
|
||||
$joinedMonthWorkingDayCount = $joinedMonthDaysCount - $doj_day +1;
|
||||
}
|
||||
|
||||
$joinedMonthDays = 0;
|
||||
for ($j = $doj_day; $j <= $joinedMonthDaysCount; $j++)
|
||||
{
|
||||
$weekdays[] = 'WH' . $j;
|
||||
}
|
||||
foreach ($JoinedMonthAttendance as $day)
|
||||
{
|
||||
foreach ($day as $key => $value)
|
||||
{
|
||||
foreach ($weekdays as $weeks)
|
||||
{
|
||||
if ($weeks == $key)
|
||||
{
|
||||
if ($value != 0)
|
||||
{
|
||||
// echo $value;
|
||||
$joinedMonthDays++;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//echo $joinedMonthDays;die;
|
||||
|
||||
$result = $this->dahsboard_Model->attendanceyear($EmpID, $JoinedMonth + 1);
|
||||
|
||||
//print_r($result);
|
||||
$yearabs = $this->dahsboard_Model->getAllAttendance($EmpID, $CURMONTH);
|
||||
$TotalNoofDays = $result[0]->TotalWorkingDays;
|
||||
$DaysWorked = $result[0]->DaysWorked;
|
||||
|
||||
// echo $TotalNoofDays;
|
||||
// echo $DaysWorked;die;
|
||||
$values = 0;
|
||||
$values = array();
|
||||
$weekdays = array();
|
||||
$date = date('d');
|
||||
|
||||
$Work = array_sum($weekdays);
|
||||
|
||||
for ($j = 1; $j <= $date; $j++)
|
||||
{
|
||||
$weekdays[] = 'WH' . $j;
|
||||
}
|
||||
$totalhours =0;
|
||||
foreach ($yearabs as $day)
|
||||
{
|
||||
foreach ($day as $key => $value)
|
||||
{
|
||||
foreach ($weekdays as $weeks)
|
||||
{
|
||||
if ($weeks == $key)
|
||||
{
|
||||
if ($value != 0)
|
||||
{
|
||||
//$values++;
|
||||
//$totalhours = array_sum($value);
|
||||
$values[] = $value;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$DaysWorked = 0;
|
||||
|
||||
$totalhours = array_sum($values);
|
||||
|
||||
$values = $totalhours/8;
|
||||
//print_r($totalhours);
|
||||
|
||||
if ($CURMONTH == $doj_month && $CURYEAR == $doj_year)
|
||||
{
|
||||
$TotalNoofDays = $TotalNoofDays + $joinedMonthWorkingDayCount;
|
||||
$DaysWorked = $joinedMonthDays;
|
||||
}
|
||||
else
|
||||
{
|
||||
$TotalNoofDays = $TotalNoofDays + $CURDATE + $joinedMonthWorkingDayCount;
|
||||
$DaysWorked = $DaysWorked + $joinedMonthDays + $values;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
$final_res = round(($DaysWorked / $TotalNoofDays) * 100);
|
||||
// echo "------";
|
||||
//echo $final_res;exit();
|
||||
$workeds[] = $DaysWorked;
|
||||
$yeardata[] = $final_res;
|
||||
$totaldays[] = $TotalNoofDays;
|
||||
|
||||
|
||||
}
|
||||
|
||||
else
|
||||
{
|
||||
$EmpID = $Employee->EmpID;
|
||||
$result = $this->dahsboard_Model->attendanceyear($EmpID, 4);
|
||||
$yearabs = $this->dahsboard_Model->getAllAttendance($EmpID, $CURMONTH);
|
||||
$TotalNoofDays = $result[0]->TotalWorkingDays;
|
||||
$DaysWorked = $result[0]->DaysWorked;
|
||||
|
||||
|
||||
$values = 0;
|
||||
$values = array();
|
||||
$weekdays = array();
|
||||
$date = date('d');
|
||||
|
||||
$Work = array_sum($weekdays);
|
||||
|
||||
for ($j = 1; $j <= $date; $j++)
|
||||
{
|
||||
$weekdays[] = 'WH' . $j;
|
||||
}
|
||||
foreach ($yearabs as $day)
|
||||
{
|
||||
foreach ($day as $key => $value)
|
||||
{
|
||||
foreach ($weekdays as $weeks)
|
||||
{
|
||||
if ($weeks == $key)
|
||||
{
|
||||
if ($value != 0)
|
||||
{
|
||||
|
||||
$values[]=$value;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$totalhours = array_sum($values);
|
||||
|
||||
$values = $totalhours/8;
|
||||
|
||||
$TotalNoofDays = $TotalNoofDays + $CURDATE;
|
||||
$DaysWorked = $DaysWorked + $values;
|
||||
$final_res = round(($DaysWorked / $TotalNoofDays) * 100);
|
||||
// echo "------";
|
||||
//echo $final_res;exit();
|
||||
$workeds[] = $DaysWorked;
|
||||
$yeardata[] = $final_res;
|
||||
$totaldays[] = $TotalNoofDays;
|
||||
//print_r($data);
|
||||
|
||||
}
|
||||
}
|
||||
$data['dayworked'] = $workeds;
|
||||
$data['yearpercentage'] = $yeardata;
|
||||
$data['yeardays'] = $totaldays;
|
||||
//print_r($data['workeds']);echo"<br/>asdasd";die;
|
||||
|
||||
// print_r( $data['spurchse']);
|
||||
|
||||
$this->loadviews("report_emp",$this->global,$data, NULL);
|
||||
|
||||
|
||||
}
|
||||
/***************End *************/
|
||||
public function cashbook()
|
||||
{
|
||||
|
||||
|
||||
@ -253,27 +253,36 @@ GROUP BY financial_year";
|
||||
$query = $this->db->query($sql);
|
||||
return $query->result();
|
||||
}
|
||||
|
||||
function get_employee(){
|
||||
|
||||
$yes_date = date('Y-m-d',strtotime("-1 days"));
|
||||
$sql = "select * from T_Employee_Details where date(created_date) <='".$yes_date."' and isActive =1";
|
||||
$query = $this->db->query($sql);
|
||||
return $query->result();
|
||||
}
|
||||
function per($fa,$aa,$m)
|
||||
{
|
||||
$sql= "SELECT year.Eid as Eid,year.ename as ename,year.active as active,month.days as days,month.Days_Worked as worked,month.percentage as percentage,year.days as yday,year.workd as yworkd,year.percentage as ypercentage
|
||||
//echo $m;
|
||||
$cur_month = date('M');
|
||||
//echo $cur_month;
|
||||
if($cur_month == $m ){
|
||||
|
||||
$cur_date = date('d');
|
||||
}else{
|
||||
|
||||
$cur_date = date('t',strtotime($m));
|
||||
}
|
||||
//echo $cur_date;die;
|
||||
$sql= "SELECT month.Eid as Eid,month.ename as ename,month.active as active,month.days as monthdays,month.Days_Worked as monthworked,month.percentage as monthpercentage
|
||||
from (select em.EmpID as Eid,concat(em.FirstName,'.',em.LastName) as ename,em.IsActive as active,at.NoofDays as days,
|
||||
Days_Worked,round((Days_Worked/NoofDays*100)) as percentage from
|
||||
Days_Worked,round((Days_Worked/".$cur_date."*100)) as percentage from
|
||||
T_Employee_Details em
|
||||
join T_Attendance at on at.EmpID = em.EmpID
|
||||
where (Month_Year >= '".$fa."-04-01' and Month_Year <= '".$aa."-04-01') and monthname(Month_Year) = '".$m."'
|
||||
) as month left join
|
||||
(select em.EmpID as Eid,concat(em.FirstName,'.',em.LastName) as ename,em.IsActive as active,sum(at.NoofDays) as days,
|
||||
sum(Days_Worked) workd,round((sum(Days_Worked)/sum(NoofDays)*100)) as percentage from
|
||||
T_Employee_Details em
|
||||
join T_Attendance at on at.EmpID = em.EmpID
|
||||
where (Month_Year >= '".$fa."-04-01' and Month_Year <= '".$aa."-04-01')
|
||||
group by Eid
|
||||
) as year on year.Eid = month.Eid and year.ename = month.ename
|
||||
group by Eid ";
|
||||
) as month";
|
||||
|
||||
$query = $this->db->query($sql);
|
||||
return $query->result();
|
||||
return $query->result();
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -264,7 +264,7 @@ if(!empty($EmpCount))
|
||||
<!-- <input type="text" id="datepic" name="datepic" placeholder="Select Date" style="color:#000;width:15%" /> -->
|
||||
|
||||
<!-- <input type="button" id="but" value="ok" style="color:blue; width:15%" /> -->
|
||||
|
||||
<a href="<?php echo base_url()?>Empperform" target="_blank">Click here to Employee Performance Report</a>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
@ -74,7 +74,8 @@
|
||||
<?php echo 'Year'; ?>
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<select class="form-control" id="financialyear" name="financialyear">
|
||||
<select class="form-control" id="financialyear" name="financialyear" required>
|
||||
|
||||
<option value="">Select Year</option>
|
||||
<?php
|
||||
|
||||
@ -96,11 +97,9 @@
|
||||
<?php echo 'Month'; ?>
|
||||
</label>
|
||||
<div class="input-group">
|
||||
<select class="form-control" id="month" name="month">
|
||||
<select class="form-control" id="month" name="month" required>
|
||||
<option value="">Select Month</option>
|
||||
<option value="January">January</option>
|
||||
<option value="February">February</option>
|
||||
<option value="March">March</option>
|
||||
|
||||
<option value="April">April</option>
|
||||
<option value="May">May</option>
|
||||
<option value="June">June</option>
|
||||
@ -110,6 +109,9 @@
|
||||
<option value="October">October</option>
|
||||
<option value="November">November</option>
|
||||
<option value="December">December</option>
|
||||
<option value="January">January</option>
|
||||
<option value="February">February</option>
|
||||
<option value="March">March</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
@ -158,8 +160,10 @@
|
||||
$tr4=0;
|
||||
$last = $this->uri->total_segments();
|
||||
$ab=$this->uri->segment($last);
|
||||
foreach($per as $rel)
|
||||
foreach($per as $index =>$rel)
|
||||
{
|
||||
//echo $index;
|
||||
//echo
|
||||
?>
|
||||
<tr>
|
||||
<td><span>
|
||||
@ -174,13 +178,14 @@
|
||||
echo 'In Active';
|
||||
}
|
||||
?></span></td>
|
||||
|
||||
<td style="text-align:right"><span><?php
|
||||
echo $rel->days;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->worked;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->percentage;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->yday;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->yworkd;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->ypercentage;?></span></td>
|
||||
echo $cur_month;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->monthworked;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $rel->monthpercentage;?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $yeardays[$index];?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $dayworked[$index];?></span></td>
|
||||
<td style="text-align:right"><span><?php echo $yearpercentage[$index];?></span></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user