示例#1
0
 public static function doSelectFiltered(Criteria $criteria, $con = null)
 {
     $dept = sfContext::getInstance()->getUser()->getAttribute('department', null, 'bo');
     $depts = $dept->getChildRecurs(array());
     $criteria->add(AcademicCalendarPeer::DEPARTMENT_ID, $depts, Criteria::IN);
     $criteria->addJoin(AcademicCalendarPeer::ID, AcademicCostPeer::ACADEMIC_CALENDAR_ID);
     $criteria->addAscendingOrderByColumn(AcademicCostPeer::CODE);
     return AcademicCostPeer::doSelect($criteria);
 }
示例#2
0
 public function getAcademicCosts($criteria = null, $con = null)
 {
     include_once 'lib/model/om/BaseAcademicCostPeer.php';
     if ($criteria === null) {
         $criteria = new Criteria();
     } elseif ($criteria instanceof Criteria) {
         $criteria = clone $criteria;
     }
     if ($this->collAcademicCosts === null) {
         if ($this->isNew()) {
             $this->collAcademicCosts = array();
         } else {
             $criteria->add(AcademicCostPeer::BANK_ACCOUNT_ID, $this->getId());
             AcademicCostPeer::addSelectColumns($criteria);
             $this->collAcademicCosts = AcademicCostPeer::doSelect($criteria, $con);
         }
     } else {
         if (!$this->isNew()) {
             $criteria->add(AcademicCostPeer::BANK_ACCOUNT_ID, $this->getId());
             AcademicCostPeer::addSelectColumns($criteria);
             if (!isset($this->lastAcademicCostCriteria) || !$this->lastAcademicCostCriteria->equals($criteria)) {
                 $this->collAcademicCosts = AcademicCostPeer::doSelect($criteria, $con);
             }
         }
     }
     $this->lastAcademicCostCriteria = $criteria;
     return $this->collAcademicCosts;
 }
