示例#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 filterHistory($c, $filters)
 {
     $filters_key = array_keys($filters);
     foreach ($filters_key as $key) {
         $value = $filters[$key];
         if ($value == '' || $value == null) {
             continue;
         }
         if ($key == 'ACADEMIC_COST_COMPONENT_ID') {
             $c->addJoin(AcademicCostPeer::ACADEMIC_COST_COMPONENT_ID, AcademicCostComponentPeer::ID);
             $c->addJoin(PaymentJournalPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
             $column = AcademicCostPeer::getTableMap()->getColumn($key);
         } elseif ($key == 'DEPARTMENT_ID') {
             $c->addJoin(DepartmentPeer::ID, CurriculumPeer::DEPARTMENT_ID);
             $c->addJoin(CurriculumPeer::ID, AcademicCalendarPeer::CURRICULUM_ID);
             $c->addJoin(AcademicCostPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
             $c->addJoin(PaymentJournalPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
             $column = CurriculumPeer::getTableMap()->getColumn($key);
         } elseif ($key == 'PAYER') {
             $c->addJoin(StudentPeer::ID, PaymentJournalPeer::PAYER);
             $c->addJoin(StudentPeer::CURRICULUM_ID, AcademicCalendarPeer::CURRICULUM_ID);
             $c->addJoin(AcademicCostPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
             $c->addJoin(PaymentJournalPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
             $column = StudentPeer::getTableMap()->getColumn('NAME');
         } elseif ($key == 'ACADEMIC_PROCESS_ID') {
             $c->addJoin(PaymentJournalPeer::ID, PaymentHistoryPeer::PAYMENT_JOURNAL_ID);
             $column = PaymentJournalPeer::getTableMap()->getColumn($key);
         } else {
             $column = PaymentHistoryPeer::getTableMap()->getColumn($key);
         }
         $name = $column->getFullyQualifiedName();
         $creoleType = $column->getCreoleType();
         if ($creoleType == CreoleTypes::TIMESTAMP) {
             $from = $value['from'];
             $to = $value['to'];
             $c2 = null;
             if ($from != '' && $from != null) {
                 $c->add($name, $from, Criteria::GREATER_EQUAL);
                 $c2 = $c->getCriterion($name);
             }
             if ($from != '' && $from != null && $to != '' && $to != null) {
                 $c3 = new Criterion($c, $name, $to, Criteria::LESS_EQUAL);
                 $c2->addAnd($c3);
             }
             if (($from == '' || $from == null) && $to != '' && $to != null) {
                 $c->add($name, $to, Criteria::LESS_EQUAL);
             }
         } else {
             if ($creoleType == CreoleTypes::INTEGER) {
                 $c->add($name, $value, Criteria::EQUAL);
             } else {
                 if ($creoleType == CreoleTypes::VARCHAR || $creoleType == CreoleTypes::CHAR) {
                     $c->add($name, "%{$value}%", Criteria::LIKE);
                 }
             }
         }
     }
 }
示例#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 executeGetAmount()
 {
     $ac_id = $this->getRequestParameter('academic_cost_id');
     $ac = AcademicCostPeer::retrieveByPK($ac_id);
     $this->forward404Unless($ac);
     return $this->renderText("<input type='text' size='7' value='" . $ac->getAmount() . "' id='amount' name='amount'/>");
 }
示例#6
0
 public function getAcademicCostsJoinAcademicProcess($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());
             $this->collAcademicCosts = AcademicCostPeer::doSelectJoinAcademicProcess($criteria, $con);
         }
     } else {
         $criteria->add(AcademicCostPeer::BANK_ACCOUNT_ID, $this->getId());
         if (!isset($this->lastAcademicCostCriteria) || !$this->lastAcademicCostCriteria->equals($criteria)) {
             $this->collAcademicCosts = AcademicCostPeer::doSelectJoinAcademicProcess($criteria, $con);
         }
     }
     $this->lastAcademicCostCriteria = $criteria;
     return $this->collAcademicCosts;
 }
示例#7
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;
 }
示例#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 executeInsertPaymentJournal()
 {
     $student_course = StudentCoursePeer::retrieveByPK($this->getRequestParameter('id'));
     $stu = StudentPeer::retrieveByPK($this->getRequestParameter('student_id'));
     $accal = $student_course->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);
     $paids = $this->getRequestParameter('paid');
     foreach ($paids as $key => $val) {
         $c = AcademicCostPeer::retrieveByPK($key);
         $payment_journal = new PaymentJournal();
         $payment_journal->setAcademicCost($c);
         $payment_journal->setJob($job);
         $payment_journal->setPayer($stu->getId());
         #$amount = 0;
         #if ($c->getAcademicCostComponent()->getUnit() == AcademicCostComponent::UNIT_CREDIT) {
         #	foreach ($scs as $sc) {
         #		$amount += $c->getAmount() * $sc->getSubjectAccal()->getSubject()->getCredit();
         #	}
         #} elseif ($c->getAcademicCostComponent()->getUnit() == AcademicCostComponent::UNIT_SUBJECT) {
         #	foreach ($scs as $sc) {
         #		$amount += $c->getAmount();
         #	}
         #} else {
         $amount = $c->getAmount();
         #}
         $payment_journal->setAmount($amount);
         $payment_journal->setPaid($val);
         $payment_journal->setReceivable($amount - $val);
         $payment_journal->setAcademicProcess($academic_process);
         $payment_journal->setPayerType(PaymentJournal::PAYER_TYPE_STUDENT);
         if ($amount - $val == 0) {
             $payment_journal->setStatus('S');
         } elseif ($amount - $val > 0) {
             $payment_journal->setStatus('M');
         } elseif ($amount - $val < 0) {
             $payment_journal->setStatus('P');
         }
         $payment_journal->save();
         $ph = new PaymentHistory();
         $ph->setPaymentJournal($payment_journal);
         $ph->setAmount($val);
         $ph->save();
     }
     // activate all paid credit
     if ($this->hasRequestParameter('status[student_course]') && $this->getRequestParameter('status[student_course]') == 1) {
         $c = new Criteria();
         $c->add(StudentCoursePeer::STUDENT_ID, $stu->getId());
         $c->add(StudentCoursePeer::STATUS, StudentCourse::STATUS_APPROVED);
         $approved_scs = StudentCoursePeer::doSelect($c);
         foreach ($approved_scs as $asc) {
             $asc->setStatus(StudentCourse::STATUS_ACTIVE);
             $asc->save();
         }
     }
     // change student status to active
     if ($this->hasRequestParameter('status[student]') && $this->getRequestParameter('status[student]') == Student::STATUS_ACTIVE) {
         $stu->setStatus(Student::STATUS_ACTIVE);
         $stu->setAcademicCalendarId($accal->getId());
         $stu->save();
     }
     return $this->redirect('student_course/list?student_id=' . $stu->getId());
 }
