Update buat bast

This commit is contained in:
Pusdatin BPKD Jkt
2022-08-15 16:06:28 +07:00
parent 1b69790606
commit be57454faa
4 changed files with 182 additions and 0 deletions
@@ -477,6 +477,124 @@ class RealisasiBelanjaController extends Controller
}
}
protected function uploadFileBast($request)
{
$file = $request->file('file_bast');
if ($file){
$fileName = $file->getClientOriginalName();
$tujuan_upload = 'uploadFiles/kontrak/bast';
$file->move($tujuan_upload, $fileName);
return $fileName;
}
return false;
}
public function bast(Request $request, $id)
{
$BelanjaRealisasi = BelanjaRealisasi::where("id", $id)->firstOrNew();
$req = $request->all();
$redirect = "/realisasi-belanja/".$id."/submit";
$action = "/realisasi-belanja/".$id."/bast";
// var_dump("WOY"); exit;
if ($request->isMethod('post')) {
try{
DB::beginTransaction();
$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"]);
$data["file_bast"] = $fileName;
$data["created_by"] = Auth::user()->id;
BelanjaRealisasiKontrak::create($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());
}
}
return view('realisasi_belanja.form_kontrak',compact("BelanjaRealisasi","action"));
}
public function bastUpdate(Request $request, $idBast)
{
$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());
}
}
return view('realisasi_belanja.form_kontrak',compact("BelanjaRealisasi","BelanjaRealisasiKontrak","action"));
}
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();
DB::commit();
return redirect(URL::to("/realisasi-belanja/".$BelanjaRealisasiKontrak->belanja_realisasi_id."/submit"))
->with('success','Data BAST Realisasi Belanja berhasil dihapus!');
}catch(Throwable $e){
DB::rollBack();
return redirect(URL::to("/realisasi-belanja/".$BelanjaRealisasiKontrak->belanja_realisasi_id."/submit"))
->with('error','Data BAST Realisasi Belanja gagal dihapus.');
}
}
public function downloadBast($kode)
{
$kode = explode("__",$kode);
$BelanjaRealisasiKontrak = BelanjaRealisasiKontrak::where(["belanja_realisasi_id"=>$kode[0], "id"=>$kode[1]])->firstorNew();
$headers = [
'Content-Type' => 'application/pdf',
'Content-Disposition' => 'attachment;filename='.$BelanjaRealisasiKontrak->file_kontrak
];
if ($BelanjaRealisasiKontrak){
return response()->download("uploadFiles/kontrak/".$BelanjaRealisasiKontrak->file_kontrak, $BelanjaRealisasiKontrak->file_kontrak, $headers);
}else{
echo "File tidak ditemukan!";
}
}
public function download(Request $request)
{
$post = $request->all();