Exemplo n.º 1
0
 $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();
     Debug::Text('Assigned Users: ' . count($user_ids), __FILE__, __LINE__, __METHOD__, 10);
     if (is_array($user_ids) and count($user_ids) > 0) {
         //Get User deduction data for each user.
         $udlf = new UserDeductionListFactory();
         $udlf->getByUserIdAndCompanyDeductionId($user_ids, $cd_obj->getId());
         if ($udlf->getRecordCount() > 0) {
             //Get deduction data for each user.
             //When ever we add/subtract users to/from a company dedution, the user deduction rows are handled then.
             //So we don't need to worry about new users at all here.
             foreach ($udlf as $ud_obj) {
                 //Use Company Deduction values as default.
                 if ($ud_obj->getUserValue1() === FALSE) {
                     $user_value1 = $cd_obj->getUserValue1();
                 } else {
                     $user_value1 = $ud_obj->getUserValue1();
                 }
                 if ($ud_obj->getUserValue2() === FALSE) {
                     $user_value2 = $cd_obj->getUserValue2();
                 } else {
                     $user_value2 = $ud_obj->getUserValue2();