$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') { $user_ids = $cd_obj->getUser();
function createUserDeduction($company_id, $user_id) { $fail_transaction = FALSE; $cdlf = new CompanyDeductionListFactory(); $cdlf->getByCompanyId($company_id); if ($cdlf->getRecordCount() > 0) { foreach ($cdlf as $cd_obj) { Debug::Text('Creating User Deduction: User Id:' . $user_id . ' Company Deduction: ' . $cd_obj->getId(), __FILE__, __LINE__, __METHOD__, 10); $udf = new UserDeductionFactory(); $udf->setUser($user_id); $udf->setCompanyDeduction($cd_obj->getId()); if ($udf->isValid()) { if ($udf->Save() === FALSE) { Debug::Text('User Deductions... Save Failed!', __FILE__, __LINE__, __METHOD__, 10); $fail_transaction = TRUE; } } else { Debug::Text('User Deductions... isValid Failed!', __FILE__, __LINE__, __METHOD__, 10); $fail_transaction = TRUE; } } if ($fail_transaction == FALSE) { Debug::Text('User Deductions Created!', __FILE__, __LINE__, __METHOD__, 10); return TRUE; } } else { Debug::Text('No Company Deductions Found!', __FILE__, __LINE__, __METHOD__, 10); } Debug::Text('Failed Creating User Deductions!', __FILE__, __LINE__, __METHOD__, 10); return FALSE; }
} $report_columns = $static_columns; $pself = new PayStubEntryListFactory(); $pself->getReportByCompanyIdAndUserIdAndPayPeriodId($current_company->getId(), $filter_data['user_ids'], $pay_period_ids); foreach ($pself as $pse_obj) { $user_id = $pse_obj->getColumn('user_id'); $pay_stub_entry_name_id = $pse_obj->getColumn('pay_stub_entry_name_id'); $raw_rows[$user_id][$pay_stub_entry_name_id] = $pse_obj->getColumn('amount'); } //var_dump($raw_rows); // //Figure out state/locality wages/taxes. // $cdlf = new CompanyDeductionListFactory(); $cdlf->getByCompanyIdAndStatusIdAndTypeId($current_company->getId(), array(10, 20), 10); if ($cdlf->getRecordCount() > 0) { foreach ($cdlf as $cd_obj) { $tax_deductions[] = array('id' => $cd_obj->getId(), 'province' => $cd_obj->getProvince(), 'district' => $cd_obj->getDistrictName(), 'pay_stub_entry_account_id' => $cd_obj->getPayStubEntryAccount(), 'include' => $cd_obj->getIncludePayStubEntryAccount(), 'exclude' => $cd_obj->getExcludePayStubEntryAccount(), 'user_ids' => $cd_obj->getUser(), 'user_value1' => $cd_obj->getUserValue1()); } } if (isset($raw_rows)) { $ulf = new UserListFactory(); $x = 0; foreach ($raw_rows as $user_id => $raw_row) { $user_obj = $ulf->getById($user_id)->getCurrent(); $tmp_rows[$x]['user_id'] = $user_id; $tmp_rows[$x]['full_name'] = $user_obj->getFullName(TRUE); //$tmp_rows[$x]['province'] = Option::getByKey($user_obj->getProvince(), $user_obj->getOptions('province') ); $tmp_rows[$x]['province'] = $user_obj->getProvince(); $tmp_rows[$x]['ssn'] = $user_obj->getSIN(); foreach ($column_ps_entry_name_map as $column_key => $ps_entry_map) {