示例#1
0
 public function loansaddAction()
 {
     $this->view->title = $this->view->translate("New loan");
     $loanForm = new Loans_Form_Loan();
     $this->view->form = $loanForm;
     $systemDate = $this->view->dateconvert->phpnormalformat(date('Y-m-d'));
     $this->view->form->begindate->setValue($systemDate);
     $product = new Loans_Model_Product();
     $product = $product->fetchAllProductNames();
     foreach ($product as $product) {
         $loanForm->product_id->addMultiOption($product['id'], $product['name']);
     }
     $membertype_id1 = $this->view->adm->viewRecord("ourbank_master_membertypes", "id", "DESC");
     foreach ($membertype_id1 as $membertype_id) {
         $loanForm->applicableto->addMultiOption($membertype_id['id'], $membertype_id['type']);
     }
     $loan = new Loans_Model_Loan();
     //         $glsubcode = $loan->fetchAllglsubcode('3');//ledger id for Assets
     //         foreach($glsubcode as $glsubcode) {
     //             $loanForm->glsubcode_id->addMultiOption($glsubcode['id'],$glsubcode['header']."[".$glsubcode['glsubcode']."]");
     //         }
     //         $glsubcode = $loan->fetchAllglsubcode('2');//ledger id for income 2
     //         foreach($glsubcode as $glsubcode) {
     //             $loanForm->fee_glsubcode_id->addMultiOption($glsubcode['id'],$glsubcode['header']."[".$glsubcode['glsubcode']."]");
     //             $loanForm->interest_glsubcode_id->addMultiOption($glsubcode['id'],$glsubcode['header']."[".$glsubcode['glsubcode']."]");
     //         }
     $interesttype1 = $this->view->adm->viewRecord("ourbank_master_interesttypes", "id", "ASC");
     foreach ($interesttype1 as $interesttypes) {
         $loanForm->interesttype_id->addMultiOption($interesttypes['id'], $interesttypes['description']);
     }
     if ($this->_request->isPost() && $this->_request->getPost('Submit')) {
         $formData = $this->_request->getPost();
         if ($this->_request->isPost()) {
             $formData = $this->_request->getPost();
             if ($loanForm->isValid($formData)) {
                 $begindate1 = $this->view->dateconvert->phpmysqlformat($this->_request->getParam('begindate'));
                 $closedate1 = $this->view->dateconvert->phpmysqlformat($this->_request->getParam('closedate'));
                 $begindate = $this->_request->getParam('begindate');
                 $closedate = $this->_request->getParam('closedate');
                 $minmumloanamount = $this->_request->getParam('minmumloanamount');
                 $maximunloanamount = $this->_request->getParam('maximunloanamount');
                 $minimumfrequency = $this->_request->getParam('minimumfrequency');
                 $maximumfrequency = $this->_request->getParam('maximumfrequency');
                 if ($begindate1 > $closedate1) {
                     $this->view->datesinfo = "Closed date must be greater than begining date" . -$begindate;
                 } elseif ($minmumloanamount > $maximunloanamount) {
                     $this->view->amounts = "Max amount must be greater than min amount" . -$minmumloanamount;
                 } elseif ($minimumfrequency > $maximumfrequency) {
                     $this->view->freequency = "Maximum frequency must be greater than min frequency" . -$minimumfrequency;
                 } else {
                     $productdetails = new Loans_Model_Loan();
                     $headerCon = "A";
                     $glsubcode = $loan->getGlCode('Loans');
                     $glcode = $loan->getGlCodeid('Loans');
                     $glcodeexist = $loan->getGlCodeexist('Loans');
                     $glco = substr($glcodeexist, 1, 2);
                     if ($glsubcode) {
                         $first = substr($glsubcode, 0, 3);
                         $existcode = substr($glsubcode, 3, 3);
                         $existcode++;
                         $last = str_pad($existcode, 3, 0, STR_PAD_LEFT);
                         $newglsubcode = $first . $last;
                     } else {
                         $glcodeId = $headerCon . $glco . "001";
                         $newglsubcode = $glcodeId;
                     }
                     $date = date("y/m/d H:i:s");
                     $glsubcodeid = $this->view->adm->addRecord('ourbank_glsubcode', array('id' => '', 'glsubcode' => $newglsubcode, 'glcode_id' => $glcode, 'subledger_id' => $glcode, 'header' => $formData['offerproductname'], 'description' => $formData['offerproduct_description'], 'created_date' => $date, 'created_by' => $this->view->createdby));
                     $result = $productdetails->addProductDetails($formData, $glsubcodeid);
                     $offerproduct_id = Zend_Db_Table::getDefaultAdapter()->lastInsertId('ourbank_productsoffer', 'id');
                     $productloandetails = new Loans_Model_Productsloan();
                     $result = $productloandetails->Addproductsloan($formData, $offerproduct_id);
                     $From = $this->_request->getParam('from');
                     $To = $this->_request->getParam('to');
                     $Rate = $this->_request->getParam('rate');
                     $period_ofrange_description = $From . -$To;
                     $interestLoans = new Loans_Model_Interest();
                     $result = $interestLoans->Addinterestdetails($From, $To, $Rate, $period_ofrange_description, $offerproduct_id);
                     $memberCount = $this->_request->getParam('memberCount');
                     for ($i = 1; $i <= $memberCount; $i++) {
                         $From = $this->_request->getParam('from' . $i);
                         $To = $this->_request->getParam('to' . $i);
                         $Rate = $this->_request->getParam('rate' . $i);
                         $period_ofrange_description = $From . -$To;
                         if ($From) {
                             $fMember = $productdetails->insertRow5('ourbank_interest_periods', array('id' => '', 'period_ofrange_monthfrom' => $From, 'period_ofrange_monthto' => $To, 'period_ofrange_description' => $period_ofrange_description, 'offerproduct_id' => $offerproduct_id, 'Interest' => $Rate, 'intereststatus_id' => 3));
                         }
                     }
                     $this->_redirect('/loans/index');
                 }
             }
         }
     }
 }