$y = $m >= $class->starting_month->val ? $class->session->val : $class->session->val + 1; $d = $student->last_date_for_fee_submission->val; $feeVoucher->month->val = $m; $feeVoucher->year->val = $y; $feeVoucher->last_date->val = "{$y}-{$m}-{$d}"; $feeVoucher->issue_date->val = "{$y}-{$m}-01"; if (!$feeVoucher->dbSave()) { $html->echoError("Fee Voucher not already saved. Failed to create a new one."); } } // create fee voucher detail $feeDetail = new Fee_voucher_datail(); $feeDetail->fee_voucher_id->val = $feeVoucher->id->val; $feeDetail->fee_category_id->val = $_POST['category']; $feeDetail->amount->val = $_POST['amount']; if (!$feeDetail->dbSave()) { $html->echoError("Failed to add fee detail. Please try later."); } } } $session->setMessage("Fee Detail added successfully."); reloadCurrentPage(); } } if ($students) { echo "<form method='post' class='form-horizontal'>"; echo "<div class='form-group'>"; echo "<label class='col-sm-2' for='category'>Choose a Fee Category</label>"; echo "<div class='col-sm-4'><select class='form-control' id='category' name='category'>"; echo $html->showOptionsForDbTable('category', 'id', 'config_fee_categories'); echo "</select></div>";
/** * @return bool */ public function autoInsertFee_voucher_datail() { if ($this->getChildRecs('Fee_voucher_datail')) { return true; } // get default installments $student = new Student($this->student_id->val); $class = new Clas($student->class_id->val); $defInstallments = Default_installment::findByCondition("config_class_id = " . $class->config()->id->val . " AND month = '" . $this->month->val . "'"); if (!$defInstallments) { return true; } foreach ($defInstallments as $dInsId => $defIns) { if ($defIns instanceof Default_installment) { } $feeVoucherDetail = new Fee_voucher_datail(); $feeVoucherDetail->fee_voucher_id->val = $this->id->val; // if the student has a special discount, default installments will not apply to them: if ($student->annual_dues->val < $class->config()->annual_dues->val) { global $db; $feeVoucherDetail->fee_category_id->val = $db->gfv("id", "config_fee_categories", "category = 'Tuition Fee'"); $feeVoucherDetail->amount->val = $student->annual_dues->val / count($class->config()->defInstallments()); //$feeVoucherDetail->pr("this is being inserted"); } else { $feeVoucherDetail->fee_category_id->val = $defIns->fee_category_id->val; $feeVoucherDetail->amount->val = $defIns->amount->val; //$feeVoucherDetail->pr("default being inserted"); } if (!$feeVoucherDetail->dbSave()) { //$feeVoucherDetail->pr(); } } return true; }