Last active
October 17, 2017 17:43
-
-
Save shawndeprey/c966cf909c7058df6d712a41a5906675 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Project.destroy_all | |
ProjectReport.destroy_all | |
ReportModule.destroy_all | |
ProjectReportCompany.destroy_all | |
ProjectReportGroup.destroy_all | |
ProjectReportGroupCompany.destroy_all | |
ReportModuleSection.destroy_all | |
SectionCompany.destroy_all | |
SectionGroup.destroy_all | |
ProjectUser.destroy_all | |
SectionUser.destroy_all | |
logo_url = "https://ryse-avatars.s3.amazonaws.com/networks/logo_images/000/000/265/thumb/data?1499881814" | |
background_image_url = "http://www.cashshield.com/wordpress/wp-content/uploads/2016/12/04WVEU6MF6.jpg" | |
project = Project.create(name: 'name', description: 'description', user: User.last, logo: ImageHelper.prepare_image_url_for_paperclip(logo_url), background_image: ImageHelper.prepare_image_url_for_paperclip(background_image_url), brand_color: "#152A7B") | |
pr = ProjectReport.create(project_id: project.id) | |
rm = ReportModule.create(project_report_id: pr.id) | |
# Add companies | |
prcs = [] | |
Company.order("RANDOM()").limit(30).pluck(:id).each do |c_id| | |
prcs << ProjectReportCompany.create(company_id: c_id, project_report_id: pr.id) | |
end | |
# Add groups | |
prgs = [] | |
5.times do | |
prg = ProjectReportGroup.create(name: Faker::Company.bs, description: Faker::Lorem.paragraph(2), project_report_id: pr.id) | |
prgs << prg | |
# Add companies to groups | |
prcs.sample(6).each do |prc| | |
ProjectReportGroupCompany.create(project_report_company: prc, project_report_group: prg) | |
end | |
end | |
# Add sections | |
rms_title = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_TITLE) | |
rms_intro = ReportModuleSection.create( | |
report_module_id: rm.id, section_type: SectionHelper::TYPE_INTRODUCTION, | |
custom_data: { short_intro: 'short introduction', title: 'intro title', full_intro: 'full introduction' }.to_json | |
) | |
rms_toc = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_TABLE_OF_CONTENTS) | |
rms_company = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_COMPANY_PROFILE) | |
rms_additional = ReportModuleSection.create( | |
report_module_id: rm.id, section_type: SectionHelper::TYPE_ADDITIONAL_COMPANY_INFO, | |
custom_data: [{ title: 'custom field title', content: 'custom field content' }].to_json | |
) | |
prc = prcs.sample(1).first | |
override_data = {use_case: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempor pellentesque felis, vitae porta neque sollicitudin at. Vestibulum maximus nec massa a posuere. Aenean lectus neque, pharetra sit amet magna at, venenatis blandit ligula. Vestibulum ipsum dui, feugiat et ligula eget, suscipit euismod lectus. Suspendisse nec velit vitae tellus posuere accumsan. Cras vel iaculis ex, vel aliquet mi. Aliquam vitae euismod ante. Nullam ex elit, dapibus nec sem ac, elementum tempor nulla.\nMauris efficitur felis eros, facilisis molestie massa volutpat egestas. Ut vitae neque laoreet, volutpat augue ac, condimentum arcu. Sed tempus vehicula risus sit amet laoreet. Suspendisse sed eleifend augue. Vestibulum vitae tincidunt urna. Cras ornare sed urna ut sagittis. In feugiat sem non posuere tempor. Morbi quis porttitor arcu.\nVestibulum congue ex a imperdiet maximus. Phasellus placerat rhoncus dolor, vel elementum turpis tincidunt eu. Vestibulum finibus placerat semper. Maecenas sed ante risus. Vivamus nisi tortor, consequat sit amet lectus et, mollis ultricies ligula. Quisque molestie, diam vel pulvinar scelerisque, nunc erat porta purus, id gravida felis ligula eu turpis. Integer a tellus nisl.\nVestibulum ac nisl augue. Curabitur et magna ut lacus ultricies maximus. Fusce convallis interdum tellus, vitae finibus diam suscipit fringilla. Vestibulum finibus vitae eros eget malesuada. Pellentesque euismod leo quis diam interdum vestibulum. Integer consectetur, libero ac tempor vehicula, justo est laoreet augue, sagittis volutpat neque nibh sit amet libero. Etiam vel gravida augue, mattis rutrum nisl. Sed ut mauris lacus. Ut consectetur dolor molestie, rhoncus libero vel, mollis sapien. Integer at ligula quis lacus luctus sollicitudin. In hac habitasse platea dictumst. Praesent ultrices efficitur nunc, in molestie justo. Mauris venenatis quis lacus et feugiat. Phasellus venenatis justo vel consectetur sodales. Sed viverra sed dui sit amet porta.\nFusce vitae vehicula nulla, at placerat tellus. Aliquam accumsan libero at condimentum molestie. Suspendisse eu blandit odio, at lobortis tellus. Praesent convallis, nulla ac blandit lacinia, est lorem scelerisque leo, at ornare tortor enim quis diam. Duis pellentesque condimentum imperdiet. Etiam a sapien turpis. Phasellus in nisi nec velit placerat fringilla. Praesent finibus sapien vel velit dapibus, ut mollis felis pharetra. Vestibulum eget velit sit amet velit egestas mattis.\nLorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce tempor pellentesque felis, vitae porta neque sollicitudin at. Vestibulum maximus nec massa a posuere. Aenean lectus neque, pharetra sit amet magna at, venenatis blandit ligula. Vestibulum ipsum dui, feugiat et ligula eget, suscipit euismod lectus. Suspendisse nec velit vitae tellus posuere accumsan. Cras vel iaculis ex, vel aliquet mi. Aliquam vitae euismod ante. Nullam ex elit, dapibus nec sem ac, elementum tempor nulla.\nMauris efficitur felis eros, facilisis molestie massa volutpat egestas. Ut vitae neque laoreet, volutpat augue ac, condimentum arcu. Sed tempus vehicula risus sit amet laoreet. Suspendisse sed eleifend augue. Vestibulum vitae tincidunt urna. Cras ornare sed urna ut sagittis. In feugiat sem non posuere tempor. Morbi quis porttitor arcu.\nVestibulum congue ex a imperdiet maximus. Phasellus placerat rhoncus dolor, vel elementum turpis tincidunt eu. Vestibulum finibus placerat semper. Maecenas sed ante risus. Vivamus nisi tortor, consequat sit amet lectus et, mollis ultricies ligula. Quisque molestie, diam vel pulvinar scelerisque, nunc erat porta purus, id gravida felis ligula eu turpis. Integer a tellus nisl.\nVestibulum ac nisl augue. Curabitur et magna ut lacus ultricies maximus. Fusce convallis interdum tellus, vitae finibus diam suscipit fringilla. Vestibulum finibus vitae eros eget malesuada. Pellentesque euismod leo quis diam interdum vestibulum. Integer consectetur, libero ac tempor vehicula, justo est laoreet augue, sagittis volutpat neque nibh sit amet libero. Etiam vel gravida augue, mattis rutrum nisl. Sed ut mauris lacus. Ut consectetur dolor molestie, rhoncus libero vel, mollis sapien. Integer at ligula quis lacus luctus sollicitudin. In hac habitasse platea dictumst. Praesent ultrices efficitur nunc, in molestie justo. Mauris venenatis quis lacus et feugiat. Phasellus venenatis justo vel consectetur sodales. Sed viverra sed dui sit amet porta.\nFusce vitae vehicula nulla, at placerat tellus. Aliquam accumsan libero at condimentum molestie. Suspendisse eu blandit odio, at lobortis tellus. Praesent convallis, nulla ac blandit lacinia, est lorem scelerisque leo, at ornare tortor enim quis diam. Duis pellentesque condimentum imperdiet. Etiam a sapien turpis. Phasellus in nisi nec velit placerat fringilla. Praesent finibus sapien vel velit dapibus, ut mollis felis pharetra. Vestibulum eget velit sit amet velit egestas mattis.'} | |
SectionCompany.create(report_module_section_id: rms_company.id, project_report_company: prc, data_override: override_data.to_json) | |
SectionCompany.create(report_module_section_id: rms_additional.id, project_report_company: prc) | |
rms_sectors = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_SECTOR_GRID) | |
prgs.each do |prg| | |
SectionGroup.create(report_module_section_id: rms_sectors.id, project_report_group: prg, project_report_group_company_id_string: prg.project_report_group_companies.pluck(:id).join(' ')) | |
end | |
rms_sector = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_SECTOR_COMPANY_GRID) | |
SectionGroup.create(report_module_section_id: rms_sector.id, project_report_group: prgs[0], project_report_group_company_id_string: nil) # if no project_report_group_company_id_string is specified all companies in the group will be used in the generation of the section | |
rms_sector = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_SECTOR_OVERVIEW, custom_data: { maturity: 'Emerging', maturity_details: 'About 3 percent of adults in the US have used a service like Blue Apron or Plated in the last year, finds a 2016 NPD study. These services are now a $400 million market that\'s projected to increase tenfold in the next five years, according to Technomic.', use_case: 'In addition to serving as a destination for online retail, brickandmortar.com is also a key source of preCommerce - shoppers research their future purchases online before going to the store.' }.to_json) | |
SectionGroup.create(report_module_section_id: rms_sector.id, project_report_group: prgs[0], project_report_group_company_id_string: prgs[0].project_report_group_companies.pluck(:id).join(' '), ) | |
rms_close = ReportModuleSection.create(report_module_id: rm.id, section_type: SectionHelper::TYPE_CLOSE) | |
User.order("RANDOM()").limit(10).pluck(:id).each do |u_id| | |
pu = ProjectUser.create(user_id: u_id, project_id: pr.id) | |
SectionUser.create(report_module_section_id: rms_close.id, project_user: pu) | |
end | |
SectionHelper.generate_default_section_order!(rm) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment