| 
							
								 | 
							
							#coding=utf-8
 | 
						
						
						
						
							 | 
							
								 | 
							
							module Mobile
 | 
						
						
						
						
							 | 
							
								 | 
							
							  module Apis
 | 
						
						
						
						
							 | 
							
								 | 
							
							    class Comments < Grape::API
 | 
						
						
						
						
							 | 
							
								 | 
							
							      include ApplicationHelper
 | 
						
						
						
						
							 | 
							
								 | 
							
							      resource :comments do
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc '课程通知评论'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :comments, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        post ':id' do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs_params = {
 | 
						
						
						
						
							 | 
							
								 | 
							
							              id: params[:id],
 | 
						
						
						
						
							 | 
							
								 | 
							
							              comment: params.reject{|k,v| [:id].include?(k)}}
 | 
						
						
						
						
							 | 
							
								 | 
							
							          comments = cs.news_comments cs_params,current_user
 | 
						
						
						
						
							 | 
							
								 | 
							
							          raise "create comments failed #{comments.errors.full_messages}" if comments.new_record?
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :data, comments, with: Mobile::Entities::Comment
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc '作业留言(教师布置的作业)'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :message,type: String, desc: '留言'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          #optional :reference_content, type: String ,desc: '引用的内容'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          #optional :reference_user_id, type: Integer,desc: '被引用的人'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        post ':id/create_homework_message' do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs_params = {
 | 
						
						
						
						
							 | 
							
								 | 
							
							              id: params[:id],
 | 
						
						
						
						
							 | 
							
								 | 
							
							              token: params[:token],
 | 
						
						
						
						
							 | 
							
								 | 
							
							              reference_content: params[:reference_content],
 | 
						
						
						
						
							 | 
							
								 | 
							
							              bid_message: params.reject{|k,v| [:id,:token,:reference_content].include?(k)}}
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          message = cs.homework_message cs_params,current_user
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :data, message, with: Mobile::Entities::Jours
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc '课程留言'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :course_message,type: String, desc: '留言'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        post ':id/leave_course_message' do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs_params = {
 | 
						
						
						
						
							 | 
							
								 | 
							
							              id: params[:id],
 | 
						
						
						
						
							 | 
							
								 | 
							
							              token: params[:token],
 | 
						
						
						
						
							 | 
							
								 | 
							
							              new_form: params.reject{|k,v| [:id,:token].include?(k)}}
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          message = cs.leave_course_message cs_params,current_user
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :data, message, with: Mobile::Entities::Jours
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc '回复留言'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :reference_id, type: Integer,desc: '所属留言树的根留言id(最顶层的非回复的留言,留言对象中的m_parent_id)'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :reference_user_id,type: Integer ,desc: '被回复的留言的作者id'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          #requires :reference_message_id,type: Integer,desc: '被回复的留言的id'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :user_notes,type: String,desc: '留言的内容'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :jour_type,type: String,desc: '等于父留言的jour_type'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :jour_id,type:Integer, desc: '等于父留言的jour_id'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        post ':reference_message_id/create_reply'do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          message = cs.create_reply params,current_user
 | 
						
						
						
						
							 | 
							
								 | 
							
							          raise "create reply failed #{message.errors.full_messages}" if message.new_record?
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :data, message, with: Mobile::Entities::Jours
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc ' 意见反馈'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :subject,type: String,desc: '意见'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        post do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs_params = {
 | 
						
						
						
						
							 | 
							
								 | 
							
							              memo: {:subject => '该贴来自手机App意见反馈' ,:content => params[:subject]},
 | 
						
						
						
						
							 | 
							
								 | 
							
							          }
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          memo,message = cs.create_feedback cs_params, current_user
 | 
						
						
						
						
							 | 
							
								 | 
							
							          raise message if memo.new_record?
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc '课程留言列表'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          optional :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          optional :page,type:Integer,desc:'页数'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        get ':id/course_message' do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          jours = cs.course_messages params,(current_user.nil? ? User.find(2):current_user)
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :data, jours, with: Mobile::Entities::Jours
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							        desc '留言详情'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        params do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :token, type: String
 | 
						
						
						
						
							 | 
							
								 | 
							
							          requires :comment_parent_id,type:Integer,desc:'留言id'
 | 
						
						
						
						
							 | 
							
								 | 
							
							          optional :course_id,type:Integer,desc:'课程id'
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							        get ':comment_parent_id/comment_details' do
 | 
						
						
						
						
							 | 
							
								 | 
							
							          cs = CommentService.new
 | 
						
						
						
						
							 | 
							
								 | 
							
							          jour = cs.comment_detail params,current_user
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :data, jour, with: Mobile::Entities::Jours
 | 
						
						
						
						
							 | 
							
								 | 
							
							          present :status, 0
 | 
						
						
						
						
							 | 
							
								 | 
							
							        end
 | 
						
						
						
						
							 | 
							
								 | 
							
							
 | 
						
						
						
						
							 | 
							
								 | 
							
							      end
 | 
						
						
						
						
							 | 
							
								 | 
							
							    end
 | 
						
						
						
						
							 | 
							
								 | 
							
							  end
 | 
						
						
						
						
							 | 
							
								 | 
							
							end |