$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;
 }
Exemple #3
0
 }
 $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) {