I have tables Users,departments,files and shareFiles. I want to write a query that when a user tries sending a file to another user, the share function should capture the title of the file and department of the user sending the file which would be saved in the shareFiles table.
- Users table:
id
,department_id
- Files table:
id
,title
,user_id
- Department table:
id
,name
- ShareFiles table:
title
,file
,department_id
,user_id
,sender
,to
Below is what i did in the share function
public function shareFile(Request $request)
{
$userfile = new UserFile();
$userfile->sender = \Auth::user()->username;
$userfile->to = $request->user;
$userfile->title = File::select('title')->where(['user_id' => \Auth::user()->id])
->orWhere('id','=','user_id')->get();
$userfile->department = DB::table('departments')->select('departments.name')
->join('users','departments.id','=','users.department_id')
->where(['users.id' => \Auth::user()->id])
->get();
$userfile->user_id = \Auth::user()->id;
$userfile->save();
Session::flash('message','File successfully shared !!');
return redirect('/hr/document');
}