Compare commits

..

53 Commits

Author SHA1 Message Date
huweihang
caa9ee848e fix: 更新SignupModal中的studentList映射以包含realName 2025-12-18 15:25:45 +08:00
赵依梦
47036beb64 Merge branch '251114-feature-course-online' of https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal into 251114-feature-course-online 2025-12-18 14:11:55 +08:00
赵依梦
632aaf8e75 1期问题修改 2025-12-18 14:11:38 +08:00
huweihang
436bb99814 fix: 更新CourseManage组件中的受众id映射,以使用groupId而不是id 2025-12-18 14:10:08 +08:00
赵依梦
5d2d8fcac6 Merge branch '251114-feature-course-online' of https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal into 251114-feature-course-online 2025-12-18 11:58:54 +08:00
赵依梦
4277f985b0 1期问题修改 2025-12-18 11:58:36 +08:00
huweihang
0bbbbeb0ee feat: 新增根据关键字检索用户的API,增强用户选择功能
(cherry picked from commit f2e188c0e6)
2025-12-17 22:50:40 +08:00
huweihang
ea6ed74746 style: 调整受众弹窗表格列宽和数据映射,优化用户界面 2025-12-17 22:35:07 +08:00
赵依梦
2389b06f28 1期toast提示ui调整 2025-12-17 20:37:49 +08:00
赵依梦
523b5fd801 1期toast提示ui调整 2025-12-17 18:49:59 +08:00
huweihang
32874683e2 feat: 新增获取全量机构树的API,优化SignupModal和ManageListRemote组件的组织树交互逻辑
(cherry picked from commit a9b36884c3)
2025-12-17 18:49:09 +08:00
赵依梦
6c0d1de13d Merge branch '251114-feature-course-online' of https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal into 251114-feature-course-online 2025-12-17 18:08:47 +08:00
赵依梦
c4fdebe811 1期ui优化 2025-12-17 18:08:17 +08:00
huweihang
d6132738d5 fix: 修改删除报名记录的确认提示文本,更新删除API调用以包含学生ID
(cherry picked from commit e176769174)
2025-12-17 17:45:40 +08:00
huweihang
b2654f5501 feat: 增强报名管理功能,新增删除课程学习记录API,优化受众选择弹窗的多选逻辑和搜索功能
(cherry picked from commit 5f518b713a)
2025-12-17 17:45:33 +08:00
huweihang
be730deef2 style: 更新对话框样式,调整按钮尺寸和间距,增强用户界面一致性
(cherry picked from commit b2395fd3a2)
2025-12-17 11:39:19 +08:00
huweihang
a6c389b80b style: 添加滚动条样式并调整选区区域的类名以提升用户体验 2025-12-17 02:07:14 +08:00
huweihang
e8615ff1db style: 受众弹窗宽度修改 2025-12-17 01:54:41 +08:00
huweihang
9e4f2038f0 feat: 增加报名管理功能,支持添加和删除报名记录,优化受众选择弹窗逻辑 2025-12-17 01:54:17 +08:00
huweihang
3a35a475dd feat: 添加新的受众选择和报名功能,新增多个API请求,更新样式以优化用户体验 2025-12-17 01:44:01 +08:00
huweihang
32e83b6f97 style: 调整index.scss以优化对话框和按钮的样式;更新ManageListRemote.vue以增强下拉框的交互体验和过滤功能。 2025-12-17 01:42:34 +08:00
赵依梦
626f1dbd21 一期问题修改 2025-12-16 18:13:21 +08:00
huweihang
80299d231e [FIX]"全部"移除
(cherry picked from commit 2f1ea68c70)
2025-12-16 15:20:09 +08:00
赵依梦
f2d57c8d98 一期问题修改 2025-12-16 14:12:46 +08:00
huweihang
f9c69d074c style: 更新index.scss以增强按钮的颜色对比度;调整ManageListRemote.vue中的过滤器布局,优化用户体验。
(cherry picked from commit c9c714ddfa)
2025-12-15 17:30:55 +08:00
赵依梦
ce4259b0be 教师端1期 姓名搜索组件 2025-12-15 15:32:50 +08:00
赵依梦
bee726ebd2 教师端1期问题修复 2025-12-14 18:22:48 +08:00
huweihang
07506d0fff [FIX]置顶修改、表格居中修改
(cherry picked from commit ffeb5bf0b6)
2025-12-12 23:32:26 +08:00
赵依梦
5a1d03b02d 教师端部门展示ui调整 学习时间还原 2025-12-12 19:32:27 +08:00
赵依梦
915d90f368 教师端1期问题修复 2025-12-12 18:17:39 +08:00
huweihang
a953c02028 style: 更新ManageListRemote.vue以动态计算授课教师列的最小宽度,优化输入框的最大长度限制,增强用户体验;调整index.scss以修正列表项文本对齐方式。
(cherry picked from commit f680e1c394)
2025-12-12 18:14:29 +08:00
huweihang
3bb96d29b1 style: 调整ManageListRemote.vue中的选择器样式,优化课程管理界面的操作按钮布局,增强用户体验;更新index.scss以修正列表项内文本对齐方式。
(cherry picked from commit ef926e6418)
2025-12-12 17:21:04 +08:00
huweihang
5454ead5cf style: 更新样式以优化课程管理界面,调整消息框和过滤器布局,增强用户体验。
(cherry picked from commit 2d06dde984)
2025-12-12 15:14:17 +08:00
赵依梦
9ae159d047 教师端1期问题修复 2025-12-12 10:09:36 +08:00
huweihang
794177b358 [FIX]新增 tooltip
(cherry picked from commit 5cd85a3e15)
2025-12-12 09:15:14 +08:00
huweihang
4c1c9b2afe [FIX]资源归属样式修改
(cherry picked from commit 89364b1aef)
2025-12-12 09:15:09 +08:00
huweihang
574897263c style: 添加自定义确认对话框样式,优化ManageListRemote.vue的过滤器布局与样式,更新课程管理相关功能以提升用户体验。
(cherry picked from commit a34f87410f)
2025-12-12 09:14:53 +08:00
huweihang
489f4d6559 feat: 添加课程管理相关功能,新增显示置顶功能的API接口,并优化ManageListRemote.vue的过滤器布局与样式,提升用户体验。
(cherry picked from commit 361675c369)
2025-12-12 09:14:38 +08:00
赵依梦
8eb678e180 教师端1期需求ui优化 2025-12-11 18:07:58 +08:00
赵依梦
bc8c0004f8 教师端1期需求ui优化 2025-12-11 12:01:08 +08:00
huweihang
2bd430aee2 [FIX]授课教师、全部资源归属、创建人最大长度修改 2025-12-10 18:54:04 +08:00
huweihang
5dcb12f26a Enhance ManageListRemote.vue: 更新输入框占位符,强制设置输入框最大长度,改进教师与创作者选项标签,并应用自定义滚动条样式以提升界面一致性。 2025-12-10 15:05:13 +08:00
huweihang
52d51a53fd [FXI]在线管理列表函数打印 2025-12-10 10:48:46 +08:00
huweihang
d125990697 feat: 添加课程管理新版组件及路由,更新ManageListRemote.vue以优化查询按钮文本和二维码功能 2025-12-09 18:29:09 +08:00
huweihang
83665ae4ed style #app样式修改 2025-12-08 21:54:01 +08:00
huweihang
b259082c10 Update scrollbar 滚动条样式:增加边框半径并调整尺寸以提高美观度。 2025-12-08 21:50:35 +08:00
huweihang
48cb64df63 Refactor ManageListRemote.vue: 使用管理列表的新类更新布局,重构过滤器操作,并增强分页和滚动条的样式。 2025-12-08 21:46:14 +08:00
赵依梦
223e3abe43 教师端1期需求 2025-12-07 11:32:25 +08:00
赵依梦
e7581efddf Merge branch '251114-feature-course-online' of https://codeup.aliyun.com/67762337eccfc218f6110e0e/vue/learning-system-portal into 251114-feature-course-online
# Conflicts:
#	src/api/modules/course.js
#	src/data/pages.js
2025-12-07 11:17:47 +08:00
赵依梦
57b233601d 教师端1期需求 2025-12-07 11:03:44 +08:00
huweihang
e53da5d324 feat:新增用户检索功能,更新课程管理页面,添加课程置顶排序组件,优化课程管理列表,支持新课程管理视图。 2025-12-05 17:40:09 +08:00
陈昱达
e6b319bce3 Merge remote-tracking branch 'origin/master' into 251114-feature-course-online
# Conflicts:
#	src/views/portal/course/Index.vue
2025-11-18 10:09:54 +08:00
赵依梦
c11fb55ce3 课程列表侧边栏修改 课程详情评分修改 课程详情章节目录修改 2025-11-17 16:11:14 +08:00
607 changed files with 4789 additions and 49163 deletions

View File

@@ -1 +0,0 @@
60ab8a4b97b446b2dcd32889

16408
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@@ -54,8 +54,7 @@
"vue-pdf": "^4.2.0",
"vue-quill-editor": "^3.0.6",
"vue-router": "^3.5.2",
"vuex": "^3.6.2",
"wangeditor": "^4.7.15"
"vuex": "^3.6.2"
},
"devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0",

View File

@@ -87,16 +87,4 @@
border: 1px solid #e7e7e7 !important;
box-shadow: 0px 1px 5px 1px rgba(92,98,111,.3);
}
#app {
pointer-events: none;
}
#app > *:not(.case-expert-dialog) {
pointer-events: auto;
}
.case-expert-dialog {
pointer-events: auto;
}
</style>

View File

