From a34272027e4d405c279c773ee2ca7b703df29416 Mon Sep 17 00:00:00 2001 From: yuanke <249218296@qq.com> Date: Wed, 3 Aug 2016 14:55:54 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E8=8F=9C=E5=8D=95=E5=8F=8A?= =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E7=8F=AD=E7=BA=A7=E5=AE=A1=E6=A0=B8=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/api/mobile/apis/projects.rb | 6 +-- app/api/mobile/entities/project.rb | 2 +- app/models/applied_project.rb | 1 + app/services/projects_service.rb | 14 +++--- config/menu.yml.production | 8 +-- config/menu.yml.test | 8 +-- .../assets/wechat/review_project_member.html | 8 +-- .../wechat/controllers/class_list.js | 49 +++++++++++++------ .../wechat/controllers/homework.js | 2 +- .../javascripts/wechat/controllers/project.js | 25 ++++++++-- .../wechat/controllers/project_list.js | 4 ++ .../wechat/controllers/review_class_member.js | 2 +- .../controllers/review_project_member.js | 12 +++-- 13 files changed, 95 insertions(+), 46 deletions(-) diff --git a/app/api/mobile/apis/projects.rb b/app/api/mobile/apis/projects.rb index 04863c6e5..8f6e7d96d 100644 --- a/app/api/mobile/apis/projects.rb +++ b/app/api/mobile/apis/projects.rb @@ -102,8 +102,8 @@ module Mobile present :master_members,master_members, with: Mobile::Entities::ProjectMember present :develop_members,develop_members, with: Mobile::Entities::ProjectMember present :report_members,report_members, with: Mobile::Entities::ProjectMember - present :report_members,review_master_members - present :report_members,review_develop_members + present :review_master_members,review_master_members + present :review_develop_members,review_develop_members present :status, 0 end @@ -207,7 +207,7 @@ module Mobile authenticate! ps = ProjectsService.new - reviewer = ps.get_reviewer_info(params) + reviewer = ps.get_reviewer_info params present :data, reviewer, with: Mobile::Entities::User present :status, 0 end diff --git a/app/api/mobile/entities/project.rb b/app/api/mobile/entities/project.rb index 55ab67be2..073f7cd0f 100644 --- a/app/api/mobile/entities/project.rb +++ b/app/api/mobile/entities/project.rb @@ -5,7 +5,7 @@ module Mobile expose :id expose :user_id expose :invite_code - # expose :qrcode + expose :qrcode expose :can_setting, if: lambda { |instance, options| options[:user] } do |instance, options| current_user = options[:user] diff --git a/app/models/applied_project.rb b/app/models/applied_project.rb index 7597778f8..abab2ab6f 100644 --- a/app/models/applied_project.rb +++ b/app/models/applied_project.rb @@ -1,3 +1,4 @@ +#coding=utf-8 class AppliedProject < ActiveRecord::Base attr_accessible :project_id, :user_id, :role diff --git a/app/services/projects_service.rb b/app/services/projects_service.rb index a98c76839..7358bc15c 100644 --- a/app/services/projects_service.rb +++ b/app/services/projects_service.rb @@ -3,6 +3,9 @@ class ProjectsService include ApplicationHelper + include ApiHelper + include ActionView::Helpers::DateHelper + include ProjectsHelper #获取指定用户的项目列表 def user_projects(user) @@ -14,7 +17,7 @@ class ProjectsService def show_project(params,current_user) project = Project.find(params[:id]) project.generate_invite_code - # project.generate_qrcode + project.generate_qrcode project end @@ -187,7 +190,7 @@ class ProjectsService role_name: "", name: user.show_name, roles_id: role_id, - :brief_introduction => user.user_extensions.brief_introduction,:realname=>user.realname} + :brief_introduction => user.user_extensions.brief_introduction,:realname=>user.realname,:real_name=>user.realname} end end end @@ -199,8 +202,7 @@ class ProjectsService info = nil project = Project.find(params[:project_id]) if project - messages = AppliedProject.where("project_id = ? and user_id=?",project.id,params[:user_id]).first - + messages = AppliedProject.where(:project_id=> project.id, :user_id=>params[:user_id]).first if messages user = User.find(params[:user_id]) if user @@ -212,7 +214,7 @@ class ProjectsService :work_unit => work_unit, :mail => user.mail, :location => location, role_name: "", name: user.show_name, - roles_id: messages.role_id, + roles_id: messages.role, :brief_introduction => user.user_extensions.brief_introduction,:realname=>user.realname} end end @@ -238,7 +240,7 @@ class ProjectsService applied_project = apply_message.applied ap_role = applied_project.try(:role) if ap_role - rolename = ap_role == 3 ? :"管理人员" : "开发人员" + rolename = ap_role == 3 ? "管理人员" : "开发人员" if params[:type] == 0 #同意 members = [] diff --git a/config/menu.yml.production b/config/menu.yml.production index f97c27d7d..c1431172e 100644 --- a/config/menu.yml.production +++ b/config/menu.yml.production @@ -23,13 +23,13 @@ button: name: "更多" sub_button: - - type: "click" + type: "view" name: "加入班级" - key: "JOIN_CLASS" + url: "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8e1ab05163a28e37&redirect_uri=https://www.trustie.net/wechat/user_activities&response_type=code&scope=snsapi_base&state=join_class#wechat_redirect" - - type: "click" + type: "view" name: "加入项目" - key: "JOIN_PROJECT" + url: "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx8e1ab05163a28e37&redirect_uri=https://www.trustie.net/wechat/user_activities&response_type=code&scope=snsapi_base&state=join_project#wechat_redirect" - type: "view" name: "历史推文" diff --git a/config/menu.yml.test b/config/menu.yml.test index bdc47ba8d..dc4aacbe5 100644 --- a/config/menu.yml.test +++ b/config/menu.yml.test @@ -23,13 +23,13 @@ button: name: "更多" sub_button: - - type: "click" + type: "view" name: "加入班级" - key: "JOIN_CLASS" + url: "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxc09454f171153c2d&redirect_uri=https://test.forge.trustie.net/wechat/user_activities&response_type=code&scope=snsapi_base&state=join_class#wechat_redirect" - - type: "click" + type: "view" name: "加入项目" - key: "JOIN_PROJECT" + url: "https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxc09454f171153c2d&redirect_uri=https://test.forge.trustie.net/wechat/user_activities&response_type=code&scope=snsapi_base&state=join_project#wechat_redirect" - type: "view" name: "历史推文" diff --git a/public/assets/wechat/review_project_member.html b/public/assets/wechat/review_project_member.html index a78eace83..b03fdd276 100644 --- a/public/assets/wechat/review_project_member.html +++ b/public/assets/wechat/review_project_member.html @@ -1,12 +1,12 @@
-
+
{{project.name}}
-
项目邀请码
+
{{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
角色
    -
  • -
  • +
  • +
拒绝 diff --git a/public/javascripts/wechat/controllers/class_list.js b/public/javascripts/wechat/controllers/class_list.js index d27383a3b..98910242f 100644 --- a/public/javascripts/wechat/controllers/class_list.js +++ b/public/javascripts/wechat/controllers/class_list.js @@ -16,6 +16,27 @@ app.controller('ClassListController', ['$scope', 'config', 'auth', '$http', '$lo function (response) { console.log(response.data); vm.syllabuses = response.data.data; + + var show_1 = false; + var show_2 = false; + + for (var i in vm.syllabuses) { + if(vm.syllabuses[i].can_setting && vm.syllabuses[i].courses.length > 0 && show_1 == false ){ + vm.syllabuses[i].show_plus = true; + show_1 = true; + } + + if(!vm.syllabuses[i].can_setting && vm.syllabuses[i].courses.length > 0 && show_2 == false ){ + vm.syllabuses[i].show_plus = true; + show_2 = true; + } + + if(show_1 && show_2){ + break; + } + + } + rms.save('syllabuses', vm.syllabuses); } ); @@ -25,7 +46,6 @@ app.controller('ClassListController', ['$scope', 'config', 'auth', '$http', '$lo loadClassList(); } - vm.goClass = function (course_id) { console.log(course_id); $location.path("/class").search({id: course_id}); @@ -33,22 +53,23 @@ app.controller('ClassListController', ['$scope', 'config', 'auth', '$http', '$lo vm.newClass = function () { //先判断下权限 - $http.post(config.apiUrl + "syllabuses/auth",{token: auth.token()} ).then( - function (response) { - console.log(response.data); - if (response.data.auth == 0) { - vm.alertService_1.showMessage('提示', '非教师身份不能创建课程哦~'); - } - else{ - $location.path("/new_class"); - } - } - ); - } +// $http.post(config.apiUrl + "syllabuses/auth",{token: auth.token()} ).then( +// function (response) { +// console.log(response.data); +// if (response.data.auth == 0) { +// vm.alertService_1.showMessage('提示', '非教师身份不能创建课程哦~'); +// } +// else{ +// $location.path("/new_class"); +// } +// } +// ); + $location.path("/new_class"); + }; vm.goResource = function () { $location.path("/myresource"); - } + }; vm.joinClass = function () { // vm.alertService_3.showMessage('提示', '请输入5位班级邀请码(不区分大小写)', function(){ diff --git a/public/javascripts/wechat/controllers/homework.js b/public/javascripts/wechat/controllers/homework.js index 2898fc27f..d1547a091 100644 --- a/public/javascripts/wechat/controllers/homework.js +++ b/public/javascripts/wechat/controllers/homework.js @@ -12,7 +12,7 @@ app.controller('HomeworkController', ['$scope', '$http', '$routeParams', 'auth', replytype = data.type; page = data.page; - if (replytype == 0){ + if (replytype == 0){f if (page == 0){ $scope.homework = data.data; $scope.page = 0; diff --git a/public/javascripts/wechat/controllers/project.js b/public/javascripts/wechat/controllers/project.js index eded4ecc7..206730486 100644 --- a/public/javascripts/wechat/controllers/project.js +++ b/public/javascripts/wechat/controllers/project.js @@ -22,8 +22,8 @@ app.controller('ProjectController', ['$scope', 'config','$http','$timeout', 'aut // vm.review_master_members = rms.get("review_master_members") || []; // vm.review_develop_members = rms.get("review_master_members") || []; - vm.review_master_members = []; - vm.review_develop_members = []; + vm.review_master_members = rms.get("review_master_members") || []; + vm.review_develop_members = rms.get("review_develop_members") || []; // vm.project_members_has_more = rms.get("project_members_has_more"); @@ -33,6 +33,15 @@ app.controller('ProjectController', ['$scope', 'config','$http','$timeout', 'aut vm.invite = function(){ // vm.alertService.showMessage('提示', "该功能将在近日开放,敬请期待!"); + rms.save('project_activities_page',vm.project_activities_page); + rms.save("project_activities",vm.project_activities); + rms.save("project_has_more",vm.project_has_more); + rms.save("project",vm.project); + rms.save("project_master_members",vm.project_master_members); + rms.save("project_develop_members",vm.project_develop_members); + rms.save("project_report_members",vm.project_report_members); + rms.save("review_master_members",vm.review_master_members); + rms.save("review_develop_members",vm.review_develop_members); $location.path("/project_invite_code").search({id: projectid}); }; @@ -149,9 +158,11 @@ app.controller('ProjectController', ['$scope', 'config','$http','$timeout', 'aut if(tag){ vm.tab(2); tag = null; + vm.currentTab = 2; } else{ vm.tab(1); + vm.currentTab = 1; } } else{ @@ -162,8 +173,6 @@ app.controller('ProjectController', ['$scope', 'config','$http','$timeout', 'aut } } ); - vm.currentTab = 1; - vm.tab(vm.currentTab); } else { $timeout(function(){ window.scrollTo(0, rms.get("yoffset")); @@ -205,6 +214,8 @@ app.controller('ProjectController', ['$scope', 'config','$http','$timeout', 'aut rms.save("project_master_members",vm.project_master_members); rms.save("project_develop_members",vm.project_develop_members); rms.save("project_report_members",vm.project_report_members); + rms.save("review_master_members",vm.review_master_members); + rms.save("review_develop_members",vm.review_develop_members); $location.path("/edit_project_member").search({id: projectid,user_id: data.user.id}); }; @@ -212,6 +223,12 @@ app.controller('ProjectController', ['$scope', 'config','$http','$timeout', 'aut vm.review = function(user){ rms.save('current_review_member', user); rms.save('current_project', vm.project); + rms.save("project",vm.project); + rms.save("project_master_members",vm.project_master_members); + rms.save("project_develop_members",vm.project_develop_members); + rms.save("project_report_members",vm.project_report_members); + rms.save("review_master_members",vm.review_master_members); + rms.save("review_develop_members",vm.review_develop_members); $location.path("/review_project_member").search({id: projectid,user_id: user.id}); } diff --git a/public/javascripts/wechat/controllers/project_list.js b/public/javascripts/wechat/controllers/project_list.js index 0be66cd62..7471ca803 100644 --- a/public/javascripts/wechat/controllers/project_list.js +++ b/public/javascripts/wechat/controllers/project_list.js @@ -17,6 +17,10 @@ app.controller('ProjectListController', ['$scope', 'config', 'auth', '$http', '$ function (response) { console.log(response.data); vm.projects = response.data.data; + + + + rms.save('projects', vm.projects); } ); diff --git a/public/javascripts/wechat/controllers/review_class_member.js b/public/javascripts/wechat/controllers/review_class_member.js index 68f715447..6e8cb16eb 100644 --- a/public/javascripts/wechat/controllers/review_class_member.js +++ b/public/javascripts/wechat/controllers/review_class_member.js @@ -57,7 +57,7 @@ app.controller('ReviewClassMemberController', ['$scope', '$http', 'auth', 'confi }).then(function(response) { if (response.data.status == 0) { vm.alertService.showMessage('提示', response.data.message, function () { - $location.path("/class_list"); + $location.path("/class").search({id: course_id,tag:1}); }); } else{ diff --git a/public/javascripts/wechat/controllers/review_project_member.js b/public/javascripts/wechat/controllers/review_project_member.js index f5b554832..113aa426b 100644 --- a/public/javascripts/wechat/controllers/review_project_member.js +++ b/public/javascripts/wechat/controllers/review_project_member.js @@ -13,7 +13,7 @@ app.controller('ReviewProjectMemberController', ['$scope', '$http', 'auth', 'con var project_id = $routeParams.id; var user_id = $routeParams.user_id; - if(!vm.current_course){ + if(!vm.current_project){ $http.get(config.apiUrl+ 'projects/'+project_id+"?token="+auth.token()).then( function(response) { console.log(response.data); @@ -44,8 +44,6 @@ app.controller('ReviewProjectMemberController', ['$scope', '$http', 'auth', 'con console.log(response.data.data); } }); - - } vm.deal = function(result){ @@ -57,7 +55,13 @@ app.controller('ReviewProjectMemberController', ['$scope', '$http', 'auth', 'con }).then(function(response) { if (response.data.status == 0) { vm.alertService.showMessage('提示', response.data.message, function () { - $location.path("/project_list"); + rms.save("project_master_members",[]); + rms.save("project_develop_members",[]); + rms.save("project_report_members",[]); + rms.save("review_master_members",[]); + rms.save("review_develop_members",[]); + rms.save("tab_num",null); + $location.path("/project").search({id: project_id,tag:1}); }); } else{