mirror of
https://gitlab.com/CIEFWorldwideSdnBhd/izyim-api.git
synced 2026-08-19 12:34:06 +00:00
c64c526d98
updated on user phone verification, create a company profile removed company store function updated company with user relationship added company factory moved company routes into authenticated routes updated company test renamed "verify" routes to "verify-phone"
105 lines
3.8 KiB
PHP
105 lines
3.8 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
use App\Company;
|
|
use Illuminate\Support\Facades\Storage;
|
|
use Validator;
|
|
use Auth;
|
|
|
|
class CompanyController extends Controller
|
|
{
|
|
public function update(Request $request)
|
|
{
|
|
$company = Company::where("user_id", Auth::user()->id)->first();
|
|
if (!$company)
|
|
{
|
|
return response()->json(['message'=>'company not found'], 404);
|
|
}
|
|
|
|
$company->company_name=$request->input('company_name');
|
|
$company->registration_no=$request->input('registration_no');
|
|
$company->tax_no=$request->input('tax_no');
|
|
$company->tel_no=$request->input('tel_no');
|
|
$company->fax=$request->input('fax');
|
|
$company->address=$request->input('address');
|
|
$company->city=$request->input('city');
|
|
$company->postcode=$request->input('postcode');
|
|
$company->state=$request->input('state');
|
|
$company->country=$request->input('country');
|
|
$company->contact_person=$request->input('contact_person');
|
|
|
|
$company->save();
|
|
return response()->json(['company'=>$company],200);
|
|
}
|
|
|
|
public function companyProfile(Request $request)
|
|
{
|
|
$company = Company::where("user_id", Auth::user()->id)->first();
|
|
if (!$company)
|
|
{
|
|
return response()->json(['message'=>'company for company_prof not found'],200);
|
|
}
|
|
//validaating file types
|
|
$validator = Validator::make($request->all(), [
|
|
'company_profile' => 'image|mimes:jpg,jpeg,bmp,png'
|
|
]);
|
|
if($validator->fails())
|
|
{
|
|
return response()->json(['message'=>'Incorrect format'],200);
|
|
}
|
|
|
|
if($file = $request->file('company_profile')) //company profile picture
|
|
{
|
|
$company_profile = $request->file('company_profile');
|
|
$filename = $company_profile->getClientOriginalName(); //get the original file name
|
|
$unique_name = 'comp_prof_' . md5($filename. time()); //generating a random file name
|
|
|
|
$file = $request->file('company_profile');
|
|
$ext = $file->getClientOriginalExtension();
|
|
$input['company_profile'] = $filename;
|
|
Storage::putFileAs(
|
|
'company_profile',/*folder name*/ $file, $unique_name. '.' .$ext
|
|
);
|
|
$company->company_profile = $unique_name. '.' .$ext; //update database
|
|
} //end if
|
|
$company->save();
|
|
return response()->json(['company'=>$company],200);
|
|
}//end of companyProfile()
|
|
|
|
public function regCert(Request $request)
|
|
{
|
|
$company = Company::where("user_id", Auth::user()->id)->first();
|
|
if (!$company)
|
|
{
|
|
return response()->json(['message'=>'Company not found'], 404);
|
|
}
|
|
|
|
//validating file types
|
|
$validator = Validator::make($request->all(), [
|
|
'reg_cert' => 'mimes:jpg,jpeg,bmp,png,gif,svg,pdf'
|
|
]);
|
|
if($validator->fails()){
|
|
return response()->json(['message'=>'Incorrect format'],200);
|
|
}
|
|
|
|
if($request->hasFile('reg_cert')) //Registration Certificate upload
|
|
{
|
|
$reg_cert = $request->file('reg_cert');
|
|
$filename = $reg_cert->getClientOriginalName(); //original filename
|
|
$unique_name = 'reg_cert_' . md5($filename. time()); //generating a random file name
|
|
|
|
$file = $request->file('reg_cert');
|
|
$ext = $file->getClientOriginalExtension();
|
|
$input['reg_cert'] = $filename;
|
|
Storage::putFileAs(
|
|
'reg_cert',/*folder name*/ $file, $unique_name. '.' .$ext
|
|
);
|
|
$company->reg_cert = $unique_name. '.' .$ext; //this updates database
|
|
}//end if
|
|
$company->save();
|
|
return response()->json(['company'=>$company],200);
|
|
}//end regCert()
|
|
|
|
}//end of class
|