Skip to content

Instantly share code, notes, and snippets.

@rsslldnphy
Created May 24, 2013 20:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save rsslldnphy/5646368 to your computer and use it in GitHub Desktop.
Save rsslldnphy/5646368 to your computer and use it in GitHub Desktop.
class DCode
def initialize(assessment, user)
@assessment = assessment
@user = user
end
def code
"#{site.name[0,2]}-#{department_code}".upcase
end
private
def department_code
"#{department.name[0,2]}-#{department.id.to_s}-" unless department.nil?
end
def department
@department ||= assessment.department
end
def site
assessment.site ||= user.site
end
attr_reader :assessment, :user
end
class NCode
def initialize(assessment, user)
@assessment = assessment
@user = user
end
def code
data.nil? ? "001" : "%03d" % (data.code_num.to_i + 1)
end
private
def data
@data ||= company.risk_assessments.where(["code_dept = ?", assessment.code_dept]).last
end
def company
user.company
end
attr_reader :assessment, :user
end
def n_code
NCode.new(@risk_assessment, current_user).code
end
def d_code
DCode.new(@risk_assessment, current_user).code
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment