diff --git a/app/controllers/v1/user_progresses_controller.rb b/app/controllers/v1/user_progresses_controller.rb new file mode 100644 index 0000000000000000000000000000000000000000..9c5473e31d5d668181590fb3a43bf89f5818c191 --- /dev/null +++ b/app/controllers/v1/user_progresses_controller.rb @@ -0,0 +1,34 @@ +class V1::UserProgressesController < ApplicationController + include ::DeletedObjectsController + include ::Paginator + + def index + progresses = Progress.joins("INNER JOIN requirements ON progresses.requirement_id = requirements.id") + .select("requirements.description, requirements.goal, progresses.user_id, progresses.requirement_id, progresses.counter, progresses.created_at, progresses.updated_at") + .where("counter < goal AND progresses.user_id = ?", params["user_id"]) + + if (progresses.length < 4) + all_progresses = Requirement.select("*").where("id IN (1,2,13)") + + else + all_progresses = [] + descriptions = [] + + last_string = "inicio" + + progresses.all.each do |p| + + if (!p.requirement.description.last(5).include? last_string.last(5)) + all_progresses.append(p) + end + + last_string = p.requirement.description + end + end + + render json: all_progresses + end + + + +end \ No newline at end of file diff --git a/config/routes.rb b/config/routes.rb index a58747c8ab92da4bc47d19503dd073837e9ec5c2..3261438547e8cdfbf002189f5599d64dea45d3b6 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -247,5 +247,6 @@ Rails.application.routes.draw do get 'submissions/user_submissions/:user_id', to: 'submissions#user_submissions' get 'submissions/all_users_submissions/:user_id', to: 'submissions#all_users_submissions' get 'learning_objects_complaints/queue_user/:user_id', to: 'learning_objects_complaints#queue_user' + get 'user_progresses/:user_id', to: 'user_progresses#index' end end