diff --git a/src/AppConfig.js b/src/AppConfig.js index 1b78e7a9..55873f00 100644 --- a/src/AppConfig.js +++ b/src/AppConfig.js @@ -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) { diff --git a/src/military/components/Upload.jsx b/src/military/components/Upload.jsx index 71a94c32..e1ab4cd0 100644 --- a/src/military/components/Upload.jsx +++ b/src/military/components/Upload.jsx @@ -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); diff --git a/src/military/components/config.js b/src/military/components/config.js index 996a2528..320dd15f 100644 --- a/src/military/components/config.js +++ b/src/military/components/config.js @@ -1,4 +1,4 @@ -import { httpUrl } from '../fetch'; +import { httpUrl } from '../task/fetch'; export const editorConfig = { placeholder: '请输入', diff --git a/src/military/fetch.js b/src/military/javaFetch.js similarity index 78% rename from src/military/fetch.js rename to src/military/javaFetch.js index bbf41f03..829a50d4 100644 --- a/src/military/fetch.js +++ b/src/military/javaFetch.js @@ -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; +} \ No newline at end of file diff --git a/src/military/notice/fetch.js b/src/military/notice/fetch.js index 07e20261..38f2a078 100644 --- a/src/military/notice/fetch.js +++ b/src/military/notice/fetch.js @@ -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; \ No newline at end of file diff --git a/src/military/task/api.js b/src/military/task/api.js index 06fe7318..3d8052b2 100644 --- a/src/military/task/api.js +++ b/src/military/task/api.js @@ -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) { diff --git a/src/military/task/components/adminRouter/index.jsx b/src/military/task/components/adminRouter/index.jsx index 89761ea5..e9003c5e 100644 --- a/src/military/task/components/adminRouter/index.jsx +++ b/src/military/task/components/adminRouter/index.jsx @@ -66,7 +66,8 @@ export default props => { return 企业认证 开源项目 - 统筹任务发布审批 + 统筹任务发布审批 + 自主任务发布审批 成果上传申诉审批 公示期成果申诉审批 协议审批 diff --git a/src/military/task/components/itemTaskManage/index.jsx b/src/military/task/components/itemTaskManage/index.jsx index 5cbad31a..0323e876 100644 --- a/src/military/task/components/itemTaskManage/index.jsx +++ b/src/military/task/components/itemTaskManage/index.jsx @@ -155,6 +155,10 @@ export default (props) => {
+ 发布方式: + {item.publishMode == 1 ? '统筹任务' : '自主提交'} + + 所在行业: {categoryArr[item.categoryId]} @@ -163,6 +167,7 @@ export default (props) => { 企业规模: {scale(item.enterpriseSimple.scale)} } + {/* 所在职位: 普通员工 diff --git a/src/military/task/fetch.js b/src/military/task/fetch.js new file mode 100644 index 00000000..9140d89e --- /dev/null +++ b/src/military/task/fetch.js @@ -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; \ No newline at end of file diff --git a/src/military/task/taskAdmin/index.jsx b/src/military/task/taskAdmin/index.jsx index 35e5ef13..c97e1def 100644 --- a/src/military/task/taskAdmin/index.jsx +++ b/src/military/task/taskAdmin/index.jsx @@ -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) => ( - {text} + {text} ), }, { @@ -195,19 +196,29 @@ export default Form.create()(({ form, showNotification, match, history }) => { } }, - // { - // title: '操作', - // key: 'action', - // render: (text, record) => ( - // - // {/* */} - // 查看 - // - // ), - // }, + { + title: '操作', + key: 'action', + render: (text, record) => ( + + + {/* 查看 */} + + ), + }, ] }, []); + + function deletItem(id){ + deleteTask(id).then(res=>{ + if(res.message==='success'){ + showNotification('删除成功!'); + setReload(Math.random()); + } + }); + } + function changeStatus(showUserMode, taskId) { changeShowUserMode({ taskId, diff --git a/src/military/task/taskAdmin/index.scss b/src/military/task/taskAdmin/index.scss index d1b2b4f8..1b7a76a5 100644 --- a/src/military/task/taskAdmin/index.scss +++ b/src/military/task/taskAdmin/index.scss @@ -44,6 +44,10 @@ padding: 1rem 0.2rem; text-align: center; } + + a.primary-link { + color: #1890ff; + } } .inline-form { diff --git a/src/military/task/taskAdminRouter.js b/src/military/task/taskAdminRouter.js index 5bd7498a..6c790a6b 100644 --- a/src/military/task/taskAdminRouter.js +++ b/src/military/task/taskAdminRouter.js @@ -59,7 +59,7 @@ const AdminPage = (propsF) => { {/* 任务管理审核 */} ( )} diff --git a/src/military/task/taskManage/index.js b/src/military/task/taskManage/index.js index 3213b03b..60bcacea 100644 --- a/src/military/task/taskManage/index.js +++ b/src/military/task/taskManage/index.js @@ -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 => {