/**
  * Store a newly created resource in storage.
  *
  * @param  Request  $request
  * @return Response
  */
 public function store(Request $request)
 {
     $this->validate($request, ['numbers' => 'required|max:255', 'letters' => 'required|max:255', 'housenr' => 'required|max:255']);
     $zipcode = Zipcode::where('pnum', $request->input('numbers'))->where('pchar', $request->input('letters'))->firstOrFail();
     switch ($zipcode->numbertype) {
         case 'even':
             if ($request->input('housenr') % 2 == 0) {
                 if ($this->between($request->input('housenr'), $zipcode->minnumber, $zipcode->maxnumber)) {
                     return response()->json($zipcode);
                 } else {
                     return redirect::back()->with('error', 'uw huisnr bestaat niet i.c.m. deze postcode');
                 }
             }
             break;
         case 'odd':
             if ($request->input('housenr') % 2 == 1) {
                 if ($this->between($request->input('housenr'), $zipcode->minnumber, $zipcode->maxnumber)) {
                     return response()->json($zipcode);
                 } else {
                     return redirect::back()->with('error', 'uw huisnr bestaat niet i.c.m. deze postcode');
                 }
             }
             break;
         case 'mixed':
             if ($this->between($request->input('housenr'), $zipcode->minnumber, $zipcode->maxnumber)) {
                 return response()->json($zipcode);
             } else {
                 return redirect::back()->with('error', 'uw huisnr bestaat niet i.c.m. deze postcode');
             }
             break;
         default:
             return redirect::back()->with('error', 'uw huisnr bestaat niet i.c.m. deze postcode');
     }
 }
Exemple #2
0
 public function sendToZipCode($inputs)
 {
     //Create a new text record
     $messageId = Appointment_Message::create(['lead_id' => $inputs['lead_id'], 'responses' => 0, 'zipcode' => $inputs['zipcode']]);
     $zipcode = Zipcode::find($inputs['zipcode']);
     $agents = AgentData::where('zip', $inputs['zipcode'])->groupBy('agent_id')->get([DB::raw("agent_id,zip,agent_id, COUNT(CASE WHEN source IN ('S','B') THEN 1 END) as closings,COUNT(CASE WHEN source IN ('O') THEN 1 END) as office,COUNT(CASE WHEN source IN ('H') THEN 1 END) as home,COUNT(CASE WHEN source IN ('A') THEN 1 END) as other")])->toArray();
     $array_pop = $this->filterAgentsForCollection($agents, $zipcode);
     $agent_collection = Agents::where('mobile_phone', '!=', '')->where('is_active', 1)->where('days_red', '<=', $zipcode->min_red)->orderBy('agent_order', 'ASC')->find($array_pop);
     $agent_collection->add(['messageId' => $messageId->id]);
     return $agent_collection;
 }
 public function destroy($id)
 {
     Zipcode::find($id)->delete();
     $zipcodes = Zipcode::orderBy('name')->paginate(env('ZIPCODE_PAGINATION_MAX'));
     return view('zipcodes.index');
 }