TIF_E41201027/app/Http/Controllers/petugas/DataObatController.php

115 lines
3.6 KiB
PHP

<?php
namespace App\Http\Controllers\petugas;
use App\Http\Controllers\controller;
use Illuminate\Support\Facades\Hash;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use App\Models\data_obat;
use App\Models\dokter_obat;
use Carbon\Carbon;
use Dotenv\Validator;
use Illuminate\Auth\Events\Validated;
use Illuminate\Support\Facades\Crypt;
use Illuminate\Support\Facades\Validator as FacadesValidator;
use Illuminate\Support\Facades\Auth;
use Barryvdh\DomPDF\Facade as PDF;
class DataObatController extends Controller
{
public function index()
{
$data_obat = DB::table('data_obat')->get();
$obat_petugas = DB::table('users')->join('dokter','dokter.id','=','users.id')
->join('dokter_obat','dokter_obat.id_dokter','=','dokter.id_dokter')
->join('data_obat','data_obat.id_obat','=','dokter_obat.id_obat')
->paginate(5);
return view('petugas.data_obat.index', compact('data_obat','obat_petugas'));
}
public function create()
{
$data_obat = null;
return view('petugas.data_obat.index',compact('data_obat'));
}
public function store(Request $request)
{
$id = Auth::id();
$petugas = DB::table('dokter')->where('id',$id)->first();
$id_dokter = $petugas->id_dokter;
$message = [
'numeric' => ':attribute harus diisi nomor.'
];
$validator = FacadesValidator::make($request->all(),[
// 'nama' => 'required|string|max:100',
// 'tingkatan' => 'required|numeric',
], $message)->validate();
$kode = date('ymdi');
$data_simpan = [
'id_obat' => $kode,
'nama_obat' => $request->nama_obat,
'stok' => $request->stok,
'supplier' => $request->supplier,
'expired' => $request->expired,
'keterangan' => $request->keterangan,
];
$kode2 = date('yHi');
$do = "DOB$kode2";
$data_simpan2 = [
'id_do' => $do,
'id_dokter' =>$id_dokter,
'id_obat' =>$kode,
];
data_obat::create($data_simpan);
dokter_obat::create($data_simpan2);
return redirect()->back()->with('success','Data Obat telah berhasil disimpan');
}
public function edit(Request $request, $id_obat)
{
if ($request->isMethod('post')) {
$data = $request->all();
data_obat::where(['id_obat'=>$id_obat])->update(['nama_obat'=>$data['nama_obat'],
'stok'=>$data['stok'],
'supplier'=>$data['supplier'],
'expired'=>$data['expired'],
'keterangan' =>$data['keterangan']]);
return redirect()->back()->with('success','Data Obat telah berhasil diperbarui');
}
}
public function delete($id_obat)
{
data_obat::where(['id_obat'=>$id_obat])->delete();
return redirect()->back()->with('success','Data Obat telah berhasil dihapus');
}
public function cetakobat()
{
$id = Auth::id();
$petugas = DB::table('dokter')->where('id',$id)->first();
$id_dokter = $petugas->id_dokter;
$data_obat = data_obat::join('dokter_obat', 'dokter_obat.id_obat', '=', 'data_obat.id_obat')
->where('dokter_obat.id_dokter',$id_dokter)
->orderBy('data_obat.id_obat','desc')
->get();
$pdf = PDF::loadview('petugas/data_obat/cetak_pdf',['data_obat'=>$data_obat]);
return view('petugas.data_obat.cetak_pdf', compact('data_obat'));
}
}