public function applicationUserRequest(Request $request)
 {
     $statusObject = array("applied" => array("step" => "สมัครขอทุน", "appStatus" => "Pending", "approve" => "approved", "reject" => "rejected"), "rejected" => array("step" => "สมัครขอทุน", "appStatus" => "Reject"), "approved" => array("step" => "สมัครขอทุน", "appStatus" => "Approve"), "signed_agreement" => array("step" => "ทำสัญญารับทุน", "appStatus" => "Pending", "approve" => "approved_agreement", "reject" => "rejected_agreement", "files" => array(1, 2, 22)), "rejected_agreement" => array("step" => "ทำสัญญารับทุน", "appStatus" => "Reject", "files" => array(1, 2, 22)), "approved_agreement" => array("step" => "ทำสัญญารับทุน", "appStatus" => "Approve"), "first_payment" => array("step" => "เบิกเงินงวดที่ 1", "appStatus" => "Pending", "approve" => "approved_first_payment", "reject" => "rejected_first_payment", "files" => array(3, 4, 5, 6)), "rejected_first_payment" => array("step" => "เบิกเงินงวดที่ 1", "appStatus" => "Reject", "files" => array(3, 4, 5, 6)), "approved_first_payment" => array("step" => "เบิกเงินงวดที่ 1", "appStatus" => "Approve"), "second_payment" => array("step" => "รายงานความก้าวหน้าครั้งที่ 1", "appStatus" => "Pending", "approve" => "approved_second_payment", "reject" => "rejected_second_payment", "files" => array(7, 8, 9)), "rejected_second_payment" => array("step" => "รายงานความก้าวหน้าครั้งที่ 1", "appStatus" => "Reject", "files" => array(7, 8, 9)), "approved_second_payment" => array("step" => "รายงานความก้าวหน้าครั้งที่ 1", "appStatus" => "Approve"), "second_progress_report" => array("step" => "รายงานความก้าวหน้าครั้งที่ 2", "appStatus" => "Pending", "approve" => "approved_second_progress_report", "reject" => "rejected_second_progress_report", "files" => array(10, 11)), "rejected_second_progress_report" => array("step" => "รายงานความก้าวหน้าครั้งที่ 2", "appStatus" => "Reject", "files" => array(10, 11)), "approved_second_progress_report" => array("step" => "รายงานความก้าวหน้าครั้งที่ 2", "appStatus" => "Approve"), "finalized" => array("step" => "ส่งผลงานเพื่อปิดโครงการ", "appStatus" => "Pending", "approve" => "approved_finalized", "reject" => "rejected_finalized", "files" => array(17, 18, 19, 20, 21, 23, 24)), "rejected_finalized" => array("step" => "ส่งผลงานเพื่อปิดโครงการ", "appStatus" => "Reject", "files" => array(17, 18, 19, 20, 21, 23, 24)), "approved_finalized" => array("step" => "ส่งผลงานเพื่อปิดโครงการ", "appStatus" => "Approve"), "request_extend" => array("step" => "ขอขยายเวลา", "appStatus" => "Pending", "approve" => "approved_extend", "reject" => "rejected_extend", "files" => array(14, 15, 16)), "rejected_extend" => array("step" => "ขอขยายเวลา", "appStatus" => "Reject", "files" => array(14, 15, 16)), "approved_extend" => array("step" => "ขอขยายเวลา", "appStatus" => "Approve"), "project_finished" => array("step" => "ปิดโครงการ", "appStatus" => "Pending", "approve" => "approved_project_finished", "reject" => "rejected_project_finished", "files" => array(17, 18, 19, 20, 21, 23, 24)), "rejected_project_finished" => array("step" => "ปิดโครงการ", "appStatus" => "Reject", "files" => array(17, 18, 19, 20, 21, 23, 24)), "approved_project_finished" => array("step" => "ปิดโครงการ", "appStatus" => "Approve"));
     $id = $request->get('id', null);
     $applications = DB::table('applications')->join('funds', 'applications.fund', '=', 'funds.id')->join('users', 'applications.owner', '=', 'users.id')->where('fund', $id)->select('applications.id', 'applications.status', 'funds.name as fundName', 'users.name as userName')->get();
     $fund = Fund::find($id);
     if (!$fund) {
         return redirect()->route('fund_user_request_choose');
     }
     for ($i = 0; $i < count($applications); $i++) {
         $applications[$i]->step = $statusObject[$applications[$i]->status]['step'];
         $applications[$i]->appStatus = $statusObject[$applications[$i]->status]['appStatus'];
         $applications[$i]->documents = null;
         if ($applications[$i]->appStatus != 'Approve') {
             if ($applications[$i]->appStatus == 'Pending') {
                 $applications[$i]->approve = $statusObject[$applications[$i]->status]['approve'];
                 $applications[$i]->reject = $statusObject[$applications[$i]->status]['reject'];
             }
             if ($applications[$i]->status != 'applied' && $applications[$i]->status != 'rejected') {
                 $documents = [];
                 $files = $statusObject[$applications[$i]->status]['files'];
                 for ($j = 0; $j < count($files); $j++) {
                     $upload = Upload::where('filetype', $files[$j])->where('application_id', $applications[$i]->id)->first();
                     $filetype = Filetype::find($upload->filetype);
                     array_push($documents, array("file_name" => $filetype->name, "file_path" => $upload->file_path, "file_status" => $upload->status, "upload_id" => $upload->id));
                 }
                 $applications[$i]->documents = $documents;
             }
         }
     }
     return view('admin.fund_user_request', ['applications' => $applications, 'fundName' => $fund->name]);
 }
Example #2
0
 /**
  * Gets a multidimensional array of all of the centers
  * and the accounts that belong to each.
  *
  * @param $center_id
  * @return array
  */
 public static function getCenter($center_id = false)
 {
     $centers = [];
     if ($center_id) {
         array_push($centers, Fund::find($center_id));
     } else {
         foreach (Fund::all() as $fund) {
             array_push($centers, $fund);
         }
     }
     return $centers;
 }
Example #3
0
 public function fundFormFileUpload(Request $request)
 {
     $fundId = $request->get('id', 0);
     $fund = Fund::find($fundId);
     if (!$fund) {
         return redirect()->route('fund_manage');
     }
     return view('admin.fund_form_file_upload', ['fundId' => $fundId]);
 }
Example #4
0
 public function manualnotify(Request $request)
 {
     $app_id = $request->get('appid');
     $application = Application::find($app_id);
     // die($application);
     $fund = Fund::find($application->fund);
     // print_r($applications);
     $data = array();
     $data['application'] = $application;
     $data['user'] = $application->user;
     $data['fund'] = $fund;
     Mail::queue('emails.autonotify', $data, function ($message) use($data) {
         $message->to($data['user']->email, $data['user']->name)->subject('You have uncompleted applications at nurse.tu.ac.th');
     });
     echo "success";
 }
 public function fundDelete($id)
 {
     $fund = Fund::find($id);
     $fund->delete();
     return redirect()->route('fund_manage');
 }