示例#3
0
 public function executePaymentProcess()
 {
     $this->getEnquirer();
     if (!$this->filterUser(true)) {
         $this->jsonwrapper->print_json(array('success' => false, 'code' => 'security', 'message' => 'You must login to access this url.'));
     }
     $applicant = $this->pmbTools->getApplicant($this->user);
     if (!$applicant) {
         $this->jsonwrapper->show_json_error('Permission', 'You dont have permission to access this page');
     }
     if ($applicant->getStatus() != StudentDetail::BUY && $applicant->getStatus() != StudentDetail::WEB && $applicant->getStatus() != StudentDetail::CONFIRM) {
         $this->jsonwrapper->show_json_error('Permission', 'You dont have permission to access this page');
     }
     $param = $this->getAllRequestParameter();
     $valid = true;
     $error_message = array();
     /* payment method */
     if (empty($param['payment_method'])) {
         $error_message[] = array('field' => 'payment_method', 'message' => 'Please enter payment method');
         $valid = false;
     } else {
         $paymentMethod = PaymentModelPeer::retrieveByPK($param['payment_method']);
         if (!$paymentMethod) {
             $error_message[] = array('field' => 'payment_method', 'message' => 'Payment method not exist');
             $valid = false;
         }
     }
     /* payment date */
     if (empty($param['payment_date'])) {
         $error_message[] = array('field' => 'payment_date', 'message' => 'Please enter payment date');
         $valid = false;
     }
     if (!$valid) {
         $this->jsonwrapper->print_json(array('success' => false, 'code' => 'notvalid', 'error' => $error_message));
     }
     /* Start Transaction */
     $connection = Propel::getConnection('propel');
     $connection->begin();
     /* Set Up Registration Test Period */
     $regPeriod = $this->pmbTools->getRegistrationPeriod($applicant->getDepartment1());
     if (!$regPeriod) {
         $this->jsonwrapper->show_json_error('TestPeriod', 'Registration Period not found');
     }
     $c = new Criteria();
     $c->add(RegTestPeriodPeer::REG_PERIOD_ID, $regPeriod->getId());
     $regTestPeriods = RegTestPeriodPeer::doSelect($c);
     $save = false;
     foreach ($regTestPeriods as $reg_test_period) {
         $cw = new Criteria();
         $cw->add(TestSchedulePeer::REG_TEST_PERIOD_ID, $reg_test_period->getId());
         $cw->addAscendingorderByColumn(TestSchedulePeer::ID);
         $scheds = TestSchedulePeer::doSelect($cw);
         $s1 = array();
         foreach ($scheds as $s) {
             $s1[$s->getRegTestPeriodId()][] = array('reg_test_period_id' => $s->getRegTestPeriodId(), 'used' => $s->countTestApplScheds(), 'capacity' => $s->getCapacity(), 'sched' => $s);
         }
         foreach ($s1 as $s) {
             $c = new Criteria();
             $c->add(TestSchedulePeer::REG_TEST_PERIOD_ID, $reg_test_period->getId());
             $c->addJoin(TestApplSchedPeer::TEST_SCHEDULE_ID, TestSchedulePeer::ID);
             $c->add(TestApplSchedPeer::TEST_APPLICANT_ID, $applicant->getId());
             $tas = TestApplSchedPeer::doSelectOne($c);
             if ($tas == null) {
                 $i = 0;
                 while ($s[$i]) {
                     $sched = $s[$i];
                     if ($sched['used'] < $sched['capacity']) {
                         $tas = new TestApplSched();
                         $tas->setTestApplicant($applicant);
                         $tas->setTestSchedule($sched['sched']);
                         try {
                             $tas->save();
                             $save = true;
                         } catch (Exception $e) {
                             $connection->rollback();
                             $this->jsonwrapper->print_json(array('success' => false, 'code' => 'fail', 'message' => 'Error while save test applicant schedule, please try again later.'));
                         }
                         break;
                     }
                     $i++;
                 }
             }
         }
         if (!$save) {
             $connection->rollback();
             $this->jsonwrapper->print_json(array('success' => false, 'code' => 'fail', 'message' => 'Error.'));
         }
         $regTestPeriod = $reg_test_period;
         $applicant->setRegTestPeriod1($reg_test_period->getId());
         try {
             $applicant->save();
         } catch (Exception $e) {
             $connection->rollback();
             $this->jsonwrapper->print_json(array('success' => false, 'code' => 'fail', 'message' => 'Error while save test applicant registration test period, please try again later.'));
         }
         break;
     }
     /* Save new applicant code */
     $newCode = $this->pmbTools->generateApplicantCode(StudentDetail::WEB);
     $applicant->setStatus(StudentDetail::CONFIRM);
     $applicant->setCode($newCode);
     try {
         $applicant->save();
     } catch (Exception $e) {
         $connection->rollback();
         $this->jsonwrapper->print_json(array('success' => false, 'code' => 'fail', 'message' => 'Error while save the applicant data, please try again later.'));
     }
     /* Set Payment */
     $paymentDate = date('Y-m-d', strtotime($param['payment_date']));
     $c = new Criteria();
     $cton1 = $c->getNewCriterion(AcademicCostPeer::ACADEMIC_CALENDAR_ID, $regTestPeriod->getRegPeriod()->getAcademicCalendarId(), Criteria::IN);
     $cton2 = $c->getNewCriterion(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1, Criteria::IN);
     $cton3 = $c->getNewCriterion(AcademicCostPeer::ACADEMIC_COST_COMPONENT_ID, 1, Criteria::IN);
     $cton2->addAnd($cton3);
     $cton1->addAnd($cton2);
     $c->add($cton1);
     $costs = AcademicCostPeer::doSelect($c);
     $total_cost = 0;
     foreach ($costs as $cost) {
         $c = new Criteria();
         $c->add(PaymentApplicantPeer::TEST_APPLICANT_ID, $applicant->getId());
         $payment_applicant = PaymentApplicantPeer::doSelectOne($c);
         if ($payment_applicant == null) {
             $payment_applicant = new PaymentApplicant();
         }
         $payment_applicant->setTestApplicant($applicant);
         $payment_applicant->setPaymentModelId($paymentMethod->getId());
         $payment_applicant->setPaidAt($paymentDate);
         $payment_applicant->setAcademicCostId($cost->getId());
         $payment_applicant->setAcademicProcessId(1);
         $payment_applicant->setAmount($cost->getAmount());
         $payment_applicant->setPayerType(PaymentJournal::PAYER_TYPE_APPLICANT);
         $payment_applicant->setStatus('S');
         $payment_applicant->setPaid($cost->getAmount());
         echo 'a';
         try {
             $payment_applicant->save();
         } catch (Exception $e) {
             $connection->rollback();
             $this->jsonwrapper->print_json(array('success' => false, 'code' => 'fail', 'message' => 'Error while save the data, please try again later.'));
         }
     }
     /* Commit Transaction */
     $connection->rollback();
     /*
     $connection->commit();
     */
     $this->jsonwrapper->print_json(array('success' => true, 'code' => 'success', 'message' => 'Data successfully saved', 'href' => $this->pmbTools->pmbUrl('')));
     /* ---- */
 }
