Current File : /home/inlingua/www/crm.vprotectindia.com/app/Http/Controllers/API/CustomerMasterController.php |
<?php
namespace App\Http\Controllers\API;
use App\Http\Controllers\Controller;
use App\Jobs\SendRegistrationEmailJob;
use App\Model\API\CustomerMasterModel;
use App\Model\API\SaleSubscription;
use App\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Carbon;
use Mail;
use App\Mail\SendRegistrationEmail;
class CustomerMasterController extends Controller
{
public function store(Request $request)
{
// $validator = Validator::make($request->all(), [
// 'name' => 'required',
// 'email' => 'required|email',
// 'password' => 'required',
// 'c_password' => 'required|same:password',
// ]);
// return response()->json(['success'=>$_POST]);
// $result="";
// foreach($this->request->get('fname') as $key => $val){
// // $rules['slide.'.$key.'.title'] = 'required|max:255';
// // $rules['slide.'.$key.'.description'] = 'required|max:255';
// $result.=$key;
// }
//dd($request->input()[0]['fname']);
// $result="";
$data = json_decode(file_get_contents("php://input"));
//print_r($data) ;
// echo "<pre>";
// return response()->json($data);
// exit;
$result=1;
for ($i=0; $i < count($data) ; $i++) {
//print_r($data[$i])."<br/>" ;exit;
// if(isset($data[$i]->customer_code) && isset($data[$i]->email)){
if (CustomerMasterModel::where('customer_code', '=', $data[$i]->customer_code)->exists()) {
continue;
}
$CustomerMaster = new CustomerMasterModel();
$CustomerMaster->fname=$data[$i]->fname;
$CustomerMaster->lname=$data[$i]->lname;//.$CustomerMaster->count('id');
$CustomerMaster->contact_name=$data[$i]->contact_name;
$CustomerMaster->customer_code=$data[$i]->customer_code;
$CustomerMaster->address=$data[$i]->address;
$CustomerMaster->mobile=$data[$i]->mobile;
$CustomerMaster->phone=$data[$i]->phone;
$CustomerMaster->email=$data[$i]->email;
$CustomerMaster->gstin=$data[$i]->gstin;
$CustomerMaster->coach=$data[$i]->coach;
$CustomerMaster->salesperson=$data[$i]->salesperson;
$CustomerMaster->type=$data[$i]->type;
$CustomerMaster->status=$data[$i]->status;
$CustomerMaster->created_by=$data[$i]->created_by;
$CustomerMaster->remarks=$data[$i]->remarks;
$result = $CustomerMaster->save();
$identity =$CustomerMaster->id;
if(!$result)
{
$result=0;
}
$pass = "123";//str_random(10);
$user = new User();
$user->user_id=$identity;
$user->name=$data[$i]->fname;
$user->user_name=$data[$i]->customer_code;//$data[$i]->fname.''.$u;ser->count('id');
//$invID = str_pad($invID, 4, '0', STR_PAD_LEFT);
$user->password=Hash::make($pass);
$user->mobile=$data[$i]->mobile;
$user->email=$data[$i]->email;
$user->address=$data[$i]->address;
$result = $user->save();
$notification = array('name' =>$data[$i]->fname ,'mobile'=>$data[$i]->mobile,'email'=>$data[$i]->email,'customer_code'=>$data[$i]->customer_code,'pass'=>$pass );
// $job=(new SendRegistrationEmailJob($notification))->delay(Carbon::now()->addSeconds(10));
// dispatch($job);
//Mail::to('Sandeeppdubey104@gmail.com')->send(new SendRegistrationEmail($notification));
$subsc =array($data[$i]->CustomerSubcription);
// foreach ($data[$i]->CustomerSubcription as $subsc) {
//print_r($subsc[0]);exit;
$subs=new SaleSubscription();
$subs->user_id=$identity;
$subs->customer_code=$data[$i]->customer_code;
$subs->product=isset($subsc[0]->product)?$subsc[0]->product:"";
$subs->billing_type=$subsc[0]->billing_type;
$subs->service_type=$subsc[0]->service_type;
$subs->kit_type=$subsc[0]->kit_type;
$subs->subs_valid_from=$subsc[0]->subs_valid_from!=""?$subsc[0]->subs_valid_from:date('Y-m-d');
$subs->subs_valid_to=$subsc[0]->subs_valid_to!=""?$subsc[0]->subs_valid_to:date('Y-m-d');
$subs->extra_valid_days="0";
$subs->price=$subsc[0]->price;
$subs->status="1";
$result = $subs->save();
// }
//}
}
if(!$result)
{
return response()->json(['error'=>'Unauthorised'.$result], 401);
}
else
{
return response()->json(['success'=>"Success"]);
}
}
}