Merge branch 'weixin_guange' of https://git.trustie.net/jacknudt/trustieforge into weixin_guange
This commit is contained in:
commit
468f3ae63e
|
@ -24,11 +24,7 @@ module Mobile
|
|||
feedback = HomeworkCommon.add_homework_jour(current_user, params[:content], params[:id])
|
||||
if (feedback.errors.empty?)
|
||||
homework_common.update_attributes(:updated_at => Time.now)
|
||||
data = homework_common.journals_for_messages.last
|
||||
present :data, data, with: Mobile::Entities::Jours
|
||||
result = 2
|
||||
else
|
||||
result = 3
|
||||
end
|
||||
when "News"
|
||||
news = News.find(params[:id])
|
||||
|
@ -36,11 +32,7 @@ module Mobile
|
|||
comment.comments = params[:content]
|
||||
comment.author = current_user
|
||||
if news.comments << comment
|
||||
data = comment
|
||||
present :data, data, with: Mobile::Entities::Comment
|
||||
result = 2
|
||||
else
|
||||
result = 3
|
||||
end
|
||||
when "Message"
|
||||
message = Message.find(params[:id])
|
||||
|
@ -53,11 +45,7 @@ module Mobile
|
|||
reply.parent_id = params[:id]
|
||||
reply.subject = "RE: #{topic.subject}"
|
||||
if topic.children << reply
|
||||
data = reply
|
||||
present :data, data, with: Mobile::Entities::Message
|
||||
result = 2
|
||||
else
|
||||
result = 3
|
||||
end
|
||||
when "JournalsForMessage"
|
||||
jour = JournalsForMessage.find params[:id]
|
||||
|
@ -77,8 +65,6 @@ module Mobile
|
|||
if jfm.errors.empty?
|
||||
(JournalsForMessage.find parent_id).update_attribute(:updated_on,Time.now)
|
||||
result = 2
|
||||
else
|
||||
result = 3
|
||||
end
|
||||
when 'Issue'
|
||||
issue = Issue.find params[:id]
|
||||
|
@ -86,13 +72,8 @@ module Mobile
|
|||
is_jour.user_id = current_user.id
|
||||
is_jour.notes = params[:content]
|
||||
is_jour.journalized = issue
|
||||
#is_jour.journalized_type = "Issue"
|
||||
if is_jour.save
|
||||
data = is_jour
|
||||
present :data, data, with: Mobile::Entities::Journal
|
||||
result = 2
|
||||
else
|
||||
result = 3
|
||||
end
|
||||
when 'BlogComment'
|
||||
blog = BlogComment.find(params[:id]).root
|
||||
|
@ -101,11 +82,8 @@ module Mobile
|
|||
blogComment.blog = blog.blog
|
||||
blogComment.content = params[:content]
|
||||
blogComment.title = "RE: #{blog.title}"
|
||||
blog.children << blogComment
|
||||
if blog.save
|
||||
if blog.children << blogComment
|
||||
result = 2
|
||||
else
|
||||
result = 3
|
||||
end
|
||||
end
|
||||
if result == 2
|
||||
|
@ -116,7 +94,7 @@ module Mobile
|
|||
update_principal_activity_api(type,params[:id])
|
||||
end
|
||||
else
|
||||
result = 4
|
||||
result = 3
|
||||
end
|
||||
present :result, result
|
||||
present :status, 0
|
||||
|
|
|
@ -0,0 +1,40 @@
|
|||
#coding=utf-8
|
||||
|
||||
module Mobile
|
||||
module Apis
|
||||
class Praise< Grape::API
|
||||
include ApiHelper
|
||||
resources :praise do
|
||||
desc "praise an activity"
|
||||
|
||||
params do
|
||||
requires :type, type: String
|
||||
requires :openid, type: String
|
||||
end
|
||||
post ':id' do
|
||||
obj_id = params[:id]
|
||||
obj_type = params[:type]
|
||||
user = UserWechat.find_by_openid(params[:openid]).user
|
||||
obj = find_object_by_type_and_id(obj_id,obj_type)
|
||||
pts = PraiseTread.where("praise_tread_object_id=? and praise_tread_object_type=? and user_id=?",obj_id,obj_type.to_s,user.id)
|
||||
if pts.empty?
|
||||
praise_or_cancel(obj_type,obj_id,user,1)
|
||||
num = get_activity_praise_num(obj)
|
||||
else
|
||||
pts.delete if !pts.nil?
|
||||
#再更新praise_tread_cache表 使相应的记录减1 当为0时删除
|
||||
ptc = PraiseTreadCache.where("object_id=? and object_type=?",obj_id,obj_type.to_s).first
|
||||
ptc.praise_minus(1) if !ptc.nil?
|
||||
if ptc.praise_num == 0
|
||||
ptc.delete
|
||||
end
|
||||
num = get_activity_praise_num(obj)
|
||||
end
|
||||
|
||||
present :data, num
|
||||
present :status, 0
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
|
@ -19,6 +19,8 @@ module Mobile
|
|||
time_from_now f.created_on
|
||||
when :reply_count
|
||||
f.children.count
|
||||
when :message_praise_count
|
||||
get_activity_praise_num(f)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
@ -35,6 +37,7 @@ module Mobile
|
|||
jours_expose :m_reply_id
|
||||
jours_expose :m_parent_id
|
||||
jours_expose :reply_count
|
||||
jours_expose :message_praise_count
|
||||
expose :course,using:Mobile::Entities::Course do |f,opt|
|
||||
if f.is_a?(::JournalsForMessage) && f[:jour_type] == "Course"
|
||||
f.course
|
||||
|
|
|
@ -450,4 +450,39 @@ module ApiHelper
|
|||
principal_activity.save
|
||||
end
|
||||
end
|
||||
|
||||
#赞/取消赞
|
||||
def praise_or_cancel(type,id,user,flag)
|
||||
unless id.nil? and type.nil?
|
||||
#首先创建或更新praise_tread 表
|
||||
pt = PraiseTread.new
|
||||
pt.user_id = user.id
|
||||
pt.praise_tread_object_id = id.to_i
|
||||
pt.praise_tread_object_type = type
|
||||
pt.praise_or_tread = flag
|
||||
pt.save
|
||||
# end
|
||||
|
||||
#再创建或更新praise_tread_cache表
|
||||
#@ptc = PraiseTreadCache.find_by_object_id_and_object_type(id,type)
|
||||
ptc = PraiseTreadCache.where("object_id = ? and object_type = ?",id.to_i,type).first
|
||||
ptc = ptc.nil? ? PraiseTreadCache.new : ptc
|
||||
ptc.object_id = id.to_i
|
||||
ptc.object_type = type
|
||||
ptc.save
|
||||
ptc.praise_plus(flag,1)
|
||||
end
|
||||
end
|
||||
|
||||
def praise_plus(flag,num)
|
||||
case flag
|
||||
when 1
|
||||
self.update_attribute(:praise_num, self.praise_num.to_i + num)
|
||||
end
|
||||
end
|
||||
|
||||
def praise_minus(num)
|
||||
self.update_attribute(:praise_num, self.praise_num.to_i - num)
|
||||
end
|
||||
|
||||
end
|
|
@ -0,0 +1,42 @@
|
|||
<!-- 模板1开始,可以使用script(type设置为text/html)来存放模板片段,并且用id标示 -->
|
||||
<div class="post-container">
|
||||
<div class="post-wrapper">
|
||||
<div class="post-main">
|
||||
<div class="post-avatar fl"><img ng-src="{{message.user.img_url}}" width="45" height="45" class="border-radius" /></div>
|
||||
<div class="post-title mb5 hidden"><a herf="javascript:void(0);" class="mr10">{{message.user.nickname}}</a><span style="vertical-align:top;">给您留言了</span><br /></div>
|
||||
<div class="post-title hidden">{{message.created_on}}</div>
|
||||
<div class="cl"></div>
|
||||
<div class="post-content c-grey2 mt10" style="height:auto;">
|
||||
<div class="post-all-content">{{message.notes}}</div>
|
||||
</div>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
<div class="post-interactive border-bottom">
|
||||
<div class="post-interactive-reply c-grey2">回复 <span class="reply-num">({{message.reply_count}})</span></div>
|
||||
<div class="post-interactive-praise c-grey2"><span class="paise-text">赞</span> <span class="praise-num">({{message.message_praise_count}})</span></div>
|
||||
</div>
|
||||
<div id="all_message_reply">
|
||||
|
||||
<div class="post-reply-wrap border-bottom" ng-repeat="journal in message.child_reply">
|
||||
<div class="post-reply-row">
|
||||
<div class="post-reply-avatar fl"><img ng-src="{{journal.user.img_url}}" width="45" height="45" class="border-radius" /></div>
|
||||
<div class="ml55">
|
||||
<div class="post-reply-user hidden">{{journal.user.realname}}</div>
|
||||
<div class="post-reply-content c-grey2 mb10" ng-bind-html="journal.content|safeHtml"></div>
|
||||
<div class="post-reply-date fl">{{journal.lasted_comment}}</div>
|
||||
<div class="post-reply-trigger fr undis">回复</div>
|
||||
</div>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="post-input-wrap">
|
||||
<div class="post-reply-row">
|
||||
<!--<div class="post-reply-avatar fl"><img src="images/post-avatar.jpg" width="30" height="30" /></div>-->
|
||||
<input type="text" class="post-reply-input" id="postInput" ng-model="formData.comment" />
|
||||
<button ng-click="addJournalReply(formData)" class="post-reply-submit fr mt10">回复</button>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
|
@ -1,71 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>留言</title>
|
||||
<meta charset='utf-8' />
|
||||
<meta name="keywords" content="" />
|
||||
<meta name="description" content="" />
|
||||
<meta name="apple-mobile-web-app-capable" content="no">
|
||||
<meta content='True' name='HandheldFriendly' />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no" />
|
||||
|
||||
<link type="text/css" rel="stylesheet" href="/stylesheets/weui/weixin.css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="message-container"></div>
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- 模板1开始,可以使用script(type设置为text/html)来存放模板片段,并且用id标示 -->
|
||||
<script id="t:message-detail" type="text/html">
|
||||
<div id="check"></div>
|
||||
<div class="post-container">
|
||||
<div class="post-wrapper">
|
||||
<div class="post-main">
|
||||
<div class="post-avatar fl"><img src="<!=message.user.img_url!>" width="45" height="45" class="border-radius" /></div>
|
||||
<div class="post-title mb5 hidden"><a herf="javascript:void(0);" class="mr10"><!=message.user.nickname!></a><span style="vertical-align:top;">给您留言了</span><br /></div>
|
||||
<div class="post-title hidden"><!=message.created_on!></div>
|
||||
<div class="cl"></div>
|
||||
<div class="post-content c-grey2 mt10" style="height:auto;">
|
||||
<div class="post-all-content"><!:=message.notes!></div>
|
||||
</div>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
<div class="post-interactive border-bottom">
|
||||
<div class="post-interactive-reply c-grey2">回复 <span class="reply-num">(<!=message.reply_count!>)</span></div>
|
||||
<div class="post-interactive-praise c-grey2"><span class="paise-text"> 赞 </span><span class="praise-num">()</span></div>
|
||||
</div>
|
||||
<! for(var j =0; j < message.child_reply.length; ++j){ !>
|
||||
<div class="post-reply-wrap border-bottom">
|
||||
<div class="post-reply-row">
|
||||
<div class="post-reply-avatar fl"><img src="<!=message.child_reply[j].user.img_url!>" width="45" height="45" class="border-radius" /></div>
|
||||
<div class="ml55">
|
||||
<div class="post-reply-user hidden"><!=message.child_reply[j].user.realname!></div>
|
||||
<div class="post-reply-content c-grey2 mb10"><!:=message.child_reply[j].content!></div>
|
||||
<div class="post-reply-date fl"><!=message.child_reply[j].lasted_comment!></div>
|
||||
<div class="post-reply-trigger fr undis">回复</div>
|
||||
</div>
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
</div>
|
||||
<! } !>
|
||||
<div class="post-input-wrap">
|
||||
<div class="post-reply-row">
|
||||
<!--<div class="post-reply-avatar fl" id = "100"><img src="images/post-avatar.jpg" width="30" height="30" /></div>-->
|
||||
<input type="text" class="post-reply-input" id="postInput" />
|
||||
<input type="submit" value="回复" class="post-reply-submit fr mt10" onclick="replyInsert()" />
|
||||
<div class="cl"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</script>
|
||||
|
||||
<script src="/javascripts/jquery-1.3.2.js"></script>
|
||||
<script src="/javascripts/baiduTemplate.js"></script>
|
||||
<script src="/javascripts/wechat/auth.js"></script>
|
||||
<script src="/javascripts/wechat/message_detail.js"></script>
|
||||
|
||||
</body>
|
||||
</html>
|
Loading…
Reference in New Issue