Module: EmployeeTimesheetsProcedures

Extended by:
ActiveSupport::Concern
Included in:
EmployeeTimesheet
Defined in:
app/models/concerns/employee_timesheets_procedures.rb

Instance Method Summary collapse

Instance Method Details

#insert_or_update_procedure!(erp_user_name:) ⇒ Object

Raises:

  • (ActiveRecord::RecordInvalid)


175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
# File 'app/models/concerns/employee_timesheets_procedures.rb', line 175

def insert_or_update_procedure!(
  erp_user_name:
)
  raise ActiveRecord::RecordInvalid.new(self) unless valid?

  result = ActiveRecord::Base.execute_procedure(
    :pr_insert_update_employee_time_sheet,
    employee_time_sheet_id,
    employee_id,
    employee_role_id,
    payroll_period_id,
    transaction_date,
    hourly_rate,
    hours_worked,
    payroll_transaction_detail_id,
    erp_user_name
  )[0]

  self.employee_time_sheet_id = result['employee_time_sheet_id']
  reload
end