Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace App\Http\Controllers;
- use Illuminate\Http\Request;
- use App\Models\Client;
- use App\Models\User;
- class ClientController extends Controller
- {
- public function all(Request $request)
- {
- $clients = Client::all();
- return response()->json($clients);
- }
- public function get(Request $request, $id)
- {
- $client = Client::findOrFail($id);
- return response()->json($client);
- }
- public function add(Request $request)
- {
- $user_rules = [
- 'email' => 'required|email|unique:users,email',
- 'rol' => 'required|in:administrador,usuario|string',
- 'clave' => 'required|confirmed:clave_confirmation',
- 'clave_confirmation' => 'required',
- 'status' => 'boolean',
- 'tipo_identificacion' => 'required',
- 'identificacion' => 'required|min:8',
- 'nombre' => 'required|min:3'
- ];
- $this->validate($request, $user_rules);
- $fields = $request->all();
- $user = new User($fields);
- $user->password = $request->input('clave','nomeacuerdo');
- if ($user->save()){
- $client = new Client($fields);
- $user->client()->save($client);
- }
- return response()->json($user->load('client'));
- }
- public function patch(Request $request ,$id)
- {
- $client = Client::findOrFail($id);
- $rules = ['nombre' => 'required|min:3', 'tipo_identificacion'=>'required', 'identificacion'=>'required|min:10'];
- $this->validate($request, $rules);
- $client->fill($request->all());
- $client->save();
- return response()->json($client);
- }
- public function delete(Request $request ,$id)
- {
- $client = Client::findOrFail($id);
- $client->delete();
- return response('no content',204);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement