From b540ff7017238fe6e31df3864ec46263cc6a521b Mon Sep 17 00:00:00 2001
From: yuanke <249218296@qq.com>
Date: Fri, 15 Jul 2016 14:44:37 +0800
Subject: [PATCH] =?UTF-8?q?=E6=88=91=E7=9A=84=E8=B5=84=E6=BA=90=E9=87=8C?=
=?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9B=B4=E5=A4=9A=E6=8C=89=E9=92=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/api/mobile/apis/resources.rb | 36 ++++-
public/assets/wechat/class.html | 9 ++
public/assets/wechat/myresource.html | 9 ++
.../wechat/controllers/myresource.js | 124 +++++++++++++++---
4 files changed, 157 insertions(+), 21 deletions(-)
diff --git a/app/api/mobile/apis/resources.rb b/app/api/mobile/apis/resources.rb
index 16531940f..d5823d5b4 100644
--- a/app/api/mobile/apis/resources.rb
+++ b/app/api/mobile/apis/resources.rb
@@ -8,13 +8,23 @@ module Mobile
desc '获取所有课件'
params do
requires :token, type: String
+ requires :page, type: Integer
end
- get do
+ post do
authenticate!
+ page = params[:page] ? params[:page] : 0
+
rs = ResourcesService.new
# data = current_user.course_attachments
data = rs.all_course_attachments current_user
+ all_count = data.count
+ data = data.limit(10).offset(page * 10)
+ count = data.count
+
present :data, data, with: Mobile::Entities::Attachment,user: current_user
+ present :all_count, all_count
+ present :count, count
+ present :page, page
present :status, 0
end
@@ -24,14 +34,24 @@ module Mobile
desc '获取所有作业'
params do
requires :token, type: String
+ requires :page, type: Integer
end
- get 'homeworks' do
+ post 'homeworks' do
authenticate!
+ page = params[:page] ? params[:page] : 0
+
rs = ResourcesService.new
homeworks = rs.all_homework_commons current_user
+ all_count = homeworks.count
+ homeworks = homeworks.limit(10).offset(page * 10)
+ count = homeworks.count
+
present :data, homeworks, with: Mobile::Entities::Homework,user: current_user
+ present :all_count, all_count
+ present :count, count
+ present :page, page
present :status, 0
end
@@ -39,13 +59,23 @@ module Mobile
desc '获取所有测验'
params do
requires :token, type: String
+ requires :page, type: Integer
end
- get 'exercies' do
+ post 'exercises' do
authenticate!
+ page = params[:page] ? params[:page] : 0
+
rs = ResourcesService.new
exercises = rs.all_exercises current_user
+ all_count = exercises.count
+ exercises = exercises.limit(10).offset(page * 10)
+ count = exercises.count
+
present :data, exercises, with: Mobile::Entities::Exercise,user: current_user
+ present :all_count, all_count
+ present :count, count
+ present :page, page
present :status, 0
end
diff --git a/public/assets/wechat/class.html b/public/assets/wechat/class.html
index 294610ac7..0539ee326 100644
--- a/public/assets/wechat/class.html
+++ b/public/assets/wechat/class.html
@@ -24,6 +24,9 @@
{{r.filename}}发送
+
暂无课件,
请登录Trustie网站,在PC浏览器中上传课件。
@@ -43,6 +46,9 @@
{{r.homework_name}}发送
+
暂无作业,
请登录Trustie网站,在PC浏览器中上传作业。
@@ -50,6 +56,9 @@
{{r.exercise_name}}发送
+
暂无小测验,
请登录Trustie网站,在PC浏览器中上传小测验。
diff --git a/public/assets/wechat/myresource.html b/public/assets/wechat/myresource.html
index 6300240d3..bfa73b89b 100644
--- a/public/assets/wechat/myresource.html
+++ b/public/assets/wechat/myresource.html
@@ -14,6 +14,9 @@
{{r.filename}}发送
课件来源:{{r.coursename}}大小:{{r.attafile_size}}
+
+
暂无课件,
请登录Trustie网站,在PC浏览器中上传课件。
@@ -22,12 +25,18 @@
{{r.homework_name}}发送
作业来源:{{r.coursename}}
+
暂无作业,
请登录Trustie网站,在PC浏览器中创建作业。
{{r.exercise_name}}发送
题目来源:{{r.coursename}}
+
+
暂无测验,
请登录Trustie网站,在PC浏览器中创建测验。
diff --git a/public/javascripts/wechat/controllers/myresource.js b/public/javascripts/wechat/controllers/myresource.js
index b371ee8cc..9aab39479 100644
--- a/public/javascripts/wechat/controllers/myresource.js
+++ b/public/javascripts/wechat/controllers/myresource.js
@@ -2,36 +2,124 @@ app.controller('MyResourceController', ['$scope', '$http', 'auth', 'config', '$l
var vm = $scope;
vm.menus = ['课件', '作业', '测验'];
- vm.resources = null;
- vm.homeworks = null;
- vm.exercise = null;
+ vm.resources = [];
+ vm.homeworks = [];
+ vm.exercise = [];
+
+ vm.has_more = false;
+ vm.page = 0;
+
+ vm.homework_has_more = false;
+ vm.homework_page = 0;
+
+ vm.exercise_has_more = false;
+ vm.exercise_page = 0;
vm.searchText = "";
- vm.tab = function(index){
- vm.currentTab = index;
- vm.searchText = "";
- if(index==1 && (!vm.resources || vm.resources.length <= 0 )){
- $http.get(config.apiUrl + "resources?token="+auth.token()).then(function(response){
+ vm.sendFile = function(r){
+ $location.path("/send_class_list").search({id: r.id});
+ }
+
+ vm.loadResourceData = function (index,page){
+ if(index == 1){
+ vm.page = page;
+ $http({
+ method: 'POST',
+ url: apiUrl+ "resources",
+ data: {token: auth.token(), page: page}
+ }).then(function successCallback(response) {
+ if(response.data.page >0) {
+ vm.resources = vm.resources.concat(response.data.data);
+ } else {
+ vm.resources = response.data.data;
+ }
+
+// rms.save("resources", vm.resources);
+ vm.has_more = (response.data.count + response.data.page * 10) < response.data.all_count;
+// rms.save('homework_has_more', vm.has_more);
+// rms.save('homework_page', vm.data.page);
+
console.log(response.data);
- vm.resources = response.data.data;
+
+ }, function errorCallback(response) {
});
- } else if(index==2 && (!vm.homeworks || vm.homeworks.length <= 0) ){
- $http.get(config.apiUrl + "resources/homeworks?token="+auth.token()).then(function(response){
+
+ }
+ else if(index==2 ){
+ vm.homework_page = page;
+ $http({
+ method: 'POST',
+ url: apiUrl+ "resources/homeworks",
+ data: {token: auth.token(), page: page}
+ }).then(function successCallback(response) {
+ if(response.data.page >0) {
+ vm.homeworks = vm.homeworks.concat(response.data.data);
+ } else {
+ vm.homeworks = response.data.data;
+ }
+
+// rms.save("homeworks", vm.homeworks);
+ vm.homework_has_more = (response.data.count + response.data.page * 10) < response.data.all_count;
+// rms.save('homework_has_more', vm.has_more);
+// rms.save('homework_page', vm.data.page);
+
console.log(response.data);
- vm.homeworks = response.data.data;
+
+ }, function errorCallback(response) {
});
- } else if(index==3 && (!vm.exercise || vm.exercise.length <= 0) ){
- $http.get(config.apiUrl + "resources/exercies?token="+auth.token()).then(function(response){
+ }
+ else if(index==3 ){
+ vm.exercise_page = page;
+ $http({
+ method: 'POST',
+ url: apiUrl+ "resources/exercises",
+ data: {token: auth.token(), page: page}
+ }).then(function successCallback(response) {
+ if(response.data.page >0) {
+ vm.exercise = vm.exercise.concat(response.data.data);
+ } else {
+ vm.exercise = response.data.data;
+ }
+
+// rms.save("homeworks", vm.homeworks);
+ vm.exercise_has_more = (response.data.count + response.data.page * 10) < response.data.all_count;
+// rms.save('homework_has_more', vm.has_more);
+// rms.save('homework_page', vm.data.page);
+
console.log(response.data);
- vm.exercise = response.data.data;
+
+ }, function errorCallback(response) {
});
}
}
- vm.tab(1);
+ vm.tab = function(index){
+ vm.currentTab = index;
+ vm.searchText = "";
- vm.sendFile = function(r){
- $location.path("/send_class_list").search({id: r.id});
+ switch(index){
+ //ALL
+ case 1:
+ if(vm.resources.length<=0){
+ vm.loadResourceData(index,0);
+ }
+ break;
+ //homework
+ case 2:
+ if(vm.homeworks.length<=0){
+ vm.loadResourceData(index,0);
+ }
+ break;
+ //exercise
+ case 3:
+ if(vm.exercise.length<=0){
+ vm.loadResourceData(index,0);
+ }
+ break;
+ }
}
+
+ vm.tab(1);
+
}] );