add crud signer

This commit is contained in:
KhatamNugraha
2023-08-21 15:48:15 +07:00
parent 969fd88aa4
commit 0fbd2a0423
14 changed files with 684 additions and 35 deletions

View File

@ -10,6 +10,7 @@
use Modules\Konfirmasibank\Entities\ViewAccount;
use Modules\Konfirmasibank\Entities\LimitReference;
use Modules\Konfirmasibank\Entities\Fasilitas;
use Modules\Konfirmasibank\Entities\Signer;
use Dompdf\Dompdf;
use Carbon\Carbon;
use Illuminate\Support\Facades\View;
@ -31,6 +32,8 @@
}
public function index(Request $request)
{
// dd($request);
$data = [];
// Tanggal awal
// Contoh tanggal saat ini
@ -41,18 +44,23 @@
// Menambahkan 5 tahun ke tanggal saat ini
$pastYear = $today->subYear(3)->format('Y');
$signer = Signer::all();
$data['currentYear'] = $currentYear;
$data['pastYear'] = $pastYear;
$data['signer'] = $signer;
// dd($data);
return view('konfirmasibank::pages.index',compact('data'));
}
public function create(){
return view('konfirmasibank::pages.index',compact('data'));
}
public function getData(Request $request)
{
$data = [];
@ -60,12 +68,14 @@
$Accounts = $Account->getSearchAccount($request->cif, $request->kodecabang,$request->periode)->get();
foreach ($Accounts as $key => $account) {
$data[$key]['CUSTOMER_NO'] = $account->CUSTOMER_NO;
$data[$key]['ACCOUNT_NUMBER'] = $account->ACCOUNT_NUMBER;
$data[$key]['COMPANY_NAME'] = $account->COMPANY_NAME;
$data[$key]['SHORT_TITLE'] = $account->SHORT_TITLE;
$data[$key]['WORKING_BALANCE'] = $account->WORKING_BALANCE;
$data[$key]['PRODUCT'] = $account->PRODUCT;
$data[$key]['CURRENCY'] = $account->CURRENCY;
$data[$key]['BATCH_DATE'] = $account->BATCH_DATE;
$data[$key]['MATURITY_DATE'] = $account->MATURITY_DATE ?? '-';
}
return json_encode($data);
@ -75,11 +85,13 @@
/*
----- export pdf -----
*/
public function export(Request $request) {
public function export(Request $request) {
if (is_null($this->user) || !$this->user->can('konfirmasibank.report')) {
abort(403, 'Sorry !! You are Unauthorized to view any master data !');
}
dd($request);
$account = explode("," , $request['acc_no']);
$ViewAccount = new ViewAccount;
@ -170,17 +182,89 @@
}
public function signer(Request $request){
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to view any master data !');
}
public function addFasilitas(Request $request){
$data = [];
// $signer = Signer::paginate(10);
$signer = Signer::where('status',1)->paginate(10);
$data['signer'] = $signer;
// dd( $data['signer']);
return view('konfirmasibank::pages.index_signer',compact('data'));
}
public function postSigner(Request $request){
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to create any konfirmasibank.create !');
}
$currentDate = Carbon::now();
$validated = $request->validate([
'deputy_director' => 'required|string',
'executive_officer' => 'required|string'
]);
if ($validated) {
try {
// Create New User
$signer = new Signer();
$signer->deputy_director_name = $request->deputy_director;
$signer->executive_officer_name = $request->executive_officer;
$signer->created_at = $currentDate;
$signer->status = 1;
$signer->save();
// return redirect()->route('konfirmasibank.addFasilitas')->with('success', 'Data berhasil ditambahkan');
echo json_encode(['status' => 'success', 'message' => ' Add signer successfully .']);
} catch (Exception $e) {
return json_encode([
'status' => 'error',
'message' => $e->getMessage()
]);
}
}
return false;
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
*
* @return Response
*/
public function editSigner(Request $request)
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.update')) {
abort(403, 'Sorry !! You are Unauthorized to edit any role !');
}
$signer = Signer::find($request->id);
return json_encode( $signer);
}
public function fasilitas(Request $request){
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to view any master data !');
}
$data = [];
$fasilitas = Fasilitas::where('status', 1)->where('created_by',$this->user->id)->paginate(10);
$fasilitas = Fasilitas::paginate(10)->appends($request->query()['cus_no_fasilitas'],$request->query()['company_name'],$request->query()['batch_date'], $request->query()['status']);
// dd($fasilitas);
$limitReference = LimitReference::all();
$data['queryParam'] = $request->query();
$data['fasilitas'] = $fasilitas;
$data['limitReference'] = $limitReference;
@ -190,12 +274,54 @@
public function updateSigner(Request $request)
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.update')) {
abort(403, 'Sorry !! You are Unauthorized to edit any role !');
}
$today = Carbon::now();
$validator = Validator::make($request->all(), [
'deputy_director' => 'required|string',
'executive_officer' => 'required|string'
]);
if ($validator->fails()) {
return response()->json(['errors' => $validator->errors()], 422); // Return validation errors as JSON
}
if ($validator) {
try {
$signer = Signer::findOrFail($request->id);
$signer->deputy_director_name = $request->deputy_director;
$signer->executive_officer_name = $request->executive_officer;
$signer->updated_at = $today;
$signer->save();
echo json_encode(['status' => 'success', 'message' => ' signer updated successfully.']);
} catch (Exception $e) {
echo json_encode(['status' => 'error', 'message' => ' signer updated failed.']);
}
return;
}
echo json_encode(['status' => 'error', 'message' => ' signer updated failed.']);
}
public function postFasilitas(Request $request){
if (is_null($this->user) || !$this->user->can('konfirmasibank.create')) {
abort(403, 'Sorry !! You are Unauthorized to create any konfirmasibank.create !');
}
$validated = $request->validate([
'nomor_rekening' => 'required|string|max:10|unique:fasilitas,nomor_rekening',
'jenis_fasilitas' => 'required|string',
@ -210,6 +336,7 @@
try {
// Create New User
$fasilitas = new Fasilitas();
$fasilitas->nomor_cif = $request->nomor_cif;
$fasilitas->nomor_rekening = $request->nomor_rekening;
$fasilitas->jenis_fasilitas = $request->jenis_fasilitas;
$fasilitas->saldo = $request->saldo;
@ -220,7 +347,8 @@
$fasilitas->keterangan = $request->keterangan;
$fasilitas->save();
return redirect()->route('konfirmasibank.addFasilitas')->with('success', 'Data berhasil ditambahkan');
// return redirect()->route('konfirmasibank.addFasilitas')->with('success', 'Data berhasil ditambahkan');
echo json_encode(['status' => 'success', 'message' => ' Data berhasil ditambahkan.']);
} catch (Exception $e) {
return json_encode([
@ -274,7 +402,6 @@
// Validation Data\
$validator = Validator::make($request->all(), [
'nomor_rekening' => 'required|string|max:10|unique:fasilitas,nomor_rekening',
'jenis_fasilitas' => 'required|string',
'saldo' => 'required|string',
'start_date' => 'required|string',
@ -324,7 +451,7 @@
* @return Renderable
*/
public function destroyFasilitas(Request $request)
{
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.delete')) {
abort(403, 'Sorry !! You are Unauthorized to delete any konfirmasibank module !');
}
@ -340,5 +467,23 @@
}
}
public function destroySigner(Request $request)
{
if (is_null($this->user) || !$this->user->can('konfirmasibank.delete')) {
abort(403, 'Sorry !! You are Unauthorized to delete any konfirmasibank module !');
}
}
$signer = Signer::findOrFail($request->id);
try {
$signer->status = 0;
$signer->save();
echo json_encode(['status' => 'success', 'message' => ' Signer deleted successfully.']);
} catch (Exception $e) {
echo json_encode(['status' => 'error', 'message' => ' Signer deleted failed.']);
}
}
}