diff --git a/app/api/mobile/apis/courses.rb b/app/api/mobile/apis/courses.rb index 402702659..575048211 100644 --- a/app/api/mobile/apis/courses.rb +++ b/app/api/mobile/apis/courses.rb @@ -208,9 +208,10 @@ module Mobile authenticate! cs = CoursesService.new - reviewer = cs.get_reviewer_info(params) - present :data, reviewer, with: Mobile::Entities::User - present :status, 0 + result = cs.get_reviewer_info(params) + + present :data, result[:reviewer], with: Mobile::Entities::User + present :status,result[:status] end desc "处理教师或助教的身份申请" diff --git a/app/api/mobile/apis/projects.rb b/app/api/mobile/apis/projects.rb index 8f6e7d96d..05d4036f9 100644 --- a/app/api/mobile/apis/projects.rb +++ b/app/api/mobile/apis/projects.rb @@ -207,9 +207,9 @@ module Mobile authenticate! ps = ProjectsService.new - reviewer = ps.get_reviewer_info params - present :data, reviewer, with: Mobile::Entities::User - present :status, 0 + result = ps.get_reviewer_info(params,current_user) + present :data, result[:reviewer], with: Mobile::Entities::User + present :status, result[:status] end desc "处理管理或开发的身份申请" diff --git a/app/services/courses_service.rb b/app/services/courses_service.rb index 2f5745892..c6854f3dd 100644 --- a/app/services/courses_service.rb +++ b/app/services/courses_service.rb @@ -152,12 +152,14 @@ class CoursesService end def get_reviewer_info params + status = -1 info = nil c = Course.find(params[:course_id]) if c - messages = CourseMessage.where("course_id=? and course_message_id = ? and course_message_type = 'JoinCourseRequest' and status = 0 ",params[:course_id],params[:user_id]).first - + messages = CourseMessage.where("course_id=? and course_message_id = ? and course_message_type = 'JoinCourseRequest' ",params[:course_id],params[:user_id]).last if messages + #status 0未处理 1同意 2 通过 + status = messages.status user = User.find(params[:user_id]) if user img_url = url_to_avatar(user) @@ -175,7 +177,7 @@ class CoursesService end end - info + {status:status,reviewer:info} end def deal_join_apply params,current_user diff --git a/app/services/projects_service.rb b/app/services/projects_service.rb index b1d917b08..1b342c122 100644 --- a/app/services/projects_service.rb +++ b/app/services/projects_service.rb @@ -198,12 +198,16 @@ class ProjectsService review_members end - def get_reviewer_info params + def get_reviewer_info params,current_user + status = -1 info = nil project = Project.find(params[:project_id]) if project - messages = AppliedProject.where(:project_id=> project.id, :user_id=>params[:user_id]).first - if messages + # messages = AppliedProject.where(:project_id=> project.id, :user_id=>params[:user_id]).first + #status 1未处理 5拒绝 7同意 + applied_message = AppliedMessage.where(:user_id => current_user.id, :project_id => project.id, :applied_user_id=>params[:user_id],:applied_type => "AppliedProject").last + if applied_message + status = applied_message.status user = User.find(params[:user_id]) if user img_url = url_to_avatar(user) @@ -214,13 +218,13 @@ class ProjectsService :work_unit => work_unit, :mail => user.mail, :location => location, role_name: "", name: user.show_name, - roles_id: messages.role, + roles_id: applied_message.role, :brief_introduction => user.user_extensions.brief_introduction,:realname=>user.realname} end end end - info + {status:status,reviewer:info} end def deal_join_apply params,current_user diff --git a/public/assets/wechat/review_class_member.html b/public/assets/wechat/review_class_member.html index 85d16fb64..06ce99018 100644 --- a/public/assets/wechat/review_class_member.html +++ b/public/assets/wechat/review_class_member.html @@ -1,16 +1,30 @@
-
{{current_course.name}}
-
{{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
-
角色
- -
- 拒绝 - 同意 +
+
{{current_course.name}}
+
{{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
+
角色
+
    +
  • +
  • +
+
+ 拒绝 + 同意 +
+
+
+
审批结果
+
该申请已被处理,处理情况如下: +
    +
  • 申请用户: {{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
  • +
  • 申请角色: {{current_review_member.roles_id == 7 ? "助教" : "教师" }}
  • +
  • 班级名称: {{current_course.name}}
  • +
  • 处理结果: {{status == 1 ? "同意" : "拒绝"}}
  • +
+
+
知道了
diff --git a/public/assets/wechat/review_project_member.html b/public/assets/wechat/review_project_member.html index e7c1dd6bf..d50a04fa4 100644 --- a/public/assets/wechat/review_project_member.html +++ b/public/assets/wechat/review_project_member.html @@ -1,16 +1,31 @@
-
{{current_project.name}}
-
{{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
-
角色
-
    -
  • -
  • -
-
- 拒绝 - 同意 +
+
{{current_project.name}}
+
{{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
+
角色
+
    +
  • +
  • +
+
+ 拒绝 + 同意 +
+
+ +
+
审批结果
+
该申请已被处理,处理情况如下: +
    +
  • 申请用户: {{current_review_member.realname == "" ? current_review_member.name : current_review_member.realname}}
  • +
  • 申请角色: {{current_review_member.roles_id == 3 ? "管理人员" : "开发人员" }}
  • +
  • 项目名称: {{current_project.name}}
  • +
  • 处理结果: {{status == 7 ? "同意" : "拒绝"}}
  • +
+
+
知道了
diff --git a/public/javascripts/wechat/controllers/review_class_member.js b/public/javascripts/wechat/controllers/review_class_member.js index ab44b9572..44704c32d 100644 --- a/public/javascripts/wechat/controllers/review_class_member.js +++ b/public/javascripts/wechat/controllers/review_class_member.js @@ -15,6 +15,7 @@ app.controller('ReviewClassMemberController', ['$scope', '$http', 'auth', 'confi var course_id = $routeParams.id; var user_id = $routeParams.user_id; + vm.status = 0; if(!vm.current_course){ $http.get(config.apiUrl+ 'courses/'+course_id+"?token="+auth.token()).then( @@ -42,20 +43,20 @@ app.controller('ReviewClassMemberController', ['$scope', '$http', 'auth', 'confi course_id: course_id, user_id:user_id }).then(function(response){ - if(response.data.status!=0){ + if(response.data.status==-1){ vm.alertService.showMessage('提示', response.data.message); } else { vm.current_review_member = response.data.data; + vm.status = response.data.status; console.log("review_member_info"); console.log(response.data.data); } if(!vm.current_review_member){ - vm.tip_2 = "该申请不存在或已被处理"; + vm.tip_2 = "该申请不存在"; } }); - } vm.deal = function(result){ @@ -67,7 +68,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").search({id: course_id,tag:1}); + $location.path("/class").search({id: course_id,tag: 1}); }); } else{ @@ -75,4 +76,8 @@ app.controller('ReviewClassMemberController', ['$scope', '$http', 'auth', 'confi } }); }; + + vm.goClassMemberList = function(){ + $location.path("/class").search({id: course_id,tag: 1}); + }; }] ); \ No newline at end of file diff --git a/public/javascripts/wechat/controllers/review_project_member.js b/public/javascripts/wechat/controllers/review_project_member.js index e6998a9d8..2428c09d0 100644 --- a/public/javascripts/wechat/controllers/review_project_member.js +++ b/public/javascripts/wechat/controllers/review_project_member.js @@ -15,6 +15,7 @@ app.controller('ReviewProjectMemberController', ['$scope', '$http', 'auth', 'con var project_id = $routeParams.id; var user_id = $routeParams.user_id; + vm.status = 1; if(!vm.current_project){ $http.get(config.apiUrl+ 'projects/'+project_id+"?token="+auth.token()).then( @@ -43,16 +44,17 @@ app.controller('ReviewProjectMemberController', ['$scope', '$http', 'auth', 'con project_id: project_id, user_id:user_id }).then(function(response){ - if(response.data.status!=0){ + if(response.data.status==-1){ vm.alertService.showMessage('提示', response.data.message); } else { + vm.status = response.data.status; vm.current_review_member = response.data.data; console.log("review_member_info"); console.log(response.data.data); } if(!vm.current_review_member){ - vm.tip_2 = "该申请不存在或已被处理"; + vm.tip_2 = "该申请不存在"; } }); } @@ -80,4 +82,14 @@ app.controller('ReviewProjectMemberController', ['$scope', '$http', 'auth', 'con } }); }; + + vm.goProjectMemberList = function(){ + 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}); + }; }] ); \ No newline at end of file