示例#4
0
 public function executePaymentSlip()
 {
     $stu = StudentPeer::retrieveByPK($this->getRequestParameter('student_id'));
     $job = JobPeer::retrieveByCode($this->getModuleName());
     $academic_process = $job->getAcademicProcess();
     $this->forward404Unless($stu && $job && $academic_process);
     $c = new Criteria();
     $c->add(AcademicProcessPeer::CODE, $academic_process->getCode());
     $c->addJoin(AcademicProcessPeer::ID, AcademicCostPeer::ACADEMIC_PROCESS_ID);
     $c->addJoin(AcademicCostPeer::ACADEMIC_CALENDAR_ID, StudentLeavePeer::ACADEMIC_CALENDAR_ID);
     $c->add(StudentLeavePeer::STATUS, StudentLeave::STATUS_APPROVED);
     $c->add(StudentLeavePeer::STUDENT_ID, $stu->getId());
     $costs = AcademicCostPeer::doSelect($c);
     $total_cost = 0;
     foreach ($costs as $c) {
         $total_cost += $c->getAmount();
     }
     $this->stu = $stu;
     $this->costs = $costs;
     $this->total_cost = $total_cost;
     $this->setViewClass('sfDomPDF');
 }
示例#5
0
 public function executeGetAcademicCosts()
 {
     $student_id = $this->getRequestParameter('payer');
     $student = StudentPeer::retrieveByPK($student_id);
     #$this->forward404Unless($student);
     $c = new Criteria();
     $c->addJoin(StudentPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
     $c->addJoin(AcademicCalendarPeer::ID, AcademicCostPeer::ACADEMIC_CALENDAR_ID);
     $c->add(StudentPeer::ID, $student_id);
     #if ($student->getClassGroupId()) $c->add(AcademicCalendarPeer::CLASS_GROUP_ID, $student->getClassGroup()->getParentRecurs(), Criteria::IN);
     $objs = AcademicCostPeer::doSelect($c);
     $ac_costs = array();
     foreach ($objs as $o) {
         $ac_costs[$o->getId()] = $o->toString();
     }
     $this->content = $ac_costs;
     #$this->forward404Unless($ac_costs);
     $this->setTemplate('buildOptions');
 }
示例#6
0
 public function executePrintBankTransferForm()
 {
     $student_course = StudentCoursePeer::retrieveByPK($this->getRequestParameter('id'));
     $stu = StudentPeer::retrieveByPK($this->getRequestParameter('student_id'));
     $accal = $student_course->getSubjectAccal()->getAcademicCalendar();
     $job = JobPeer::retrieveByCode($this->getModuleName());
     $academic_process = $job->getAcademicProcess();
     $this->forward404Unless($student_course && $stu && $accal && $job && $academic_process);
     $c = new Criteria();
     $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, $accal->getId());
     $c->add(AcademicProcessPeer::CODE, $academic_process->getCode());
     $c->addJoin(AcademicProcessPeer::ID, AcademicCostPeer::ACADEMIC_PROCESS_ID);
     $costs = AcademicCostPeer::doSelect($c);
     $c = new Criteria();
     $c->add(StudentCoursePeer::STUDENT_ID, $stu->getId());
     $c->add(SubjectAccalPeer::ACADEMIC_CALENDAR_ID, $accal->getId());
     $c->add(StudentCoursePeer::STATUS, StudentCourse::STATUS_APPROVED);
     $c->addJoin(SubjectAccalPeer::ID, StudentCoursePeer::SUBJECT_ACCAL_ID);
     $scs = StudentCoursePeer::doSelect($c);
     $total_subject = 0;
     $total_credit = 0;
     $total_credit_cost = 0;
     $total_cost = 0;
     $total_subject_cost = 0;
     foreach ($costs as $c) {
         if ($c->getAcademicCostComponent()->getUnit() == AcademicCostComponent::UNIT_CREDIT) {
             foreach ($scs as $sc) {
                 $total_credit += $sc->getSubjectAccal()->getSubject()->getCredit();
                 $total_cost += $c->getAmount() * $sc->getSubjectAccal()->getSubject()->getCredit();
                 $total_credit_cost += $c->getAmount() * $sc->getSubjectAccal()->getSubject()->getCredit();
             }
         } elseif ($c->getAcademicCostComponent()->getUnit() == AcademicCostComponent::UNIT_SUBJECT) {
             foreach ($scs as $sc) {
                 ++$total_subject;
                 $total_cost += $c->getAmount();
                 $total_subject_cost += $c->getAmount();
             }
         } else {
             $total_cost += $c->getAmount();
         }
     }
     $this->stu = $stu;
     $this->accal = $accal;
     $this->costs = $costs;
     $this->total_credit = $total_credit;
     $this->total_credit_cost = $total_credit_cost;
     $this->total_cost = $total_cost;
     $this->total_subject = $total_subject;
     $this->total_subject_cost = $total_subject_cost;
     $this->setViewClass('sfDomPDF');
 }
