added delete autoserahan and change apporvalwithdraw
This commit is contained in:
@@ -26,6 +26,7 @@ class ApprovalWithdrawal extends Model
|
|||||||
'gldetail_id_v2',
|
'gldetail_id_v2',
|
||||||
'denopendser_id_v3',
|
'denopendser_id_v3',
|
||||||
'gldetail_id_v3',
|
'gldetail_id_v3',
|
||||||
|
'action',
|
||||||
'approval_timestamp',
|
'approval_timestamp',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|||||||
@@ -24,6 +24,48 @@ class AutoSerahanController extends Controller
|
|||||||
return response()->json($listapproval,200);
|
return response()->json($listapproval,200);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function deleteAutoSerahan(Request $request){
|
||||||
|
$current = Carbon::now();
|
||||||
|
|
||||||
|
DB::connection('mysql7')->beginTransaction();
|
||||||
|
|
||||||
|
try{
|
||||||
|
if($request->version == 'v3'){
|
||||||
|
$listapproval = ApprovalWithdrawal::on('mysql7')
|
||||||
|
->where('gldetail_id_v2',$request->recno)
|
||||||
|
->where('approval_status',"APPROVED")
|
||||||
|
->where('action','create')
|
||||||
|
->where('updated_serahan_v2',1)
|
||||||
|
->where('updated_pendahuluan_v3',1)
|
||||||
|
->get();
|
||||||
|
|
||||||
|
$approval = ApprovalWithdrawal::on('mysql7')->create([
|
||||||
|
'kodcaw' => ($request->version == 'v3') ? $this->interchangeCawangan($request->kodcaw,$request->version) : $request->kodcaw,
|
||||||
|
'action' => 'delete',
|
||||||
|
'pc_name' => $request->teller,
|
||||||
|
'operasi_name' => null,
|
||||||
|
'amount' => $request->amaun,
|
||||||
|
'approval_status' => 'PENDING',
|
||||||
|
'approval_timestamp' => null,
|
||||||
|
'gldetail_id_v3' => $listapproval['gldetail_id_v3'],
|
||||||
|
'gldetail_id_v2' => isset($request->recno) ? $request->recno : 0,
|
||||||
|
'denopendser_id_v3' => 0,
|
||||||
|
'denopendser_id_v2' => 0,
|
||||||
|
'updated_serahan_v2' => 0,
|
||||||
|
'updated_pendahuluan_v3' => 0,
|
||||||
|
'created_at' => $current,
|
||||||
|
'updated_at' => $current,
|
||||||
|
]);
|
||||||
|
DB::connection('mysql7')->commit();
|
||||||
|
return response()->json(['status' => 'success','id' => $approval->id]);
|
||||||
|
}
|
||||||
|
|
||||||
|
}catch(\Exception $e){
|
||||||
|
DB::connection('mysql7')->rollBack();
|
||||||
|
return response()->json(['status' => 'failed','message' => $e->getMessage()]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function createAutoSerahan(Request $request)
|
public function createAutoSerahan(Request $request)
|
||||||
{
|
{
|
||||||
$current = Carbon::now();
|
$current = Carbon::now();
|
||||||
@@ -64,6 +106,7 @@ class AutoSerahanController extends Controller
|
|||||||
if($request->version == 'v3'){
|
if($request->version == 'v3'){
|
||||||
$approval = ApprovalWithdrawal::on('mysql7')->create([
|
$approval = ApprovalWithdrawal::on('mysql7')->create([
|
||||||
'kodcaw' => ($request->version == 'v3') ? $this->interchangeCawangan($request->kodcaw,$request->version) : $request->kodcaw,
|
'kodcaw' => ($request->version == 'v3') ? $this->interchangeCawangan($request->kodcaw,$request->version) : $request->kodcaw,
|
||||||
|
'action' => 'create',
|
||||||
'pc_name' => $request->teller,
|
'pc_name' => $request->teller,
|
||||||
'operasi_name' => null,
|
'operasi_name' => null,
|
||||||
'amount' => $request->amaun,
|
'amount' => $request->amaun,
|
||||||
@@ -95,11 +138,11 @@ class AutoSerahanController extends Controller
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private function autoSerahanEngine($jenis, $kodcaw,$teller,$amaun,$id,$denopendser_id){
|
private function autoSerahanEngine($jenis, $kodcaw,$teller,$amaun,$id,$denopendser_id){
|
||||||
$current = Carbon::now();
|
$current = Carbon::now();
|
||||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
||||||
$vault = Vault::on($cawangan['mysql'])->where('kodcaw','=',$kodcaw)->where('tarikh','=',$current->toDateString())->orderby('tarikh','desc')->first();
|
$vault = Vault::on($cawangan['mysql'])->where('kodcaw','=',$kodcaw)->where('tarikh','=',$current->toDateString())->orderby('tarikh','desc')->first();
|
||||||
|
|
||||||
$bakiawal = $vault['bakiawal'];
|
$bakiawal = $vault['bakiawal'];
|
||||||
$keluar = $vault['keluar'];
|
$keluar = $vault['keluar'];
|
||||||
$masuk = $vault['masuk'];
|
$masuk = $vault['masuk'];
|
||||||
@@ -107,10 +150,10 @@ class AutoSerahanController extends Controller
|
|||||||
$pendahuluan = $vault['pendahuluan'];
|
$pendahuluan = $vault['pendahuluan'];
|
||||||
$serahan = $vault['serahan'];
|
$serahan = $vault['serahan'];
|
||||||
$totpanjaran = $vault['totpanjar'];
|
$totpanjaran = $vault['totpanjar'];
|
||||||
|
|
||||||
DB::connection($cawangan['mysql'])->beginTransaction();
|
DB::connection($cawangan['mysql'])->beginTransaction();
|
||||||
DB::connection('mysql7')->beginTransaction();
|
DB::connection('mysql7')->beginTransaction();
|
||||||
|
|
||||||
try{
|
try{
|
||||||
$approval = ApprovalWithdrawal::on('mysql7')->where('id',$id)->first();
|
$approval = ApprovalWithdrawal::on('mysql7')->where('id',$id)->first();
|
||||||
|
|
||||||
@@ -153,7 +196,7 @@ class AutoSerahanController extends Controller
|
|||||||
'updated_pendahuluan_v3' => 1,
|
'updated_pendahuluan_v3' => 1,
|
||||||
'gldetail_id_v3' => $gldetail->id
|
'gldetail_id_v3' => $gldetail->id
|
||||||
));
|
));
|
||||||
|
|
||||||
}else if($jenis == 'serahan'){
|
}else if($jenis == 'serahan'){
|
||||||
|
|
||||||
$pendserid = empty($approval) ? $denopendser_id : $approval['denopendser_id_v2'];
|
$pendserid = empty($approval) ? $denopendser_id : $approval['denopendser_id_v2'];
|
||||||
@@ -188,30 +231,25 @@ class AutoSerahanController extends Controller
|
|||||||
'bakieod' => $bakiakhir
|
'bakieod' => $bakiakhir
|
||||||
));
|
));
|
||||||
|
|
||||||
// ApprovalWithdrawal::on('mysql7')->where('id',$id)->update(array(
|
}
|
||||||
// 'updated_serahan_v2' => 1,
|
|
||||||
// 'gldetail_id_v2' => $gldetail->id
|
// Commit transactions
|
||||||
// ));
|
DB::connection($cawangan['mysql'])->commit();
|
||||||
|
DB::connection('mysql7')->commit();
|
||||||
|
return ['status' => 'success','gldetail_id' => $gldetail->id];
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
// Commit transactions
|
|
||||||
DB::connection($cawangan['mysql'])->commit();
|
|
||||||
DB::connection('mysql7')->commit();
|
|
||||||
return ['status' => 'success','gldetail_id' => $gldetail->id];
|
|
||||||
|
|
||||||
}catch(\Exception $e){
|
}catch(\Exception $e){
|
||||||
DB::connection($cawangan['mysql'])->rollBack();
|
DB::connection($cawangan['mysql'])->rollBack();
|
||||||
DB::connection('mysql7')->rollBack();
|
DB::connection('mysql7')->rollBack();
|
||||||
throw $e;
|
throw $e;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public function autoSerahanApproval(Request $request){
|
public function autoSerahanApproval(Request $request){
|
||||||
$current = Carbon::now();
|
$current = Carbon::now();
|
||||||
|
|
||||||
DB::connection('mysql7')->beginTransaction();
|
DB::connection('mysql7')->beginTransaction();
|
||||||
|
|
||||||
try{
|
try{
|
||||||
$approval = ApprovalWithdrawal::on('mysql7')->where('id',$request->id)->first();
|
$approval = ApprovalWithdrawal::on('mysql7')->where('id',$request->id)->first();
|
||||||
|
|
||||||
@@ -237,9 +275,9 @@ class AutoSerahanController extends Controller
|
|||||||
DB::connection('mysql7')->rollBack();
|
DB::connection('mysql7')->rollBack();
|
||||||
return response()->json(['status' => 'error','message' =>$e->getMessage(), 'line' => $e->getLine()]);
|
return response()->json(['status' => 'error','message' =>$e->getMessage(), 'line' => $e->getLine()]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private function updateDenominasi($kodcaw,$denopendser,$jenis){
|
private function updateDenominasi($kodcaw,$denopendser,$jenis){
|
||||||
$current = Carbon::now();
|
$current = Carbon::now();
|
||||||
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
||||||
|
|
||||||
@@ -335,9 +373,9 @@ class AutoSerahanController extends Controller
|
|||||||
'txtjumlah'=> $totalkeping,
|
'txtjumlah'=> $totalkeping,
|
||||||
'jumlahkeping' => $totalkeping
|
'jumlahkeping' => $totalkeping
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
|
|
||||||
public function serahanAutoSerahan(Request $request){
|
public function serahanAutoSerahan(Request $request){
|
||||||
|
|
||||||
$this->checkVault($request->kodcaw,'v2');
|
$this->checkVault($request->kodcaw,'v2');
|
||||||
$this->checkDenominasi($request->kodcaw,'v2');
|
$this->checkDenominasi($request->kodcaw,'v2');
|
||||||
@@ -347,9 +385,9 @@ class AutoSerahanController extends Controller
|
|||||||
$updated_serahan = $this->autoSerahanEngine('serahan',$kodcaw,$request->teller,$request->amaun,$request->id,$request->denopendser_id);
|
$updated_serahan = $this->autoSerahanEngine('serahan',$kodcaw,$request->teller,$request->amaun,$request->id,$request->denopendser_id);
|
||||||
|
|
||||||
return response()->json(['status' => 'success','gldetail_id' => $updated_serahan['gldetail_id']],200);
|
return response()->json(['status' => 'success','gldetail_id' => $updated_serahan['gldetail_id']],200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function pendahuluanAutoSerahan(Request $request){
|
public function pendahuluanAutoSerahan(Request $request){
|
||||||
|
|
||||||
$this->checkVault($request->kodcaw,'v3');
|
$this->checkVault($request->kodcaw,'v3');
|
||||||
$this->checkDenominasi($request->kodcaw,'v3');
|
$this->checkDenominasi($request->kodcaw,'v3');
|
||||||
@@ -358,28 +396,113 @@ class AutoSerahanController extends Controller
|
|||||||
|
|
||||||
$updated_pendahuluan = $this->autoSerahanEngine('pendahuluan',$kodcaw,$request->teller,$request->amaun,$request->id,$request->denopendser_id);
|
$updated_pendahuluan = $this->autoSerahanEngine('pendahuluan',$kodcaw,$request->teller,$request->amaun,$request->id,$request->denopendser_id);
|
||||||
|
|
||||||
return response()->json(['status' => 'success','gldetail_id' => $updated_pendahuluan['gldetail_id']],200);
|
return response()->json(['status' => 'success','gldetail_id' => $updated_pendahuluan['gldetail_id']],200);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function SetApprovalWithdrawal(Request $request){
|
public function removeAutoSerahan(Request $request){
|
||||||
|
$this->checkVault($request->kodcaw,'v2');
|
||||||
|
$this->checkDenominasi($request->kodcaw,'v2');
|
||||||
|
|
||||||
if($request->jenis == 'create'){
|
$kodcaw = $this->interchangeCawangan($request->kodcaw,'v2');
|
||||||
ApprovalWithdrawal::on('mysql7')->where('id', $request->id)->update([
|
|
||||||
'denopendser_id_v2' => $request->deno_id,
|
|
||||||
]);
|
|
||||||
|
|
||||||
return response()->json(['status' => 'success'],200);
|
$updated_serahan = $this->autoSerahanRemove('pendahuluan',$kodcaw,$request->amaun,$request->id);
|
||||||
}else{
|
|
||||||
ApprovalWithdrawal::on('mysql7')->where('id', $request->id)->update([
|
return response()->json($updated_serahan);
|
||||||
'updated_serahan_v2' => 1,
|
|
||||||
'gldetail_id_v2' => $request->gldetail_id
|
}
|
||||||
]);
|
|
||||||
return response()->json(['status' => 'success'],200);
|
public function removeAutoPendahuluan(Request $request){
|
||||||
|
$this->checkVault($request->kodcaw,'v3');
|
||||||
|
$this->checkDenominasi($request->kodcaw,'v3');
|
||||||
|
|
||||||
|
$kodcaw = $this->interchangeCawangan($request->kodcaw,'v3');
|
||||||
|
|
||||||
|
$updated_pendahuluan = $this->autoSerahanRemove('pendahuluan',$kodcaw,$request->amaun,$request->id);
|
||||||
|
|
||||||
|
return response()->json($updated_pendahuluan);
|
||||||
|
}
|
||||||
|
|
||||||
|
private function autoSerahanRemove($jenis,$kodcaw,$amaun,$id){
|
||||||
|
$current = Carbon::now();
|
||||||
|
$cawangan = Cawangan::on('mysql7')->where('kodcaw','=',$kodcaw)->first();
|
||||||
|
$vault = Vault::on($cawangan['mysql'])->where('kodcaw','=',$kodcaw)->where('tarikh','=',$current->toDateString())->orderby('tarikh','desc')->first();
|
||||||
|
|
||||||
|
$bakiawal = $vault['bakiawal'];
|
||||||
|
$keluar = $vault['keluar'];
|
||||||
|
$masuk = $vault['masuk'];
|
||||||
|
$bakiakhir = $vault['bakiakhir'];
|
||||||
|
$pendahuluan = $vault['pendahuluan'];
|
||||||
|
$serahan = $vault['serahan'];
|
||||||
|
$totpanjaran = $vault['totpanjar'];
|
||||||
|
|
||||||
|
DB::connection($cawangan['mysql'])->beginTransaction();
|
||||||
|
DB::connection('mysql7')->beginTransaction();
|
||||||
|
|
||||||
|
try{
|
||||||
|
$approval = ApprovalWithdrawal::on('mysql7')->where('id',$id)->first();
|
||||||
|
|
||||||
|
if($jenis == 'pendahuluan'){
|
||||||
|
$totalpendahuluan = $pendahuluan - $amaun;
|
||||||
|
|
||||||
|
$bakiakhir = $bakiawal - $keluar + $masuk + $totalpendahuluan - $serahan - $totpanjaran;
|
||||||
|
|
||||||
|
Vault::on($cawangan['mysql'])->where([['tarikh','=',$current->toDateString()],['kodcaw','=', $kodcaw]])->update(array(
|
||||||
|
'pendahuluan' => $totalpendahuluan,
|
||||||
|
'bakiakhir' => $bakiakhir,
|
||||||
|
'bakieod' => $bakiakhir
|
||||||
|
));
|
||||||
|
|
||||||
|
DenoPendSer::where('no', $approval['denopendser_id_v2'])->delete();
|
||||||
|
GlDetail::where('recno', $approval['gldetail_id_v3'])->delete();
|
||||||
|
|
||||||
|
ApprovalWithdrawal::on('mysql7')->where('id',$id)->update(array(
|
||||||
|
'updated_pendahuluan_v3' => 1,
|
||||||
|
));
|
||||||
|
}else{
|
||||||
|
$totalserahan = $serahan - $amaun;
|
||||||
|
|
||||||
|
$bakiakhir = $bakiawal - $keluar + $masuk + $pendahuluan - $totalserahan - $totpanjaran;
|
||||||
|
|
||||||
|
Vault::on($cawangan['mysql'])->where([['tarikh','=',$current->toDateString()],['kodcaw','=', $kodcaw]])->update(array(
|
||||||
|
'serahan' => $totalserahan,
|
||||||
|
'bakiakhir' => $bakiakhir,
|
||||||
|
'bakieod' => $bakiakhir
|
||||||
|
));
|
||||||
|
|
||||||
|
DenoPendSer::where('no', $approval['denopendser_id_v2'])->delete();
|
||||||
|
GlDetail::where('recno', $approval['gldetail_id_v2'])->delete();
|
||||||
|
|
||||||
|
ApprovalWithdrawal::on('mysql7')->where('id',$id)->update(array(
|
||||||
|
'updated_serahan_v2' => 1,
|
||||||
|
));
|
||||||
|
}
|
||||||
|
|
||||||
|
}catch(\Exception $e){
|
||||||
|
DB::connection($cawangan['mysql'])->rollBack();
|
||||||
|
DB::connection('mysql7')->rollBack();
|
||||||
|
throw $e;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
public function SetApprovalWithdrawal(Request $request){
|
||||||
|
|
||||||
public function getAutoSerahanApproval(Request $request){
|
if($request->jenis == 'create'){
|
||||||
|
ApprovalWithdrawal::on('mysql7')->where('id', $request->id)->update([
|
||||||
|
'denopendser_id_v2' => $request->deno_id,
|
||||||
|
]);
|
||||||
|
|
||||||
|
return response()->json(['status' => 'success'],200);
|
||||||
|
}else{
|
||||||
|
ApprovalWithdrawal::on('mysql7')->where('id', $request->id)->update([
|
||||||
|
'updated_serahan_v2' => 1,
|
||||||
|
'gldetail_id_v2' => $request->gldetail_id
|
||||||
|
]);
|
||||||
|
return response()->json(['status' => 'success'],200);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getAutoSerahanApproval(Request $request){
|
||||||
$query = ApprovalWithdrawal::on('mysql7')->where('kodcaw',$request->kodcaw)->where('id',$request->id)->first();
|
$query = ApprovalWithdrawal::on('mysql7')->where('kodcaw',$request->kodcaw)->where('id',$request->id)->first();
|
||||||
return response()->json($query,200);
|
return response()->json($query,200);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -682,8 +682,11 @@ $router->group(['prefix'=>'api'], function () use ($router){
|
|||||||
$router->get('autoserahan/list',['uses'=>'AutoSerahanController@getAutoSerahan']);
|
$router->get('autoserahan/list',['uses'=>'AutoSerahanController@getAutoSerahan']);
|
||||||
$router->put('autoserahan/approve',['uses'=>'AutoSerahanController@autoSerahanApproval']);
|
$router->put('autoserahan/approve',['uses'=>'AutoSerahanController@autoSerahanApproval']);
|
||||||
$router->post('autoserahan/create',['uses'=>'AutoSerahanController@createAutoSerahan']);
|
$router->post('autoserahan/create',['uses'=>'AutoSerahanController@createAutoSerahan']);
|
||||||
|
$router->post('autoserahan/delete',['uses'=>'AutoSerahanController@deleteAutoSerahan']);
|
||||||
$router->put('autoserahan/pendahuluan',['uses'=>'AutoSerahanController@pendahuluanAutoSerahan']);
|
$router->put('autoserahan/pendahuluan',['uses'=>'AutoSerahanController@pendahuluanAutoSerahan']);
|
||||||
$router->put('autoserahan/serahan',['uses'=>'AutoSerahanController@serahanAutoSerahan']);
|
$router->put('autoserahan/serahan',['uses'=>'AutoSerahanController@serahanAutoSerahan']);
|
||||||
|
$router->put('autoserahan/delete/pendahuluan',['uses'=>'AutoSerahanController@pendahuluanAutoSerahan']);
|
||||||
|
$router->put('autoserahan/delete/serahan',['uses'=>'AutoSerahanController@serahanAutoSerahan']);
|
||||||
$router->put('autoserahan/setapproval',['uses'=>'AutoSerahanController@SetApprovalWithdrawal']);
|
$router->put('autoserahan/setapproval',['uses'=>'AutoSerahanController@SetApprovalWithdrawal']);
|
||||||
$router->get('autoserahan/get',['uses'=>'AutoSerahanController@getAutoSerahanApproval']);
|
$router->get('autoserahan/get',['uses'=>'AutoSerahanController@getAutoSerahanApproval']);
|
||||||
$router->get('autoserahan/checkapproval',['uses'=>'AutoSerahanController@checkProsesApproval']);
|
$router->get('autoserahan/checkapproval',['uses'=>'AutoSerahanController@checkProsesApproval']);
|
||||||
|
|||||||
Reference in New Issue
Block a user