This commit is contained in:
mahdi purHosseini
2024-02-10 22:21:41 +03:30
parent d7b97357e3
commit 87c4cf428f
4 changed files with 216 additions and 215 deletions
+22 -22
View File
@@ -5,7 +5,7 @@ namespace App\Http\Controllers;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use App\Http\Requests\StoreCycleRequest; use App\Http\Requests\StoreCycleRequest;
use App\Cycle; use App\Cycle;
use App\User; use Packages\Messaging\src\Facades\MessageResponse;
class CycleController extends Controller class CycleController extends Controller
{ {
@@ -18,8 +18,7 @@ class CycleController extends Controller
$query->whereHas( 'user' , function ( $query ) use ( $user ) { $query->whereHas( 'user' , function ( $query ) use ( $user ) {
$query->where( 'medical_center_id' , $user->medical_center_id ); $query->where( 'medical_center_id' , $user->medical_center_id );
} ); } );
} } else {
else{
$query->where( 'user_id' , $user->id ); $query->where( 'user_id' , $user->id );
} }
} ) } )
@@ -52,12 +51,12 @@ class CycleController extends Controller
} , } ,
] )->orderByDesc( 'id' )->paginate( 10 ); ] )->orderByDesc( 'id' )->paginate( 10 );
return \MessageResponse::data($Cycles); return MessageResponse::data( $Cycles );
} }
public function create()
{
} public function create()
{}
public function show( Cycle $Cycle ) public function show( Cycle $Cycle )
{ {
$Cycle->load( [ 'user' => function ( $query ) { $Cycle->load( [ 'user' => function ( $query ) {
@@ -68,8 +67,9 @@ class CycleController extends Controller
} , } ,
'labels' , 'labels' ,
'labels.package' , 'labels.package.items' ] ); 'labels.package' , 'labels.package.items' ] );
return \MessageResponse::data($Cycle); return MessageResponse::data( $Cycle );
} }
public function store( StoreCycleRequest $request ) public function store( StoreCycleRequest $request )
{ {
$UniqueID = substr( base_convert( sha1( uniqid( mt_rand() ) ) , 16 , 36 ) , 0 , 10 ); $UniqueID = substr( base_convert( sha1( uniqid( mt_rand() ) ) , 16 , 36 ) , 0 , 10 );
@@ -90,8 +90,7 @@ class CycleController extends Controller
if ( array_key_exists( $label[ 'id' ] , $Labels ) ) { if ( array_key_exists( $label[ 'id' ] , $Labels ) ) {
$preCount = $Labels[ $label[ 'id' ] ]; $preCount = $Labels[ $label[ 'id' ] ];
$Labels[ $label[ 'id' ] ] = $preCount + 1; $Labels[ $label[ 'id' ] ] = $preCount + 1;
} } else {
else {
$Labels[ $label[ 'id' ] ] = $count; $Labels[ $label[ 'id' ] ] = $count;
} }
} }
@@ -99,8 +98,9 @@ class CycleController extends Controller
$CycleObj->labels()->attach( array( $Label ) , [ 'count' => $Count ] ); $CycleObj->labels()->attach( array( $Label ) , [ 'count' => $Count ] );
} }
// $CycleObj->labels()->attach($request->labels); // $CycleObj->labels()->attach($request->labels);
return \MessageResponse::success(trans('messages.success')); return MessageResponse::success( trans( 'messages.success' ) );
} }
public function edit( Cycle $Cycle ) public function edit( Cycle $Cycle )
{ {
$Labels = []; $Labels = [];
@@ -114,7 +114,7 @@ class CycleController extends Controller
unset( $Cycle->labels ); unset( $Cycle->labels );
$Cycle->labels = $Labels; $Cycle->labels = $Labels;
return \MessageResponse::data($Cycle); return MessageResponse::data( $Cycle );
} }
public function update( StoreCycleRequest $request , Cycle $Cycle ) public function update( StoreCycleRequest $request , Cycle $Cycle )
@@ -127,8 +127,7 @@ class CycleController extends Controller
if ( array_key_exists( $label[ 'id' ] , $Labels ) ) { if ( array_key_exists( $label[ 'id' ] , $Labels ) ) {
$preCount = $Labels[ $label[ 'id' ] ]; $preCount = $Labels[ $label[ 'id' ] ];
$Labels[ $label[ 'id' ] ] = $preCount + 1; $Labels[ $label[ 'id' ] ] = $preCount + 1;
} } else {
else {
$Labels[ $label[ 'id' ] ] = $count; $Labels[ $label[ 'id' ] ] = $count;
} }
} }
@@ -136,24 +135,25 @@ class CycleController extends Controller
foreach ( $Labels as $Label => $Count ) { foreach ( $Labels as $Label => $Count ) {
$Cycle->labels()->attach( array( $Label ) , [ 'count' => $Count ] ); $Cycle->labels()->attach( array( $Label ) , [ 'count' => $Count ] );
} }
return \MessageResponse::success(trans('messages.success')); return MessageResponse::success( trans( 'messages.success' ) );
} }
public function destroy( Cycle $Cycle ) public function destroy( Cycle $Cycle )
{ {
if ( auth( 'api' )->user()->cant( 'delete' , $Cycle ) ) { if ( auth( 'api' )->user()->cant( 'delete' , $Cycle ) ) {
return \MessageResponse::error(trans('messages.access_denied')); return MessageResponse::error( trans( 'messages.access_denied' ) );
} }
if(count($Cycle->labels)) if ( count( $Cycle->labels ) ) {
{
$Cycle->labels()->detach(); $Cycle->labels()->detach();
} }
$Cycle->delete(); $Cycle->delete();
return \MessageResponse::success(trans('messages.success')); return MessageResponse::success( trans( 'messages.success' ) );
} }
public function verifyCycle( Cycle $Cycle ) public function verifyCycle( Cycle $Cycle )
{ {
if ( auth( 'api' )->user()->cant( 'verifyCycle' , $Cycle ) ) { if ( auth( 'api' )->user()->cant( 'verifyCycle' , $Cycle ) ) {
return \MessageResponse::error(trans('You dont have permission')); return MessageResponse::error( trans( 'You dont have permission' ) );
} }
if ( $Cycle->verified == 'Verified' ) { if ( $Cycle->verified == 'Verified' ) {
$Cycle->verified = 'NotVerified'; $Cycle->verified = 'NotVerified';
@@ -162,7 +162,7 @@ class CycleController extends Controller
} }
$Cycle->save(); $Cycle->save();
$Cycle = $Cycle->load( 'user' ); $Cycle = $Cycle->load( 'user' );
return \MessageResponse::success(trans('messages.success'), null, $Cycle); return MessageResponse::success( trans( 'messages.success' ) , null , $Cycle );
} }
public function showCycle( Cycle $Cycle ) public function showCycle( Cycle $Cycle )
@@ -174,6 +174,6 @@ class CycleController extends Controller
$query->select( 'id' , 'name' ); $query->select( 'id' , 'name' );
} , } ,
'labels' , 'labels.package' , 'labels.package.items' ] ); 'labels' , 'labels.package' , 'labels.package.items' ] );
return \MessageResponse::data($Cycle); return MessageResponse::data( $Cycle );
} }
} }
+21 -24
View File
@@ -2,11 +2,10 @@
namespace App\Http\Controllers; namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests\StoreLabelRequest; use App\Http\Requests\StoreLabelRequest;
use App\Label; use App\Label;
use App\Package; use Illuminate\Http\Request;
use App\User; use Packages\Messaging\src\Facades\MessageResponse;
class LabelController extends Controller class LabelController extends Controller
{ {
@@ -19,8 +18,7 @@ class LabelController extends Controller
$query->whereHas( 'user' , function ( $query ) use ( $user ) { $query->whereHas( 'user' , function ( $query ) use ( $user ) {
$query->where( 'medical_center_id' , $user->medical_center_id ); $query->where( 'medical_center_id' , $user->medical_center_id );
} ); } );
} } else {
else{
$query->where( 'user_id' , $user->id ); $query->where( 'user_id' , $user->id );
} }
} ) } )
@@ -52,12 +50,12 @@ class LabelController extends Controller
} , } ,
] )->orderByDesc( 'id' )->paginate( 10 ); ] )->orderByDesc( 'id' )->paginate( 10 );
return \MessageResponse::data($Labels); return MessageResponse::data( $Labels );
} }
public function create()
{
} public function create()
{}
public function show( Label $Label ) public function show( Label $Label )
{ {
$Label->load( [ 'user' => function ( $query ) { $Label->load( [ 'user' => function ( $query ) {
@@ -68,8 +66,9 @@ class LabelController extends Controller
} , } ,
'package' , 'package.items' ] ); 'package' , 'package.items' ] );
return \MessageResponse::data($Label); return MessageResponse::data( $Label );
} }
public function store( StoreLabelRequest $request ) public function store( StoreLabelRequest $request )
{ {
$LabelData = [ $LabelData = [
@@ -82,39 +81,37 @@ class LabelController extends Controller
'package_id' => $request->package_id 'package_id' => $request->package_id
]; ];
$LabelObj = Label::create( $LabelData ); $LabelObj = Label::create( $LabelData );
return \MessageResponse::success(trans('messages.success'), null, $LabelObj); return MessageResponse::success( trans( 'messages.success' ) , null , $LabelObj );
} }
public function edit( Label $Label ) public function edit( Label $Label )
{ {
$Label->load( 'package' ); $Label->load( 'package' );
return \MessageResponse::data($Label); return MessageResponse::data( $Label );
} }
public function update( StoreLabelRequest $request , Label $Label ) public function update( StoreLabelRequest $request , Label $Label )
{ {
$Label->update( $request->all() ); $Label->update( $request->all() );
return \MessageResponse::success(trans('messages.success'), null, $Label); return MessageResponse::success( trans( 'messages.success' ) , null , $Label );
} }
public function destroy( Label $Label ) public function destroy( Label $Label )
{ {
if ( auth( 'api' )->user()->cant( 'delete' , $Label ) ) { if ( auth( 'api' )->user()->cant( 'delete' , $Label ) ) {
return \MessageResponse::error(trans('messages.access_denied')); return MessageResponse::error( trans( 'messages.access_denied' ) );
} }
if(count($Label->cycles)) if ( count( $Label->cycles ) ) {
{
$Label->cycles()->detach(); $Label->cycles()->detach();
} }
$Label->delete(); $Label->delete();
return \MessageResponse::success(trans('messages.success')); return MessageResponse::success( trans( 'messages.success' ) );
} }
public function getLabels() public function getLabels()
{ {
$user = auth( 'api' )->user(); $user = auth( 'api' )->user();
// $admin_users = User::role('Admin')->get()->pluck('id')->toArray(); $Labels = Label::when( $user->cant( 'showAll' , Label::class ) , function ( $query ) use ( $user ) {
// $admin_users[] = $user->id;
$Labels = Label::
when($user->cant('showAll', Label::class), function($query) use ($user) {
if ( $user->hasRole( 'Supervisor|User' ) ) { if ( $user->hasRole( 'Supervisor|User' ) ) {
$query->whereHas( 'user' , function ( $query ) use ( $user ) { $query->whereHas( 'user' , function ( $query ) use ( $user ) {
$query->where( 'medical_center_id' , $user->medical_center_id ); $query->where( 'medical_center_id' , $user->medical_center_id );
@@ -122,7 +119,7 @@ class LabelController extends Controller
} }
} )->get(); } )->get();
return \MessageResponse::data($Labels); return MessageResponse::data( $Labels );
} }
public function showLabel( Label $Label ) public function showLabel( Label $Label )
@@ -134,7 +131,7 @@ class LabelController extends Controller
$query->select( 'id' , 'name' ); $query->select( 'id' , 'name' );
} , } ,
'package' , 'package.items' ] ); 'package' , 'package.items' ] );
return \MessageResponse::data($Label); return MessageResponse::data( $Label );
} }
} }
@@ -106,6 +106,7 @@ class PackageController extends Controller
$Package->load( [ $Package->load( [
'user' , 'user' ,
'creator' , 'creator' ,
'items' ,
'user.medical_center' => function ( $query ) { 'user.medical_center' => function ( $query ) {
$query->select( 'id' , 'name' , 'address' , 'phone_number' ); $query->select( 'id' , 'name' , 'address' , 'phone_number' );
} , } ,
+3
View File
@@ -7,14 +7,17 @@ use Illuminate\Database\Eloquent\Model;
class Label extends Model class Label extends Model
{ {
public $fillable = [ 'sterile_date' , 'expire_date' , 'sterilizer_id' , 'cycle_number' , 'lot_number' , 'user_id' , 'package_id' ]; public $fillable = [ 'sterile_date' , 'expire_date' , 'sterilizer_id' , 'cycle_number' , 'lot_number' , 'user_id' , 'package_id' ];
public function user() public function user()
{ {
return $this->belongsTo( 'App\User' ); return $this->belongsTo( 'App\User' );
} }
public function package() public function package()
{ {
return $this->belongsTo( 'App\Package' ); return $this->belongsTo( 'App\Package' );
} }
public function cycles() public function cycles()
{ {
return $this->belongsToMany( 'App\Cycle' , 'cycle_label' )->withPivot( 'count' ); return $this->belongsToMany( 'App\Cycle' , 'cycle_label' )->withPivot( 'count' );