Develop kontrak dan BAST
This commit is contained in:
@@ -9,6 +9,7 @@ use Illuminate\Support\Facades\Auth;
|
||||
use Maatwebsite\Excel\Facades\Excel;
|
||||
use App\Models\BelanjaRealisasi;
|
||||
use App\Models\BelanjaRealisasiKontrak;
|
||||
use App\Models\BelanjaRealisasiBast;
|
||||
use App\Models\TempRealisasiBelanja;
|
||||
use App\Models\VwAkbSpdRealRsk;
|
||||
use App\Models\UnitSatuan;
|
||||
@@ -17,6 +18,7 @@ use App\Imports\RealisasiBelanjaImport;
|
||||
use PhpOffice\PhpSpreadsheet\Spreadsheet;
|
||||
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
|
||||
use Illuminate\Support\Facades\URL;
|
||||
use Illuminate\Support\Facades\File;
|
||||
|
||||
class RealisasiBelanjaController extends Controller
|
||||
{
|
||||
@@ -48,6 +50,7 @@ class RealisasiBelanjaController extends Controller
|
||||
|
||||
public function submit(Request $request, $id)
|
||||
{
|
||||
|
||||
$BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew();
|
||||
// var_dump($BelanjaRealisasi->kode_rsk,$BelanjaRealisasi->kode_sub_kegiatan); exit;
|
||||
$this->setTitle("Realisasi Belanja");
|
||||
@@ -358,12 +361,13 @@ class RealisasiBelanjaController extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
protected function uploadFileKontrak($request)
|
||||
protected function uploadFileKontrak($request, $id)
|
||||
{
|
||||
$file = $request->file('file_kontrak');
|
||||
if ($file){
|
||||
$fileName = $file->getClientOriginalName();
|
||||
$tujuan_upload = 'uploadFiles/kontrak';
|
||||
$tujuan_upload = config('constants.upload_path_kontrak').$id;
|
||||
File::isDirectory($tujuan_upload) or File::makeDirectory($tujuan_upload, 0777, true, true);
|
||||
$file->move($tujuan_upload, $fileName);
|
||||
return $fileName;
|
||||
}
|
||||
@@ -383,7 +387,7 @@ class RealisasiBelanjaController extends Controller
|
||||
$this->validate($request, [
|
||||
'file_kontrak' => 'required|mimes:pdf',
|
||||
]);
|
||||
$fileName = $this->uploadFileKontrak($request);
|
||||
$fileName = $this->uploadFileKontrak($request, $id);
|
||||
|
||||
BelanjaRealisasiKontrak::where("belanja_realisasi_id",$id)->where("nomor_kontrak",$req["nomor_kontrak"])->firstOrNew()->delete();
|
||||
$data["belanja_realisasi_id"] = $id;
|
||||
@@ -391,7 +395,7 @@ class RealisasiBelanjaController extends Controller
|
||||
$data["tgl_kontrak"] = ConvertIndoDate($req["tgl_kontrak"]);
|
||||
$data["nominal_kontrak"] = replaceMoney($req["nominal_kontrak"]);
|
||||
$data["file_kontrak"] = $fileName;
|
||||
$data["nomor_bast"] = $req["nomor_bast"];
|
||||
$data["nomor_bast"] = "";
|
||||
$data["created_by"] = Auth::user()->id;
|
||||
BelanjaRealisasiKontrak::create($data);
|
||||
|
||||
@@ -421,8 +425,8 @@ class RealisasiBelanjaController extends Controller
|
||||
$data["nomor_kontrak"] = $req["nomor_kontrak"];
|
||||
$data["tgl_kontrak"] = ConvertIndoDate($req["tgl_kontrak"]);
|
||||
$data["nominal_kontrak"] = replaceMoney($req["nominal_kontrak"]);
|
||||
$data["nomor_bast"] = $req["nomor_bast"];
|
||||
$fileName = $this->uploadFileKontrak($request);
|
||||
$data["nomor_bast"] = "";
|
||||
$fileName = $this->uploadFileKontrak($request, $BelanjaRealisasi->id);
|
||||
if ($fileName){
|
||||
$data["file_kontrak"] = $fileName;
|
||||
}
|
||||
@@ -443,14 +447,25 @@ class RealisasiBelanjaController extends Controller
|
||||
public function destroyKontrak($id)
|
||||
{
|
||||
try{
|
||||
|
||||
DB::beginTransaction();
|
||||
|
||||
$BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where("id",$id)->firstorNew();
|
||||
$alamatFile = "uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak;
|
||||
$alamatFile = config('constants.upload_path_kontrak').$BelanjaRealisasiKontrak->belanja_realisasi_id."/".$BelanjaRealisasiKontrak->file_kontrak;
|
||||
if (file_exists($alamatFile)){
|
||||
unlink($alamatFile);
|
||||
}
|
||||
|
||||
$basts = BelanjaRealisasiBast::where("id_kontrak",$id)->get();
|
||||
foreach($basts as $bast)
|
||||
{
|
||||
$this->delBast($bast->id);
|
||||
}
|
||||
|
||||
BelanjaRealisasiKontrak::where("id",$id)->delete();
|
||||
|
||||
DB::commit();
|
||||
|
||||
return redirect(URL::to("/realisasi-belanja/".$BelanjaRealisasiKontrak->belanja_realisasi_id."/submit"))
|
||||
->with('success','Data Kontrak Realisasi Belanja berhasil dihapus!');
|
||||
|
||||
@@ -471,18 +486,19 @@ class RealisasiBelanjaController extends Controller
|
||||
'Content-Disposition' => 'attachment;filename='.$BelanjaRealisasiKontrak->file_kontrak
|
||||
];
|
||||
if ($BelanjaRealisasiKontrak){
|
||||
return response()->download("uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak, $BelanjaRealisasiKontrak->file_kontrak, $headers);
|
||||
return response()->download(config('constants.upload_path_kontrak').$BelanjaRealisasiKontrak->file_kontrak, $BelanjaRealisasiKontrak->file_kontrak, $headers);
|
||||
}else{
|
||||
echo "File tidak ditemukan!";
|
||||
}
|
||||
}
|
||||
|
||||
protected function uploadFileBast($request)
|
||||
protected function uploadFileBast($request, $id)
|
||||
{
|
||||
$file = $request->file('file_bast');
|
||||
if ($file){
|
||||
$fileName = $file->getClientOriginalName();
|
||||
$tujuan_upload = 'uploadFiles/kontrak/bast';
|
||||
$tujuan_upload = config('constants.upload_path_kontrak').$id."/bast";
|
||||
File::isDirectory($tujuan_upload) or File::makeDirectory($tujuan_upload, 0777, true, true);
|
||||
$file->move($tujuan_upload, $fileName);
|
||||
return $fileName;
|
||||
}
|
||||
@@ -491,10 +507,17 @@ class RealisasiBelanjaController extends Controller
|
||||
|
||||
public function bast(Request $request, $id)
|
||||
{
|
||||
$BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew();
|
||||
$kontrak = BelanjaRealisasiKontrak::where("id", $id)->firstOrNew();
|
||||
$BelanjaRealisasiBast = BelanjaRealisasiBast::where("id_kontrak",$id)->get();
|
||||
return view('realisasi_belanja.list_bast',compact("BelanjaRealisasiBast","kontrak"));
|
||||
}
|
||||
|
||||
public function bastCreate(Request $request, $idKontrak)
|
||||
{
|
||||
$req = $request->all();
|
||||
$redirect = "/realisasi-belanja/".$id."/submit";
|
||||
$action = "/realisasi-belanja/".$id."/bast";
|
||||
$kontrak = BelanjaRealisasiKontrak::where("id", $idKontrak)->firstOrNew();
|
||||
$redirect = "/realisasi-belanja/".$kontrak->belanja_realisasi_id."/submit";
|
||||
$action = "/realisasi-belanja/".$idKontrak."/bast/add";
|
||||
// var_dump("WOY"); exit;
|
||||
if ($request->isMethod('post')) {
|
||||
try{
|
||||
@@ -502,16 +525,15 @@ class RealisasiBelanjaController extends Controller
|
||||
$this->validate($request, [
|
||||
'file_bast' => 'required|mimes:pdf',
|
||||
]);
|
||||
$fileName = $this->uploadFileBast($request);
|
||||
|
||||
BelanjaRealisasiKontrak::where("id_kontrak",$id)->where("nomor_bast",$req["nomor_bast"])->firstOrNew()->delete();
|
||||
$data["belanja_realisasi_id"] = $id;
|
||||
$data["nomor_bast"] = $req["nomor_kontrak"];
|
||||
$data["tgl_bast"] = ConvertIndoDate($req["tgl_kontrak"]);
|
||||
$data["nominal_bast"] = replaceMoney($req["nominal_kontrak"]);
|
||||
$fileName = $this->uploadFileBast($request, $kontrak->belanja_realisasi_id);
|
||||
BelanjaRealisasiBast::where("id_kontrak",$idKontrak)->where("nomor_bast",$req["nomor_bast"])->firstOrNew()->delete();
|
||||
$data["id_kontrak"] = $idKontrak;
|
||||
$data["nomor_bast"] = $req["nomor_bast"];
|
||||
$data["tgl_bast"] = ConvertIndoDate($req["tgl_bast"]);
|
||||
$data["nominal_bast"] = replaceMoney($req["nominal_bast"]);
|
||||
$data["file_bast"] = $fileName;
|
||||
$data["created_by"] = Auth::user()->id;
|
||||
BelanjaRealisasiKontrak::create($data);
|
||||
BelanjaRealisasiBast::create($data);
|
||||
|
||||
DB::commit();
|
||||
|
||||
@@ -523,51 +545,25 @@ class RealisasiBelanjaController extends Controller
|
||||
}
|
||||
}
|
||||
|
||||
return view('realisasi_belanja.form_kontrak',compact("BelanjaRealisasi","action"));
|
||||
return view('realisasi_belanja.form_bast',compact("kontrak","action"));
|
||||
}
|
||||
|
||||
public function bastUpdate(Request $request, $idBast)
|
||||
protected function delBast($id)
|
||||
{
|
||||
$BelanjaRealisasiBast = BelanjaRealisasiBast::where("id",$idBast)->firstorNew();
|
||||
// $BelanjaRealisasi = BelanjaRealisasi::where("id", $BelanjaRealisasiKontrak->belanja_realisasi_id)->firstOrNew();
|
||||
$req = $request->all();
|
||||
$redirect = "/realisasi-belanja/".$BelanjaRealisasiKontrak->belanja_realisasi_id."/submit";
|
||||
$action = "/realisasi-belanja/".$idKontrak."/bast";
|
||||
if ($request->isMethod('put')) {
|
||||
try{
|
||||
DB::beginTransaction();
|
||||
$data["nomor_kontrak"] = $req["nomor_kontrak"];
|
||||
$data["tgl_kontrak"] = ConvertIndoDate($req["tgl_kontrak"]);
|
||||
$data["nominal_kontrak"] = replaceMoney($req["nominal_kontrak"]);
|
||||
$data["nomor_bast"] = $req["nomor_bast"];
|
||||
$fileName = $this->uploadFileKontrak($request);
|
||||
if ($fileName){
|
||||
$data["file_kontrak"] = $fileName;
|
||||
}
|
||||
$BelanjaRealisasiKontrak->update($data);
|
||||
DB::commit();
|
||||
|
||||
return redirect($redirect)->with('success','Data BAST berhasil di input!');
|
||||
}catch(\Exception $e){
|
||||
throw new \Exception($e->getMessage());
|
||||
DB::rollBack();
|
||||
return redirect($redirect)->with('error',$e->getMessage());
|
||||
}
|
||||
$BelanjaRealisasiBast = BelanjaRealisasiBast::where("id",$id)->firstorNew();
|
||||
$BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where("id",$BelanjaRealisasiBast->id_kontrak)->firstorNew();
|
||||
$alamatFile = config('constants.upload_path_kontrak').$BelanjaRealisasiKontrak->belanja_realisasi_id."/bast/".$BelanjaRealisasiBast->file_bast;
|
||||
if (file_exists($alamatFile)){
|
||||
unlink($alamatFile);
|
||||
}
|
||||
|
||||
return view('realisasi_belanja.form_kontrak',compact("BelanjaRealisasi","BelanjaRealisasiKontrak","action"));
|
||||
return BelanjaRealisasiBast::where("id",$id)->delete();
|
||||
}
|
||||
|
||||
public function destroyBast($id)
|
||||
{
|
||||
try{
|
||||
DB::beginTransaction();
|
||||
$BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where("id",$id)->firstorNew();
|
||||
$alamatFile = "uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak;
|
||||
if (file_exists($alamatFile)){
|
||||
unlink($alamatFile);
|
||||
}
|
||||
BelanjaRealisasiKontrak::where("id",$id)->delete();
|
||||
$this->delBast($id);
|
||||
DB::commit();
|
||||
return redirect(URL::to("/realisasi-belanja/".$BelanjaRealisasiKontrak->belanja_realisasi_id."/submit"))
|
||||
->with('success','Data BAST Realisasi Belanja berhasil dihapus!');
|
||||
@@ -589,7 +585,7 @@ class RealisasiBelanjaController extends Controller
|
||||
'Content-Disposition' => 'attachment;filename='.$BelanjaRealisasiKontrak->file_kontrak
|
||||
];
|
||||
if ($BelanjaRealisasiKontrak){
|
||||
return response()->download("uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak, $BelanjaRealisasiKontrak->file_kontrak, $headers);
|
||||
return response()->download(config('constants.upload_path_kontrak').$BelanjaRealisasiKontrak->file_kontrak, $BelanjaRealisasiKontrak->file_kontrak, $headers);
|
||||
}else{
|
||||
echo "File tidak ditemukan!";
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user