示例#10
0
 public static function doSelectJoinAllExceptAcademicCalendar(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     VSppPeer::addSelectColumns($c);
     $startcol2 = VSppPeer::NUM_COLUMNS - VSppPeer::NUM_LAZY_LOAD_COLUMNS + 1;
     StudentPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + StudentPeer::NUM_COLUMNS;
     AcademicCostPeer::addSelectColumns($c);
     $startcol4 = $startcol3 + AcademicCostPeer::NUM_COLUMNS;
     UserPeer::addSelectColumns($c);
     $startcol5 = $startcol4 + UserPeer::NUM_COLUMNS;
     AcademicProcessPeer::addSelectColumns($c);
     $startcol6 = $startcol5 + AcademicProcessPeer::NUM_COLUMNS;
     PaymentModelPeer::addSelectColumns($c);
     $startcol7 = $startcol6 + PaymentModelPeer::NUM_COLUMNS;
     TransactionStatusPeer::addSelectColumns($c);
     $startcol8 = $startcol7 + TransactionStatusPeer::NUM_COLUMNS;
     AcademicCostComponentPeer::addSelectColumns($c);
     $startcol9 = $startcol8 + AcademicCostComponentPeer::NUM_COLUMNS;
     $c->addJoin(VSppPeer::STUDENT_ID, StudentPeer::ID);
     $c->addJoin(VSppPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
     $c->addJoin(VSppPeer::USER_ID, UserPeer::ID);
     $c->addJoin(VSppPeer::ACADEMIC_PROCESS_ID, AcademicProcessPeer::ID);
     $c->addJoin(VSppPeer::PAYMENT_MODEL_ID, PaymentModelPeer::ID);
     $c->addJoin(VSppPeer::TRANSACTION_STATUS_ID, TransactionStatusPeer::ID);
     $c->addJoin(VSppPeer::ACADEMIC_COST_COMPONENT_ID, AcademicCostComponentPeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = VSppPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = StudentPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getStudent();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initVSpps();
             $obj2->addVSpp($obj1);
         }
         $omClass = AcademicCostPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj3 = new $cls();
         $obj3->hydrate($rs, $startcol3);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj3 = $temp_obj1->getAcademicCost();
             if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj3->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj3->initVSpps();
             $obj3->addVSpp($obj1);
         }
         $omClass = UserPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj4 = new $cls();
         $obj4->hydrate($rs, $startcol4);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj4 = $temp_obj1->getUser();
             if ($temp_obj4->getPrimaryKey() === $obj4->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj4->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj4->initVSpps();
             $obj4->addVSpp($obj1);
         }
         $omClass = AcademicProcessPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj5 = new $cls();
         $obj5->hydrate($rs, $startcol5);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj5 = $temp_obj1->getAcademicProcess();
             if ($temp_obj5->getPrimaryKey() === $obj5->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj5->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj5->initVSpps();
             $obj5->addVSpp($obj1);
         }
         $omClass = PaymentModelPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj6 = new $cls();
         $obj6->hydrate($rs, $startcol6);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj6 = $temp_obj1->getPaymentModel();
             if ($temp_obj6->getPrimaryKey() === $obj6->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj6->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj6->initVSpps();
             $obj6->addVSpp($obj1);
         }
         $omClass = TransactionStatusPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj7 = new $cls();
         $obj7->hydrate($rs, $startcol7);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj7 = $temp_obj1->getTransactionStatus();
             if ($temp_obj7->getPrimaryKey() === $obj7->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj7->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj7->initVSpps();
             $obj7->addVSpp($obj1);
         }
         $omClass = AcademicCostComponentPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj8 = new $cls();
         $obj8->hydrate($rs, $startcol8);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj8 = $temp_obj1->getAcademicCostComponent();
             if ($temp_obj8->getPrimaryKey() === $obj8->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj8->addVSpp($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj8->initVSpps();
             $obj8->addVSpp($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
示例#11
0
 public static function doSelectJoinAllExceptClassGroup(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     VInfaqPeer::addSelectColumns($c);
     $startcol2 = VInfaqPeer::NUM_COLUMNS - VInfaqPeer::NUM_LAZY_LOAD_COLUMNS + 1;
     AcademicCostPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + AcademicCostPeer::NUM_COLUMNS;
     AcademicCostComponentPeer::addSelectColumns($c);
     $startcol4 = $startcol3 + AcademicCostComponentPeer::NUM_COLUMNS;
     AcademicCalendarPeer::addSelectColumns($c);
     $startcol5 = $startcol4 + AcademicCalendarPeer::NUM_COLUMNS;
     UserPeer::addSelectColumns($c);
     $startcol6 = $startcol5 + UserPeer::NUM_COLUMNS;
     $c->addJoin(VInfaqPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
     $c->addJoin(VInfaqPeer::ACADEMIC_COST_COMPONENT_ID, AcademicCostComponentPeer::ID);
     $c->addJoin(VInfaqPeer::ACADEMIC_CALENDAR_ID, AcademicCalendarPeer::ID);
     $c->addJoin(VInfaqPeer::USER_ID, UserPeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = VInfaqPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = AcademicCostPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getAcademicCost();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addVInfaq($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initVInfaqs();
             $obj2->addVInfaq($obj1);
         }
         $omClass = AcademicCostComponentPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj3 = new $cls();
         $obj3->hydrate($rs, $startcol3);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj3 = $temp_obj1->getAcademicCostComponent();
             if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj3->addVInfaq($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj3->initVInfaqs();
             $obj3->addVInfaq($obj1);
         }
         $omClass = AcademicCalendarPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj4 = new $cls();
         $obj4->hydrate($rs, $startcol4);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj4 = $temp_obj1->getAcademicCalendar();
             if ($temp_obj4->getPrimaryKey() === $obj4->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj4->addVInfaq($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj4->initVInfaqs();
             $obj4->addVInfaq($obj1);
         }
         $omClass = UserPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj5 = new $cls();
         $obj5->hydrate($rs, $startcol5);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj5 = $temp_obj1->getUser();
             if ($temp_obj5->getPrimaryKey() === $obj5->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj5->addVInfaq($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj5->initVInfaqs();
             $obj5->addVInfaq($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
示例#12
0
 public static function doSelectJoinAllExceptTransactionStatus(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     PaymentJournalPeer::addSelectColumns($c);
     $startcol2 = PaymentJournalPeer::NUM_COLUMNS - PaymentJournalPeer::NUM_LAZY_LOAD_COLUMNS + 1;
     AcademicCostPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + AcademicCostPeer::NUM_COLUMNS;
     JobPeer::addSelectColumns($c);
     $startcol4 = $startcol3 + JobPeer::NUM_COLUMNS;
     AcademicProcessPeer::addSelectColumns($c);
     $startcol5 = $startcol4 + AcademicProcessPeer::NUM_COLUMNS;
     PaymentModelPeer::addSelectColumns($c);
     $startcol6 = $startcol5 + PaymentModelPeer::NUM_COLUMNS;
     $c->addJoin(PaymentJournalPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
     $c->addJoin(PaymentJournalPeer::JOB_ID, JobPeer::ID);
     $c->addJoin(PaymentJournalPeer::ACADEMIC_PROCESS_ID, AcademicProcessPeer::ID);
     $c->addJoin(PaymentJournalPeer::PAYMENT_MODEL_ID, PaymentModelPeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = PaymentJournalPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = AcademicCostPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getAcademicCost();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addPaymentJournal($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initPaymentJournals();
             $obj2->addPaymentJournal($obj1);
         }
         $omClass = JobPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj3 = new $cls();
         $obj3->hydrate($rs, $startcol3);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj3 = $temp_obj1->getJob();
             if ($temp_obj3->getPrimaryKey() === $obj3->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj3->addPaymentJournal($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj3->initPaymentJournals();
             $obj3->addPaymentJournal($obj1);
         }
         $omClass = AcademicProcessPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj4 = new $cls();
         $obj4->hydrate($rs, $startcol4);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj4 = $temp_obj1->getAcademicProcess();
             if ($temp_obj4->getPrimaryKey() === $obj4->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj4->addPaymentJournal($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj4->initPaymentJournals();
             $obj4->addPaymentJournal($obj1);
         }
         $omClass = PaymentModelPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj5 = new $cls();
         $obj5->hydrate($rs, $startcol5);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj5 = $temp_obj1->getPaymentModel();
             if ($temp_obj5->getPrimaryKey() === $obj5->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj5->addPaymentJournal($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj5->initPaymentJournals();
             $obj5->addPaymentJournal($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
示例#13
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');
 }
示例#14
0
echo $student->getAcademicCalendar()->toString();
?>
</td></tr>
    <tr><td style="vertical-align: top;">Untuk Pembayaran</td><td>:</td>
    	<td style="vertical-align: top;">
        <?php 
$c = new Criteria();
$c->add(PaymentJournalPeer::PAYER, $student->getId());
$c->add(PaymentJournalPeer::PAID_AT, $paid_at);
$c->add(PaymentJournalPeer::YEAR, $year);
$c->add(PaymentJournalPeer::TRANSACTION_STATUS_ID, 1);
$c->add(PaymentJournalPeer::ACADEMIC_COST_ID, $ac_cost->getId());
$payments = PaymentJournalPeer::doSelect($c);
?>
        <b><?php 
echo AcademicCostPeer::retrieveByPk($ac_cost->getId())->getAcademicCostComponent()->toString() . ' - Rp. ' . format_number(AcademicCostPeer::retrieveByPk($ac_cost->getId())->getAmount());
?>
</b><br />
        <b><?php 
echo '(';
?>
		<?php 
$i = 0;
foreach ($payments as $payment) {
    ++$i;
    ?>
    		<?php 
    if ($payment->getMonth() == 1) {
        echo __('Januari');
    } elseif ($payment->getMonth() == 2) {
        echo __('Februari');
示例#15
0
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = AcademicCostPeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setCode($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setAmount($arr[$keys[2]]);
     }
     if (array_key_exists($keys[3], $arr)) {
         $this->setPayerTypeId($arr[$keys[3]]);
     }
     if (array_key_exists($keys[4], $arr)) {
         $this->setAcademicCalendarId($arr[$keys[4]]);
     }
     if (array_key_exists($keys[5], $arr)) {
         $this->setAcademicCostComponentId($arr[$keys[5]]);
     }
     if (array_key_exists($keys[6], $arr)) {
         $this->setAcademicProcessId($arr[$keys[6]]);
     }
     if (array_key_exists($keys[7], $arr)) {
         $this->setBankAccountId($arr[$keys[7]]);
     }
     if (array_key_exists($keys[8], $arr)) {
         $this->setClassGroupId($arr[$keys[8]]);
     }
     if (array_key_exists($keys[9], $arr)) {
         $this->setDescription($arr[$keys[9]]);
     }
 }
示例#16
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');
 }
示例#17
0
 public static function doSelectJoinAllExceptPaymentJournal(Criteria $c, $con = null)
 {
     $c = clone $c;
     if ($c->getDbName() == Propel::getDefaultDB()) {
         $c->setDbName(self::DATABASE_NAME);
     }
     PaymentHistoryPeer::addSelectColumns($c);
     $startcol2 = PaymentHistoryPeer::NUM_COLUMNS - PaymentHistoryPeer::NUM_LAZY_LOAD_COLUMNS + 1;
     AcademicCostPeer::addSelectColumns($c);
     $startcol3 = $startcol2 + AcademicCostPeer::NUM_COLUMNS;
     $c->addJoin(PaymentHistoryPeer::ACADEMIC_COST_ID, AcademicCostPeer::ID);
     $rs = BasePeer::doSelect($c, $con);
     $results = array();
     while ($rs->next()) {
         $omClass = PaymentHistoryPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj1 = new $cls();
         $obj1->hydrate($rs);
         $omClass = AcademicCostPeer::getOMClass();
         $cls = Propel::import($omClass);
         $obj2 = new $cls();
         $obj2->hydrate($rs, $startcol2);
         $newObject = true;
         for ($j = 0, $resCount = count($results); $j < $resCount; $j++) {
             $temp_obj1 = $results[$j];
             $temp_obj2 = $temp_obj1->getAcademicCost();
             if ($temp_obj2->getPrimaryKey() === $obj2->getPrimaryKey()) {
                 $newObject = false;
                 $temp_obj2->addPaymentHistory($obj1);
                 break;
             }
         }
         if ($newObject) {
             $obj2->initPaymentHistorys();
             $obj2->addPaymentHistory($obj1);
         }
         $results[] = $obj1;
     }
     return $results;
 }
示例#18
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');
 }
示例#19
0
 public function getAcademicCost($con = null)
 {
     include_once 'lib/model/om/BaseAcademicCostPeer.php';
     if ($this->aAcademicCost === null && $this->academic_cost_id !== null) {
         $this->aAcademicCost = AcademicCostPeer::retrieveByPK($this->academic_cost_id, $con);
     }
     return $this->aAcademicCost;
 }
示例#20
0
 public function executeDelete2()
 {
     $academic_cost = AcademicCostPeer::retrieveByPk($this->getRequestParameter('id'));
     $this->forward404Unless($academic_cost);
     $ref_error = 0;
     foreach ($academic_cost->getRefCountMethods() as $ref) {
         $method = "count" . $ref['affix'];
         $count = $academic_cost->{$method}();
         if ($count > 0) {
             ++$ref_error;
             $this->getRequest()->setError('academic_cost/delete/' . sfInflector::camelize($ref['table']), $count);
         }
     }
     if ($ref_error > 0) {
         $this->getRequest()->setError('academic_cost/delete', '_ERR_DELETE_ (' . $academic_cost->toString() . ' - id:' . $academic_cost->getId() . ')');
     } else {
         $academic_cost->delete();
     }
     return $this->forward('academic_cost', 'list2');
 }