182 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			PHP
		
	
			
		
		
	
	
			182 lines
		
	
	
		
			6.9 KiB
		
	
	
	
		
			PHP
		
	
<?php
 | 
						|
defined('BASEPATH') OR exit('No direct script access allowed');
 | 
						|
 | 
						|
class TutupTahun extends CI_Controller {
 | 
						|
 | 
						|
	public function __construct()
 | 
						|
    {
 | 
						|
        parent::__construct();
 | 
						|
        $this->load->model("AbsenModel");
 | 
						|
        $this->load->model("AbsensiModel");
 | 
						|
        $this->load->model("UserModel");
 | 
						|
        $this->load->model("KelurahanModel");
 | 
						|
        $this->load->model("LaporanModel");
 | 
						|
        $this->load->model("UmkmModel");
 | 
						|
		
 | 
						|
		
 | 
						|
		if($this->UserModel->isNotLogin()) {
 | 
						|
			redirect(site_url('login'));
 | 
						|
		} elseif(!($this->UserModel->isAdmin())) {
 | 
						|
			redirect(site_url('user/sdashboard'));
 | 
						|
		} 
 | 
						|
		
 | 
						|
		$get = $this->input->get();
 | 
						|
		if($get['tahun']==NULL){
 | 
						|
			redirect(site_url('admin/progresabsen'));
 | 
						|
		} else {
 | 
						|
			$this->tahun = $get['tahun'];
 | 
						|
		}
 | 
						|
    }
 | 
						|
 | 
						|
	public function index()
 | 
						|
	{
 | 
						|
		$tahun = $this->tahun;
 | 
						|
		$coutAbsen = $this->AbsenModel->getAbsenCountByYear($tahun);
 | 
						|
 | 
						|
		//cek absen lengkap 12 bulan atau tidak
 | 
						|
		if($coutAbsen<12){
 | 
						|
			redirect(site_url('admin/progresabsen?tahun='.$tahun.'&msg=error!'));
 | 
						|
			die();
 | 
						|
		} else {
 | 
						|
			$listabsen = $this->AbsenModel->getAbsensByTahun($tahun);
 | 
						|
			foreach($listabsen as $absen){
 | 
						|
				$this->AbsenModel->setCloseAbsen($absen->id_absen);
 | 
						|
				$omset = 0;
 | 
						|
				$aset = 0;
 | 
						|
				$karyawan_l = 0;
 | 
						|
				$karyawan_p = 0;
 | 
						|
 | 
						|
				$listabsensi = $this->AbsensiModel->getAbsensiByBulanAndThn($absen->bulan,$tahun);
 | 
						|
				
 | 
						|
				foreach($listabsensi as $absensi){
 | 
						|
					if($absensi->signed=='0'){
 | 
						|
						$this->AbsensiModel->absenBySystem($absensi->id_absensi);
 | 
						|
					}
 | 
						|
					$omset = $omset + $absensi->omset;
 | 
						|
					$aset = $aset + $absensi->aset;
 | 
						|
					$karyawan_l = $karyawan_l + $absensi->karyawan_l;
 | 
						|
					$karyawan_p = $karyawan_p + $absensi->karyawan_p;
 | 
						|
					
 | 
						|
					$omset_tahunan_umkm=0;
 | 
						|
		
 | 
						|
					$listabsensiumkm = $this->AbsensiModel->getAbsensiByTahunAndUmkmId($tahun,$absensi->id_umkm);
 | 
						|
					
 | 
						|
					foreach($listabsensiumkm as $absensiumkm){
 | 
						|
						$omset_tahunan_umkm = $omset_tahunan_umkm +  $absensiumkm->omset;
 | 
						|
					}
 | 
						|
 | 
						|
					$this->UmkmModel->updateOmset($absensi->id_umkm,$omset_tahunan_umkm);
 | 
						|
 | 
						|
 | 
						|
				}
 | 
						|
 | 
						|
				$this->AbsenModel->update($absen->id_absen,$omset,$aset,$karyawan_l,$karyawan_p);
 | 
						|
			}
 | 
						|
 | 
						|
		
 | 
						|
			
 | 
						|
			$listkelurahan = $this->KelurahanModel->getKelurahan();
 | 
						|
			foreach($listkelurahan as $kelurahan){
 | 
						|
				$listabsen = $this->AbsenModel->getAbsensByTahun($tahun);
 | 
						|
				foreach($listabsen as $absen){
 | 
						|
 | 
						|
					$kecamatan = $kelurahan->kecamatan;
 | 
						|
					$aset=0;
 | 
						|
					$omset=0;
 | 
						|
					$jumlah_umkm = 0;
 | 
						|
					$karyawan_jenis1 = 0;
 | 
						|
					$karyawan_jenis2 = 0;
 | 
						|
					$karyawan_jenis3 = 0;
 | 
						|
					$omset_jenis1 = 0;
 | 
						|
					$omset_jenis2 = 0;
 | 
						|
					$omset_jenis3 = 0;
 | 
						|
					$aset_jenis1 = 0;
 | 
						|
					$aset_jenis2 = 0;
 | 
						|
					$aset_jenis3 = 0;
 | 
						|
					$karyawan_jen1_l = 0;
 | 
						|
					$karyawan_jen1_p = 0;
 | 
						|
					$karyawan_jen2_l = 0;
 | 
						|
					$karyawan_jen2_p = 0;
 | 
						|
					$karyawan_jen3_l = 0;
 | 
						|
					$karyawan_jen3_p = 0;
 | 
						|
					$umkm_jen1_kat1 = 0;
 | 
						|
					$umkm_jen1_kat2 = 0;
 | 
						|
					$umkm_jen1_kat3 = 0;
 | 
						|
					$umkm_jen2_kat1 = 0;
 | 
						|
					$umkm_jen2_kat2 = 0;
 | 
						|
					$umkm_jen2_kat3 = 0;
 | 
						|
					$umkm_jen3_kat1 = 0;
 | 
						|
					$umkm_jen3_kat2 = 0;
 | 
						|
					$umkm_jen3_kat3 = 0;
 | 
						|
					$listabsensiupdated = $this->AbsensiModel->getAbsensByTahunByBulanAndKelurahan($tahun,$absen->bulan,$kelurahan->kelurahan);
 | 
						|
					
 | 
						|
					foreach($listabsensiupdated as $updatedabsensi){
 | 
						|
						$aset = $aset+$updatedabsensi->aset;
 | 
						|
						$omset = $omset+$updatedabsensi->omset;
 | 
						|
						$jumlah_umkm++;
 | 
						|
	
 | 
						|
						$karyawan = $updatedabsensi->karyawan_l + $updatedabsensi->karyawan_p;
 | 
						|
	
 | 
						|
						if($updatedabsensi->id_jenis=='1'){
 | 
						|
							$karyawan_jenis1 = $karyawan_jenis1 + $karyawan;
 | 
						|
							$omset_jenis1 = $omset_jenis1 + $updatedabsensi->omset;
 | 
						|
							$aset_jenis1 = $aset_jenis1 + $updatedabsensi->aset;
 | 
						|
							$karyawan_jen1_l = $karyawan_jen1_l +$updatedabsensi->karyawan_l;
 | 
						|
							$karyawan_jen1_p = $karyawan_jen1_p +$updatedabsensi->karyawan_p;
 | 
						|
						}elseif($updatedabsensi->id_jenis=='2'){
 | 
						|
							$karyawan_jenis2 = $karyawan_jenis2 + $karyawan;
 | 
						|
							$omset_jenis2 = $omset_jenis2 + $updatedabsensi->omset;
 | 
						|
							$aset_jenis2 = $aset_jenis2 + $updatedabsensi->aset;
 | 
						|
							$karyawan_jen2_l = $karyawan_jen2_l +$updatedabsensi->karyawan_l;
 | 
						|
							$karyawan_jen2_p = $karyawan_jen2_p +$updatedabsensi->karyawan_p;
 | 
						|
						}elseif($updatedabsensi->id_jenis=='3'){
 | 
						|
							$karyawan_jenis3 = $karyawan_jenis3 + $karyawan;
 | 
						|
							$omset_jenis3 = $omset_jenis3 + $updatedabsensi->omset;
 | 
						|
							$aset_jenis3 = $aset_jenis3 + $updatedabsensi->aset;
 | 
						|
							$karyawan_jen3_l = $karyawan_jen3_l +$updatedabsensi->karyawan_l;
 | 
						|
							$karyawan_jen3_p = $karyawan_jen3_p +$updatedabsensi->karyawan_p;
 | 
						|
						}
 | 
						|
	
 | 
						|
						if(($updatedabsensi->id_jenis=='1')AND($updatedabsensi->id_kategori=='1')){
 | 
						|
							$umkm_jen1_kat1++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='1')AND($updatedabsensi->id_kategori=='2')){
 | 
						|
							$umkm_jen1_kat2++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='1')AND($updatedabsensi->id_kategori=='3')){
 | 
						|
							$umkm_jen1_kat3++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='2')AND($updatedabsensi->id_kategori=='1')){
 | 
						|
							$umkm_jen2_kat1++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='2')AND($updatedabsensi->id_kategori=='2')){
 | 
						|
							$umkm_jen2_kat2++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='2')AND($updatedabsensi->id_kategori=='3')){
 | 
						|
							$umkm_jen2_kat3++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='3')AND($updatedabsensi->id_kategori=='1')){
 | 
						|
							$umkm_jen3_kat1++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='3')AND($updatedabsensi->id_kategori=='2')){
 | 
						|
							$umkm_jen3_kat2++;
 | 
						|
						}elseif(($updatedabsensi->id_jenis=='3')AND($updatedabsensi->id_kategori=='3')){
 | 
						|
							$umkm_jen3_kat3++;
 | 
						|
						}
 | 
						|
						
 | 
						|
						//ceklaporan sudah ada atau belum
 | 
						|
						if($this->LaporanModel->getCountByTahunByBulanByKelurahan($tahun,$updatedabsensi->bulan,$kelurahan->kelurahan)>0){
 | 
						|
							$existinglaporan = $this->LaporanModel->getLaporanByBulanByYearByKelurahan($updatedabsensi->bulan,$tahun,$kelurahan->kelurahan);
 | 
						|
							$id_exitinglaporan = $existinglaporan->id_laporan;
 | 
						|
							$this->LaporanModel->update($id_exitinglaporan,$tahun,$updatedabsensi->bulan,$kelurahan->kelurahan,$kecamatan,$aset,$omset,$jumlah_umkm,$karyawan_jenis1,$karyawan_jenis2,$karyawan_jenis3,$omset_jenis1,$omset_jenis2,$omset_jenis3,$aset_jenis1,$aset_jenis2,$aset_jenis3,$karyawan_jen1_l,$karyawan_jen1_p,$karyawan_jen2_l,$karyawan_jen2_p,$karyawan_jen3_l,$karyawan_jen3_p,$umkm_jen1_kat1,$umkm_jen1_kat2,$umkm_jen1_kat3,$umkm_jen2_kat1,$umkm_jen2_kat2,$umkm_jen2_kat3,$umkm_jen3_kat1,$umkm_jen3_kat2,$umkm_jen3_kat3);
 | 
						|
						}else {
 | 
						|
							$this->LaporanModel->save($tahun,$updatedabsensi->bulan,$kelurahan->kelurahan,$kecamatan,$aset,$omset,$jumlah_umkm,$karyawan_jenis1,$karyawan_jenis2,$karyawan_jenis3,$omset_jenis1,$omset_jenis2,$omset_jenis3,$aset_jenis1,$aset_jenis2,$aset_jenis3,$karyawan_jen1_l,$karyawan_jen1_p,$karyawan_jen2_l,$karyawan_jen2_p,$karyawan_jen3_l,$karyawan_jen3_p,$umkm_jen1_kat1,$umkm_jen1_kat2,$umkm_jen1_kat3,$umkm_jen2_kat1,$umkm_jen2_kat2,$umkm_jen2_kat3,$umkm_jen3_kat1,$umkm_jen3_kat2,$umkm_jen3_kat3);
 | 
						|
						}
 | 
						|
					}
 | 
						|
				}
 | 
						|
			}
 | 
						|
		
 | 
						|
		}
 | 
						|
 | 
						|
		redirect(site_url('admin/progresabsen?tahun='.$tahun.'&msg=success'));
 | 
						|
		die();
 | 
						|
	
 | 
						|
		
 | 
						|
	}
 | 
						|
 | 
						|
	
 | 
						|
}
 |