/**
  * 
  */
 public function leaveswipediscrepancyreportAction()
 {
     $resourceData = array();
     $selectedResource = null;
     $discrepancystartdate = date('d-m-Y');
     $discrepancyenddate = date('d-m-Y');
     $auth = Zend_Auth::getInstance();
     if ($auth->hasIdentity()) {
         $loginUserId = $auth->getStorage()->read()->id;
         $loginuserRole = $auth->getStorage()->read()->emprole;
         $loginuserGroup = $auth->getStorage()->read()->group_id;
     }
     if ($selectedResource == null) {
         $selectedResource = $loginUserId;
     }
     $repModel = new Default_Model_Servicerequests();
     $resourceData = $repModel->getResourceData($selectedResource, $loginuserRole, $loginuserGroup);
     if ($this->getRequest()->getPost()) {
         $tempDate1 = $this->_getParam('discrepancystartdate', null);
         $tempDate2 = $this->_getParam('discrepancyenddate', null);
         $selectedResource = $this->_getParam('resource_id', null);
         $swipeTransactions = $repModel->getSwipeTransactions($tempDate1, $tempDate2, $selectedResource);
         $processedTransactions = $this->ProcessTransactions($swipeTransactions);
         $TransactionSummary = $this->TransactionSummary($processedTransactions);
         $swipestartdate = date('Y-m-d', strtotime($tempDate1));
         $swipeenddate = date('Y-m-d', strtotime($tempDate2));
         $resourceswipData = $repModel->getswipedatadiscrepancyreport($swipestartdate, $swipeenddate, $selectedResource);
         $uids = array();
         foreach ($resourceswipData as $u) {
             $uids[] = trim(substr($u['aDateTime'], 0, 10));
         }
         $nextday = strftime("%Y-%m-%d", strtotime("{$swipeenddate} +1 day"));
         $dateStart = date_create($swipestartdate);
         $dateEnd = date_create($nextday);
         $interval = new DateInterval('P1D');
         $period = new DatePeriod($dateStart, $interval, $dateEnd);
         $try = array(array('', '', ''), array('', '', ''), array('', '', ''));
         foreach ($period as $day) {
             $formatted = $day->format("Y-m-d");
             if (!in_array($formatted, $uids)) {
                 $missingDates[] = $formatted;
             }
             if (in_array($formatted, $uids)) {
                 $presentDates[] = $formatted;
             }
         }
         $dateMerge = array_merge($missingDates, $presentDates);
         $sortDates = sort($dateMerge);
         $alldates = $dateMerge;
         $currRow1 = 0;
         foreach ($alldates as $fill) {
             $missingDates_store[$currRow1] = array('Discrepancy Dates' => $fill, 'swipe report' => '', 'leave report' => '');
             $currRow1++;
         }
         $currRow = 0;
         foreach ($missingDates_store as $value) {
             foreach ($TransactionSummary as $TransactionSummarykey) {
                 $swipe_current_day = $TransactionSummarykey['Working Day'];
                 $sel_current_day = $value['Discrepancy Dates'];
                 if ($sel_current_day == $swipe_current_day) {
                     //assign current $test1 value to #alldates
                     $missingDates_store[$currRow]['swipe report'] = $TransactionSummarykey['Difference'];
                     break;
                 }
             }
             $resourceleaveData = $repModel->getleavediscrepancyreport($sel_current_day, $loginUserId);
             if ($resourceleaveData) {
                 $missingDates_store[$currRow]['leave report'] = 'Leave Applied';
             }
             $currRow++;
         }
     }
     $dataExists = count($missingDates_store);
     $this->view->dataExists = $dataExists;
     $this->view->selectedResource = $selectedResource;
     $this->view->discrepancyData = $this->ConvertArrayToGrid("Discrepancy Details", $missingDates_store);
     $this->view->resourceData = $resourceData;
     $this->view->selDate = $tempDate1;
     $this->view->selendDate = $tempDate2;
 }