module ErpBaseErpSvcs::Extensions::ActiveRecord::HasPartyRoles::InstanceMethods
Public Instance Methods
add_party_with_role(party, role_type)
click to toggle source
# File lib/erp_base_erp_svcs/extensions/active_record/has_party_roles.rb, line 42 def add_party_with_role(party, role_type) entity_party_role = EntityPartyRole.where(party_id: party, role_type_id: role_type, entity_record_id: self.id, entity_record_type: self.class.name).first unless entity_party_role entity_party_role = EntityPartyRole.create(party: party, role_type: role_type, entity_record: self) end entity_party_role end
find_parties_by_role(role_type)
click to toggle source
# File lib/erp_base_erp_svcs/extensions/active_record/has_party_roles.rb, line 68 def find_parties_by_role(role_type) if role_type.is_a?(String) role_type = RoleType.iid(role_type) end entity_party_roles.where(role_type_id: role_type.id).collect(&:party) end
find_party_with_role(role_type)
click to toggle source
# File lib/erp_base_erp_svcs/extensions/active_record/has_party_roles.rb, line 76 def find_party_with_role(role_type) if role_type.is_a?(String) role_type = RoleType.iid(role_type) end entity_party_role = entity_party_roles.where(role_type_id: role_type.id).first if entity_party_role entity_party_role.party else nil end end
remove_party_with_role(party, role_type)
click to toggle source
# File lib/erp_base_erp_svcs/extensions/active_record/has_party_roles.rb, line 57 def remove_party_with_role(party, role_type) entity_party_role = EntityPartyRole.where(party_id: party, role_type_id: role_type, entity_record_id: self.id, entity_record_type: self.class.name).first if entity_party_role entity_party_role.destroy end end