if ($udf->isValid()) { $udf->Save(); $udf->CommitTransaction(); Redirect::Page(URLBuilder::getURL(array('user_id' => $data['user_id'], 'saved_search_id' => $saved_search_id), 'UserDeductionList.php')); break; } } } $udf->FailTransaction(); default: $cf = new CompanyFactory(); if (isset($company_deduction_id) and $company_deduction_id != '') { Debug::Text('Mass User Deduction Edit!', __FILE__, __LINE__, __METHOD__, 10); //Get all employees assigned to this company deduction. $cdlf = new CompanyDeductionListFactory(); $cdlf->getByCompanyIdAndId($current_company->getId(), $company_deduction_id); Debug::Text('Company Deduction Records: ' . $cdlf->getRecordCount(), __FILE__, __LINE__, __METHOD__, 10); if ($cdlf->getRecordCount() > 0) { foreach ($cdlf as $cd_obj) { $province_options = $cf->getOptions('province', $cd_obj->getCountry()); $tmp_district_options = $cf->getOptions('district', $cd_obj->getCountry()); $district_options = array(); if (isset($tmp_district_options[$cd_obj->getProvince()])) { $district_options = $tmp_district_options[$cd_obj->getProvince()]; } unset($tmp_district_options); if (!isset($data['users'])) { $data['users'] = NULL; } $data = array('id' => $cd_obj->getId(), 'company_id' => $cd_obj->getCompany(), 'status_id' => $cd_obj->getStatus(), 'status' => Option::getByKey($cd_obj->getStatus(), $cd_obj->getOptions('status')), 'type_id' => $cd_obj->getType(), 'type' => Option::getByKey($cd_obj->getType(), $cd_obj->getOptions('type')), 'name' => $cd_obj->getName(), 'combined_calculation_id' => $cd_obj->getCombinedCalculationId(), 'calculation_id' => $cd_obj->getCalculation(), 'calculation' => Option::getByKey($cd_obj->getCalculation(), $cd_obj->getOptions('calculation')), 'country_id' => $cd_obj->getCountry(), 'country' => Option::getByKey($cd_obj->getCountry(), $cd_obj->getOptions('country')), 'province_id' => $cd_obj->getProvince(), 'province' => Option::getByKey($cd_obj->getProvince(), $province_options), 'district_id' => $cd_obj->getDistrict(), 'district' => Option::getByKey($cd_obj->getDistrict(), $district_options), 'company_value1' => $cd_obj->getCompanyValue1(), 'company_value2' => $cd_obj->getCompanyValue2(), 'default_user_value1' => $cd_obj->getUserValue1(), 'default_user_value2' => $cd_obj->getUserValue2(), 'default_user_value3' => $cd_obj->getUserValue3(), 'default_user_value4' => $cd_obj->getUserValue4(), 'default_user_value5' => $cd_obj->getUserValue5(), 'default_user_value6' => $cd_obj->getUserValue6(), 'default_user_value7' => $cd_obj->getUserValue7(), 'default_user_value8' => $cd_obj->getUserValue8(), 'default_user_value9' => $cd_obj->getUserValue9(), 'default_user_value10' => $cd_obj->getUserValue10(), 'users' => $data['users']); if ($action != 'submit') {
echo " ERROR: " . $error_arr[0] . "\n"; } } } } else { echo " \t\t\t\tFailed!\n"; $commit_trans = FALSE; $e++; echo " ERROR: Company Deduction Not Found!\n"; } } if ($update_column == FALSE and isset($mapped_row['province_income_tax_deduction_id']) and $mapped_row['province_income_tax_deduction_id'] != '' and isset($mapped_row['province_income_tax_user_value1']) and $mapped_row['province_income_tax_user_value1'] != '') { echo " Importing Provincial/State Income Tax Information..."; $cdlf = new CompanyDeductionListFactory(); if (is_numeric($mapped_row['province_income_tax_deduction_id'])) { $cdlf->getByCompanyIdAndId($mapped_row['company_id'], $mapped_row['province_income_tax_deduction_id']); } else { $cdlf->getByCompanyIdAndName($mapped_row['company_id'], $mapped_row['province_income_tax_deduction_id']); } if ($cdlf->getRecordCount() > 0) { $cd_obj = $cdlf->getCurrent(); $udf = new UserDeductionFactory(); $udf->setUser($user_id); $udf->setCompanyDeduction($cd_obj->getId()); if (isset($mapped_row['province_income_tax_user_value1']) and $mapped_row['province_income_tax_user_value1'] != '') { $udf->setUserValue1(Misc::importCallInputParseFunction('province_income_tax_user_value1', $mapped_row['province_income_tax_user_value1'], $filtered_import_map['province_income_tax_user_value1']['default_value'], $filtered_import_map['province_income_tax_user_value1']['parse_hint'])); } if (isset($mapped_row['province_income_tax_user_value2']) and $mapped_row['province_income_tax_user_value2'] != '') { $udf->setUserValue2(Misc::importCallInputParseFunction('province_income_tax_user_value2', $mapped_row['province_income_tax_user_value2'], $filtered_import_map['province_income_tax_user_value2']['default_value'], $filtered_import_map['province_income_tax_user_value2']['parse_hint'])); } if (isset($mapped_row['province_income_tax_user_value3']) and $mapped_row['province_income_tax_user_value3'] != '') {
$cdf->setUser($data['user_ids']); } else { $cdf->setUser(array()); } if ($cdf->isValid()) { $cdf->Save(TRUE); $cdf->CommitTransaction(); Redirect::Page(URLBuilder::getURL(NULL, 'CompanyDeductionList.php')); break; } } default: if (isset($id)) { BreadCrumb::setCrumb($title); $cdlf = new CompanyDeductionListFactory(); $cdlf->getByCompanyIdAndId($current_company->getId(), $id); foreach ($cdlf as $cd_obj) { //Debug::Arr($station,'Department', __FILE__, __LINE__, __METHOD__,10); //Get all users assigned to this deduction. /* $udlf = new UserDeductionListFactory(); $udlf->getByCompanyIdAndCompanyDeductionId( $current_company->getId(), $cd_obj->getId() ); if ( $udlf->getRecordCount() > 0 ) { Debug::Text('Found users assigned to this deduction!', __FILE__, __LINE__, __METHOD__,10); foreach( $udlf as $ud_obj ) { $user_ids[] = $ud_obj->getUser(); } } else { $user_ids = array(); }
case 'export': case 'display_report': //Debug::setVerbosity(11); Debug::Text('Submit! Action: ' . $action, __FILE__, __LINE__, __METHOD__, 10); //Debug::Arr($filter_data, 'aFilter Data', __FILE__, __LINE__, __METHOD__,10); $ulf = new UserListFactory(); $ulf->getSearchByCompanyIdAndArrayCriteria($current_company->getId(), $filter_data); if ($ulf->getRecordCount() > 0) { //Get total gross pay stub account IDs $cdf = new CompanyDeductionFactory(); $cdf->setCompany($current_company->getId()); $total_gross_psea_ids = $cdf->getExpandedPayStubEntryAccountIDs($cdf->getPayStubEntryAccountLinkObject()->getTotalGross()); //var_dump($total_gross_psea_ids); //Get include/exclude IDs for company deduction. $cdlf = new CompanyDeductionListFactory(); $cdlf->getByCompanyIdAndId($current_company->getId(), $filter_data['company_deduction_ids']); if ($cdlf->getRecordCount() > 0) { $taxable_wages_psea_ids = array(); $tax_withheld_psea_ids = array(); Debug::Text('Found Company Deductions...', __FILE__, __LINE__, __METHOD__, 10); foreach ($cdlf as $cd_obj) { $taxable_wages_psea_ids = array_merge($taxable_wages_psea_ids, (array) $cd_obj->getCombinedIncludeExcludePayStubEntryAccount($cd_obj->getIncludePayStubEntryAccount(), $cd_obj->getExcludePayStubEntryAccount())); $tax_withheld_psea_ids[] = $cd_obj->getPayStubEntryAccount(); } $taxable_wages_psea_ids = array_unique($taxable_wages_psea_ids); $tax_withheld_psea_ids = array_unique($tax_withheld_psea_ids); } //var_dump($taxable_wages_psea_ids); foreach ($ulf as $u_obj) { $filter_data['user_ids'][] = $u_obj->getId(); }