ting_model 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/Gemfile +4 -0
- data/README.md +41 -0
- data/Rakefile +1 -0
- data/gen_shards.rb +59 -0
- data/lib/extenders/album_extender.rb +9 -0
- data/lib/extenders/block_avatar_extender.rb +5 -0
- data/lib/extenders/chat_extender.rb +5 -0
- data/lib/extenders/class_node.rb +21 -0
- data/lib/extenders/comment_extender.rb +5 -0
- data/lib/extenders/favorite_album_extender.rb +5 -0
- data/lib/extenders/favorite_extender.rb +5 -0
- data/lib/extenders/following_extender.rb +13 -0
- data/lib/extenders/following_group_extender.rb +5 -0
- data/lib/extenders/following_tag_extender.rb +5 -0
- data/lib/extenders/followingx2_group_extender.rb +5 -0
- data/lib/extenders/inbox_extender.rb +5 -0
- data/lib/extenders/linkman_extender.rb +5 -0
- data/lib/extenders/outbox_extender.rb +5 -0
- data/lib/extenders/track_block_extender.rb +5 -0
- data/lib/extenders/track_extender.rb +5 -0
- data/lib/extenders/track_in_record_extender.rb +76 -0
- data/lib/extenders/track_picture_extender.rb +5 -0
- data/lib/extenders/track_record_extender.rb +5 -0
- data/lib/extenders/track_rich_extender.rb +5 -0
- data/lib/extenders/track_set_extender.rb +79 -0
- data/lib/extenders/track_set_rich_extender.rb +5 -0
- data/lib/extenders/user_tag_extender.rb +5 -0
- data/lib/ting_model.rb +1 -0
- data/lib/ting_model/advertisement.rb +5 -0
- data/lib/ting_model/advertisement_new.rb +4 -0
- data/lib/ting_model/album.rb +31 -0
- data/lib/ting_model/album_node.rb +9 -0
- data/lib/ting_model/album_origin.rb +137 -0
- data/lib/ting_model/album_pod.rb +8 -0
- data/lib/ting_model/album_podcat.rb +8 -0
- data/lib/ting_model/android_channel.rb +4 -0
- data/lib/ting_model/android_channel_binding.rb +7 -0
- data/lib/ting_model/announcement.rb +12 -0
- data/lib/ting_model/app_recommend.rb +55 -0
- data/lib/ting_model/application_v_category.rb +5 -0
- data/lib/ting_model/approve_group.rb +4 -0
- data/lib/ting_model/approving_track.rb +4 -0
- data/lib/ting_model/approving_track_log.rb +4 -0
- data/lib/ting_model/audit_log.rb +5 -0
- data/lib/ting_model/baidu_count.rb +4 -0
- data/lib/ting_model/bind_user.rb +7 -0
- data/lib/ting_model/binding_app.rb +4 -0
- data/lib/ting_model/biting.rb +4 -0
- data/lib/ting_model/black_user.rb +9 -0
- data/lib/ting_model/block_avatar.rb +31 -0
- data/lib/ting_model/block_avatar_node.rb +10 -0
- data/lib/ting_model/block_avatar_origin.rb +24 -0
- data/lib/ting_model/category.rb +20 -0
- data/lib/ting_model/category_icon_version.rb +12 -0
- data/lib/ting_model/chat.rb +31 -0
- data/lib/ting_model/chat_node.rb +10 -0
- data/lib/ting_model/chat_origin.rb +32 -0
- data/lib/ting_model/comment.rb +80 -0
- data/lib/ting_model/comment_node.rb +10 -0
- data/lib/ting_model/comment_origin.rb +116 -0
- data/lib/ting_model/dead_album.rb +8 -0
- data/lib/ting_model/dead_track.rb +8 -0
- data/lib/ting_model/dead_user.rb +7 -0
- data/lib/ting_model/default_follow.rb +6 -0
- data/lib/ting_model/delayed_album.rb +26 -0
- data/lib/ting_model/delayed_publish.rb +4 -0
- data/lib/ting_model/delayed_track.rb +43 -0
- data/lib/ting_model/discovery_page.rb +17 -0
- data/lib/ting_model/editor_recommend.rb +5 -0
- data/lib/ting_model/favorite.rb +59 -0
- data/lib/ting_model/favorite_album.rb +50 -0
- data/lib/ting_model/favorite_album_node.rb +9 -0
- data/lib/ting_model/favorite_album_origin.rb +88 -0
- data/lib/ting_model/favorite_node.rb +10 -0
- data/lib/ting_model/favorite_origin.rb +138 -0
- data/lib/ting_model/feed.rb +159 -0
- data/lib/ting_model/file_upload.rb +4 -0
- data/lib/ting_model/file_upload_record.rb +4 -0
- data/lib/ting_model/focus.rb +16 -0
- data/lib/ting_model/focus_album.rb +9 -0
- data/lib/ting_model/focus_current.rb +10 -0
- data/lib/ting_model/focus_track.rb +17 -0
- data/lib/ting_model/focus_user.rb +7 -0
- data/lib/ting_model/follower.rb +27 -0
- data/lib/ting_model/follower_node.rb +10 -0
- data/lib/ting_model/follower_origin.rb +34 -0
- data/lib/ting_model/follower_tag.rb +27 -0
- data/lib/ting_model/follower_tag_node.rb +10 -0
- data/lib/ting_model/follower_tag_origin.rb +14 -0
- data/lib/ting_model/followerx2_group.rb +27 -0
- data/lib/ting_model/followerx2_group_node.rb +10 -0
- data/lib/ting_model/followerx2_group_origin.rb +12 -0
- data/lib/ting_model/following.rb +57 -0
- data/lib/ting_model/following_group.rb +31 -0
- data/lib/ting_model/following_group_node.rb +10 -0
- data/lib/ting_model/following_group_origin.rb +29 -0
- data/lib/ting_model/following_node.rb +10 -0
- data/lib/ting_model/following_origin.rb +72 -0
- data/lib/ting_model/following_tag.rb +52 -0
- data/lib/ting_model/following_tag_node.rb +10 -0
- data/lib/ting_model/following_tag_origin.rb +59 -0
- data/lib/ting_model/followingx2_group.rb +31 -0
- data/lib/ting_model/followingx2_group_node.rb +10 -0
- data/lib/ting_model/followingx2_group_origin.rb +23 -0
- data/lib/ting_model/human_category.rb +17 -0
- data/lib/ting_model/human_recommend_album.rb +8 -0
- data/lib/ting_model/human_recommend_album_category_tag.rb +4 -0
- data/lib/ting_model/human_recommend_album_tag.rb +4 -0
- data/lib/ting_model/human_recommend_category_album.rb +7 -0
- data/lib/ting_model/human_recommend_category_tag.rb +6 -0
- data/lib/ting_model/human_recommend_category_tag_album.rb +7 -0
- data/lib/ting_model/human_recommend_category_tag_track.rb +11 -0
- data/lib/ting_model/human_recommend_category_tag_user.rb +7 -0
- data/lib/ting_model/human_recommend_category_track.rb +11 -0
- data/lib/ting_model/human_recommend_category_user.rb +7 -0
- data/lib/ting_model/human_recommend_tag.rb +5 -0
- data/lib/ting_model/human_recommend_tag_album.rb +7 -0
- data/lib/ting_model/human_recommend_tag_track.rb +9 -0
- data/lib/ting_model/human_recommend_tag_user.rb +7 -0
- data/lib/ting_model/human_recommend_track.rb +9 -0
- data/lib/ting_model/human_recommend_user.rb +7 -0
- data/lib/ting_model/icon_version.rb +7 -0
- data/lib/ting_model/inbox.rb +31 -0
- data/lib/ting_model/inbox_node.rb +10 -0
- data/lib/ting_model/inbox_origin.rb +59 -0
- data/lib/ting_model/latest_album.rb +9 -0
- data/lib/ting_model/latest_favorite.rb +10 -0
- data/lib/ting_model/latest_track.rb +10 -0
- data/lib/ting_model/linkman.rb +30 -0
- data/lib/ting_model/linkman_node.rb +10 -0
- data/lib/ting_model/linkman_origin.rb +26 -0
- data/lib/ting_model/liteapp.rb +7 -0
- data/lib/ting_model/liteapp_album.rb +4 -0
- data/lib/ting_model/liteapp_tag.rb +4 -0
- data/lib/ting_model/lover.rb +27 -0
- data/lib/ting_model/lover_album.rb +27 -0
- data/lib/ting_model/lover_album_node.rb +9 -0
- data/lib/ting_model/lover_album_origin.rb +39 -0
- data/lib/ting_model/lover_node.rb +10 -0
- data/lib/ting_model/lover_origin.rb +45 -0
- data/lib/ting_model/m_user.rb +8 -0
- data/lib/ting_model/message_log.rb +4 -0
- data/lib/ting_model/message_picture.rb +5 -0
- data/lib/ting_model/meta.rb +4 -0
- data/lib/ting_model/mixing_album.rb +7 -0
- data/lib/ting_model/mobad_stat.rb +9 -0
- data/lib/ting_model/news.rb +16 -0
- data/lib/ting_model/out_link.rb +7 -0
- data/lib/ting_model/outbox.rb +31 -0
- data/lib/ting_model/outbox_node.rb +10 -0
- data/lib/ting_model/outbox_origin.rb +59 -0
- data/lib/ting_model/outlink_stat.rb +4 -0
- data/lib/ting_model/personal_setting.rb +26 -0
- data/lib/ting_model/push_message.rb +4 -0
- data/lib/ting_model/receive_laya.rb +9 -0
- data/lib/ting_model/recommend_album.rb +7 -0
- data/lib/ting_model/recommend_category_album.rb +7 -0
- data/lib/ting_model/recommend_category_tag.rb +5 -0
- data/lib/ting_model/recommend_category_tag_album.rb +7 -0
- data/lib/ting_model/recommend_category_tag_track.rb +9 -0
- data/lib/ting_model/recommend_category_tag_user.rb +7 -0
- data/lib/ting_model/recommend_category_track.rb +9 -0
- data/lib/ting_model/recommend_category_user.rb +7 -0
- data/lib/ting_model/recommend_tag.rb +15 -0
- data/lib/ting_model/recommend_tag_album.rb +7 -0
- data/lib/ting_model/recommend_tag_track.rb +9 -0
- data/lib/ting_model/recommend_tag_user.rb +7 -0
- data/lib/ting_model/recommend_track.rb +9 -0
- data/lib/ting_model/recommend_user.rb +7 -0
- data/lib/ting_model/reject_reason.rb +17 -0
- data/lib/ting_model/report.rb +33 -0
- data/lib/ting_model/report_information.rb +29 -0
- data/lib/ting_model/search_black_uid.rb +7 -0
- data/lib/ting_model/search_key.rb +6 -0
- data/lib/ting_model/send_msg.rb +4 -0
- data/lib/ting_model/shards.rb +2626 -0
- data/lib/ting_model/sms.rb +19 -0
- data/lib/ting_model/special.rb +17 -0
- data/lib/ting_model/special_album.rb +4 -0
- data/lib/ting_model/special_track.rb +4 -0
- data/lib/ting_model/sub_app_advertisement_new.rb +4 -0
- data/lib/ting_model/subappad_stat.rb +9 -0
- data/lib/ting_model/system_configuration.rb +5 -0
- data/lib/ting_model/temp_blob.rb +5 -0
- data/lib/ting_model/track.rb +30 -0
- data/lib/ting_model/track_block.rb +46 -0
- data/lib/ting_model/track_block_node.rb +10 -0
- data/lib/ting_model/track_block_origin.rb +69 -0
- data/lib/ting_model/track_in_record.rb +27 -0
- data/lib/ting_model/track_in_record_node.rb +10 -0
- data/lib/ting_model/track_in_record_origin.rb +134 -0
- data/lib/ting_model/track_node.rb +9 -0
- data/lib/ting_model/track_origin.rb +224 -0
- data/lib/ting_model/track_picture.rb +32 -0
- data/lib/ting_model/track_picture_node.rb +10 -0
- data/lib/ting_model/track_picture_origin.rb +26 -0
- data/lib/ting_model/track_record.rb +31 -0
- data/lib/ting_model/track_record_node.rb +9 -0
- data/lib/ting_model/track_record_origin.rb +64 -0
- data/lib/ting_model/track_rich.rb +30 -0
- data/lib/ting_model/track_rich_node.rb +10 -0
- data/lib/ting_model/track_rich_origin.rb +31 -0
- data/lib/ting_model/track_set.rb +27 -0
- data/lib/ting_model/track_set_node.rb +9 -0
- data/lib/ting_model/track_set_origin.rb +147 -0
- data/lib/ting_model/track_set_rich.rb +30 -0
- data/lib/ting_model/track_set_rich_node.rb +10 -0
- data/lib/ting_model/track_set_rich_origin.rb +24 -0
- data/lib/ting_model/uid_approve_group.rb +4 -0
- data/lib/ting_model/upload_track_share_temp.rb +6 -0
- data/lib/ting_model/user_link.rb +10 -0
- data/lib/ting_model/user_log.rb +33 -0
- data/lib/ting_model/user_tag.rb +31 -0
- data/lib/ting_model/user_tag_node.rb +10 -0
- data/lib/ting_model/user_tag_origin.rb +23 -0
- data/lib/ting_model/user_v_category.rb +8 -0
- data/lib/ting_model/v_application.rb +35 -0
- data/lib/ting_model/v_category.rb +7 -0
- data/lib/ting_model/v_user.rb +7 -0
- data/lib/ting_model/varification_code.rb +6 -0
- data/lib/ting_model/web_advertisement.rb +6 -0
- data/lib/ting_model/web_discovery_page.rb +10 -0
- data/lib/ting_model/web_recommend.rb +6 -0
- data/lib/ting_model/weixin_account.rb +8 -0
- data/lib/ting_model/weixin_keyword.rb +4 -0
- data/lib/ting_model/weixin_monitor.rb +4 -0
- data/ting_model.gemspec +251 -0
- metadata +313 -0
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
class LatestAlbum < ActiveRecord::Base
|
|
2
|
+
self.table_name = 'tb_latest_album' # 用户最后更新专辑
|
|
3
|
+
|
|
4
|
+
attr_accessible :album_created_at, :album_cover_path, :album_id, :album_title, :nickname, :uid
|
|
5
|
+
|
|
6
|
+
# album_id album_title album_cover_path album_created_at --- 专辑id 标题 封面 创建时间
|
|
7
|
+
# uid nickname --- 用户id 昵称
|
|
8
|
+
|
|
9
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
class LatestFavorite < ActiveRecord::Base
|
|
2
|
+
self.table_name = 'tb_latest_favorite' # 用户最后收藏声音
|
|
3
|
+
|
|
4
|
+
attr_accessible :fav_id, :fav_created_at, :nickname, :track_cover_path, :track_id, :track_title, :uid
|
|
5
|
+
|
|
6
|
+
# fav_id fav_created_at --- 喜欢id 喜欢时间
|
|
7
|
+
# track_id track_title track_cover_path --- 声音id 标题 封面
|
|
8
|
+
# uid nickname 用户id 昵称
|
|
9
|
+
|
|
10
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
class LatestTrack < ActiveRecord::Base
|
|
2
|
+
self.table_name = 'tb_latest_track' # 用户最后更新声音
|
|
3
|
+
attr_accessible :album_id, :album_title, :nickname, :track_id, :track_title, :uid, :track_created_at, :is_resend, :track_cover_path, :is_v, :upload_id, :waveform
|
|
4
|
+
|
|
5
|
+
# is_resend --- 是否转发
|
|
6
|
+
# album_id album_title --- 专辑id 标题
|
|
7
|
+
# uid nickname is_v --- 用户id 昵称 是否加V
|
|
8
|
+
# track_id track_title track_created_at track_cover_path --- 声音id 标题 创建时间 封面
|
|
9
|
+
# upload_id waveform --- 声音上传号 波形号
|
|
10
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require File.expand_path('../linkman_node', __FILE__)
|
|
2
|
+
require File.expand_path('../linkman_origin', __FILE__)
|
|
3
|
+
|
|
4
|
+
class Linkman < LinkmanOrigin
|
|
5
|
+
|
|
6
|
+
def self.shard(key)
|
|
7
|
+
Object.const_get(LinkmanNode.seek(key).class_name)
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def self.gtn(key)
|
|
11
|
+
LinkmanNode.seek(key).table_name
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def self.stn(key)
|
|
15
|
+
self.table_name = self.gtn(key)
|
|
16
|
+
self
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
before_save do |r|
|
|
20
|
+
r.class.table_name = Linkman.gtn(r.uid)
|
|
21
|
+
unless r.id
|
|
22
|
+
r.id = Linkman.next_id
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
before_destroy do |r|
|
|
27
|
+
r.class.table_name = Linkman.gtn(r.uid)
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
require File.expand_path('../../extenders/linkman_extender', __FILE__)
|
|
2
|
+
|
|
3
|
+
class LinkmanOrigin < ActiveRecord::Base
|
|
4
|
+
extend LinkmanExtender
|
|
5
|
+
|
|
6
|
+
self.table_name = 'tb_linkman' # 联系人
|
|
7
|
+
|
|
8
|
+
attr_accessible :uid, :nickname, :avatar_path,
|
|
9
|
+
:linkman_uid, :linkman_nickname, :linkman_avatar_path,
|
|
10
|
+
:no_read_count, :last_id,
|
|
11
|
+
:updated_at, :last_chat_at, :last_chat_content
|
|
12
|
+
|
|
13
|
+
# uid nickname avatar_path --- 用户id 昵称 头像
|
|
14
|
+
# linkman_uid linkman_nickname linkman_avatar_path --- 联系人id 昵称 头像
|
|
15
|
+
# no_read_count --- 未读数
|
|
16
|
+
# last_id last_chat_at last_chat_content --- 最新一条聊天id 时间 内容
|
|
17
|
+
|
|
18
|
+
validates :uid, presence: true
|
|
19
|
+
|
|
20
|
+
before_save do |r|
|
|
21
|
+
unless r.id
|
|
22
|
+
r.id = Linkman.next_id
|
|
23
|
+
end
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
require File.expand_path('../lover_node', __FILE__)
|
|
2
|
+
require File.expand_path('../lover_origin', __FILE__)
|
|
3
|
+
|
|
4
|
+
class Lover < LoverOrigin
|
|
5
|
+
|
|
6
|
+
def self.shard(key)
|
|
7
|
+
Object.const_get(LoverNode.seek(key).class_name)
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def self.gtn(key)
|
|
11
|
+
LoverNode.seek(key).table_name
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def self.stn(key)
|
|
15
|
+
self.table_name = self.gtn(key)
|
|
16
|
+
self
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
before_save do |r|
|
|
20
|
+
r.class.table_name = Lover.gtn(r.track_id)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
before_destroy do |r|
|
|
24
|
+
r.class.table_name = Lover.gtn(r.track_id)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
require File.expand_path('../lover_album_node', __FILE__)
|
|
2
|
+
require File.expand_path('../lover_album_origin', __FILE__)
|
|
3
|
+
|
|
4
|
+
class LoverAlbum < LoverAlbumOrigin
|
|
5
|
+
|
|
6
|
+
def self.shard(key)
|
|
7
|
+
Object.const_get(LoverAlbumNode.seek(key).class_name)
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def self.gtn(key)
|
|
11
|
+
LoverAlbumNode.seek(key).table_name
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def self.stn(key)
|
|
15
|
+
self.table_name = self.gtn(key)
|
|
16
|
+
self
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
before_save do |r|
|
|
20
|
+
r.class.table_name = LoverAlbum.gtn(r.album_id)
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
before_destroy do |r|
|
|
24
|
+
r.class.table_name = LoverAlbum.gtn(r.album_id)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
end
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
class LoverAlbumOrigin < ActiveRecord::Base
|
|
2
|
+
|
|
3
|
+
# 收藏专辑 根据album_id分表
|
|
4
|
+
self.table_name = 'tb_favorite_album'
|
|
5
|
+
|
|
6
|
+
attr_accessible :uid,
|
|
7
|
+
:nickname,
|
|
8
|
+
:avatar_path,
|
|
9
|
+
:album_id,
|
|
10
|
+
:album_uid,
|
|
11
|
+
:album_nickname,
|
|
12
|
+
:album_avatar_path,
|
|
13
|
+
:op_type,
|
|
14
|
+
:user_source,
|
|
15
|
+
:is_crawler,
|
|
16
|
+
:title,
|
|
17
|
+
:tags,
|
|
18
|
+
:intro,
|
|
19
|
+
:cover_path,
|
|
20
|
+
:music_category,
|
|
21
|
+
:album_created_at,
|
|
22
|
+
:category_id,
|
|
23
|
+
:created_at,
|
|
24
|
+
:updated_at,
|
|
25
|
+
:upload_source
|
|
26
|
+
|
|
27
|
+
# uid nickname avatar_path --- 用户id 昵称 头像
|
|
28
|
+
# album_id album_uid album_nickname album_avatar_path --- 专辑id 用户id 昵称 头像
|
|
29
|
+
# op_type --- 专辑上传类型 1:自己传的 /2:转发
|
|
30
|
+
# user_source --- 专辑来源 1:原创 /2:采集
|
|
31
|
+
# is_crawler --- 专辑 是否爬虫
|
|
32
|
+
# title tags intro cover_path --- 专辑标题 标签 简介 封面
|
|
33
|
+
# music_category --- 专辑 音乐归类
|
|
34
|
+
# album_created_at --- 专辑创建时间
|
|
35
|
+
# category_id --- 专辑分类id
|
|
36
|
+
# upload_source --- 专辑上传自 1:iphone/2:电脑/3:android
|
|
37
|
+
|
|
38
|
+
validates :album_id, presence: true
|
|
39
|
+
end
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
class LoverOrigin < ActiveRecord::Base
|
|
2
|
+
# 喜欢声音 根据track_id分表,记录依赖favorite
|
|
3
|
+
self.table_name = 'tb_favorite'
|
|
4
|
+
|
|
5
|
+
attr_accessible :is_public, :upload_source,
|
|
6
|
+
:uid, :nickname, :avatar_path,
|
|
7
|
+
:track_id, :track_uid, :track_upload_source, :track_nickname, :track_avatar_path, :track_duration,
|
|
8
|
+
:user_source, :category_id,
|
|
9
|
+
:title, :intro,
|
|
10
|
+
:duration,
|
|
11
|
+
:download_path,
|
|
12
|
+
:play_path, :play_path_32, :play_path_64, :play_path_128,
|
|
13
|
+
:cover_path,
|
|
14
|
+
:cover_path_small, :cover_path_middle, :cover_path_large, :cover_path_wide,
|
|
15
|
+
:cover_path_60, :cover_path_86, :cover_path_640,
|
|
16
|
+
:tags,
|
|
17
|
+
:allow_download, :allow_comment,
|
|
18
|
+
:track_created_at, :track_updated_at,
|
|
19
|
+
:album_id, :album_title, :album_cover_path, :is_v,
|
|
20
|
+
:waveform, :upload_id
|
|
21
|
+
|
|
22
|
+
# is_public --- 是否公开
|
|
23
|
+
# upload_source --- 操作自 1:iphone /2:电脑 /3:android
|
|
24
|
+
# uid nickname avatar_path --- 用户id 昵称 头像地址
|
|
25
|
+
# track_id track_uid track_nickname track_avatar_path --- 声音id uid 昵称 发布者头像
|
|
26
|
+
# track_upload_source --- 声音上传自 1:iphone /2:电脑 /3:android
|
|
27
|
+
# track_duration --- 声音时长
|
|
28
|
+
# user_source --- 声音来源 1:原创/2:采集
|
|
29
|
+
# category_id --- 声音分类id
|
|
30
|
+
# title intro --- 声音标题 简介
|
|
31
|
+
# duration --- 声音时长
|
|
32
|
+
# download_path --- 声音下载地址
|
|
33
|
+
# play_path play_path_32 play_path_64 play_path_128 --- 播放地址原 32Kbps 64Kbps 128Kbps
|
|
34
|
+
# cover_path --- 声音封面路径原
|
|
35
|
+
# cover_path_small cover_path_middle cover_path_large cover_path_wide --- 未使用 50x50 100x100 180x180 400x300
|
|
36
|
+
# cover_path_60 cover_path_86 cover_path_640 --- 60x60 86x86 640x640
|
|
37
|
+
# tags --- 声音标签
|
|
38
|
+
# allow_download allow_comment --- 允许下载 允许评论
|
|
39
|
+
# track_created_at track_updated_at --- 声音创建时间 更新时间
|
|
40
|
+
# album_id album_title album_cover_path --- 专辑id 标题 封面
|
|
41
|
+
# is_v --- 声音作者是否加V
|
|
42
|
+
# waveform upload_id --- 声音波形 上传号
|
|
43
|
+
|
|
44
|
+
validates :track_id, presence: true
|
|
45
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
class News < ActiveRecord::Base
|
|
2
|
+
self.table_name = "tb_news" #新闻链接
|
|
3
|
+
attr_accessible :is_reship, :link, :time_at, :title, :website
|
|
4
|
+
|
|
5
|
+
validates_presence_of :title, message: "新闻标题不能为空"
|
|
6
|
+
validates_presence_of :website, message: "网站名称不能为空"
|
|
7
|
+
validates_presence_of :link, message: "链接不能为空"
|
|
8
|
+
validates_presence_of :time_at, message: "刊登时间不能为空"
|
|
9
|
+
|
|
10
|
+
# link --- 链接
|
|
11
|
+
# time_at --- 发表时间
|
|
12
|
+
# title --- 标题
|
|
13
|
+
# is_reship --- 是否转发
|
|
14
|
+
# website --- 转发自
|
|
15
|
+
|
|
16
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
require File.expand_path('../outbox_node', __FILE__)
|
|
2
|
+
require File.expand_path('../outbox_origin', __FILE__)
|
|
3
|
+
|
|
4
|
+
class Outbox < OutboxOrigin
|
|
5
|
+
|
|
6
|
+
def self.shard(key)
|
|
7
|
+
Object.const_get(OutboxNode.seek(key).class_name)
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
def self.gtn(key)
|
|
11
|
+
OutboxNode.seek(key).table_name
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def self.stn(key)
|
|
15
|
+
self.table_name = self.gtn(key)
|
|
16
|
+
self
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
before_save do |r|
|
|
20
|
+
r.class.table_name = Outbox.gtn(r.uid)
|
|
21
|
+
|
|
22
|
+
unless r.id
|
|
23
|
+
r.id = Outbox.next_id
|
|
24
|
+
end
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
before_destroy do |r|
|
|
28
|
+
r.class.table_name = Outbox.gtn(r.uid)
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
require File.expand_path('../../extenders/outbox_extender', __FILE__)
|
|
2
|
+
|
|
3
|
+
class OutboxOrigin < ActiveRecord::Base
|
|
4
|
+
extend OutboxExtender
|
|
5
|
+
|
|
6
|
+
# 消息 根据uid分表
|
|
7
|
+
self.table_name = 'tb_message'
|
|
8
|
+
|
|
9
|
+
attr_accessible :message_type,
|
|
10
|
+
:upload_source,
|
|
11
|
+
:uid, :nickname, :avatar_path,
|
|
12
|
+
:to_uid, :to_nickname, :to_avatar_path,
|
|
13
|
+
:content,
|
|
14
|
+
:extra_json,
|
|
15
|
+
:has_read,
|
|
16
|
+
:track_id, :track_title, :track_cover_path, :track_uid, :track_nickname, :track_upload_source,
|
|
17
|
+
:comment_id, :second, :pcomment_id, :pcomment_content,
|
|
18
|
+
:anno_id, :anno_created_at
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
# message_type ---
|
|
22
|
+
# 1: 私信(已废弃)
|
|
23
|
+
# 2: 你评论了 发件箱
|
|
24
|
+
# 3: 你的评论被回复了 收件箱
|
|
25
|
+
# 4: 你的评论被@了 收件箱
|
|
26
|
+
# 5: 有一个公告(喜马发的) 收件箱
|
|
27
|
+
# 6: 有一封系统私信(加v通过等,喜马发的) 收件箱
|
|
28
|
+
# 7: 你的声音被喜欢了 收件箱
|
|
29
|
+
# 8: 你的声音被转发了 收件箱
|
|
30
|
+
# 9: 主动推 默认类型
|
|
31
|
+
# 10: 主动推 系统通知
|
|
32
|
+
# 11: 主动推 声音详情页
|
|
33
|
+
# 12: 主动推 个人主页
|
|
34
|
+
# 13: 主动推 专辑详情页
|
|
35
|
+
# 14: 你的声音被@到了 收件箱
|
|
36
|
+
# 15: 主动推 自定义url
|
|
37
|
+
# 16: 主播发来了私信 收件箱
|
|
38
|
+
|
|
39
|
+
# upload_source --- 发自 1:iphone/2:电脑/3:android
|
|
40
|
+
# uid nickname avatar_path --- 用户id 昵称 头像
|
|
41
|
+
# to_uid to_nickname to_avatar_path --- 发给用户id 昵称 头像
|
|
42
|
+
# content --- 内容
|
|
43
|
+
# extra_json --- 额外json
|
|
44
|
+
# has_read --- 是否已读
|
|
45
|
+
# track_id track_title track_cover_path --- 声音id 标题 封面
|
|
46
|
+
# track_uid track_nickname track_upload_source --- 声音用户id 昵称 上传自
|
|
47
|
+
# comment_id second --- 评论id 第几秒
|
|
48
|
+
# pcomment_id pcomment_content --- 父评论id 内容
|
|
49
|
+
# anno_id anno_created_at --- 公告id 创建时间
|
|
50
|
+
|
|
51
|
+
validates :uid, presence: true
|
|
52
|
+
|
|
53
|
+
before_save do |r|
|
|
54
|
+
unless r.id
|
|
55
|
+
r.id = Outbox.next_id
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
end
|