old8_fbulkServerUpload.blade.php 13 KB
<?php

//use Auth;
//use Input;
//use Response;
use App\Models\Notification;
use App\Jobs\KHRMSLib;

$wakka = new KHRMSLib();

$kformlib=new \App\Jobs\KFormLib($wakka->HRCoreVars["HRFiledsStr"]);
$kformlib->gthis=$wakka;

include_once(app_path().'/lib/phpexcel/PHPExcel.php');
//PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP);
$themehome=$wakka->GetThemePath('/');
$updatetime=time();
/*function mkdir_r ($dir)
{
  if (strlen($dir) == 0)return 0;
  if (is_dir($dir))return 1;
  elseif (dirname($dir) == $dir)return 1;
  return (mkdir_r(dirname($dir)) and mkdir($dir,0777));
}*/

//$dirt = storage_path()."/input/";

$dirt = storage_path()."/input/";

if(is_dir($dirt))
{
if($dh = opendir($dirt))
{
while(($file = readdir($dh)) !== false)
{

$serverNo = explode("-", $file);
$serverNo = $serverNo[0];

if($file != "." && $file != ".." && $file !=".bash_history" && $serverNo=='8')
{

	  $clientlst=$wakka->GetBBBUserData("clientslist");
	  
	  $isadmin=$wakka->IsAdmin();
	  $username=$wakka->GetUserName();
	  $triggers=Input::get("triggers");
	  $tmpstr=explode(",",$kformlib->HRFiledsStr);
	  
	  $success="";$message="";$successcnt=0;$duplicatecount=0;
	  $inputFileType = "Excel5";
	  //$inputFileType = PHPExcel_IOFactory::identify(storage_path()."/input/".$file);
	  $objReader = PHPExcel_IOFactory::createReader($inputFileType);
	  $objPHPExcel = $objReader->load(storage_path()."/input/".$file);
	  $objWorksheet = $objPHPExcel->getActiveSheet();
	  $highestColumn = PHPExcel_Cell::columnIndexFromString($objPHPExcel->getActiveSheet()->getHighestColumn());
	  $highestrow=$objPHPExcel->getActiveSheet()->getHighestRow();

	  $serverIp = '10.3.179.121';

	  $conn = mysqli_connect("$serverIp",'root','yb9738z','kstych_flexydial');
	  
	  $excelarray=array();$keys=array();
	  for($i=1;$i<=$highestrow;$i++)
	  {
	    $excelarray[$i]=array();
	    for ($head = 0; $head < $highestColumn; $head++)
	    {
				if($i==1)
				{
					$keys[$head]=trim($objWorksheet->getCellByColumnAndRow($head,$i)->getValue());
				}
				else
				{
					$excelarray[$i][$keys[$head]]=trim($objWorksheet->getCellByColumnAndRow($head, $i)->getValue());
				}
	    }
		}

          $flag = 0;
	  $editflag=0;

	  for($i=2;$i<=$highestrow;$i++)
	  {
	
	   /*$sql = "SELECT * from records_server WHERE clientcode='".$excelarray[$i]["clientcode"]."'";

            $clientcodeCheck = $conn->query($sql);*/
		
	    /*if($excelarray[$i]["id"]!=""  && $excelarray[$i]["currentstatus"]!="" && $excelarray[$i]["legalstatus"]!="" && $excelarray[$i]["firstname"]!="" && $excelarray[$i]["clientcode"]!="" && $excelarray[$i]["clientinternalid"]!="" && $excelarray[$i]["status"]!="" && $excelarray[$i]["ucic_id"]!="" && $excelarray[$i]["client"]!="" && $excelarray[$i]["Unit"]!="" && $excelarray[$i]["STATUS"]!="" && $excelarray[$i]["GROUP_CORR"]!="" && strlen($excelarray[$i]["mobile"])==10 && $excelarray[$i]["altphone1"]!="" && $excelarray[$i]["altphone2"]!="" && $excelarray[$i]["emailid"]!="" && $excelarray[$i]["Product1"]!="" && $excelarray[$i]["Product2"]!="" && $excelarray[$i]["Product3"]!="" && is_numeric($excelarray[$i]["clientcode"]) && is_numeric($excelarray[$i]["mobile"]))*/

	   if($excelarray[$i]["id"]!=""  && $excelarray[$i]["currentstatus"]!="" && $excelarray[$i]["legalstatus"]!="" && $excelarray[$i]["firstname"]!="" && $excelarray[$i]["clientcode"]!="" && $excelarray[$i]["clientinternalid"]!="" && $excelarray[$i]["status"]!="" && $excelarray[$i]["client"]!="" && is_numeric($excelarray[$i]["clientcode"]))
	    {
	      if($excelarray[$i]["id"]=="CREATE")
	      {
					$excelarray[$i]["id"]=$wakka->Query("insert into","","records",array('created'=>date('Y-m-d H:i:s')));
	      }
	      else $excelarray[$i]["id"]=intval($excelarray[$i]["id"]);

	      if($wakka->getCount("records","id='".$excelarray[$i]["id"]."'")==1)
	      {
				/*$empdata["created"]=date('Y-m-d H:i:s');
	      			$empdata["modified"]=date('Y-m-d H:i:s');
	      			$empdata["peopledata"]=$excelarray[$i];
	      			$empdata["currentstatus"]=$excelarray[$i]['currentstatus'];
	      			$empdata["legalstatus"]=$excelarray[$i]['legalstatus'];
	      			$empdata["firstname"]=$excelarray[$i]['firstname'];
	      			$empdata["clientcode"]=$excelarray[$i]['clientcode'];
	      			$empdata["clientinternalid"]=$excelarray[$i]['clientinternalid'];
	      			$empdata["status"]=$excelarray[$i]['status'];*/
				
				$empdata=$wakka->getPerson($excelarray[$i]["id"]);
				$ppldata=$empdata["peopledata"];
				$createdlog=$empdata['modifylog'];
				$fdirty=$empdata['dirty'];

				$createdlog[$updatetime]=$username."::";
				$createdlog["updated"]=$updatetime;
						
				$newdata=$ppldata;
				foreach($excelarray[$i] as $key => $value)
					{
							if($value!="")
							{
								if("A".$ppldata[$key]!="A".$value)//forcing string comparrision //MAGIC
								{
									$value=str_replace("'"," ",$value);
									if(strstr($createdlog[$updatetime],$key)==FALSE)$createdlog[$updatetime].="$key|".str_replace(array("|",",")," ",$ppldata[$key])."|".str_replace(array("|",",")," ",$value).",";

									$fdirty[$key]=1;
							
									$newdata[$key]=$value;
								}
							}
					}
			
				$empdata["peopledata"]=$newdata;
				$empdata['modifylog']=$createdlog;
			        $empdata['dirty']=$fdirty;				

	      			$wakka->setPerson($excelarray[$i]["id"],$empdata);
				$excelarray[$i]['modified']=date('Y-m-d H:i:s');
			
	       }
	      else
	      {
	// 				$message.="ID not found $excelarray[$i][id], ";
	      }
	    }
	    else
	    {
	      if($flag==0)
                {
                include_once(app_path().'/lib/phpexcel/PHPExcel.php');

                $inputFileType = "Excel5";
		//$inputFileType = PHPExcel_IOFactory::identify($file);
                $objReader = PHPExcel_IOFactory::createReader($inputFileType);
                $objPHPFailExcel = $objReader->load("assets/extras/blank.xls");
                $baseRow = 2;

                $reporthead=array("id","currentstatus","legalstatus","firstname","clientcode","clientinternalid","status","priority","ucic_id","client","Unit","STATUS","GROUP_CORR","DOB","age","mobile","altphone1","altphone2","emailid","Product1","Product2","Product3","DR_CR_TAG","TOT_CHQ_IND","TOT_CHQ_NONIND","TOT_SELF","TOT_CR","TOT_DR","TOT_EMI_OUT","TOT_INVST_OUT","TOT_UTL_OUT","ATM_active","atm_usage","bp_act_tag","BP_REG_ora","Chillr","db_tag","dc_offer","pos_status","dc_type","DC_billpay_tag","directpay_billpay_tag","FD_Status","IVR_active","nboff","NB_REG","NB","payzap","wallet","pref_action","Perks","Si","SSS","AL_CAR_CASH","AL_PRE_AMT","al_upgrade","decile_AL_CA_var","decile_AL_CSA_var","decile_AL_SA_var","BL_PRE_AMT","decile_BL_var","CE_SEGMENT_var","EDU_SEGMENT_var","decile_EEG_var","Jwel","decile_GoldLoan_var","hl_bt_amt","HL_PRE_AMT","decile_HL_CSA_var","decile_CVL_var","decile_HL_SA_var","LAP_PRE_AMT","PL_PAPERLESS_AMT","PL_PRE_AMT","decile_PL_CSA_var","TWL_PRE_AMT","BLOCK","prod2","APT","ACT_STATUS","STATEMENT_DETAILS","COC_ELIGI","decile_CC_CASA_var","JET_XSELL","LAST_TXN_POS_DATE","LE_ELIG","SMPAY_ACTIVE","SMPAY_REGD","CBDT","NO_OF_SCRIPTS","SCRIPT_VALUE","decile_demat_casa_var","rf_offer","MEdical","cc_auto","dc_auto","HSL","decile_Ins_CASA_var","child","decile_Ins_pen_var","motor_insurance","LAS_PRE_AMT","decile_las_mf_var","decile_LAS_Demat_var","li_cover","LIFE_INSU_PREMIUM_AMT1","LI_PLan_Prio","decile_MF_var","mf_isa","mf_las_limit","MF_LUMSUM_AMT","MF_SIP_AMT","Reason");


                $highestColumn = sizeof($reporthead);

                for ($head = 0; $head < $highestColumn; $head++){
                        $colstr=PHPExcel_Cell::stringFromColumnIndex($head);
                        $objPHPFailExcel->getActiveSheet()->setCellValue($colstr."1", $reporthead[$head]);
                }       
                }
		$reason = "";
		
		/*if(isset($clientcodeCheck))
                        $reason .= "Duplicate row,";*/

		if($excelarray[$i]["id"]=="") 
			$reason .= "Column ID is blank,";

		if($excelarray[$i]["currentstatus"]=="")
			$reason .= "Column CURRENTSTATUS is blank,";

		if($excelarray[$i]["legalstatus"]=="")
			$reason .= "Column LEGALSTATUS is blank,";

		if($excelarray[$i]["firstname"]=="")
			$reason .= "Column FIRSTNAME is blank,";

		if($excelarray[$i]["clientcode"]=="")
			$reason .= "Column CLIENTCODE is blank,";
		
		if(!is_numeric($excelarray[$i]["clientcode"]))
                        $reason .= "Column CLIENTCODE should be numeric,";

		if($excelarray[$i]["clientinternalid"]=="")
			$reason .= "Column CLIENTINTERNALID is blank,";

		if($excelarray[$i]["status"]=="")
			$reason .= "Column STATUS is blank,";

		/*if($excelarray[$i]["ucic_id"]=="")
			$reason .= "Column UCIC_ID is blank,";

		if($excelarray[$i]["Unit"]=="")
			$reason .= "Column UNIT is blank,";*/

		if($excelarray[$i]["client"]=="")
                        $reason .= "Column CLIENT is blank,";


		/*if($excelarray[$i]["STATUS"]=="")
			$reason .= "Column STATUS is blank,";

		if($excelarray[$i]["GROUP_CORR"]=="")
			$reason .= "Column GROUP_CORR is blank,";

		if(strlen($excelarray[$i]["mobile"])!=10)
			$reason .= "Invalid MOBILE,";

		if(!is_numeric($excelarray[$i]["mobile"]))
                        $reason .= "Column MOBILE should be numeric,";*/

      		/*if($excelarray[$i]["altphone1"]=="")
			$reason .= "Column ALTPHONE1 is blank,";

		if($excelarray[$i]["altphone2"]=="")
			$reason .= "Column ALTPHONE2 is blank,";

		if($excelarray[$i]["emailid"]=="")
			$reason .= "Column EMAILID is blank,";*/

		/*if($excelarray[$i]["Product1"]=="")
			$reason .= "Column PRODUCT1 is blank,";

		if($excelarray[$i]["Product2"]=="")
			$reason .= "Column PRODUCT2 is blank,";

		if($excelarray[$i]["Product3"]=="")
			$reason .= "Column PRODUCT3 is blank,";*/		

		$excelarray[$i]['Reason'] = $reason;

                $row = $baseRow++;
 
                for ($head = 0; $head < $highestColumn; $head++){
                $colstr=PHPExcel_Cell::stringFromColumnIndex($head);
                $objPHPFailExcel->getActiveSheet()->setCellValue($colstr.$row, $excelarray[$i][$reporthead[$head]]);
                }
		$excelarray[$i]['modified'] = '';
		$flag++;
	    }
	  }	

	include_once(app_path().'/lib/phpexcel/PHPExcel.php');

		$inputFileType = "Excel5";
		//$inputFileType = PHPExcel_IOFactory::identify($file);
		$objReader = PHPExcel_IOFactory::createReader($inputFileType);
		$objPHPSucsExcel = $objReader->load("assets/extras/blank.xls");
		$baseRow = 2;

		$reporthead=array("id","currentstatus","legalstatus","firstname","clientcode","clientinternalid","status","priority","ucic_id","client","Unit","STATUS","GROUP_CORR","DOB","age","mobile","altphone1","altphone2","emailid","Product1","Product2","Product3","DR_CR_TAG","TOT_CHQ_IND","TOT_CHQ_NONIND","TOT_SELF","TOT_CR","TOT_DR","TOT_EMI_OUT","TOT_INVST_OUT","TOT_UTL_OUT","ATM_active","atm_usage","bp_act_tag","BP_REG_ora","Chillr","db_tag","dc_offer","pos_status","dc_type","DC_billpay_tag","directpay_billpay_tag","FD_Status","IVR_active","nboff","NB_REG","NB","payzap","wallet","pref_action","Perks","Si","SSS","AL_CAR_CASH","AL_PRE_AMT","al_upgrade","decile_AL_CA_var","decile_AL_CSA_var","decile_AL_SA_var","BL_PRE_AMT","decile_BL_var","CE_SEGMENT_var","EDU_SEGMENT_var","decile_EEG_var","Jwel","decile_GoldLoan_var","hl_bt_amt","HL_PRE_AMT","decile_HL_CSA_var","decile_CVL_var","decile_HL_SA_var","LAP_PRE_AMT","PL_PAPERLESS_AMT","PL_PRE_AMT","decile_PL_CSA_var","TWL_PRE_AMT","BLOCK","prod2","APT","ACT_STATUS","STATEMENT_DETAILS","COC_ELIGI","decile_CC_CASA_var","JET_XSELL","LAST_TXN_POS_DATE","LE_ELIG","SMPAY_ACTIVE","SMPAY_REGD","CBDT","NO_OF_SCRIPTS","SCRIPT_VALUE","decile_demat_casa_var","rf_offer","MEdical","cc_auto","dc_auto","HSL","decile_Ins_CASA_var","child","decile_Ins_pen_var","motor_insurance","LAS_PRE_AMT","decile_las_mf_var","decile_LAS_Demat_var","li_cover","LIFE_INSU_PREMIUM_AMT1","LI_PLan_Prio","decile_MF_var","mf_isa","mf_las_limit","MF_LUMSUM_AMT","MF_SIP_AMT","modified");


		$highestColumn = sizeof($reporthead);

		for ($head = 0; $head < $highestColumn; $head++){
			$colstr=PHPExcel_Cell::stringFromColumnIndex($head);
			$objPHPSucsExcel->getActiveSheet()->setCellValue($colstr."1", $reporthead[$head]);
		}

		$col = 0;

		foreach($excelarray as $key => $value)
		{
			if($value != null&&$value['id'] != "CREATE"&&$value['modified']!='')
			{	
				//$value['modified'] = date('Y-m-d H:i:s');
				$row = $baseRow++;

				for ($head = 0; $head < $highestColumn; $head++){
					$colstr=PHPExcel_Cell::stringFromColumnIndex($head);
					$objPHPSucsExcel->getActiveSheet()->setCellValue($colstr.$row, $value[$reporthead[$head]]);
				}
			}
		}
//PHPExcel_Settings::setZipClass(PHPExcel_Settings::ZIPARCHIVE);
//PHPExcel_Settings::setZipClass(PHPExcel_Settings::PCLZIP);
		if($objPHPSucsExcel != null)
		{
		$objWriter = PHPExcel_IOFactory::createWriter($objPHPSucsExcel, $inputFileType);
		$objWriter->save(storage_path()."/success/Success_".$file);
		}

//Failure Part
		if($objPHPFailExcel != null)
		{
		$objWriter = PHPExcel_IOFactory::createWriter($objPHPFailExcel, $inputFileType);
                $objWriter->save(storage_path()."/failure/Failure_".$file);
		}

		unlink(storage_path()."/input/".$file);
                mysqli_close($conn);
}

}
closedir($dh);
}
} 

?>