示例#7
0
 public function executeGraduateReceipt()
 {
     $ta_id = $this->getRequestParameter('id');
     $ta = TestApplicantPeer::retrieveByPK($ta_id);
     $this->forward404Unless($ta);
     $this->ta = $ta;
     $ta_detail = $ta->getTestApplicantDetail();
     $this->ta_detail = $ta_detail;
     $cw = new Criteria();
     $cw->add(DepartmentDetailPeer::DEPARTMENT_ID, $ta->getDepartment1());
     $this->department_detail = DepartmentDetailPeer::doSelectOne($cw);
     #Uang Osis Untuk SMP
     if ($ta->getDepartment1() == 2) {
         $cm = new Criteria();
         $cm->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
         $cm->add(AcademicCostPeer::ACADEMIC_COST_COMPONENT_ID, 30);
         #$cm->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
         $this->osis = AcademicCostPeer::doSelectOne($cm);
     }
     #Calon Siswa dari Al-Azhar
     if ($ta->getIsAlazhar() == TestApplicant::IS_ALAZHAR) {
         #Ayah atau Ibu Guru
         if ($ta_detail->getFatherJob() == TestApplicant::IS_TEACHER || $ta_detail->getMotherJob() == TestApplicant::IS_TEACHER) {
             #Guru Pengajar Al-Azhar (Siswa Dalam - Guru Dalam)
             if ($ta_detail->getDetailFatherJob() == 1 || $ta_detail->getDetailMotherJob() == 1) {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 10);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Dalam
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 19);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
                 #Guru Pengajar (Siswa Dalam - Guru Luar)
             } else {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 9);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Luar
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 18);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
             }
             #Ayah dan Ibu Guru
         } elseif ($ta_detail->getFatherJob() == TestApplicant::IS_TEACHER && $ta_detail->getMotherJob() == TestApplicant::IS_TEACHER) {
             #Guru Pengajar Al-Azhar (Siswa Dalam - Guru Dalam)
             if ($ta_detail->getDetailFatherJob() == 1 || $ta_detail->getDetailMotherJob() == 1) {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 10);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Dalam
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 19);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
                 #Guru Pengajar (Siswa Dalam - Guru Luar)
             } else {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 9);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Luar
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 18);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
             }
             #Siswa Dalam - non Guru
         } else {
             $c = new Criteria();
             $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
             $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
             $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
             $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
             $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 11);
             $cton1->addOr($cton2);
             $c->add($cton1);
             $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
             $academic_costs = AcademicCostPeer::doSelect($c);
             $this->academic_costs = $academic_costs;
             #SPP Bulanan Non Guru
             $cr = new Criteria();
             $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
             $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
             $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
             $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 20);
             $this->spp = AcademicCostPeer::doSelectOne($cr);
         }
         #Iuran Jamiyah Siswa Dalam
         $ce = new Criteria();
         $ce->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
         $ce->add(AcademicCostPeer::ACADEMIC_COST_COMPONENT_ID, 17);
         $ce->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
         $ce->add(AcademicCostPeer::PAYER_TYPE_ID, 7);
         $this->jamiyah = AcademicCostPeer::doSelectOne($ce);
         #Calon Siswa dari Luar Al-Azhar
     } else {
         #Ayah atau Ibu Guru
         if ($ta_detail->getFatherJob() == TestApplicant::IS_TEACHER || $ta_detail->getMotherJob() == TestApplicant::IS_TEACHER) {
             #Guru Pengajar Al-Azhar (Siswa Luar - Guru Dalam)
             if ($ta_detail->getDetailFatherJob() == 1 || $ta_detail->getDetailMotherJob() == 1) {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 13);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Dalam
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 19);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
                 #Guru Pengajar (Siswa Luar - Guru Luar)
             } else {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 12);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Luar
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 18);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
             }
             #Ayah dan Ibu Guru
         } elseif ($ta_detail->getFatherJob() == TestApplicant::IS_TEACHER && $ta_detail->getMotherJob() == TestApplicant::IS_TEACHER) {
             #Guru Pengajar Al-Azhar (Siswa Luar - Guru Dalam)
             if ($ta_detail->getDetailFatherJob() == 1 || $ta_detail->getDetailMotherJob() == 1) {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 13);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Dalam
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 19);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
                 #Guru Pengajar (Siswa Luar - Guru Luar)
             } else {
                 $c = new Criteria();
                 $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
                 $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
                 $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
                 $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 12);
                 $cton1->addOr($cton2);
                 $c->add($cton1);
                 $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
                 $academic_costs = AcademicCostPeer::doSelect($c);
                 $this->academic_costs = $academic_costs;
                 #SPP Bulanan Guru Luar
                 $cr = new Criteria();
                 $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
                 $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
                 $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
                 $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 18);
                 $this->spp = AcademicCostPeer::doSelectOne($cr);
             }
             #Siswa Luar - non Guru
         } else {
             $c = new Criteria();
             $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
             $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 1);
             $c->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
             $cton1 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 7);
             $cton2 = $c->getNewCriterion(AcademicCostPeer::PAYER_TYPE_ID, 14);
             $cton1->addOr($cton2);
             $c->add($cton1);
             $c->addDescendingOrderByColumn(AcademicCostPeer::AMOUNT);
             $academic_costs = AcademicCostPeer::doSelect($c);
             $this->academic_costs = $academic_costs;
             #SPP Bulanan Non Guru
             $cr = new Criteria();
             $cr->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
             $cr->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, 2);
             $cr->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getId());
             $cr->add(AcademicCostPeer::PAYER_TYPE_ID, 20);
             $this->spp = AcademicCostPeer::doSelectOne($cr);
         }
         #Iuran Jamiyah Siswa Luar
         $ce = new Criteria();
         $ce->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, RegTestPeriodPeer::retrieveByPK($ta->getRegTestPeriod1())->getRegPeriod()->getAcademicCalendarId());
         $ce->add(AcademicCostPeer::ACADEMIC_COST_COMPONENT_ID, 17);
         $ce->add(AcademicCostPeer::CLASS_GROUP_ID, ClassGroupPeer::retrieveByPk($ta->getClassGroup1())->getParent());
         $ce->add(AcademicCostPeer::PAYER_TYPE_ID, 8);
         $this->jamiyah = AcademicCostPeer::doSelectOne($ce);
     }
     $this->papersize = 'a4';
     $this->orientation = 'portrait';
     $this->setViewClass('sfDomPDF');
 }
