修改创客,优化创客调用Java发送请求的接口
This commit is contained in:
parent
70536036e1
commit
7f0b770dca
|
@ -56,8 +56,8 @@ export function initAxiosInterceptors(props) {
|
|||
// TODO 避免重复的请求 https://github.com/axios/axios#cancellation
|
||||
var
|
||||
proxy = "http://localhost:3000";
|
||||
proxy = "https://forge.osredm.com";
|
||||
// proxy = "http://117.50.100.12:49999";
|
||||
// proxy = "https://forge.osredm.com";
|
||||
proxy = "http://117.50.100.12:49999";
|
||||
|
||||
const requestMap = {};
|
||||
window.setfalseInRequestMap = function (keyName) {
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
import React, { useEffect, useState } from "react";
|
||||
import { Upload, Button } from 'antd';
|
||||
import { appendFileSizeToUploadFileAll } from 'educoder';
|
||||
import { httpUrl } from '../fetch';
|
||||
import { httpUrl } from '../task/fetch';
|
||||
|
||||
function Uploads({ className, size, actionUrl, fileList, showNotification, load }) {
|
||||
const [files, setFiles] = useState(undefined);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import { httpUrl } from '../fetch';
|
||||
import { httpUrl } from '../task/fetch';
|
||||
|
||||
export const editorConfig = {
|
||||
placeholder: '请输入',
|
||||
|
|
|
@ -1,24 +1,20 @@
|
|||
import { notification,message } from 'antd';
|
||||
import { notification} from 'antd';
|
||||
import axios from 'axios';
|
||||
import cookie from 'react-cookies';
|
||||
|
||||
|
||||
let settings=JSON.parse(localStorage.chromesetting);
|
||||
let actionUrl = settings.api_urls? settings.api_urls.task :'https://task.osredm.com';
|
||||
if (window.location.href.indexOf('localhost') < 0) {
|
||||
axios.defaults.withCredentials = true;
|
||||
}
|
||||
export const httpUrl = actionUrl;
|
||||
|
||||
const TokenKey = 'autologin_forge_military';
|
||||
|
||||
// 创建axios实例
|
||||
const service = axios.create({
|
||||
baseURL: httpUrl,
|
||||
timeout: 10000, // 请求超时时间
|
||||
});
|
||||
|
||||
// request拦截器
|
||||
export const TokenKey = 'autologin_forge_military';
|
||||
export default function javaFetch(actionUrl){
|
||||
if (window.location.href.indexOf('localhost') < 0) {
|
||||
axios.defaults.withCredentials = true;
|
||||
}
|
||||
|
||||
// 创建axios实例
|
||||
const service = axios.create({
|
||||
baseURL: actionUrl,
|
||||
timeout: 1800000, // 请求超时时间
|
||||
});
|
||||
|
||||
// request拦截器
|
||||
service.interceptors.request.use(config => {
|
||||
if (cookie.load(TokenKey)) {
|
||||
console.log(cookie.load(TokenKey));
|
||||
|
@ -26,11 +22,11 @@ service.interceptors.request.use(config => {
|
|||
}
|
||||
if (window.location.port === "3007") {
|
||||
// 模拟token为登录用户
|
||||
const taskToken = sessionStorage.taskToken;
|
||||
const osredmToken = sessionStorage.osredmToken;
|
||||
if (config.url.indexOf('?') === -1) {
|
||||
config.url = `${config.url}?token=${taskToken}`;
|
||||
config.url = `${config.url}?token=${osredmToken}`;
|
||||
} else {
|
||||
config.url = `${config.url}&token=${taskToken}`;
|
||||
config.url = `${config.url}&token=${osredmToken}`;
|
||||
}
|
||||
}
|
||||
return config;
|
||||
|
@ -110,4 +106,5 @@ service.interceptors.response.use(
|
|||
}
|
||||
);
|
||||
|
||||
export default service;
|
||||
return service;
|
||||
}
|
|
@ -1,114 +1,10 @@
|
|||
import { notification } from 'antd';
|
||||
import axios from 'axios';
|
||||
import cookie from 'react-cookies';
|
||||
|
||||
import javaFetch from '../javaFetch';
|
||||
|
||||
|
||||
let settings = JSON.parse(localStorage.chromesetting);
|
||||
let actionUrl = settings.api_urls ? settings.api_urls.notice : 'https://info.osredm.com';
|
||||
if (window.location.href.indexOf('localhost')< 0) {
|
||||
axios.defaults.withCredentials = true;
|
||||
}
|
||||
let settings=JSON.parse(localStorage.chromesetting);
|
||||
let actionUrl = settings.api_urls? settings.api_urls.notice :'https://info.osredm.com';
|
||||
|
||||
const service = javaFetch(actionUrl);
|
||||
export const httpUrl = actionUrl;
|
||||
|
||||
const TokenKey = 'autologin_forge_military';
|
||||
|
||||
|
||||
// 创建axios实例
|
||||
const service = axios.create({
|
||||
baseURL: httpUrl,
|
||||
timeout: 10000, // 请求超时时间
|
||||
});
|
||||
|
||||
// request拦截器
|
||||
service.interceptors.request.use(config => {
|
||||
if (cookie.load(TokenKey)) {
|
||||
console.log(cookie.load(TokenKey));
|
||||
config.headers['Authorization'] = cookie.load(TokenKey); // 让每个请求携带自定义token 请根据实际情况自行修改
|
||||
}
|
||||
if (window.location.port === "3007") {
|
||||
// 模拟token为登录用户
|
||||
const taskToken = sessionStorage.taskToken;
|
||||
if (config.url.indexOf('?') === -1) {
|
||||
config.url = `${config.url}?token=${taskToken}`;
|
||||
} else {
|
||||
config.url = `${config.url}&token=${taskToken}`;
|
||||
}
|
||||
}
|
||||
return config;
|
||||
}, error => {
|
||||
// Do something with request error
|
||||
console.log(error); // for debug
|
||||
Promise.reject(error);
|
||||
});
|
||||
// respone拦截器
|
||||
service.interceptors.response.use(
|
||||
response => {
|
||||
const res = response;
|
||||
if (res.status === 400) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.data.message || '验证失败',
|
||||
});
|
||||
return Promise.reject('error');
|
||||
}
|
||||
if (res.status === 401) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.data.message || '未授权,请登录!',
|
||||
});
|
||||
return Promise.reject('error');
|
||||
}
|
||||
if (res.status === 403) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.data.message || '无权限',
|
||||
});
|
||||
return Promise.reject('error');
|
||||
}
|
||||
if (res.status === 40001) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: '账户或密码错误!',
|
||||
});
|
||||
return Promise.reject('error');
|
||||
}
|
||||
if (response.status !== 200 && res.status !== 200) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.message,
|
||||
});
|
||||
} else {
|
||||
return response.data;
|
||||
}
|
||||
},
|
||||
error => {
|
||||
console.log(error);
|
||||
let res = error.response || {};
|
||||
if (res.status === 400) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.data.message || '操作失败',
|
||||
});
|
||||
return Promise.reject('error');
|
||||
}
|
||||
if (res.status === 401) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.data.message || '登录信息已过期',
|
||||
});
|
||||
return Promise.reject('error');
|
||||
}
|
||||
if (res.status === 403) {
|
||||
notification.open({
|
||||
message: "提示",
|
||||
description: res.data.message || '无权限!',
|
||||
});
|
||||
window.location.href = "/403";
|
||||
return Promise.reject('error');
|
||||
}
|
||||
|
||||
return Promise.reject(error);
|
||||
}
|
||||
);
|
||||
|
||||
export default service;
|
||||
export default service;
|
|
@ -1,6 +1,5 @@
|
|||
import fetch, { } from '../fetch';
|
||||
import fetch, { } from './fetch';
|
||||
import { notification } from 'antd';
|
||||
import { func } from 'prop-types';
|
||||
|
||||
// 获取字典分类列表
|
||||
export function getDictionary(id) {
|
||||
|
|
|
@ -66,7 +66,8 @@ export default props => {
|
|||
return <Menu>
|
||||
<Menu.Item><a target="_blank" rel="noopener noreferrer" href={`${main_web_site_url}/managements/enterprise_authentication`}>企业认证</a></Menu.Item>
|
||||
<Menu.Item><a target="_blank" rel="noopener noreferrer" href={`${main_web_site_url}/admin/reviews/projects_list`}>开源项目</a></Menu.Item>
|
||||
<Menu.Item><a href="/task/taskManage">统筹任务发布审批</a></Menu.Item>
|
||||
<Menu.Item><a href="/task/taskManage/1">统筹任务发布审批</a></Menu.Item>
|
||||
<Menu.Item><a href="/task/taskManage/0">自主任务发布审批</a></Menu.Item>
|
||||
<Menu.Item><a href="/task/paperComplain">成果上传申诉审批</a></Menu.Item>
|
||||
<Menu.Item><a href="/task/publicityComplain">公示期成果申诉审批</a></Menu.Item>
|
||||
<Menu.Item><a href="/task/agreementManage">协议审批</a></Menu.Item>
|
||||
|
|
|
@ -155,6 +155,10 @@ export default (props) => {
|
|||
<div className="clearfix"></div>
|
||||
<div className="width100">
|
||||
<span className="with40 fl lineh-35">
|
||||
<span className="color-grey-9 fl">发布方式:</span>
|
||||
<span className="infos_item mr15 fl">{item.publishMode == 1 ? '统筹任务' : '自主提交'}</span>
|
||||
</span>
|
||||
<span className="with25 fl lineh-35">
|
||||
<span className="color-grey-9 fl">所在行业:</span>
|
||||
<span className="infos_item" style={{ maxWidth: '100px' }}>{categoryArr[item.categoryId]}</span>
|
||||
</span>
|
||||
|
@ -163,6 +167,7 @@ export default (props) => {
|
|||
<span className="color-grey-9 fl">企业规模:</span>
|
||||
<span className="infos_item" style={{ maxWidth: '100px' }}>{scale(item.enterpriseSimple.scale)}</span>
|
||||
</span>}
|
||||
|
||||
{/* <span className="inline-block lineh-35">
|
||||
<span className="color-grey-9 fl">所在职位:</span>
|
||||
<span className="infos_item">普通员工</span>
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
|
||||
import javaFetch from '../javaFetch';
|
||||
|
||||
|
||||
let settings=JSON.parse(localStorage.chromesetting);
|
||||
let actionUrl = settings.api_urls? settings.api_urls.task :'https://task.osredm.com';
|
||||
|
||||
const service = javaFetch(actionUrl);
|
||||
export const httpUrl = actionUrl;
|
||||
export default service;
|
|
@ -4,7 +4,7 @@ import { Input, Select, Button, Form, DatePicker, Table, Pagination, } from 'ant
|
|||
import { Link } from "react-router-dom";
|
||||
|
||||
import { paperCheckStatusArr, publishModeArr, taskStatusAllArr, showUserModeArr ,main_web_site_url} from '../static';
|
||||
import { getTaskAdminList, changeShowUserMode } from '../api';
|
||||
import { getTaskAdminList, changeShowUserMode,deleteTask } from '../api';
|
||||
import '../index.scss';
|
||||
import './index.scss';
|
||||
const format = "YYYY-MM-DD HH:mm:ss";
|
||||
|
@ -23,6 +23,7 @@ for (const item of paperCheckStatusArr) {
|
|||
export default Form.create()(({ form, showNotification, match, history }) => {
|
||||
const { getFieldDecorator, setFieldsValue, getFieldsValue } = form;
|
||||
|
||||
const [reload,setReload]=useState();
|
||||
const [loading, setLoading] = useState(false);
|
||||
const [statusString, setStatusString] = useState('');
|
||||
const [publishMode, setPublishMode] = useState('');
|
||||
|
@ -54,7 +55,7 @@ export default Form.create()(({ form, showNotification, match, history }) => {
|
|||
}
|
||||
setLoading(false);
|
||||
})
|
||||
}, [statusString, order, sort, publishMode, showUserMode, curPage, searchObj]);
|
||||
}, [statusString, order, sort, publishMode, showUserMode, curPage, searchObj,reload]);
|
||||
|
||||
|
||||
const helper = useCallback(
|
||||
|
@ -101,7 +102,7 @@ export default Form.create()(({ form, showNotification, match, history }) => {
|
|||
dataIndex: 'name',
|
||||
width: "15%",
|
||||
render: (text, record) => (
|
||||
<Link className="line_1 color-grey3" to={`/task/taskDetail/${record.id}`}>{text}</Link>
|
||||
<Link className="line_1 primary-link" to={`/task/taskDetail/${record.id}`}>{text}</Link>
|
||||
),
|
||||
},
|
||||
{
|
||||
|
@ -195,19 +196,29 @@ export default Form.create()(({ form, showNotification, match, history }) => {
|
|||
</Select>
|
||||
}
|
||||
},
|
||||
// {
|
||||
// title: '操作',
|
||||
// key: 'action',
|
||||
// render: (text, record) => (
|
||||
// <React.Fragment>
|
||||
// {/* <Button className="mr5 font-12" type="danger" size="small" onClick={() => { deletItem(record.id) }}>删除</Button> */}
|
||||
// <Link className="line_1 color-grey3" to={`/task/taskDetail/${record.taskId}`}>查看</Link>
|
||||
// </React.Fragment>
|
||||
// ),
|
||||
// },
|
||||
{
|
||||
title: '操作',
|
||||
key: 'action',
|
||||
render: (text, record) => (
|
||||
<React.Fragment>
|
||||
<Button className="mr5 font-12" type="danger" size="small" onClick={() => { deletItem(record.id) }}>删除</Button>
|
||||
{/* <Link className="line_1 color-grey3" to={`/task/taskDetail/${record.taskId}`}>查看</Link> */}
|
||||
</React.Fragment>
|
||||
),
|
||||
},
|
||||
]
|
||||
}, []);
|
||||
|
||||
|
||||
function deletItem(id){
|
||||
deleteTask(id).then(res=>{
|
||||
if(res.message==='success'){
|
||||
showNotification('删除成功!');
|
||||
setReload(Math.random());
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function changeStatus(showUserMode, taskId) {
|
||||
changeShowUserMode({
|
||||
taskId,
|
||||
|
|
|
@ -44,6 +44,10 @@
|
|||
padding: 1rem 0.2rem;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
a.primary-link {
|
||||
color: #1890ff;
|
||||
}
|
||||
}
|
||||
|
||||
.inline-form {
|
||||
|
|
|
@ -59,7 +59,7 @@ const AdminPage = (propsF) => {
|
|||
<Switch {...propsF}>
|
||||
{/* 任务管理审核 */}
|
||||
<Route
|
||||
path="/task/taskManage"
|
||||
path="/task/taskManage/:publishMode"
|
||||
render={(props) => (
|
||||
<TaskManage {...propsF} {...props} />
|
||||
)}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import React, { useCallback, forwardRef, useEffect, useState } from 'react';
|
||||
import React, { useCallback, useEffect, useState } from 'react';
|
||||
import { Input, Button, Form } from 'antd';
|
||||
import ItemTaskManage from '../components/itemTaskManage';
|
||||
import StatusNav from '../../components/statusNav';
|
||||
|
@ -6,7 +6,9 @@ import { approveArr, main_web_site_url } from '../static';
|
|||
import { getTaskAdminList, getTaskCategory } from '../api';
|
||||
import '../index.scss';
|
||||
|
||||
export default Form.create()(({ current_user, form, showNotification, match, history }) => {
|
||||
export default Form.create()(({ form, showNotification, match, history }) => {
|
||||
const publishMode = match.params.publishMode;
|
||||
|
||||
const { getFieldDecorator, validateFields, setFieldsValue, getFieldsValue } = form;
|
||||
const [categoryArr, setCategoryArr] = useState([]);
|
||||
|
||||
|
@ -20,6 +22,7 @@ export default Form.create()(({ current_user, form, showNotification, match, his
|
|||
|
||||
const [reload, setReload] = useState(0);
|
||||
|
||||
|
||||
useEffect(() => {
|
||||
getTaskCategory().then(data => {
|
||||
if (data) {
|
||||
|
@ -39,7 +42,7 @@ export default Form.create()(({ current_user, form, showNotification, match, his
|
|||
orderBy: 'createdAtDesc',
|
||||
curPage,
|
||||
pageSize: 10,
|
||||
publishMode: 1
|
||||
publishMode: publishMode || 1
|
||||
};
|
||||
setLoading(true);
|
||||
getTaskAdminList(params).then(data => {
|
||||
|
|
Loading…
Reference in New Issue