added panjar route
This commit is contained in:
@@ -7,6 +7,7 @@ use App\Cawangan;
|
||||
use App\Denominasi;
|
||||
use App\Services\CashFlow\TellerServices;
|
||||
use Illuminate\Http\Request;
|
||||
use App\Services\Miscellaneous\PanjarServices;
|
||||
|
||||
use Carbon\Carbon;
|
||||
|
||||
@@ -26,6 +27,19 @@ class DenominasiController extends Controller
|
||||
return response()->json($response);
|
||||
}
|
||||
|
||||
public function test3($kodcaw,Request $request){
|
||||
$teller = new PanjarServices($kodcaw);
|
||||
$response = $teller->create($request);
|
||||
|
||||
return response()->json($response);
|
||||
}
|
||||
|
||||
public function test4($kodcaw,Request $request){
|
||||
$teller = new PanjarServices($kodcaw);
|
||||
$response = $teller->delete($request);
|
||||
|
||||
return response()->json($response);
|
||||
}
|
||||
|
||||
public function listdenominasi($kodcaw)
|
||||
{
|
||||
|
||||
@@ -9,6 +9,7 @@ use App\DenoPanjar;
|
||||
use App\Panjar;
|
||||
use App\Vault;
|
||||
use Carbon\Carbon;
|
||||
use DateTime;
|
||||
use Illuminate\Http\Request;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
use Illuminate\Support\Facades\Log;
|
||||
@@ -40,11 +41,12 @@ class PanjarServices
|
||||
|
||||
private function calculation_denominasi($array_deno = [],$denominasi = [],$jenis_panjar){
|
||||
|
||||
if(isset($array_deno) <= 0 || isset($denominasi) <= 0){
|
||||
if(empty($array_deno) && empty($denominasi)){
|
||||
return empty($array_deno);
|
||||
return 'no data';
|
||||
}
|
||||
|
||||
if($jenis_panjar != 'masuk' || $jenis_panjar != 'keluar') return 'no data';
|
||||
if($jenis_panjar != 'masuk' && $jenis_panjar != 'keluar') return 'no data';
|
||||
|
||||
$records = [];
|
||||
foreach($this->namelist_deno as $deno => $value){
|
||||
@@ -80,6 +82,37 @@ class PanjarServices
|
||||
];
|
||||
}
|
||||
|
||||
private function checkModal($jenismodal){
|
||||
switch ($jenismodal) {
|
||||
case "selenggara":
|
||||
$kategori = "Baiki dan Selenggara";
|
||||
$tag = 2;
|
||||
break;
|
||||
case "keraian":
|
||||
$kategori = "Keraian & Promosi";
|
||||
$tag = 3;
|
||||
break;
|
||||
case "belanjaam":
|
||||
$kategori = "Belanja AM";
|
||||
$tag = 1;
|
||||
break;
|
||||
case "perubatan":
|
||||
$kategori = "Belanja AM - Perubatan";
|
||||
$tag = 1;
|
||||
break;
|
||||
case "dapur":
|
||||
$kategori = "Belanja AM - Barangan Dapur";
|
||||
$tag = 1;
|
||||
break;
|
||||
case "pos":
|
||||
$kategori = "Belanja AM - Postage";
|
||||
$tag = 1;
|
||||
break;
|
||||
}
|
||||
|
||||
return ['kategori' => $kategori, 'tag' => $tag];
|
||||
}
|
||||
|
||||
public function delete(Request $request){
|
||||
$current = Carbon::now();
|
||||
$current = new Carbon();
|
||||
@@ -89,14 +122,14 @@ class PanjarServices
|
||||
$panjar = Panjar::on($cawangan['mysql'])->latest('tarikh')->where('nobaucer', $request->nobaucer)->first();
|
||||
$vault = Vault::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||
$deno_panjar = DenoPanjar::on('mysql7')->where('kodcaw', $this->cawangan)->where('recno', $request->recno)->latest('tarikh','masa')->first();
|
||||
|
||||
$totalperubatan = floatval($this->getPerubatanAmount($panjar['tuntutoleh'])) + $panjar['bayaran'];
|
||||
try{
|
||||
if (!$panjar) throw new \Exception('Custom Exception: Panjar Does Not Exist!');
|
||||
if (!$denominasi) throw new \Exception('Custom Exception: Denominasi Does Not Exist!');
|
||||
if (!$vault) throw new \Exception('Custom Exception: Vault Does Not Exist!');
|
||||
if (!$deno_panjar) throw new \Exception('Custom Exception: Denominasi Panjar Does Not Exist!');
|
||||
|
||||
DB::transaction(function () use ($cawangan,$deno_panjar,$panjar,$denominasi,$current,$vault,$request) {
|
||||
DB::transaction(function () use ($cawangan,$deno_panjar,$panjar,$denominasi,$current,$vault,$request,$bakiperubatan) {
|
||||
|
||||
$return_data = $this->calculation_denominasi($deno_panjar,$denominasi,'masuk');
|
||||
if($return_data == 'no data') throw new \Exception('Custom Exception: Denominasi Panjar Not Return Data');
|
||||
@@ -155,11 +188,8 @@ class PanjarServices
|
||||
'bakieod'=>$bakiakhir
|
||||
));
|
||||
|
||||
DenoPanjar::on('mysql7')->where('kodcaw', $this->cawangan)->where('recno', $panjar['recno'])->latest('tarikh','masa')->delete();
|
||||
Panjar::on($cawangan['mysql'])->where('recno',$panjar['recno'])->delete();
|
||||
|
||||
$audit = new Audit();
|
||||
$audit->users = $request->tuntutoleh;
|
||||
$audit->users = $panjar['tuntutoleh'];
|
||||
$audit->actions = "Keluarkan Perbelanjaan";
|
||||
$audit->new_data = $panjar;
|
||||
$audit->kodcaw = $this->cawangan;
|
||||
@@ -167,10 +197,23 @@ class PanjarServices
|
||||
$audit->updated_at = $current;
|
||||
$audit->save();
|
||||
|
||||
DenoPanjar::on('mysql7')->where('kodcaw', $this->cawangan)->where('recno', $panjar['recno'])->latest('tarikh','masa')->delete();
|
||||
Panjar::on($cawangan['mysql'])->where('recno',$panjar['recno'])->delete();
|
||||
|
||||
$array_response = [
|
||||
'result' => 'success',
|
||||
'data' => 1,
|
||||
'bakiperubatan' => $totalperubatan,
|
||||
];
|
||||
|
||||
});
|
||||
}catch(\Exception $e){
|
||||
dd($e->getMessage());
|
||||
Log::error('Exception: ' , $e->getMessage());
|
||||
$array_response = [
|
||||
'result' => 'error',
|
||||
'data' => $e->getMessage()
|
||||
];
|
||||
Log::error('Exception: ' . $e->getMessage());
|
||||
return $array_response;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -181,25 +224,29 @@ class PanjarServices
|
||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw', $this->cawangan)->first();
|
||||
$denominasi = Denominasi::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||
$vault = Vault::on($cawangan['mysql'])->latest('tarikh')->first();
|
||||
|
||||
try{
|
||||
if (!$denominasi) throw new \Exception('Custom Exception: Denominasi Does Not Exist!');
|
||||
if (!$vault) throw new \Exception('Custom Exception: Vault Does Not Exist!');
|
||||
|
||||
DB::transaction(function () use ($cawangan,$denominasi,$current,$vault,$request) {
|
||||
return $response = DB::transaction(function () use ($cawangan,$denominasi,$current,$vault,$request) {
|
||||
|
||||
$myDateTime = DateTime::createFromFormat('Y-m-d', $request->tarikhbil);
|
||||
$tarikhbil = $myDateTime->format('dmY');
|
||||
$tagmodal = $this->checkModal($request->jenismodal);
|
||||
$bakiperubatan = $this->getPerubatanAmount($request->tuntutan);
|
||||
$currentbaki = floatval($bakiperubatan) - floatval($request->bayaran);
|
||||
$panjar = Panjar::on($cawangan['mysql'])
|
||||
->create([
|
||||
'tarikh'=> $current->toDateString(),
|
||||
'deskripsi'=> $request->deskripsi,
|
||||
'bayaran' => $request->bayaran,
|
||||
'tag' => $request->tag,
|
||||
'kategori' => $request->kategori,
|
||||
'id' => $request->id,
|
||||
'bakiperubatan' => $request->bakiperubatan,
|
||||
'nobaucer' => $request->nobaucer,
|
||||
'nobil' => $request->nobil,
|
||||
'tuntutoleh' => $request->tuntutoleh
|
||||
'tag' => $tagmodal['tag'],
|
||||
'kategori' => $tagmodal['kategori'],
|
||||
'id' => $request->kodlaluan,
|
||||
'bakiperubatan' => $currentbaki,
|
||||
'nobaucer' => $request->baucer,
|
||||
'nobil' => $tarikhbil,
|
||||
'tuntutoleh' => $request->tuntutan
|
||||
]);
|
||||
|
||||
$denopanjar = DenoPanjar::on('mysql7')->create([
|
||||
@@ -207,27 +254,27 @@ class PanjarServices
|
||||
'masa' => $current->toTimeString(),
|
||||
'kodcaw' => $this->cawangan,
|
||||
'kodlaluan' => $request->kodlaluan,
|
||||
'serahan' => $request->serahan,
|
||||
'bd1' => $request->bd1,
|
||||
'bd5' => $request->bd5,
|
||||
'bd10' => $request->bd10,
|
||||
'bd20' => $request->bd20,
|
||||
'bd50' => $request->bd50,
|
||||
'bd100' => $request->bd100,
|
||||
'txtring1' => $request->txtring1,
|
||||
'txtring5' => $request->txtring5,
|
||||
'txtring10' => $request->txtring10,
|
||||
'txtring20' => $request->txtring20,
|
||||
'txtring50' => $request->txtring50,
|
||||
'txtring100' => $request->txtring100,
|
||||
'txtring1000' => $request->txtring1000,
|
||||
'txtsen1' => $request->txtsen1,
|
||||
'txtsen5' => $request->txtsen5,
|
||||
'txtsen10' => $request->txtsen10,
|
||||
'txtsen20' => $request->txtsen20,
|
||||
'txtsen50' => $request->txtsen50,
|
||||
'jenis' =>$request->jenis,
|
||||
'recno' =>$panjar['recno'],
|
||||
'serahan' => $request->bayaran,
|
||||
'bd1' => 0,
|
||||
'bd5' => 0,
|
||||
'bd10' => 0,
|
||||
'bd20' => 0,
|
||||
'bd50' => 0,
|
||||
'bd100' => 0,
|
||||
'txtring1' => $request->ambilanring1,
|
||||
'txtring5' => $request->ambilanring5,
|
||||
'txtring10' => $request->ambilanring10,
|
||||
'txtring20' => $request->ambilanring20,
|
||||
'txtring50' => $request->ambilanring50,
|
||||
'txtring100' => $request->ambilanring100,
|
||||
'txtring1000' => 0,
|
||||
'txtsen1' => $request->ambilansen1,
|
||||
'txtsen5' => $request->ambilansen5,
|
||||
'txtsen10' => $request->ambilansen10,
|
||||
'txtsen20' => $request->ambilansen20,
|
||||
'txtsen50' => $request->ambilansen50,
|
||||
'jenis' =>$request->jenismodal,
|
||||
'recno' =>$panjar['id'],
|
||||
'update' => '0'
|
||||
]);
|
||||
|
||||
@@ -297,21 +344,31 @@ class PanjarServices
|
||||
$audit->updated_at = $current;
|
||||
$audit->save();
|
||||
|
||||
|
||||
$array_response = [
|
||||
'result' => 'success',
|
||||
'data' => 1
|
||||
'data' => 1,
|
||||
'bakiperubatan' => $currentbaki,
|
||||
];
|
||||
return response()->json($array_response);
|
||||
return $array_response;
|
||||
|
||||
});
|
||||
}catch(\Exception $e){
|
||||
dd($e->getMessage());
|
||||
$array_response = [
|
||||
'result' => 'error',
|
||||
'data' => $e->getMessage()
|
||||
];
|
||||
return response()->json($array_response);
|
||||
Log::error('Exception: ' , $e->getMessage());
|
||||
Log::error('Exception: ' . $e->getMessage());
|
||||
return $array_response;
|
||||
}
|
||||
|
||||
return response()->json($response);
|
||||
}
|
||||
|
||||
public function getPerubatanAmount($tuntutanoleh){
|
||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw', $this->cawangan)->first();
|
||||
$panjar = Panjar::on($cawangan['mysql'])->where('kategori','Belanja AM - Perubatan')->where('tuntutoleh',$tuntutanoleh)->sum('bayaran');
|
||||
|
||||
return $panjar;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -649,6 +649,9 @@ $router->group(['prefix'=>'api'], function () use ($router){
|
||||
|
||||
$router->post('test/updatetunai/{kodcaw}',['uses'=>'DenominasiController@test']);
|
||||
$router->post('test/serahantunai/{kodcaw}',['uses'=>'DenominasiController@test2']);
|
||||
$router->post('test/createpanjar/{kodcaw}',['uses'=>'DenominasiController@test3']);
|
||||
$router->post('test/deletepanjar/{kodcaw}',['uses'=>'DenominasiController@test4']);
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user