diff --git a/api/manage/manage.js b/api/manage/manage.js
index a827518..dcbfa3b 100644
--- a/api/manage/manage.js
+++ b/api/manage/manage.js
@@ -1,5 +1,5 @@
/** 管理端接口 **/
-import ajax from '../unionAjax.js';
+import ajax from './manageAjax.js';
const baseURL ="/manageApi";
/**用户的待办任务数量*/
diff --git a/api/manage/manageAjax.js b/api/manage/manageAjax.js
new file mode 100644
index 0000000..275d010
--- /dev/null
+++ b/api/manage/manageAjax.js
@@ -0,0 +1,158 @@
+import config from '@/config/index.js'
+import {toLogin} from '@/utils/tologin.js'
+import {getToken,removeToken} from '@/utils/token.js'
+import qs from 'qs'
+
+const ReLoginUrl="/login";
+
+const formatUrl=function(url){
+ return url;
+ // if(url.startsWith('http') || url.startsWith('https')){
+ // //console.log(url,"我拿到的url值,我想知道下面有啥方法")
+ // return url;
+ // }else{
+ // return config.oldApiBaseUrl+url
+ // }
+}
+const formRequest=function(method,url,data){
+ let token=getToken();
+ if(!token){
+ token='';
+ }
+ let headers={
+ 'content-type':'application/x-www-form-urlencoded',
+ 'token':token
+ }
+ let reUrl=formatUrl(url);
+ return new Promise(function(resolve, reject){
+ uni.request({
+ url: reUrl,
+ method,
+ data: data,
+ xhrFields: {withCredentials: true},
+ dataType: 'json',
+ header: headers,
+ success:function(rs,statusCode){
+ if(rs.statusCode==200){
+ if(rs.data.code==1000){
+ //uni.removeStorageSync('userInfo');
+ removeToken();
+ let loginPath=config.loginPath;
+ if(loginPath.startsWith('http')){
+ // #ifdef APP-PLUS
+ plus.runtime.openURL(loginPath) //这里默认使用外部浏览器打开而不是内部web-view组件打开
+ // #endif
+ // #ifdef H5
+ //window.open(loginPath)
+ let returnUrl=window.location.protocol+'//'+window.location.host+config.context;
+ location.href=config.loginPath+"?returnUrl="+encodeURIComponent(returnUrl+'/pages/login/loading');
+ // #endif
+ }else{
+ uni.redirectTo({
+ url:loginPath
+ })
+ }
+ }else{
+ resolve(rs.data);
+ }
+ }else{
+ reject("API请求错误");
+ }
+ },
+ fail:function(err){
+ reject(err);
+ }
+ });
+ });
+
+}
+const jsonRequest=function(method,url,data){
+ let token=getToken();
+ if(!token){
+ token='';
+ }
+ let headers={
+ 'token':token
+ }
+ let reUrl=formatUrl(url);
+ return new Promise(function(resolve, reject){
+ uni.request({
+ url: reUrl,
+ method,
+ data: data,
+ xhrFields: {withCredentials: true},
+ dataType: 'json',
+ header: headers,
+ success:function(rs,statusCode){
+ if(rs.statusCode==200){
+ //console.log(rs.data,'rs.data')
+ if(rs.data.code==1000){
+ removeToken();
+ toLogin(reUrl);
+ }else{
+ resolve(rs.data);
+ }
+ }else{
+ reject("API请求错误");
+ }
+ },
+ fail:function(err){
+ reject(err);
+ }
+ });
+ });
+}
+//get请求
+const get=function(url){
+ return formRequest('GET',url,'');
+}
+//post请求
+const post=function(url,data){
+ if(data){
+ data=qs.stringify(data);
+ }
+ return formRequest('POST',url,data);
+}
+//postJson请求
+const postJson=function(url,json){
+ return jsonRequest('POST',url,json);
+}
+//put请求
+const put=function(url,data){
+ if(data){
+ data=qs.stringify(data);
+ }
+ return formRequest('PUT',url,data);
+}
+//putJson请求
+const putJson=function(url,json){
+ return jsonRequest('PUT',url,json);
+}
+//patch请求
+const patch=function(url,data){
+ if(data){
+ data=qs.stringify(data);
+ }
+ return formRequest('PATCH',url,data);
+}
+//patchJson请求
+const patchJson=function(url,json){
+ return jsonRequest('PATCH',url,json);
+}
+//delete请求
+const del=function(url,data){
+ if(data){
+ data=qs.stringify(data);
+ }
+ return formRequest('DELETE',url,data);
+}
+export default {
+ get,
+ post,
+ postJson,
+ put,
+ putJson,
+ patch,
+ patchJson,
+ del
+}
\ No newline at end of file
diff --git a/api/unionAjax.js b/api/unionAjax.js
index 9971dbe..1da306c 100644
--- a/api/unionAjax.js
+++ b/api/unionAjax.js
@@ -1,4 +1,5 @@
import config from '@/config/index.js'
+import {toLogin} from '@/utils/tologin.js'
import {getToken,removeToken} from '@/utils/token.js'
import qs from 'qs'
@@ -36,21 +37,7 @@ const formRequest=function(method,url,data){
if(rs.data.status==6001){
//uni.removeStorageSync('userInfo');
removeToken();
- let loginPath=config.loginPath;
- if(loginPath.startsWith('http')){
- // #ifdef APP-PLUS
- plus.runtime.openURL(loginPath) //这里默认使用外部浏览器打开而不是内部web-view组件打开
- // #endif
- // #ifdef H5
- //window.open(loginPath)
- let returnUrl=window.location.protocol+'//'+window.location.host+config.context;
- location.href=config.loginPath+"?returnUrl="+encodeURIComponent(returnUrl+'/pages/login/loading');
- // #endif
- }else{
- uni.redirectTo({
- url:loginPath
- })
- }
+ toLogin(reUrl);
}else{
resolve(rs.data);
}
@@ -86,21 +73,7 @@ const jsonRequest=function(method,url,data){
if(rs.statusCode==200){
if(rs.data.status==6001){
removeToken();
- let loginPath=config.loginPath;
- if(loginPath.startsWith('http')){
- // #ifdef APP-PLUS
- plus.runtime.openURL(loginPath) //这里默认使用外部浏览器打开而不是内部web-view组件打开
- // #endif
- // #ifdef H5
- //window.open(loginPath)
- let returnUrl=window.location.protocol+'//'+window.location.host+config.context;
- location.href=config.loginPath+"?returnUrl="+encodeURIComponent(returnUrl+'/pages/login/loading');
- // #endif
- }else{
- uni.redirectTo({
- url:loginPath
- })
- }
+ toLogin(reUrl);
}else{
resolve(rs.data);
}
diff --git a/manifest.json b/manifest.json
index 961fcd6..67d7d99 100644
--- a/manifest.json
+++ b/manifest.json
@@ -81,8 +81,16 @@
"^/systemapi" : ""
}
},
+ "/manageApi" : {
+ "target" : "https://u-pre.boe.com",
+ "changeOrigin" : true,
+ "secure" : false,
+ "pathRewrite" : {
+ "^/manageApi" : "/manageApi"
+ }
+ },
"/uboeApi" : {
- "target" : "http://u-pre.boe.com",
+ "target" : "https://u-pre.boe.com",
"changeOrigin" : true,
"secure" : false,
"pathRewrite" : {
diff --git a/pages.json b/pages.json
index 08be094..2021dc5 100644
--- a/pages.json
+++ b/pages.json
@@ -6,7 +6,8 @@
//pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pageS
"pages": [
{"path" : "pages/login/loading","style" : { "navigationBarTitleText": "正在加载","enablePullDownRefresh": false}},
- {"path" : "pages/index/index","style": {"navigationBarTitleText": "首页","app-plus":{"titleNView":false}}},
+ {"path" : "pages/index/index","style": {"navigationBarTitleText": "首页","app-plus":{"titleNView":false}}},
+ {"path" : "pages/forward","style": {"navigationBarTitleText": "正在打开","app-plus":{"titleNView":false}}},
{"path" : "pages/resource/index","style": {"navigationBarTitleText": "资源","enablePullDownRefresh": false,"onReachBottomDistance": 50 }},
{"path" : "pages/resource/search","style": {"navigationBarTitleText": "资源搜索"}},
{"path" : "pages/resource/articeDetail","style": {"navigationBarTitleText": "文章详细"}},
diff --git a/pages/forward.vue b/pages/forward.vue
new file mode 100644
index 0000000..6c2edb3
--- /dev/null
+++ b/pages/forward.vue
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pages/study/index.vue b/pages/study/index.vue
index e0c11bd..3ce3964 100644
--- a/pages/study/index.vue
+++ b/pages/study/index.vue
@@ -260,6 +260,7 @@
import apicourseStudy from "../../api/modules/courseStudy.js"
import apiCoursePortal from '@/api/modules/coursePortal.js'
import apiBoeCourse from '@/api/boe/course.js';
+ import apiManage from '@/api/manage/manage.js';
import { formatDate } from '@/utils/tools.js';
import apiUser from '@/api/system/user.js'
import { mapGetters } from 'vuex'
@@ -413,7 +414,7 @@
let $this = this;
if (this.tabIndex == 0) {
if (this.taskHasMore) {
- this.taskPageSize++;
+ this.taskPageIndex++;
this.loadBoeData(false);
}
@@ -585,10 +586,20 @@
},
// 学习任务跳转详情
loaddetail(task) {
+ // uni.navigateTo({
+ // url: '/pages/study/loaddetail?id=' + task.cmtask_id
+ // });
+ let taskUrl='';
+ if(task.cmtask_type==1){ //学习路径图
+ let params=encodeURIComponent('routerId='+task.cmtask_id);
+ taskUrl='/pages/forward?to=/student-h5/pathdetails¶ms='+params;
+ }else if(task.cmtask_type==2){ //学习项目
+ let params=encodeURIComponent('projectId='+task.cmtask_id);
+ taskUrl='/pages/forward?to=/student-h5/projectdetails¶ms='+params;
+ }
uni.navigateTo({
- url: '/pages/study/loaddetail?id=' + task.cmtask_id
+ url: taskUrl
});
- // window.open(`/loaddetail?id=${task.cmtask_id}`)
},
loadBoeData(flag) {
@@ -605,29 +616,58 @@
if (this.cmtask_name) {
params.cmtask_name = this.keyWord;
}
- apiBoeCourse.cmtaskList(params).then(res => {
- this.taskCount = res.result.count;
- res.result.list.forEach(item => {
- let time = this.formatDate(item.created_at * 1000);
- item.created_at = time.split(' ')[0];
- });
- this.couresList.push(...res.result.list);
- if (this.taskCount > this.taskPageIndex * this.taskPageSize) {
- this.taskHasMore = true;
- } else {
- this.taskHasMore = false;
+
+ apiManage.userTaskList(params).then(res => {
+ if(res.code==200){
+ this.taskCount = parseInt(res.data.total);
+ this.couresList.push(...res.data.records);
+ if (this.taskCount > this.taskPageIndex * this.taskPageSize) {
+ this.taskHasMore = true;
+ } else {
+ this.taskHasMore = false;
+ }
+ if (this.isOne) {
+ this.value = this.taskCount;
+ }
+ if (this.isOne && res.result.records.length == 0) {
+ this.tabIndex = 1;
+ }
+ this.isOne = false;
+ }else{
+ uni.showToast({
+ title: '获取任务失败',
+ icon: 'none'
+ });
}
- if (this.isOne) {
- this.value = res.result.count;
- }
- if (this.isOne && res.result.list.length == 0) {
- this.tabIndex = 1;
- }
- this.isOne = false;
-
+
+
}).catch(err => {
-
+
})
+
+ // apiBoeCourse.cmtaskList(params).then(res => {
+ // this.taskCount = res.result.count;
+ // res.result.list.forEach(item => {
+ // let time = this.formatDate(item.created_at * 1000);
+ // item.created_at = time.split(' ')[0];
+ // });
+ // this.couresList.push(...res.result.list);
+ // if (this.taskCount > this.taskPageIndex * this.taskPageSize) {
+ // this.taskHasMore = true;
+ // } else {
+ // this.taskHasMore = false;
+ // }
+ // if (this.isOne) {
+ // this.value = res.result.count;
+ // }
+ // if (this.isOne && res.result.list.length == 0) {
+ // this.tabIndex = 1;
+ // }
+ // this.isOne = false;
+
+ // }).catch(err => {
+
+ // })
},
loadUserInfos(list, userIds) {
const noReapetIds = [...new Set(userIds)];