public function studentsName(Request $request)
 {
     $offset = $request->input('offset');
     $limit = $request->input('limit');
     $fullname = $this->student->select(['fullname', 'id'])->skip($offset)->take($limit)->orderBy('updated_at', 'desc')->get();
     return response()->json($fullname);
 }
Example #2
0
 /**
  * @param  int
  * @param  string
  * @return double
  */
 public static function calculateStaffDiscount($student_id, $fee_schedule_code)
 {
     //initialise discount to zero
     $discount = 0;
     //get stuednt info
     $student = Student::find($student_id);
     //get the staff discount value for this fee schedule
     $staff_discount = self::getStaffDiscountAmount($fee_schedule_code);
     //get details of staff discount policy
     $discount_policy = DiscountPolicy::where('discount_name', 'Parent')->first();
     //get all wards with same staff
     $same_staff = Student::select('id')->where('staff_id', $student->staff_id)->get();
     //divide staff discount accross all wards that have thesame staff
     if ($discount_policy->all_wards == 1) {
         $discount += $staff_discount / count($same_staff);
         return $discount;
     }
     //dont divide staff discount accross all wards that have thesame staff
     if ($discount_policy->dont_divide == 1) {
         $discount += $staff_discount;
         return $discount;
     }
     if ($discount_policy->all_wards == 0) {
         $student_ids = [];
         foreach ($same_staff as $stud) {
             $student_ids[] = $stud->id;
         }
         sort($student_ids);
         foreach ($student_ids as $key => $student_id) {
             if ($key == $discount_policy->ward_to_deduct - 1) {
                 $ward_to_deduct = $student_id;
             }
         }
         if ($ward_to_deduct == $student->id) {
             $discount += $staff_discount;
         }
         return $discount;
     }
 }