function selectWithSystemData($code = NULL, $desc = NULL, $type = NULL, $system_data = NULL, $page = 1, $maxrec = 1, $orderkey = EBPLS_TAX_FEE_CODE, $is_desc = true) { if ($code != NULL && $code != "") { $strWhere[EBPLS_TAX_FEE_CODE] = $code; } if ($desc != NULL && $desc != "") { $strWhere[EBPLS_TAX_FEE_DESC] = array("like", "{$desc}%"); } if ($type != NULL) { if (is_array($type)) { $strWhere[EBPLS_TAX_FEE_TYPE] = array("IN", " ( '" . join("','", $type) . "')"); } else { $strWhere[EBPLS_TAX_FEE_TYPE] = $type; } } if (!is_null($system_data) && ($system_data == "0" || $system_data == "1")) { $strWhere[EBPLS_TAX_SYSTEMDATA] = $system_data; } // select all columns $strValues[] = "*"; if ($orderkey != NULL) { $strOrder[$orderkey] = $orderkey; } else { $strOrder[$orderkey] = EBPLS_TAX_FEE_CODE; } $result = ebpls_select_data_bypage($this->m_dbLink, EBPLS_TAX_FEE_TABLE, $strValues, $strWhere, NULL, $strOrder, $is_desc ? "DESC" : "ASC", $page, $maxrec); if (!is_array($result) && $result < 0) { $this->setError($result, get_db_error()); return $result; } else { for ($i = 0; $i < count($result["result"]); $i++) { $records[$i] = new EBPLTaxFeeSysRef($this->m_dbLink, false); $clsFormula = new TaxFeeFormula($this->m_dbLink, false); $ret = $clsFormula->view($result["result"][$i][EBPLS_TAX_FORMULA_ID]); if ($ret > 0) { $result["result"][$i][EBPLS_TAX_FORMULA] = unserialize($clsFormula->getData(EBPLS_FORMULAS_FORMULA_CLASS)); if (!$result["result"][$i][EBPLS_TAX_FORMULA]) { $this->debug("<HR>Error loading formula : " . $result["result"][$i][EBPLS_TAX_FORMULA_ID] . "!<HR>"); $this->setError(-2, "Invalid formula on unserialize : " . $result["result"][$i][EBPLS_TAX_FORMULA_ID] . "!"); $this->debug("Invalid formula on unserialize : " . $result["result"][$i][EBPLS_TAX_FORMULA_ID] . "!"); return -2; } $result["result"][$i][EBPLS_TAX_FORMULA]->setData(NULL, $clsFormula->getData()); $records[$i]->setData(NULL, $result["result"][$i]); } else { echo 'ID: ' . $result["result"][$i][EBPLS_TAX_FORMULA_ID]; return $ret; } } $result["result"] = $records; return $result; } }
/** * Create default requiremetns to ebpls_transaction_fees and ebpls_transaction_requirements table * * **/ function create_permit_requirements($dbLink, $trans_id, $permit_id, $permit_type, $creator, $permit_req_type, $trans_type) { if ($permit_req_type == "FEE" || $permit_req_type == "TAX") { require_once "ebpls-php-lib/ebpls.taxfeeformula.class.php"; if ($permit_req_type == "FEE") { $sql .= " SELECT b.tax_fee_code, b.tax_fee_desc,b.tax_account_code, b.tax_formula_id "; $sql .= " FROM ebpls_permit_fee_requirements AS a INNER JOIN ebpls_tax_fee_table AS b on a.tax_fee_code = b.tax_fee_code WHERE a.permit_type = '{$permit_type}' and a.pfr_trans_type = '{$trans_type}' and b.tax_fee_type = 'FEE'"; } else { if ($permit_req_type == "TAX") { $sql .= " SELECT b.tax_fee_code, b.tax_fee_desc,b.tax_account_code, b.tax_formula_id "; $sql .= " FROM ebpls_permit_tax_requirements AS a INNER JOIN ebpls_tax_fee_table AS b on a.tax_fee_code = b.tax_fee_code WHERE a.permit_type = '{$permit_type}' and a.ptr_trans_type = '{$trans_type}' and b.tax_fee_type = 'TAX'"; } } ebpls_db_funcs_debug("create_permit_requirements : {$sql}"); $result = mysql_query($sql, $dbLink); if ($result) { $i = 0; while ($row = mysql_fetch_array($result)) { $clsTaxFormula = new TaxFeeFormula($dbLink, false); $clsTaxFormula->view($row["tax_formula_id"]); $clsFormula = unserialize($clsTaxFormula->getData(EBPLS_FORMULAS_FORMULA_CLASS)); if ($clsFormula) { $tax_total_amount_due = $clsFormula->computeTax(); if ($tax_total_amount_due >= 0) { if ($tax_total_amount_due == "" || $tax_total_amount_due == NULL) { $tax_total_amount_due = 0; } if ($permit_req_type == "FEE") { $sql = "INSERT INTO ebpls_transaction_payables ( trans_id, permit_id,permit_type, tax_fee_type, tax_fee_code, tax_fee_desc, tax_account_code, tax_business_nature_code, tax_total_amount_due, ts_create, last_updated_by )"; $sql .= " values({$trans_id}, {$permit_id}, '{$permit_type}', 'FEE','" . $row["tax_fee_code"] . "','" . $row["tax_fee_desc"] . "','" . $row["tax_account_code"] . "','NONE', {$tax_total_amount_due}, now(), '{$creator}')"; } else { $sql = "INSERT INTO ebpls_transaction_payables ( trans_id, permit_id,permit_type, tax_fee_type, tax_fee_code, tax_business_nature_code, tax_fee_desc, tax_account_code, tax_total_amount_due, ts_create, last_updated_by )"; $sql .= " values({$trans_id}, {$permit_id}, '{$permit_type}', 'TAX','" . $row["tax_fee_code"] . "','" . $row["tax_business_nature_code"] . "','" . $row["tax_fee_desc"] . "','" . $row["tax_account_code"] . "', {$tax_total_amount_due}, now(), '{$creator}')"; } ebpls_db_funcs_debug("create_permit_requirements insert : {$sql}"); $rs = mysql_query($sql, $dbLink); $i++; } else { set_db_error(NULL, "Invalid formula for tax : " . $row["tax_formula_id"]); return -5; } } else { set_db_error(NULL, "Invalid formula for tax : " . $row["tax_formula_id"]); return -5; } } return $i; } else { set_db_error($dbLink); return -1; } } else { if ($permit_req_type == "APP") { $sql = "INSERT INTO ebpls_transaction_requirements (trans_id,permit_id,permit_type,requirement_code,status,ts_create, last_updated_by )"; $sql .= " SELECT {$trans_id},{$permit_id},'{$permit_type}',requirement_code,'PENDING',now(),'{$creator}' FROM ebpls_permit_app_requirements WHERE permit_type = '{$permit_type}' and par_trans_type = '{$trans_type}'"; ebpls_db_funcs_debug("create_permit_requirements : {$sql}"); $result = mysql_query($sql, $dbLink); if ($result) { return mysql_affected_rows($dbLink); } else { set_db_error($dbLink); return -1; } } else { set_db_error(NULL, "Invalid param {$permit_req_type} on function create_permit_requirements ( {$dbLink}, {$trans_id}, {$permit_id}, {$permit_type}, {$creator}, {$permit_req_type} )."); return -1; } } }