@@ -19,93 +19,88 @@ import errorCode from '@/utils/errorCode'
// const ReLoginUrl=process.env.VUE_APP_LOGIN_URL;
const TokenName = 'XBOE-Access-Token';
const TokenName='XBOE-Access-Token';
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
//用于普通的发送请求
const formRequest = axios.create({
// headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
// baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 60000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code === 401) {
//Message({message: msg, type: 'error'});
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = this.webBaseUrl + ReLoginUrl;
} else {
window.location.href = this.webBaseUrl + ReLoginUrl;
}
// location.href = this.webBaseUrl + ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
return res.data
}
}
},
error => {
const formRequest=axios.create({
// headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
// baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 60000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if(code===200){
return res.data
}else{
if(code === 401){
//Message({message: msg, type: 'error'});
store.dispatch('LogOut').then(() => {
location.href = this.webBaseUrl + ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
return res.data
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "网络异常或接口错误,请求超时";
message = "网络异常或接口错误,请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
}
)
/**
* request请求,可以自定义参数
*/
const request = formRequest.request;
const request=formRequest.request;
/**
* get请求 ,只有url
*/
const get = function (baseURL, url) {
return request({
baseURL,
url: url,
method: 'get',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
})
const get = function(baseURL,url){
return request({
baseURL,
url: url,
method: 'get',
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
}
/**
@@ -113,61 +108,61 @@ const get = function (baseURL, url) {
* @param {Object} url
* @param {Object} postData
*/
const post = function (baseURL, url, postData) {
if (postData) {
postData = qs.stringify(postData);
const post=function(baseURL,url,postData){
if(postData){
postData=qs.stringify(postData);
}
return request({
baseURL,
url: url,
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
baseURL,
url: url,
method: 'post',
data:postData,
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
}
//post请求
const postForm = function (baseURL, url, data) {
return request({
baseURL,
url,
data,
method: 'post',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
});
}
const postForm=function(baseURL,url,data){
return request({
baseURL,
url,
data,
method: 'post',
headers:{'Content-Type':'application/x-www-form-urlencoded'}
});
}
// const postJson=jsonRequest.post;
const postJson = function (baseURL, url, postData) {
const postJson=function(baseURL,url,postData){
return request({
baseURL,
url: url,
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/json;charset=utf-8' },
baseURL,
url: url,
method: 'post',
data:postData,
headers:{'Content-Type':'application/json;charset=utf-8'},
})
}
const postPdf = function (baseURL, url, postData) {
const postPdf=function(baseURL,url,postData){
return request({
baseURL,
url: url,
responseType: 'blob',
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/pdf' },
baseURL,
url: url,
responseType: 'blob',
method: 'post',
data:postData,
headers:{'Content-Type':'application/pdf'},
})
}
// 导出文件请求定义
const postJsonToFile = function (baseURL, url, postData) {
const postJsonToFile=function(baseURL,url,postData){
return request({
baseURL,
url: url,
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/json;charset=utf-8' },
responseType: 'blob'
baseURL,
url: url,
method: 'post',
data:postData,
headers:{'Content-Type':'application/json;charset=utf-8'},
responseType: 'blob'
})
}
@@ -175,39 +170,39 @@ const postJsonToFile = function (baseURL, url, postData) {
/**
* put请求
*/
const put = function (baseURL, url, data) {
if (data) {
data = qs.stringify(data);
const put=function(baseURL,url,data){
if(data){
data=qs.stringify(data);
}
return request({
baseURL,
url: url,
method: 'put',
data: data,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
baseURL,
url: url,
method: 'put',
data:data,
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
}
const putJson = function (baseURL, url, data) {
const putJson=function(baseURL,url,data){
return request({
baseURL,
url: url,
method: 'put',
data: data,
headers: { 'Content-Type': 'application/json;charset=utf-8' },
baseURL,
url: url,
method: 'put',
data:data,
headers:{'Content-Type':'application/json;charset=utf-8'},
})
}
export default {
tokenName: TokenName,
request,
get,
post,
postJson,
postJsonToFile,
put,
putJson,
postPdf,
tokenName:TokenName,
request,
get,
post,
postJson,
postJsonToFile,
put,
putJson,
postPdf,
}

View File

@@ -28,9 +28,3 @@ export function getChatMessages(conversationId) {
export function showCaseAiEntrance() {
return ajax.get('/xboe/m/boe/case/ai/show-entrance')
}
export function likeMsg(data) {
return ajax.postJson('/xboe/m/boe/case/ai/likeMsg',data)
}
export function msgFeedback(data) {
return ajax.postJson('/xboe/m/boe/case/ai/msgFeedback',data)
}

View File

@@ -19,95 +19,90 @@ import errorCode from '@/utils/errorCode'
// const ReLoginUrl=process.env.VUE_APP_LOGIN_URL;
const TokenName = 'token';
const TokenName='token';
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
//用于普通的发送请求
const formRequest = axios.create({
// headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
// baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 10000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
let curToken = getToken();
//curToken='eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2NzIzMTE2MTIsImV4cCI6MTY3MjMxODgxMiwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.a4f41376e994c5fcd3ab537ce17572ef4c633863f87785cf7b6ffa353e2ed51c';
if (curToken && !isToken) {
config.headers[TokenName] = curToken // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
//console.log(res);
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code === 401) {
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = this.webBaseUrl + ReLoginUrl;
} else {
window.location.href = this.webBaseUrl + ReLoginUrl;
}
// location.href = this.webBaseUrl + ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
return res.data
}
}
},
error => {
console.log('err', error)
const formRequest=axios.create({
// headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
// baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 10000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
let curToken=getToken();
//curToken='eyJ0eXBlIjoidG9rZW4iLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOlwvXC91LmJvZS5jb20iLCJpYXQiOjE2NzIzMTE2MTIsImV4cCI6MTY3MjMxODgxMiwiR2l2ZW5OYW1lIjoiYm9ldSIsInVzZXJJZCI6IjZCMDQ5RkFGLUMzMTQtN0NDRi0wRDI4LTBEMjNGNEM0MjUzMSIsInVJZCI6Ijk2NTM0MjAyNzQ5NzYwNzE2OCIsInBlcm1pc3Npb24iOiIifQ==.a4f41376e994c5fcd3ab537ce17572ef4c633863f87785cf7b6ffa353e2ed51c';
if (curToken && !isToken) {
config.headers[TokenName] = curToken // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
//console.log(res);
const code = res.data.status || 200;
if(code===200){
return res.data
}else{
if(code === 401){
store.dispatch('LogOut').then(() => {
location.href = this.webBaseUrl + ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
return res.data
}
}
},
error => {
console.log('err',error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "网络异常或接口错误,请求超时";
message = "网络异常或接口错误,请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
}
)
/**
* request请求,可以自定义参数
*/
const request = formRequest.request;
const request=formRequest.request;
/**
* get请求 ,只有url
*/
const get = function (baseURL, url) {
return request({
baseURL,
url: url,
method: 'get',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
})
const get = function(baseURL,url){
return request({
baseURL,
url: url,
method: 'get',
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
}
/**
@@ -115,49 +110,49 @@ const get = function (baseURL, url) {
* @param {Object} url
* @param {Object} postData
*/
const post = function (baseURL, url, postData) {
if (postData) {
postData = qs.stringify(postData);
const post=function(baseURL,url,postData){
if(postData){
postData=qs.stringify(postData);
}
return request({
baseURL,
url: url,
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
baseURL,
url: url,
method: 'post',
data:postData,
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
}
//post请求
const postForm = function (baseURL, url, data) {
return request({
baseURL,
url,
data,
method: 'post',
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
});
}
const postForm=function(baseURL,url,data){
return request({
baseURL,
url,
data,
method: 'post',
headers:{'Content-Type':'application/x-www-form-urlencoded'}
});
}
// const postJson=jsonRequest.post;
const postJson = function (baseURL, url, postData) {
const postJson=function(baseURL,url,postData){
return request({
baseURL,
url: url,
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/json' },
baseURL,
url: url,
method: 'post',
data:postData,
headers:{'Content-Type':'application/json'},
})
}
// 导出文件请求定义
const postJsonToFile = function (baseURL, url, postData) {
const postJsonToFile=function(baseURL,url,postData){
return request({
baseURL,
url: url,
method: 'post',
data: postData,
headers: { 'Content-Type': 'application/json;charset=utf-8' },
responseType: 'blob'
baseURL,
url: url,
method: 'post',
data:postData,
headers:{'Content-Type':'application/json;charset=utf-8'},
responseType: 'blob'
})
}
@@ -165,38 +160,38 @@ const postJsonToFile = function (baseURL, url, postData) {
/**
* put请求
*/
const put = function (baseURL, url, data) {
if (data) {
data = qs.stringify(data);
const put=function(baseURL,url,data){
if(data){
data=qs.stringify(data);
}
return request({
baseURL,
url: url,
method: 'put',
data: data,
headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
baseURL,
url: url,
method: 'put',
data:data,
headers:{'Content-Type':'application/x-www-form-urlencoded'}
})
}
const putJson = function (baseURL, url, data) {
const putJson=function(baseURL,url,data){
return request({
baseURL,
url: url,
method: 'put',
data: data,
headers: { 'Content-Type': 'application/json;charset=utf-8' },
baseURL,
url: url,
method: 'put',
data:data,
headers:{'Content-Type':'application/json;charset=utf-8'},
})
}
export default {
tokenName: TokenName,
request,
get,
post,
postJson,
postJsonToFile,
put,
putJson,
tokenName:TokenName,
request,
get,
post,
postJson,
postJsonToFile,
put,
putJson,
}

View File

@@ -18,201 +18,191 @@ import errorCode from '@/utils/errorCode'
*delete请求 axios.delete(url[, config])
*/
const ReLoginUrl = process.env.VUE_APP_LOGIN_URL;
const TokenName = 'token';
const ReLoginUrl=process.env.VUE_APP_LOGIN_URL;
const TokenName='token';
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
const jsonRequest = axios.create({
headers: { 'Content-Type': 'application/json;charset=utf-8' },
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_BOE_BASE_API,
//超时
timeout: 10000,
const jsonRequest=axios.create({
headers:{'Content-Type':'application/json;charset=utf-8'},
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_BOE_BASE_API,
//超时
timeout: 10000,
});
//发送json对象的拦截器
jsonRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
console.log(error)
Promise.reject(error)
})
// 响应拦截器
jsonRequest.interceptors.response.use(res => {
const code1 = res.data.status || 200;
const code = parseInt(code1);
if (code === 200) {
return res.data
} else {
if (code == 6001) { //对方是字符串,所以这里不要使用三个等号
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = ReLoginUrl;
} else {
window.location.href = ReLoginUrl;
}
// location.href = ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
//return res.data;
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err:' + res.data.error);
//return Promise.reject(new Error(res.data.message))
return res.data;
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
//location.href = this.webBaseUrl + ReLoginUrl;
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
const code1 = res.data.status || 200;
const code=parseInt(code1);
if(code===200){
return res.data
}else{
if(code == 6001){ //对方是字符串,所以这里不要使用三个等号
store.dispatch('LogOut').then(() => {
location.href = ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
//return res.data;
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err:' + res.data.error);
//return Promise.reject(new Error(res.data.message))
return res.data;
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
//location.href = this.webBaseUrl + ReLoginUrl;
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
//用于普通的发送请求
const formRequest = axios.create({
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_BOE_BASE_API,
//超时
timeout: 10000,
const formRequest=axios.create({
headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_BOE_BASE_API,
//超时
timeout: 10000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code == 6001) { //对方是字符串,所以这里不要使用三个等号
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = ReLoginUrl;
} else {
window.location.href = ReLoginUrl;
}
// location.href = ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
//return Promise.reject(new Error(res.data.message))
return res.data;//返回给用户做业务处理
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
//location.href = this.webBaseUrl + ReLoginUrl;
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
const code = res.data.status || 200;
if(code===200){
return res.data
}else{
if(code == 6001){ //对方是字符串,所以这里不要使用三个等号
store.dispatch('LogOut').then(() => {
location.href = ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
//return Promise.reject(new Error(res.data.message))
return res.data;//返回给用户做业务处理
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
//location.href = this.webBaseUrl + ReLoginUrl;
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
//request请求
const request = function (cfg) {
if (cfg.data) {
cfg.data = qs.stringify(cfg.data);
const request=function(cfg){
if(cfg.data){
cfg.data=qs.stringify(cfg.data);
}
};
//requestJson请求
const requestJson = jsonRequest.request;
const requestJson=jsonRequest.request;
//get请求
const get = formRequest.request;
const get=formRequest.request;
//post请求
const post = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const post=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.post(url, data, config);
return formRequest.post(url,data,config);
}
//postJson请求
const postJson = jsonRequest.post;
const postJson=jsonRequest.post;
//put请求
const put = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const put=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.put(url, data, config);
return formRequest.put(url,data,config);
}
//putJson请求
const putJson = jsonRequest.put;
const putJson=jsonRequest.put;
//patch请求
const patch = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const patch=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.patch(url, data, config);
return formRequest.patch(url,data,config);
}
//patchJson请求
const patchJson = jsonRequest.patch;
const patchJson=jsonRequest.patch;
//delete请求
const del = formRequest.delete;
const del=formRequest.delete;
export default {
request,
requestJson,
get,
post,
postJson,
put,
putJson,
patch,
patchJson,
del
request,
requestJson,
get,
post,
postJson,
put,
putJson,
patch,
patchJson,
del
}

View File

@@ -16,196 +16,186 @@ import errorCode from '@/utils/errorCode'
*patchJson请求 axios.patch(url[, data[, config]])
*delete请求 axios.delete(url[, config])
*/
const ReLoginUrl = "/login";
const TokenName = 'XBOE-Access-Token';
const ReLoginUrl="/login";
const TokenName='XBOE-Access-Token';
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
const jsonRequest = axios.create({
headers: { 'Content-Type': 'application/json;charset=utf-8' },
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 10000,
const jsonRequest=axios.create({
headers:{'Content-Type':'application/json;charset=utf-8'},
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 10000,
});
//发送json对象的拦截器
jsonRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
console.log(error)
Promise.reject(error)
})
// 响应拦截器
jsonRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code === 401) {
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = this.webBaseUrl + ReLoginUrl;
} else {
window.location.href = this.webBaseUrl + ReLoginUrl;
}
// location.href = this.webBaseUrl + ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err:' + res.data.error);
return res.data;
//return Promise.reject(new Error(res.data.message))
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
const code = res.data.status || 200;
if(code===200){
return res.data
}else{
if(code === 401){
store.dispatch('LogOut').then(() => {
location.href = this.webBaseUrl + ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err:' + res.data.error);
return res.data;
//return Promise.reject(new Error(res.data.message))
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
//用于普通的发送请求
const formRequest = axios.create({
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 10000,
const formRequest=axios.create({
headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_CESOURCE_BASE_API,
//超时
timeout: 10000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code === 401) {
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = this.webBaseUrl + ReLoginUrl;
} else {
window.location.href = this.webBaseUrl + ReLoginUrl;
}
// location.href = this.webBaseUrl + ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
const code = res.data.status || 200;
if(code===200){
return res.data
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
}else{
if(code === 401){
store.dispatch('LogOut').then(() => {
location.href = this.webBaseUrl + ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
return res.data
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
//request请求
const request = function (cfg) {
if (cfg.data) {
cfg.data = qs.stringify(cfg.data);
const request=function(cfg){
if(cfg.data){
cfg.data=qs.stringify(cfg.data);
}
};
//requestJson请求
const requestJson = jsonRequest.request;
const requestJson=jsonRequest.request;
//get请求
const get = formRequest.request;
const get=formRequest.request;
//post请求
const post = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const post=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.post(url, data, config);
return formRequest.post(url,data,config);
}
//postJson请求
const postJson = jsonRequest.post;
const postJson=jsonRequest.post;
//put请求
const put = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const put=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.put(url, data, config);
return formRequest.put(url,data,config);
}
//putJson请求
const putJson = jsonRequest.put;
const putJson=jsonRequest.put;
//patch请求
const patch = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const patch=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.patch(url, data, config);
return formRequest.patch(url,data,config);
}
//patchJson请求
const patchJson = jsonRequest.patch;
const patchJson=jsonRequest.patch;
//delete请求
const del = formRequest.delete;
const del=formRequest.delete;
export default {
request,
requestJson,
get,
post,
postJson,
put,
putJson,
patch,
patchJson,
del
request,
requestJson,
get,
post,
postJson,
put,
putJson,
patch,
patchJson,
del
}

View File

@@ -17,195 +17,185 @@ import errorCode from '@/utils/errorCode'
*delete请求 axios.delete(url[, config])
*/
const ReLoginUrl = "/login";
const TokenName = 'XBOE-Access-Token';
const ReLoginUrl="/login";
const TokenName='XBOE-Access-Token';
/**axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded'**/
//只是用于发送json对象数据时使用post,put,patch
const jsonRequest = axios.create({
headers: { 'Content-Type': 'application/json;charset=utf-8' },
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_STAT_BASE_API,
//超时
timeout: 10000,
const jsonRequest=axios.create({
headers:{'Content-Type':'application/json;charset=utf-8'},
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_STAT_BASE_API,
//超时
timeout: 10000,
});
//发送json对象的拦截器
jsonRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
console.log(error)
Promise.reject(error)
})
// 响应拦截器
jsonRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code === 401) {
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = this.webBaseUrl + ReLoginUrl;
} else {
window.location.href = this.webBaseUrl + ReLoginUrl;
}
// location.href = this.webBaseUrl + ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err:' + res.data.error);
return res.data;
//return Promise.reject(new Error(res.data.message))
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
const code = res.data.status || 200;
if(code===200){
return res.data
}else{
if(code === 401){
store.dispatch('LogOut').then(() => {
location.href = this.webBaseUrl + ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err:' + res.data.error);
return res.data;
//return Promise.reject(new Error(res.data.message))
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
//用于普通的发送请求
const formRequest = axios.create({
headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_STAT_BASE_API,
//超时
timeout: 10000,
const formRequest=axios.create({
headers:{'Content-Type':'application/x-www-form-urlencoded'},
// axios中请求配置有baseURL选项表示请求URL公共部分
baseURL: process.env.VUE_APP_STAT_BASE_API,
//超时
timeout: 10000,
})
//发送json对象的拦截器
formRequest.interceptors.request.use(config => {
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
//是否需要设置 token
const isToken = (config.headers || {}).isToken === false
if (getToken() && !isToken) {
config.headers[TokenName] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
}
return config
}, error => {
console.log(error)
Promise.reject(error)
console.log(error)
Promise.reject(error)
});
formRequest.interceptors.response.use(res => {
const code = res.data.status || 200;
if (code === 200) {
return res.data
} else {
if (code === 401) {
store.dispatch('LogOut').then(() => {
if (top !== window) { // 判断当前是否在iframe内
top.location.href = this.webBaseUrl + ReLoginUrl;
} else {
window.location.href = this.webBaseUrl + ReLoginUrl;
}
// location.href = this.webBaseUrl + ReLoginUrl;
})
} else if (code === 403) {
var msg = '当前操作没有权限';
Message({ message: msg, type: 'error' });
return Promise.reject(new Error(msg))
} else {
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
const code = res.data.status || 200;
if(code===200){
return res.data
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
}else{
if(code === 401){
store.dispatch('LogOut').then(() => {
location.href = this.webBaseUrl + ReLoginUrl;
})
}else if(code===403){
var msg='当前操作没有权限';
Message({message: msg, type: 'error'});
return Promise.reject(new Error(msg))
}else{
//Message({message: res.data.message, type: 'error'});
//console.log('err' + res.data.error);
return res.data
}
}
},
error => {
console.log('err' + error)
let { message } = error;
if (message == "Network Error") {
message = "网络异常,请稍后重试";
}
else if (message.includes("timeout")) {
message = "系统接口请求超时";
}
else if (message.includes("Request failed with status code")) {
message = "系统接口" + message.substr(message.length - 3) + "异常";
}
Message({
message: message,
type: 'error',
duration: 5 * 1000
})
return Promise.reject(error)
}
)
//request请求
const request = function (cfg) {
if (cfg.data) {
cfg.data = qs.stringify(cfg.data);
const request=function(cfg){
if(cfg.data){
cfg.data=qs.stringify(cfg.data);
}
};
//requestJson请求
const requestJson = jsonRequest.request;
const requestJson=jsonRequest.request;
//get请求
const get = formRequest.request;
const get=formRequest.request;
//post请求
const post = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const post=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.post(url, data, config);
return formRequest.post(url,data,config);
}
//postJson请求
const postJson = jsonRequest.post;
const postJson=jsonRequest.post;
//put请求
const put = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const put=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.put(url, data, config);
return formRequest.put(url,data,config);
}
//putJson请求
const putJson = jsonRequest.put;
const putJson=jsonRequest.put;
//patch请求
const patch = function (url, data, config) {
if (data) {
data = qs.stringify(data);
const patch=function(url,data,config){
if(data){
data=qs.stringify(data);
}
return formRequest.patch(url, data, config);
return formRequest.patch(url,data,config);
}
//patchJson请求
const patchJson = jsonRequest.patch;
const patchJson=jsonRequest.patch;
//delete请求
const del = formRequest.delete;
const del=formRequest.delete;
export default {
request,
requestJson,
get,
post,
postJson,
put,
putJson,
patch,
patchJson,
del
request,
requestJson,
get,
post,
postJson,
put,
putJson,
patch,
patchJson,
del
}

View File

@@ -34,48 +34,9 @@ const userRsSginupCourse = function(data){
return ajax.postJson(baseURL,'/stu/project/stuCancelEnrollment',data);
}
/**
* 获取学员指定新员工转正项目的bpm审批状况
* {studentId,pid}
* add by zhengsongbo on 2025-07-12
*/
const getStudntProjectInfo = function(pid){
return ajax.get(baseURL,`/stu/project/queryStudentInfo?pid=${pid}`);
}
/**
* BPM项目立即报名
* pid
* add by zhengsongbo on 2025-07-13
*/
const signUpBpmProjectNow = function(pid){
return ajax.get(baseURL,`/stu/project/signUpBpmProjectNow?pid=${pid}`);
}
/**
* BPM项目重新报名
* pid
* add by zhengsongbo on 2025-07-13
*/
const signUpBpmProjectAgain = function(data){
return ajax.postJson(baseURL,'/stu/project/signUpBpmProjectAgain',data);
}
/**
* 社招新员工
* add by zhengsongbo on 2025-07-14
*/
const getNewSocialHireProject = function(){
return ajax.get(baseURL,'/stu/project/getNewSocialHireProject');
}
export default {
getTaskNum,
userTaskList,
userDeleteStudy,
userRsSginupCourse,
getStudntProjectInfo,
signUpBpmProjectNow,
signUpBpmProjectAgain,
getNewSocialHireProject
userRsSginupCourse
}

View File

@@ -4,7 +4,7 @@
*
**/
import ajax from '@/utils/xajax.js'
import ajax2 from '../unionAjax.js';
/**
* 保存课程基本信息,新增和更新都是此方式
* @param {Object} data
@@ -488,14 +488,6 @@ const courseList = function(data) {
}
// ai播放器相关 - 批量AI设置
const benchAiSet=function(data){
return ajax.postJson('/xboe/m/course/manage/benchAiSet',data);
}
const listByUser=function(data){
return ajax2.get('/manageApi/admin/thirdApi/permission/listByUser?permissionType=PAGE');
}
export default {
saveBase,
submitCourse,
@@ -544,8 +536,5 @@ export default {
queryCrowd,
ids,
saveTip,
benchAiSet,
courseList,
listByUser,
courseList
}

View File

@@ -1,91 +0,0 @@
import ajax from '../ajax';
/**
* 获取欢迎页数据
*/
export function getWelcomeData() {
return ajax.get('/manageApi/stu/project/socialRecruit/enroll/getStudentEnrollInfo')
}
/**
* 报名审批
*/
export function enrollRequest() {
return ajax.get('/manageApi/stu/project/socialRecruit/enroll/socialRecruitRegistrationRequest')
}
/**
* 获取学习列表
* @param {Object} params - 参数对象
* @param {string} params.type - 类型:''全部, 'course'在线课, 'exam'考试
* @param {string} params.status - 状态:''全部, 'completed'已完成, 'incomplete'未完成
* @param {number} params.pageIndex - 页码
* @param {number} params.pageSize - 每页条数
*/
export function getStudyList(params) {
return ajax.postJson('/boe/new-employee/study/list', params)
}
/**
* 获取学习进度
*/
export function getStudyProgress() {
return ajax.get('/boe/new-employee/study/progress')
}
/**
* 下载成绩单
*/
export function downloadScorecard() {
// 使用request方法支持responseType: 'blob'
return ajax.request({
url: '/boe/new-employee/study/scorecard/download',
method: 'get',
responseType: 'blob'
})
}
/**
* 获取社招新员工项目信息
* GET
*/
export function getSzxygProjectInfo() {
return ajax.get('/manageApi/admin/project/getSzxygProjectInfo')
}
/**
* 社招新员工培训及考试列表查询
* POST
* @param {Object} params
* @param {number} params.pageNo - 页码
* @param {number} params.pageSize - 每页条数
* @param {string|number} params.studentId - 学员ID
* @param {string|number} params.projectId - 项目ID
*/
export function getStuProjectTaskList(data) {
return ajax.postJson('', '/manageApi/stu/project/getStuProjectTaskList', data)
}
/**
* 学员项目进度明细查询
* POST
* @param {string|number} params.studentId - 学员ID
* @param {string|number} params.projectId - 项目ID
*/
export function getStuProjectProcess(data) {
return ajax.postJson('', `/manageApi/stu/project/getStuProjectTaskProgress`, data)
}
/**
* 社招新员工培训在线课程成绩单下载
* GET
* @param {string|number} projectId - 项目ID
* @param {string|number} studentId - 学员ID
*/
export function downloadSocialRecruitReport(projectId, studentId) {
return ajax.request({
url: `/manageApi/stu/project/socialRecruit/report/download?projectId=${projectId}&studentId=${studentId}`,
method: 'get',
responseType: 'arraybuffer',
})
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

View File

@@ -1,98 +0,0 @@
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd" >
<!--
2013-9-30: Created.
-->
<svg>
<metadata>
Created by iconfont
</metadata>
<defs>
<font id="iconfont" horiz-adv-x="1024" >
<font-face
font-family="iconfont"
font-weight="500"
font-stretch="normal"
units-per-em="1024"
ascent="896"
descent="-128"
/>
<missing-glyph />
<glyph glyph-name="lianxikefu" unicode="&#58953;" d="M928 310.656c0 67.328-40.832 125.024-98.592 151.456-4.8 170.752-144.288 310.24-317.408 310.24-173.152 0-312.608-137.056-317.408-310.208C136.864 435.68 96 377.984 96 310.656a166.24 166.24 0 0 1 165.92-165.92h4.8c12.032 0 24.064 12 24.064 24.032v283.744c0 12.032-12.032 24.032-24.064 24.032h-21.632c9.6 137.056 125.024 247.68 266.912 247.68 141.92 0 257.28-110.624 269.344-250.08h-24.096c-12 0-24-12.032-24-24.032V176c-76.96-84.192-182.784-132.288-295.808-132.288-14.432 0-24.032-9.632-24.032-24.032 0-14.432 9.632-24.032 24.032-24.032 127.488 0 247.68 55.328 331.84 149.088 88.96 4.8 158.72 76.928 158.72 165.92zM240.256 195.264a116.384 116.384 0 0 0-96.16 115.392c0 57.696 40.864 105.792 98.592 115.392v-230.816h-2.432z m541.088 0v230.816c55.328-9.632 98.56-57.728 98.56-115.392 0-57.76-43.232-105.856-98.56-115.424z" horiz-adv-x="1024" />
<glyph glyph-name="huidaodingbu" unicode="&#58957;" d="M866.7 800H157.3c-17.8 0-32.2-14.4-32.2-32.2 0-17.8 14.4-32.2 32.2-32.2h709.5c17.8 0 32.2 14.4 32.2 32.2 0 17.8-14.4 32.2-32.3 32.2zM512 671c-16.5 0-33-6.3-45.6-18.9L169.9 355.7c-5.8-5.8-9.4-13.9-9.4-22.8s3.6-17 9.4-22.8c5.8-5.8 13.9-9.4 22.8-9.4s17 3.6 22.8 9.4l264.2 264.2v-574c0-17.8 14.4-32.2 32.2-32.2 17.8 0 32.2 14.4 32.2 32.2v574l264.2-264.2c5.8-5.8 13.9-9.4 22.8-9.4s17 3.6 22.8 9.4c5.8 5.8 9.4 13.9 9.4 22.8s-3.6 17-9.4 22.8L557.6 652.1C545 664.7 528.5 671 512 671z" horiz-adv-x="1024" />
<glyph glyph-name="shijian" unicode="&#59678;" d="M512 746.666667A362.666667 362.666667 0 1 0 149.333333 384 362.666667 362.666667 0 0 0 512 746.666667m0 42.666666a405.333333 405.333333 0 1 1 405.333333-405.333333A405.333333 405.333333 0 0 1 512 789.333333zM490.666667 597.333333h42.666666v-256h-42.666666zM490.666667 384h213.333333v-42.666667H490.666667z" horiz-adv-x="1024" />
<glyph glyph-name="SCORM" unicode="&#58916;" d="M717.738667 418.474667a128.426667 128.426667 0 0 1-49.194667 4.010666c1.28 8.661333 1.877333 17.621333 1.877333 26.666667 0 100.266667-77.226667 181.546667-172.373333 181.546667s-172.416-81.237333-172.416-181.546667c0-9.045333 0.597333-18.005333 1.834667-26.666667a131.498667 131.498667 0 0 1-49.194667-3.968c-57.813333-16.341333-100.437333-71.893333-100.437333-137.856 0-74.410667 54.058667-135.594667 123.136-142.08v-0.554666h369.450666v0.512c4.053333-0.341333 8.106667-0.512 12.330667-0.512 74.794667 0 135.466667 63.872 135.466667 142.634666-0.085333 65.962667-42.666667 121.514667-100.48 137.813334z m0.896 52.949333c84.864-17.536 148.778667-96.384 148.778666-190.890667 0-103.082667-76.16-187.434667-172.373333-194.133333v-0.426667H300.970667v0.426667c-96.298667 6.698667-172.373333 91.050667-172.373334 194.133333 0 94.506667 63.957333 173.226667 148.778667 190.890667C288.042667 589.994667 382.72 682.666667 497.962667 682.666667s210.048-92.672 220.672-211.2z m-290.986667-100.010667h140.714667c15.530667 0 28.117333-11.562667 28.117333-25.984 0-14.293333-12.586667-25.941333-28.117333-25.941333h-140.714667c-15.488 0-28.074667 11.562667-28.074667 25.941333-0.085333 14.336 12.501333 26.026667 28.074667 26.026667z m0-103.808h140.714667c15.530667 0 28.117333-11.562667 28.117333-25.984 0-14.378667-12.586667-25.941333-28.117333-25.941333h-140.714667c-15.488 0-28.074667 11.562667-28.074667 25.941333 0 14.421333 12.501333 26.026667 28.074667 26.026667z" horiz-adv-x="1024" />
<glyph glyph-name="PDF" unicode="&#58917;" d="M733.098667 335.146667h-170.538667v-48.682667h170.538667a24.32 24.32 0 0 1 0 48.682667z m-0.042667 97.408h-170.496v-48.725334h170.496a24.32 24.32 0 0 1 0 48.725334z m0 97.365333h-170.496V481.28h170.496a24.32 24.32 0 0 1 0 48.682667z m24.32-24.32a24.362667 24.362667 0 0 1-24.32 24.32h-170.496V481.28h170.496a24.32 24.32 0 0 1 24.32 24.32z m-24.32-73.045333h-170.496v-48.725334h170.496a24.32 24.32 0 0 1 0 48.725334z m0-97.408h-170.496v-48.682667h170.538667a24.32 24.32 0 0 1 0 48.682667zM270.378667 578.858667V651.904c0 40.277333 32.682667 73.002667 72.96 73.002667h438.4c40.277333 0 73.130667-32.725333 73.045333-73.002667v-535.765333c0-40.277333-32.768-73.045333-73.045333-73.045334H343.381333a73.088 73.088 0 0 0-73.002666 73.045334v73.045333H221.653333c-3.114667 0-6.144 0.298667-9.088 0.853333 2.304-0.341333 4.650667-0.554667 7.04-0.554666h296.362667c2.986667 0 5.930667 0.298667 8.789333 0.853333a50.048 50.048 0 0 0-10.88-1.237333H319.018667v-73.045334c0-13.44 10.965333-24.32 24.32-24.32h438.4a24.32 24.32 0 0 1 24.32 24.32V651.648a24.32 24.32 0 0 1-24.32 24.32H343.381333a24.362667 24.362667 0 0 1-24.32-24.32V578.56M433.194667 379.306667c3.242667 4.309333 4.693333 12.16 4.266666 23.594666-0.341333 9.514667-2.133333 16.554667-5.205333 21.162667-3.072 4.565333-8.405333 6.826667-15.914667 6.826667H332.074667v-58.026667h84.266666c8.021333 0 13.653333 2.176 16.853334 6.485333z m-146.133334-98.688v194.56h139.264c12.885333 0 22.613333-2.005333 29.312-6.058667a42.026667 42.026667 0 0 0 14.421334-13.269333c2.986667-4.821333 5.077333-10.197333 6.357333-16.085334 1.28-5.930667 2.048-13.525333 2.304-22.784 0.213333-9.386667 0.256-18.816 0.042667-28.202666-0.384-14.592-1.92-25.642667-4.650667-33.152a39.68 39.68 0 0 0-10.922667-17.152 34.218667 34.218667 0 0 0-14.634666-7.68 102.698667 102.698667 0 0 0-21.76-1.749334h-94.72v-48.426666H287.061333zM539.136 574.762667l-1.024 0.512a46.762667 46.762667 0 0 1-20.48 4.693333H217.898667c-10.88 0-21.376-3.754667-29.824-10.624-0.384-0.341333-0.810667-0.64-1.194667-1.066667a49.066667 49.066667 0 0 1-16.128-36.437333v-295.68a49.28 49.28 0 0 1 40.021333-48.341333c2.346667-0.341333 4.693333-0.554667 7.125334-0.554667h299.776c2.986667 0 5.973333 0.256 8.874666 0.853333 21.888 4.992 38.272 24.618667 38.272 47.957334V531.626667c0 18.602667-10.368 34.816-25.685333 43.136z m-16.426667-338.688a7.210667 7.210667 0 0 0-4.778666-6.698667 6.826667 6.826667 0 0 0-0.298667 0H217.813333a7.168 7.168 0 0 0-4.992 6.784v295.68c0 2.474667 1.152 4.096 2.133334 5.12a4.992 4.992 0 0 0 2.944 0.896h299.733333c0.682667 0 1.28-0.085333 1.834667-0.298667a6.997333 6.997333 0 0 0 3.242666-5.973333v-295.509333z" horiz-adv-x="1024" />
<glyph glyph-name="shipin" unicode="&#58918;" d="M899.285333 0.469333a83.626667 83.626667 0 0 0-34.218666 8.362667l-4.266667 2.133333-3.328 3.328c-1.066667 1.024-106.112 105.386667-138.837333 136.277334-21.845333 20.608-26.026667 40.746667-25.6 54.058666 0.64 23.296 14.634667 38.229333 19.754666 42.922667l152.234667 151.850667 6.186667 2.176c10.666667 3.797333 20.053333 5.589333 28.629333 5.589333 21.674667 0 32.853333-11.477333 37.589333-18.346667a41.173333 41.173333 0 0 0 7.296-22.784v-336.682666l-4.352-7.04c-8.533333-13.866667-23.509333-21.845333-41.088-21.845334z m-147.754666 203.776c0.128 0-0.384-0.896-0.426667-1.28 0-0.64 1.237333-4.266667 7.381333-10.112a10683.306667 10683.306667 0 0 0 128.170667-125.653333v271.744l-135.125333-134.741333zM603.136 0.512H109.994667c-27.562667 0-51.882667 18.432-64.981334 49.28l-2.304 5.461333v266.624l4.352 6.997334c15.530667 25.173333 38.442667 39.594667 62.933334 39.594666h493.098666c32.725333 0 59.306667-25.898667 59.306667-57.770666v-252.458667c0.042667-31.829333-26.581333-57.728-59.306667-57.728zM100.821333 67.797333c3.541333-6.272 7.253333-9.173333 9.173334-9.173333h493.098666c1.066667 0 1.450667 0.426667 1.450667 0.426667l-0.213333 251.648-494.336-0.341334c-2.133333 0-5.632-2.218667-9.173334-6.186666v-236.373334zM510.805333 457.642667A155.392 155.392 0 0 0 355.413333 612.565333a155.349333 155.349333 0 0 0 155.434667 154.922667 155.392 155.392 0 0 0 155.477333-154.88 155.392 155.392 0 0 0-155.477333-154.965333z m0 247.168c-50.986667 0-92.501333-41.386667-92.501333-92.245334a92.501333 92.501333 0 0 1 185.045333 0 92.458667 92.458667 0 0 1-92.544 92.245334zM200.704 444.074667A116.309333 116.309333 0 0 0 84.48 560.298667a116.309333 116.309333 0 0 0 116.181333 116.181333 116.352 116.352 0 0 0 116.224-116.181333 116.352 116.352 0 0 0-116.224-116.224z m0 171.392a55.210667 55.210667 0 0 1 0-110.421334 55.253333 55.253333 0 0 1 0 110.421334z" horiz-adv-x="1024" />
<glyph glyph-name="yinpin" unicode="&#58919;" d="M655.445333 725.205333H236.672c-36.053333 0-65.493333-29.44-65.493333-65.493333v-551.04c0-36.053333 29.44-65.493333 65.493333-65.493333h551.04c36.053333 0 65.493333 29.44 65.493333 65.493333V527.445333l-197.76 197.76zM217.6 660.138667c0 10.368 8.704 19.072 19.072 19.072h362.368v-127.317334c0-45.184 36.906667-82.090667 82.133333-82.090666h125.610667v-360.704a19.285333 19.285333 0 0 0-19.072-19.072H236.672a19.285333 19.285333 0 0 0-19.072 19.072V660.138667zM645.546667 551.893333v118.186667l154.24-154.24h-118.186667a36.096 36.096 0 0 0-36.053333 36.053333zM370.602667 326.357333s0.426667 0 0 0h9.941333c8.32 0 14.933333 6.613333 14.933333 14.506667v87.893333a14.122667 14.122667 0 0 1-4.565333 10.368 14.378667 14.378667 0 0 1-10.368 4.138667h-9.514667a14.762667 14.762667 0 0 1-14.933333-14.506667v-87.893333c0-7.893333 6.613333-14.506667 14.506667-14.506667z m68.394666-52.224c0.426667 0 0.426667 0 0 0h9.984c8.277333 0 14.933333 6.613333 14.933334 14.506667V481.024a14.122667 14.122667 0 0 1-4.565334 10.368 14.378667 14.378667 0 0 1-10.368 4.138667h-9.557333a14.762667 14.762667 0 0 1-14.933333-14.506667v-192.426667c0-8.277333 6.656-14.506667 14.506666-14.506666z m205.653334 52.224s0.426667 0 0 0h9.984c8.277333 0 14.933333 6.613333 14.933333 14.506667v88.32a14.122667 14.122667 0 0 1-4.565333 10.368 14.378667 14.378667 0 0 1-10.368 4.138667h-9.557334a14.762667 14.762667 0 0 1-14.933333-14.506667v-87.893333c0-8.32 6.656-14.933333 14.506667-14.933334z m-68.394667-52.224h9.941333c8.32 0 14.933333 6.613333 14.933334 14.506667V481.024a14.762667 14.762667 0 0 1-14.933334 14.506667h-9.514666a14.762667 14.762667 0 0 1-14.933334-14.506667v-192.426667c0-8.277333 6.613333-14.506667 14.506667-14.506666z m-68.394667-39.424h9.514667c8.277333 0 14.933333 6.656 14.933333 14.506667V520.448a14.762667 14.762667 0 0 1-14.933333 14.506667h-9.514667a14.762667 14.762667 0 0 1-14.933333-14.506667v-270.762667c0-8.277333 6.613333-14.933333 14.933333-14.933333z" horiz-adv-x="1024" />
<glyph glyph-name="kejian" unicode="&#58920;" d="M827.989333 543.829333V591.914667c0 41.472-34.688 87.722667-81.28 87.722666h-234.069333l-9.557333 17.152a56.149333 56.149333 0 0 1-49.578667 28.288H203.776c-41.728 0-75.52-32.768-75.605333-73.386666v-449.621334c0.085333-40.533333 33.877333-73.386667 75.605333-73.386666h587.776c41.728 0 75.52 32.853333 75.605333 73.386666v276.053334a87.893333 87.893333 0 0 1-39.168 65.706666z m-81.237333 91.776c16.213333 0 34.56-23.253333 34.56-43.52v-30.549333c-0.725333 0.170667-1.536 0.170667-2.389333 0.170667h-200.064l-41.557334 73.898666h209.493334zM820.48 202.24a29.056 29.056 0 0 0-28.842667-29.354667H203.776a29.098667 29.098667 0 0 0-28.928 29.269334V651.818667a29.056 29.056 0 0 0 28.842667 29.354666h249.728a9.386667 9.386667 0 0 0 8.192-4.736l82.517333-147.2a23.594667 23.594667 0 0 1 20.650667-11.818666h214.058666c20.693333-3.754667 37.12-19.2 41.514667-39.253334l0.128-275.925333z" horiz-adv-x="1024" />
<glyph glyph-name="HTML" unicode="&#58921;" d="M772.394667 406.485333v337.493334c0 36.778667-29.909333 66.688-66.730667 66.688h-267.136l-50.133333-0.512-217.045334-216.533334v-484.266666c0-36.778667 29.909333-66.688 66.730667-66.688h467.626667c36.778667 0 66.688 29.909333 66.688 66.730666v29.909334H722.346667v-13.312a33.450667 33.450667 0 0 0-33.493334-33.493334H254.677333a33.450667 33.450667 0 0 0-33.493333 33.493334V543.488h150.357333c36.778667 0 66.730667 29.909333 66.730667 66.730667V760.576h250.538667c18.389333 0 33.493333-14.848 33.493333-33.493333v-320.853334h50.090667v0.256zM394.538667 629.418667a35.882667 35.882667 0 0 0-35.797334-35.84H248.789333l145.749334 145.749333v-109.909333zM369.237333 190.165333v59.605334h-55.466666v-59.605334H279.466667V332.373333h34.218666v-53.930666h55.466667v53.930666h34.304v-142.165333h-34.261333z m124.757334 113.024v-113.024h-34.261334v113.024h-40.106666v29.397334h114.773333v-29.44h-40.405333z m184.832-113.024l0.768 100.736h-0.512l-37.077334-100.693333h-24.021333l-36.053333 100.693333h-0.512l0.768-100.693333h-32.426667v142.08h48.810667l32.426666-91.221333h0.810667l30.933333 91.264h49.578667v-142.165334h-33.493333z m62.890666 0V332.373333h34.517334v-112.213333h54.954666v-29.952h-89.472z" horiz-adv-x="1024" />
<glyph glyph-name="kaoshi" unicode="&#58922;" d="M388.266667 345.941333a5.632 5.632 0 0 1-1.066667-1.92l-34.005333-128.682666a22.528 22.528 0 0 1 5.461333-21.248 20.906667 20.906667 0 0 1 20.48-5.546667l123.776 34.858667c0.213333 0 0.298667-0.170667 0.469333-0.170667a5.248 5.248 0 0 1 3.882667 1.621333l331.008 341.589334c9.856 10.197333 15.232 24.021333 15.232 39.082666 0 17.066667-6.997333 34.133333-19.285333 46.805334l-31.274667 32.298666a64 64 0 0 1-45.354667 19.925334c-14.592 0-27.989333-5.546667-37.888-15.701334l-330.88-341.76c-0.384-0.341333-0.256-0.810667-0.512-1.152z m417.706666 253.952l-32.853333-33.92-53.333333 55.893334 32.426666 33.450666c5.12 5.333333 15.018667 4.565333 20.906667-1.578666l31.274667-32.298667c3.242667-3.285333 5.077333-7.68 5.12-12.288 0-3.626667-1.237333-6.869333-3.541334-9.258667z m-358.826666-259.328l238.933333 246.528 53.333333-55.893333-238.464-246.101333-53.76 55.466666z m-43.52-99.968l17.322666 65.408 46.037334-47.530666-63.36-17.92z m405.162666 223.914667a23.936 23.936 0 0 1-23.637333-23.594667v-319.658666a29.269333 29.269333 0 0 0-29.354667-29.653334H246.613333c-16.213333 0-28.245333 12.970667-28.245333 29.653334V647.338667c0 16.725333 12.074667 29.312 28.245333 29.312h349.44c12.586667 0 22.826667 11.52 22.826667 24.533333 0 12.970667-10.24 24.149333-22.826667 24.149333H243.114667c-39.424 0-72.234667-33.706667-72.234667-74.453333v-533.205333c0-40.746667 32.768-75.008 72.277333-75.008h516.096c39.509333 0 73.088 34.261333 73.088 75.008v323.413333a23.893333 23.893333 0 0 1-23.552 23.466667v-0.042667z" horiz-adv-x="1024" />
<glyph glyph-name="zuoye" unicode="&#58923;" d="M272.682667 0.554667A59.221333 59.221333 0 0 0 213.546667 59.733333V604.842667c0 32.597333 26.538667 59.136 59.136 59.136h84.48l0.085333 1.066666a43.008 43.008 0 0 0 42.666667 41.514667h32.981333l0.085333 0.981333c3.712 34.133333 32.512 59.946667 66.816 59.904 34.346667 0 63.104-25.770667 66.816-59.904l0.085334-0.981333h33.024c22.912 0 42.026667-18.602667 42.666666-41.514667v-1.024h84.565334c15.786667 0 30.634667-6.186667 41.813333-17.365333 11.136-11.093333 17.408-26.112 17.365333-41.813333V59.733333c0-32.64-26.538667-59.178667-59.178666-59.178666H272.682667z m0 612.309333a8.064 8.064 0 0 1-8.021334-8.064V59.733333c0-4.437333 3.584-8.064 8.021334-8.064h454.229333a8.064 8.064 0 0 1 8.064 8.064V604.8a8.064 8.064 0 0 1-8.064 8.064h-84.864l-0.128-0.938667c-3.157333-20.650667-21.333333-36.181333-42.154667-36.181333H399.914667c-20.906667 0-38.997333 15.573333-42.197334 36.181333l-0.085333 0.938667h-84.906667z m127.189333 53.717333a2.773333 2.773333 0 0 1-2.730667-2.730666v-45.397334c0-1.493333 1.237333-2.730667 2.730667-2.730666h199.850667a2.688 2.688 0 0 1 2.730666 2.730666V663.850667a2.773333 2.773333 0 0 1-2.730666 2.730666h-41.813334l-0.298666-0.554666a67.584 67.584 0 0 0-57.813334-33.066667 67.584 67.584 0 0 0-57.813333 33.066667l-0.341333 0.554666h-41.770667z m99.925333 60.842667a27.306667 27.306667 0 1 1 0.085334-54.570667 27.306667 27.306667 0 0 1-0.085334 54.613334zM437.461333 431.146667a12.714667 12.714667 0 0 0-12.757333 12.757333v18.133333c0 7.04 5.717333 12.714667 12.757333 12.714667h218.026667c6.997333 0 12.714667-5.674667 12.714667-12.714667v-18.133333a12.757333 12.757333 0 0 0-12.714667-12.757333h-218.026667zM333.397333 452.992a30.72 30.72 0 1 1 61.44 0 30.72 30.72 0 0 1-61.44 0zM437.461333 300.586667a12.714667 12.714667 0 0 0-12.757333 12.757333v18.133333c0 7.04 5.717333 12.714667 12.757333 12.714667h218.026667c6.997333 0 12.714667-5.674667 12.714667-12.714667v-18.133333a12.757333 12.757333 0 0 0-12.714667-12.757333h-218.026667zM333.397333 322.432a30.72 30.72 0 1 1 61.44 0 30.72 30.72 0 0 1-61.44 0zM437.461333 166.186667a12.714667 12.714667 0 0 0-12.757333 12.757333v18.133333c0 7.04 5.717333 12.714667 12.757333 12.714667h218.026667c6.997333 0 12.714667-5.674667 12.714667-12.714667v-18.133333a12.757333 12.757333 0 0 0-12.714667-12.757333h-218.026667zM333.397333 188.032a30.72 30.72 0 1 1 61.44 0 30.72 30.72 0 0 1-61.44 0z" horiz-adv-x="1024" />
<glyph glyph-name="pinggu" unicode="&#58924;" d="M526.250667 725.034667v-47.957334a4.693333 4.693333 0 0 0 2.176-0.896c0.298667-0.597333 0.512-1.194667 0.810666-1.706666l81.792-166.229334c6.826667-13.781333 19.712-23.381333 34.773334-26.069333l182.826666-32 1.877334-0.256c0.341333 0 0.853333-0.426667 0.938666-0.725333a29.397333 29.397333 0 0 1 0.768-2.773334 4.266667 4.266667 0 0 0-0.853333-4.394666l-130.816-123.306667a47.914667 47.914667 0 0 1-14.250667-43.648l33.28-179.029333v-0.085334c0.256-1.792-1.237333-3.285333-2.133333-4.010666l-0.597333-0.469334a18.261333 18.261333 0 0 0-2.901334 1.109334l-166.229333 83.114666a47.786667 47.786667 0 0 1-42.752 0.085334l-167.552-83.114667c-0.469333-0.213333-0.853333-0.512-1.365333-0.725333-0.128 0-0.512-0.170667-1.109334-0.170667-0.597333 0-1.109333 0.085333-1.194666 0.170667a6.826667 6.826667 0 0 0-2.133334 3.626666v0.085334l34.56 179.114666c3.114667 16.213333-2.261333 32.853333-14.336 44.16L221.013333 440.746667a9.301333 9.301333 0 0 0-1.706666 5.717333c0.512 1.109333 0.981333 1.578667 1.194666 1.792 0.085333 0.085333 0.298667 0.213333 0.896 0.298667 0.896 0.085333 1.792 0.213333 2.56 0.426666L406.912 482.133333c14.933333 2.688 27.733333 12.373333 34.432 25.984L523.093333 674.133333c1.066667 2.133333 2.773333 2.816 3.072 2.816V725.034667h0.128z m0 0c-19.2 0-37.077333-11.52-46.08-29.354667L398.378667 529.408l-182.826667-33.28c-20.48-2.56-35.754667-16.554667-42.154667-35.712-5.12-17.92 0-39.68 14.08-53.76l131.669334-122.88-34.56-179.029333c-3.84-19.2 5.12-39.68 20.48-51.157334 8.576-6.485333 19.285333-9.685333 29.866666-9.685333 8.277333 0 16.469333 2.005333 23.765334 5.888l167.552 83.114667 166.229333-83.114667c7.68-3.797333 16.554667-6.4 24.277333-6.4 11.477333 0 21.76 3.84 29.354667 10.24 15.36 11.477333 24.277333 30.634667 20.48 51.114667l-33.28 179.029333 131.669333 124.074667c14.08 14.08 19.2 34.56 12.8 53.76-5.12 19.2-21.76 33.28-40.96 35.754666l-182.826666 32-81.792 166.186667c-7.594667 17.92-26.794667 29.44-45.952 29.44z" horiz-adv-x="1024" />
<glyph glyph-name="tiaocha" unicode="&#58925;" d="M482.133333 322.133333v6.4c0 17.066667 2.133333 32 10.666667 44.8 6.4 12.8 25.6 32 55.466667 57.6l8.533333 8.533334c8.533333 10.666667 12.8 21.333333 12.8 34.133333 0 17.066667-4.266667 29.866667-14.933333 38.4-10.666667 8.533333-23.466667 14.933333-40.533334 14.933333-21.333333 0-38.4-6.4-46.933333-19.2-8.533333-10.666667-12.8-27.733333-12.8-46.933333v-2.133333c0-12.8-10.666667-25.6-25.6-25.6s-25.6 10.666667-25.6 25.6v2.133333c0 34.133333 10.666667 59.733333 29.866667 81.066667 21.333333 19.2 49.066667 29.866667 85.333333 29.866666 32 0 55.466667-8.533333 74.666667-25.6 19.2-17.066667 29.866667-38.4 29.866666-66.133333 0-23.466667-6.4-42.666667-19.2-57.6-4.266667-4.266667-17.066667-17.066667-40.533333-36.266667-8.533333-6.4-14.933333-14.933333-21.333333-23.466666-4.266667-8.533333-8.533333-19.2-8.533334-29.866667v-12.8c0-12.8-12.8-23.466667-25.6-23.466667s-25.6 10.666667-25.6 25.6c0-2.133333 0 0 0 0zM512 42.666667c-187.733333 0-341.333333 153.6-341.333333 341.333333s153.6 341.333333 341.333333 341.333333 341.333333-153.6 341.333333-341.333333-153.6-341.333333-341.333333-341.333333z m0 49.066666c162.133333 0 292.266667 130.133333 292.266667 292.266667S674.133333 676.266667 512 676.266667 219.733333 546.133333 219.733333 384 349.866667 91.733333 512 91.733333z m-4.266667 177.066667c10.666667 0 19.2-2.133333 25.6-8.533333 6.4-6.4 10.666667-14.933333 10.666667-23.466667 0-10.666667-4.266667-17.066667-10.666667-23.466667-6.4-6.4-14.933333-8.533333-25.6-8.533333s-19.2 4.266667-25.6 10.666667a34.261333 34.261333 0 0 0-10.666666 23.466666c0 10.666667 4.266667 17.066667 10.666666 23.466667 8.533333 2.133333 17.066667 6.4 25.6 6.4z" horiz-adv-x="1024" />
<glyph glyph-name="yishoucang" unicode="&#58947;" d="M670.421333 725.333333a224.256 224.256 0 0 1-158.890666-65.749333A224.042667 224.042667 0 0 1 352.682667 725.333333a224.682667 224.682667 0 0 1-158.890667-383.530666l282.453333-282.410667a49.92 49.92 0 0 1 70.656 0l282.410667 282.453333A224.682667 224.682667 0 0 1 670.421333 725.333333z" horiz-adv-x="1024" />
<glyph glyph-name="shoucang" unicode="&#58949;" d="M670.421333 687.872c50.048 0 96.981333-19.456 132.394667-54.784a186.026667 186.026667 0 0 0 54.826667-132.394667 186.282667 186.282667 0 0 0-54.826667-132.437333l-282.410667-282.282667a12.501333 12.501333 0 0 0-8.874666-3.626666 12.885333 12.885333 0 0 0-8.832 3.626666l-282.325334 282.453334a186.026667 186.026667 0 0 0-54.784 132.394666c0 50.048 19.456 96.981333 54.784 132.394667A186.026667 186.026667 0 0 0 352.853333 688c50.048 0 96.938667-19.456 132.394667-54.784l26.453333-26.453333 26.453334 26.453333a185.941333 185.941333 0 0 0 132.309333 54.656z m0 37.461333a224.256 224.256 0 0 1-158.890666-65.749333A224.042667 224.042667 0 0 1 352.682667 725.333333a224.682667 224.682667 0 0 1-158.890667-383.530666l282.453333-282.410667a49.92 49.92 0 0 1 70.656 0l282.410667 282.453333A224.682667 224.682667 0 0 1 670.421333 725.333333z" horiz-adv-x="1024" />
<glyph glyph-name="kecheng" unicode="&#58950;" d="M256 682.666667a42.666667 42.666667 0 0 1-42.666667-42.666667v-512a42.666667 42.666667 0 0 1 42.666667-42.666667h512a42.666667 42.666667 0 0 1 42.666667 42.666667V640a42.666667 42.666667 0 0 1-42.666667 42.666667H256z m0 42.666666h512a85.333333 85.333333 0 0 0 85.333333-85.333333v-512a85.333333 85.333333 0 0 0-85.333333-85.333333H256a85.333333 85.333333 0 0 0-85.333333 85.333333V640a85.333333 85.333333 0 0 0 85.333333 85.333333zM384 682.666667v-298.666667l85.546667 82.304L552.405333 384V682.666667H384z m29.568-329.386667C386.474667 327.125333 341.333333 346.325333 341.333333 384V682.666667a42.666667 42.666667 0 0 0 42.666667 42.666666h168.405333a42.666667 42.666667 0 0 0 42.666667-42.666666v-298.666667c0-37.973333-45.781333-57.002667-72.704-30.293333l-53.333333 52.906666-55.466667-53.333333z" horiz-adv-x="1024" />
<glyph glyph-name="xunlianying" unicode="&#58951;" d="M256 682.666667a42.666667 42.666667 0 0 1-42.666667-42.666667v-512a42.666667 42.666667 0 0 1 42.666667-42.666667h512a42.666667 42.666667 0 0 1 42.666667 42.666667V640a42.666667 42.666667 0 0 1-42.666667 42.666667H256z m0 42.666666h512a85.333333 85.333333 0 0 0 85.333333-85.333333v-512a85.333333 85.333333 0 0 0-85.333333-85.333333H256a85.333333 85.333333 0 0 0-85.333333 85.333333V640a85.333333 85.333333 0 0 0 85.333333 85.333333zM528.64 393.813333c19.541333 2.816 42.410667 7.082667 68.522667 12.885334l-136.533334 94.378666v-109.312a304.853333 304.853333 0 0 1 67.968 2.090667z m-68.010667-176.853333c0-28.458667-42.666667-28.458667-42.666666 0V541.738667a21.333333 21.333333 0 0 0 33.450666 17.536l209.365334-144.64a21.333333 21.333333 0 0 0-6.912-38.272c-47.445333-11.946667-87.168-20.224-119.296-24.746667a348.16 348.16 0 0 0-73.941334-2.645333v-132.010667zM384 170.666667a21.333333 21.333333 0 1 0 0 42.666666h128a21.333333 21.333333 0 1 0 0-42.666666H384z" horiz-adv-x="1024" />
<glyph glyph-name="pinggu1" unicode="&#58952;" d="M873.130667 485.589333c-17.066667 17.066667-40.106667 21.333333-64 18.432a86.869333 86.869333 0 0 1-56.917334-27.050666l-281.386666-283.050667a23.04 23.04 0 0 1-6.272-11.776l-27.733334-114.005333c-1.536-7.594667-1.962667-12.544 3.413334-17.92a22.784 22.784 0 0 1 20.736-6.272l111.872 29.226666a22.784 22.784 0 0 1 11.648 6.314667l281.386666 283.093333c17.066667 17.066667 20.906667 34.944 25.6 58.666667a67.712 67.712 0 0 1-18.261333 64.341333h-0.085333z m-31.786667-33.322666c17.066667-17.066667 9.856-36.266667-7.082667-53.290667l-5.802666-5.888-47.402667 47.573333 5.802667 5.888c17.066667 17.066667 37.504 22.784 54.4 5.717334h0.085333z m-285.653333-333.738667l-69.077334-24.789333 23.210667 71.082666 238.122667 239.701334 45.866666-46.208-238.122666-239.786667z m207.616 103.424c-12.714667 0-27.050667-10.410667-27.050667-23.082667v-105.557333h-81.834667c-12.714667 0-29.013333-13.653333-29.013333-26.368s16.298667-23.082667 29.013333-23.082667h106.752a23.125333 23.125333 0 0 1 23.04 23.082667v131.925333c0 12.672-16.298667 23.082667-29.013333 23.082667h8.106667z m-387.370667-128.64H219.562667V677.12h515.413333v-141.568a24.149333 24.149333 0 0 1 24.234667-23.082667 24.917333 24.917333 0 0 1 25.002666 23.082667V701.44a23.125333 23.125333 0 0 1-23.04 23.210667H194.56a23.125333 23.125333 0 0 1-22.912-23.210667v-634.453333c0-12.672 10.24-23.04 22.954667-23.082667h181.333333a23.125333 23.125333 0 0 1 23.04 23.082667 26.026667 26.026667 0 0 1-23.04 26.368zM296.746667 329.045333l-39.808 32 112.64 140.16 121.6-99.072 176.810666 172.757334 35.712-36.608-209.493333-204.629334-116.992 95.317334-80.469333-99.925334z" horiz-adv-x="1024" />
<glyph glyph-name="renwu-wancheng" unicode="&#58954;" d="M554.666667 384m-256 0a256 256 0 1 1 512 0 256 256 0 1 1-512 0Z" horiz-adv-x="1066" />
<glyph glyph-name="renwu-daiwancheng" unicode="&#58955;" d="M529.655172 366.344828m-211.862069 0a211.862069 211.862069 0 1 1 423.724138 0 211.862069 211.862069 0 1 1-423.724138 0Z" horiz-adv-x="1024" />
<glyph glyph-name="renwu-jingxingzhong" unicode="&#58956;" d="M532.48 363.52m-245.76 0a245.76 245.76 0 1 1 491.52 0 245.76 245.76 0 1 1-491.52 0ZM532.48 117.76a245.76 245.76 0 1 0 0 491.52 245.76 245.76 0 0 0 0-491.52z m0 28.91776a216.84224 216.84224 0 1 1 0 433.68448 216.84224 216.84224 0 0 1 0-433.68448z" horiz-adv-x="1064" />
<glyph glyph-name="zan" unicode="&#58958;" d="M700.757333 79.232c31.061333 0 61.312 25.429333 66.773334 56.021333l43.008 241.621334c8.448 47.530667-22.826667 84.608-71.04 84.224l-8.618667-0.042667-44.501333-0.298667c-15.914667-0.128-31.829333-0.128-47.786667 0l-26.026667 0.341334 9.642667 24.234666c8.618667 21.589333 18.346667 80.64 18.090667 107.776-0.512 61.482667-26.368 96.682667-58.325334 96.298667-39.253333-0.426667-58.453333-19.754667-58.368-76.714667 0.213333-94.848-85.973333-190.293333-189.482666-189.482666a1021.952 1021.952 0 0 1-17.365334 0h-2.986666c-0.128 0 0.554667-344.405333 0.554666-344.405334 0 0.085333 386.432 0.426667 386.432 0.426667z m-14.549333 417.408l44.373333 0.341333 8.618667 0.042667c70.741333 0.512 119.04-56.832 106.666667-126.464l-43.008-241.621333c-8.490667-47.658667-53.589333-85.589333-102.058667-85.632l-386.304-0.341334a35.925333 35.925333 0 0 0-36.096 35.712l-0.725333 344.405334a35.84 35.84 0 0 0 35.669333 35.968l3.072 0.042666c4.992 0.085333 11.093333 0.085333 17.962667 0 82.645333-0.64 153.472 77.824 153.344 153.514667-0.170667 76.8 34.986667 112 93.824 112.725333 54.869333 0.64 93.994667-52.608 94.634666-131.925333 0.213333-23.978667-5.76-66.346667-13.226666-96.853333l23.253333 0.085333zM206.592 420.053333v-341.205333h19.754667a17.92 17.92 0 0 0 0-35.925333h-33.109334A22.485333 22.485333 0 0 0 170.666667 65.408V433.493333c0 12.416 10.154667 22.442667 22.528 22.442667h32.768a17.92 17.92 0 0 0 0-35.925333h-19.370667z" horiz-adv-x="1024" />
<glyph glyph-name="zan-click" unicode="&#58959;" d="M700.757333 79.232c31.061333 0 61.312 25.429333 66.773334 56.021333l43.008 241.621334c8.448 47.530667-22.826667 84.608-71.04 84.224l-8.618667-0.042667-44.501333-0.298667c-15.914667-0.128-31.829333-0.128-47.786667 0l-26.026667 0.341334 9.642667 24.234666c8.618667 21.589333 18.346667 80.64 18.090667 107.776-0.512 61.482667-26.368 96.682667-58.325334 96.298667-39.253333-0.426667-58.453333-19.754667-58.368-76.714667 0.213333-94.848-85.973333-190.293333-189.482666-189.482666a1021.952 1021.952 0 0 1-17.365334 0h-2.986666c-0.128 0 0.554667-344.405333 0.554666-344.405334 0 0.085333 386.432 0.426667 386.432 0.426667z m-14.549333 417.408l44.373333 0.341333 8.618667 0.042667c70.741333 0.512 119.04-56.832 106.666667-126.464l-43.008-241.621333c-8.490667-47.658667-53.589333-85.589333-102.058667-85.632l-386.304-0.341334a35.925333 35.925333 0 0 0-36.096 35.712l-0.725333 344.405334a35.84 35.84 0 0 0 35.669333 35.968l3.072 0.042666c4.992 0.085333 11.093333 0.085333 17.962667 0 82.645333-0.64 153.472 77.824 153.344 153.514667-0.170667 76.8 34.986667 112 93.824 112.725333 54.869333 0.64 93.994667-52.608 94.634666-131.925333 0.213333-23.978667-5.76-66.346667-13.226666-96.853333l23.253333 0.085333zM206.592 420.053333v-341.205333h19.754667a17.92 17.92 0 0 0 0-35.925333h-33.109334A22.485333 22.485333 0 0 0 170.666667 65.408V433.493333c0 12.416 10.154667 22.442667 22.528 22.442667h32.768a17.92 17.92 0 0 0 0-35.925333h-19.370667z" horiz-adv-x="1024" />
<glyph glyph-name="settings" unicode="&#58960;" d="M382.417455 608.116364a171.566545 171.566545 0 0 0-118.365091-18.338909 318.557091 318.557091 0 0 1-53.806546-85.969455c28.625455-30.114909 44.544-69.632 44.497455-110.638545a160.581818 160.581818 0 0 0-49.477818-115.665455 314.368 314.368 0 0 1 59.252363-99.374545 171.752727 171.752727 0 0 0 127.069091-16.337455 163.793455 163.793455 0 0 0 75.869091-91.415273 334.987636 334.987636 0 0 1 102.958545 2.187637 163.514182 163.514182 0 0 0 78.289455 99.514181 171.613091 171.613091 0 0 0 120.785455 17.82691 317.486545 317.486545 0 0 1 49.710545 88.250181 160.209455 160.209455 0 0 0-42.821818 108.823273c0 40.261818 15.127273 78.056727 41.285818 107.194182a314.135273 314.135273 0 0 1-45.288727 80.709818 171.752727 171.752727 0 0 0-125.486546 16.802909 163.374545 163.374545 0 0 0-79.592727 104.820364 334.615273 334.615273 0 0 1-110.08 0 163.84 163.84 0 0 0-74.798545-88.389818z m26.763636 134.516363a392.704 392.704 0 0 0 211.083636-1.396363 106.868364 106.868364 0 0 1 52.782546-100.398546c35.653818-21.085091 80.477091-20.945455 115.944727 0.372364a369.198545 369.198545 0 0 0 93.835636-164.445091 106.821818 106.821818 0 0 1-49.524363-89.739636c0-36.677818 19.083636-70.795636 50.827636-90.624a366.266182 366.266182 0 0 0-40.541091-98.21091c-15.825455-26.670545-34.909091-51.246545-56.925091-73.30909a113.524364 113.524364 0 0 1-109.474909-0.744728 107.054545 107.054545 0 0 1-55.389091-96.395636 393.262545 393.262545 0 0 0-203.264-4.421818 107.240727 107.240727 0 0 1-55.389091 90.530909 113.524364 113.524364 0 0 1-112.872727-1.163637A369.524364 369.524364 0 0 0 139.636364 298.402909a107.287273 107.287273 0 0 1 58.181818 94.766546 107.054545 107.054545 0 0 1-54.085818 92.578909 373.899636 373.899636 0 0 0 104.122181 167.842909c33.512727-16.802909 73.448727-15.872 106.123637 2.466909a107.287273 107.287273 0 0 1 55.202909 86.574545z m109.335273-444.183272c45.102545 0 81.687273 35.560727 81.687272 79.406545s-36.584727 79.406545-81.687272 79.406545c-45.149091 0-81.687273-35.560727-81.687273-79.406545s36.584727-79.406545 81.687273-79.406545z m0-55.342546c-76.567273 0-138.612364 60.322909-138.612364 134.749091s62.045091 134.749091 138.612364 134.749091c76.520727 0 138.612364-60.322909 138.612363-134.749091s-62.091636-134.749091-138.612363-134.749091z" horiz-adv-x="1024" />
</font>
</defs></svg>

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 799 KiB

View File

@@ -1 +0,0 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1765161872024" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2317" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M256 504.021333c0 39.765333-32.213333 71.978667-72.021333 71.978667H136.021333A71.936 71.936 0 0 1 64 503.978667V136.021333c0-39.808 32.213333-72.021333 72.021333-72.021333h47.957334C223.786667 64 256 96.213333 256 136.021333v367.957334z m701.184 45.866667c-6.698667 26.112-21.077333 46.592-46.976 55.722667a131.925333 131.925333 0 0 1-41.813333 6.570666c-75.306667 0.597333-150.613333 0.213333-225.877334 0.213334-9.728 0-10.026667 0.597333-8.533333 9.898666 4.693333 27.52 8.618667 55.125333 14.037333 82.389334 7.253333 37.034667 8.192 73.813333-4.138666 109.696-11.093333 32.341333-23.68 64.213333-35.797334 96.213333-6.784 18.090667-18.176 31.317333-36.48 38.912-34.517333 14.506667-68.608 14.208-101.717333-2.986667-21.077333-11.093333-33.493333-28.714667-32.768-53.802666 0.981333-35.413333 1.194667-70.826667 2.688-106.24a58.026667 58.026667 0 0 0-7.808-32.554667c-27.306667-46.933333-47.104-83.413333-75.605333-129.621333-5.290667-8.533333-21.376-24.789333-28.288-32.085334-20.394667-21.504-30.890667-35.498667-31.018667-59.093333-0.085333-85.930667-0.298667-275.029333-0.682667-396.8a71.936 71.936 0 0 1 72.106667-72.234667c105.173333 0.128 296.277333 0.298667 389.973333 0.298667 22.4 0 44.416 1.408 66.005334 8.405333 42.794667 13.994667 69.717333 47.189333 73.088 91.989334 1.322667 17.024 0.512 33.92-5.546667 50.346666-0.938667 2.261333 0.554667 6.272 2.261333 8.576 16.896 22.613333 27.008 47.616 25.173334 76.117334-0.554667 9.813333-3.669333 19.584-6.656 29.098666-1.621333 5.12-1.621333 8.490667 1.877333 12.8 16.128 20.181333 25.898667 43.178667 25.130667 69.162667-0.426667 12.330667-4.906667 24.405333-7.253334 36.608-0.554667 2.901333-0.981333 7.210667 0.64 9.002667 13.781333 15.402667 21.504 33.621333 25.514667 53.717333a5.546667 5.546667 0 0 0 1.365333 2.005333v28.288a258.005333 258.005333 0 0 0-2.901333 9.386667z" fill="#000000" opacity=".65" p-id="2318"></path></svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -1 +0,0 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1765161849864" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5624" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M960 543.573333v-43.946666l-3.882667-5.12a138.24 138.24 0 0 0-19.712-44.586667c2.816-9.6 4.394667-19.541333 4.906667-29.610667 0.768-26.794667-6.912-52.48-23.125333-76.629333 2.304-7.893333 3.84-16.085333 4.394666-24.32 1.834667-28.672-5.802667-56.576-22.698666-83.072 3.2-15.104 4.010667-30.592 2.602666-45.909333-4.181333-55.466667-38.784-99.2-92.373333-116.778667-25.728-8.405333-50.773333-9.813333-72.021333-9.813333h-93.866667c-33.237333 0-66.944 0.213333-100.693333 0.213333-53.034667 0-106.325333-0.213333-159.232-0.213333h-1.109334 0.128-247.296c-39.808 0-72.021333 32.213333-72.021333 72.021333v368c0 39.808 32.213333 71.978667 72.021333 71.978667H249.173333s55.893333 6.4 82.346667 48.512c18.346667 29.312 36.053333 60.202667 53.12 90.026666l22.016 38.058667c1.792 2.986667 2.602667 6.4 2.218667 9.898667-0.896 20.736-1.28 41.6-1.706667 61.696-0.213333 11.946667-0.512 24.234667-0.810667 36.224-0.981333 36.181333 16.810667 65.706667 49.92 83.114666a140.8 140.8 0 0 0 65.792 16.469334c19.498667 0 39.253333-4.096 58.88-12.288 25.514667-10.666667 43.52-29.781333 53.717334-56.789334l8.96-23.594666c8.234667-21.333333 16.64-43.434667 24.234666-65.621334 12.288-35.712 13.909333-74.88 5.12-119.808-2.602667-13.397333-4.906667-26.794667-7.125333-40.789333h21.589333l64.128 0.085333c29.184 0 58.666667 0 87.893334-0.170666h0.810666c16.768 0 33.493333-2.730667 49.493334-8.106667 23.594667-8.405333 54.272-28.416 66.56-76.714667l1.237333-4.010666 0.853333-2.986667 1.536-5.376z m-712.021333-39.594666H136.021333V135.978667h112.042667v368z m640 28.8c0 1.536-0.981333 3.541333-1.578667 5.632-4.608 18.090667-12.501333 23.466667-20.394667 26.368-8.405333 2.816-17.066667 4.224-25.898666 4.224h-0.426667l-0.469333-0.085334-0.512-0.128c-31.018667 0.213333-61.482667 0.298667-87.296 0.298667h-32.298667l-31.786667-0.085333h-106.24l13.653334 83.626666c2.56 15.872 4.864 29.354667 7.552 43.093334 6.314667 32.170667 5.546667 59.093333-2.474667 82.474666-6.997333 20.181333-14.421333 39.808-23.424 63.317334-3.072 7.978667-6.101333 16.085333-9.088 23.978666-3.584 9.6-8.106667 13.098667-14.08 15.701334-10.709333 4.522667-21.12 6.698667-31.146667 6.698666-11.093333 0-21.674667-2.688-32.384-8.277333a24.661333 24.661333 0 0 1-9.386666-7.68c-0.512-0.853333-2.133333-3.413333-1.92-9.642667 0.341333-11.52 0.64-22.997333 0.853333-36.778666v-1.706667c0.384-18.773333 0.768-38.314667 1.450667-57.173333a86.954667 86.954667 0 0 0-11.904-50.346667c-2.56-4.394667-5.077333-8.874667-7.68-13.269333-4.608-8.021333-9.386667-16.213333-13.909334-24.234667l-0.085333-0.085333-0.085333-0.085334-0.725334-1.109333c-17.194667-29.994667-34.986667-61.013333-53.674666-91.008l-0.128-0.213333-0.085334-0.170667c-16.64-26.325333-41.088-47.701333-71.509333-62.421333l-0.597333-387.712h63.914666c55.68 0 111.872 0.341333 159.402667 0.341333 16.981333 0 33.962667-0.128 50.773333-0.128 16.725333 0 33.28-0.213333 49.92-0.213333h93.866667c16.213333 0 33.536 0.938667 49.706667 6.229333 13.013333 4.181333 23.296 11.306667 30.634666 20.48 7.168 9.130667 11.264 20.224 12.288 33.28v0.64l0.085334 0.597333c0.810667 8.192 0.298667 16.298667-1.408 24.32l-0.768 3.413334h-8.704 8.704l-5.333334 25.173333 15.786667 25.002667c8.533333 13.397333 12.330667 26.282667 11.648 39.381333-0.213333 2.986667-0.853333 5.973333-1.621333 8.917333l-9.514667 32.298667 18.816 27.989333c7.594667 11.306667 11.093333 22.016 10.922667 33.493334-0.298667 4.266667-1.024 8.618667-2.218667 12.714666l-9.301333 32.426667 18.901333 27.861333c4.394667 6.4 7.509333 13.482667 9.301333 21.12l1.877334 7.765334v13.696z" fill="#000000" opacity=".65" p-id="5625"></path></svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -1 +0,0 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1765161882076" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2499" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M184.021333 448H136.021333c-39.808 0-72.021333 32.213333-72.021333 72.021333v367.957334c0 39.808 32.213333 72.021333 72.021333 72.021333h47.957334C223.786667 960 256 927.786667 256 887.978667v-368c0-39.765333-32.213333-71.978667-72.021333-71.978667z m773.162667 26.112c-6.698667-26.112-21.077333-46.592-46.976-55.722667a131.925333 131.925333 0 0 0-41.813333-6.570666c-75.306667-0.597333-150.613333-0.213333-225.877334-0.213334-9.728 0-10.026667-0.597333-8.533333-9.898666 4.693333-27.52 8.618667-55.125333 14.037333-82.389334 7.253333-37.034667 8.192-73.813333-4.138666-109.738666-11.093333-32.298667-23.68-64.170667-35.797334-96.170667-6.784-18.090667-18.176-31.317333-36.48-38.912-34.517333-14.506667-68.608-14.208-101.717333 2.986667-21.077333 11.093333-33.493333 28.714667-32.768 53.802666 0.981333 35.413333 1.194667 70.826667 2.688 106.24a58.026667 58.026667 0 0 1-7.808 32.554667c-27.306667 46.933333-47.104 83.413333-75.605333 129.621333-5.290667 8.533333-21.376 24.789333-28.288 32.085334-20.394667 21.504-30.890667 35.498667-31.018667 59.093333-0.085333 85.930667-0.298667 275.029333-0.682667 396.8a71.936 71.936 0 0 0 72.106667 72.234667c105.173333-0.128 296.277333-0.298667 389.973333-0.298667 22.4 0 44.416-1.408 66.005334-8.405333 42.794667-13.994667 69.717333-47.232 73.088-92.032 1.322667-16.981333 0.512-33.877333-5.546667-50.261334-0.938667-2.304 0.554667-6.314667 2.261333-8.618666 16.896-22.613333 27.008-47.616 25.173334-76.117334-0.554667-9.813333-3.669333-19.584-6.656-29.098666-1.621333-5.12-1.621333-8.490667 1.877333-12.8 16.128-20.181333 25.898667-43.178667 25.130667-69.162667-0.426667-12.330667-4.906667-24.405333-7.253334-36.608-0.554667-2.901333-0.981333-7.210667 0.64-9.002667 13.781333-15.402667 21.504-33.621333 25.514667-53.717333a5.546667 5.546667 0 0 1 1.365333-2.005333v-28.288c-0.981333-3.114667-2.005333-6.186667-2.901333-9.386667z" fill="#000000" opacity=".65" p-id="2500"></path></svg>

Before

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -1 +0,0 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg t="1765161839692" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5444" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><path d="M958.378667 475.093333l-0.853334-2.986666c-0.512-1.621333-1.024-2.986667-1.237333-4.010667-12.288-48.384-43.008-68.394667-66.56-76.714667a154.666667 154.666667 0 0 0-49.493333-8.106666h-0.853334c-29.184-0.170667-58.581333-0.170667-87.893333-0.170667l-64.085333 0.085333h-21.589334c2.304-13.994667 4.48-27.392 7.082667-40.789333 8.789333-44.885333 7.210667-84.096-5.12-119.808-7.594667-22.186667-16.085333-44.288-24.192-65.578667l-8.96-23.594666c-10.112-27.008-28.245333-46.08-53.76-56.832a141.056 141.056 0 0 0-124.586667 3.882666c-33.066667 17.322667-50.858667 46.848-49.877333 83.114667 0.298667 12.032 0.597333 24.32 0.810667 36.224 0.426667 20.181333 0.768 41.088 1.706666 61.696a16.426667 16.426667 0 0 1-2.218666 9.898667c-7.296 12.714667-14.805333 25.514667-22.016 38.101333-17.066667 29.781333-34.773333 60.714667-53.077334 90.026667C305.066667 441.6 249.173333 448 249.173333 448H135.978667c-39.765333 0-71.978667 32.213333-71.978667 72.021333v367.957334c0 39.808 32.213333 72.021333 71.978667 72.021333h247.338666-0.128 1.109334c52.821333 0 106.24-0.213333 159.189333-0.213333 33.792 0 67.498667 0.213333 100.693333 0.213333H738.133333c21.205333 0 46.293333-1.408 72.021334-9.813333 53.589333-17.493333 88.192-61.184 92.373333-116.778667a157.269333 157.269333 0 0 0-2.56-45.909333c16.896-26.410667 24.490667-54.314667 22.656-83.114667a118.101333 118.101333 0 0 0-4.394667-24.32c16.128-23.978667 23.808-49.664 23.125334-76.544a135.594667 135.594667 0 0 0-4.906667-29.610667c9.216-13.610667 15.914667-28.586667 19.712-44.629333l3.882667-5.12v-43.946667l-1.621334-5.12z m-710.4 412.928H136.021333v-368h112.042667v367.957334z m640-383.232l-1.877334 7.808a64.426667 64.426667 0 0 1-9.301333 21.12l-18.901333 27.861334 9.301333 32.426666c1.194667 4.096 1.92 8.405333 2.218667 12.714667 0.170667 11.52-3.328 22.186667-10.922667 33.493333l-18.773333 27.989334 9.472 32.298666a38.698667 38.698667 0 0 1 1.621333 8.917334c0.682667 13.184-2.986667 26.069333-11.605333 39.381333l-15.786667 25.002667 5.290667 25.173333h-8.704 8.704l0.768 3.413333c1.706667 8.021333 2.218667 16.213333 1.408 24.32l-0.085334 0.597334v0.597333c-1.024 13.013333-5.12 24.192-12.288 33.28a63.018667 63.018667 0 0 1-30.634666 20.48c-16.085333 5.333333-33.365333 6.229333-49.664 6.229333H644.266667c-16.512 0-33.109333-0.213333-49.92-0.213333l-50.773334-0.085333c-47.616 0-103.68 0.298667-159.402666 0.298666H320.298667l0.810666-387.712c30.378667-14.762667 54.869333-36.096 71.509334-62.378666l0.085333-0.213334 0.085333-0.170666c18.730667-30.037333 36.522667-61.013333 53.717334-91.008l0.682666-1.109334 0.128-0.085333 0.085334-0.128c4.48-7.893333 9.301333-16.213333 13.909333-24.192 2.56-4.48 5.205333-8.917333 7.68-13.312 9.002667-15.274667 13.098667-32.682667 11.946667-50.304-0.853333-18.901333-1.237333-38.4-1.536-57.173333v-1.706667c-0.298667-13.696-0.512-25.301333-0.810667-36.821333-0.213333-6.058667 1.408-8.661333 1.92-9.6a23.253333 23.253333 0 0 1 9.386667-7.68c10.666667-5.589333 21.333333-8.32 32.426666-8.32 9.856 0 20.394667 2.304 31.061334 6.741333 5.973333 2.474667 10.496 5.973333 14.08 15.658667 3.029333 7.936 6.144 16 9.130666 24.021333 9.002667 23.466667 16.384 43.093333 23.424 63.317333 7.978667 23.381333 8.874667 50.346667 2.474667 82.474667a1376.853333 1376.853333 0 0 0-7.594667 43.093333l-13.781333 83.712h106.197333c10.496 0 21.077333 0 31.786667-0.085333h32.298667c25.813333 0 56.32 0 87.296 0.298667l0.512-0.128 0.469333-0.085334h0.426667c8.789333 0 17.493333 1.493333 25.898666 4.181334 7.893333 2.901333 15.786667 8.32 20.394667 26.453333 0.512 2.048 1.621333 3.968 1.621333 5.546667v13.653333z" fill="#000000" opacity=".65" p-id="5445"></path></svg>

Before

Width:  |  Height:  |  Size: 3.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 105 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 172 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 111 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 495 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 314 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 65 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 97 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 511 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 604 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 75 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 250 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 347 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 249 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 478 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

Some files were not shown because too many files have changed in this diff Show More