示例#8
0
 public function executePaymentSlip()
 {
     $comprehensive_exam = ComprehensiveExamPeer::retrieveByPK($this->getRequestParameter('id'));
     $stu = $comprehensive_exam->getStudent();
     $job = JobPeer::retrieveByCode($this->getModuleName());
     $academic_process = $job->getAcademicProcess();
     $this->forward404Unless($stu && $job && $academic_process);
     $c = new Criteria();
     $c->add(AcademicCostPeer::ACADEMIC_PROCESS_ID, $academic_process->getId());
     $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, $comprehensive_exam->getAcademicCalendarId());
     $costs = AcademicCostPeer::doSelect($c);
     $total_cost = 0;
     foreach ($costs as $c) {
         $total_cost += $c->getAmount();
     }
     $this->stu = $stu;
     $this->costs = $costs;
     $this->total_cost = $total_cost;
     $this->setViewClass('sfDomPDF');
 }
示例#9
0
 public function executePaymentSlip()
 {
     $gradc = GradCeremonyPeer::retrieveByPK($this->getRequestParameter('id'));
     $stu = $gradc->getStudent();
     $accal = $gradc->getAcademicCalendar();
     $job = JobPeer::retrieveByCode($this->getModuleName());
     $academic_process = $job->getAcademicProcess();
     $this->forward404Unless($gradc && $stu && $accal && $job && $academic_process);
     $c = new Criteria();
     $c->add(AcademicCostPeer::ACADEMIC_CALENDAR_ID, $accal->getId());
     $c->add(AcademicProcessPeer::CODE, $academic_process->getCode());
     $c->addJoin(AcademicProcessPeer::ID, AcademicCostPeer::ACADEMIC_PROCESS_ID);
     $costs = AcademicCostPeer::doSelect($c);
     $total_cost = 0;
     foreach ($costs as $c) {
         $total_cost += $c->getAmount();
     }
     $this->gradc = $gradc;
     $this->stu = $stu;
     $this->accal = $accal;
     $this->costs = $costs;
     $this->total_cost = $total_cost;
     $this->setViewClass('sfDomPDF');
 }
示例#10
0
 public static function retrieveByPKs($pks, $con = null)
 {
     if ($con === null) {
         $con = Propel::getConnection(self::DATABASE_NAME);
     }
     $objs = null;
     if (empty($pks)) {
         $objs = array();
     } else {
         $criteria = new Criteria();
         $criteria->add(AcademicCostPeer::ID, $pks, Criteria::IN);
         $objs = AcademicCostPeer::doSelect($criteria, $con);
     }
     return $objs;
 }