2024-03-27 18:56:48 +08:00
|
|
|
import './index.css';
|
2024-05-07 17:00:32 +08:00
|
|
|
// import { MouseEvent, Reducer, useEffect, useReducer, useState, useContext } from "react";
|
|
|
|
import { MouseEvent, Reducer, useEffect, useReducer, useState } from "react";
|
2024-07-31 16:00:30 +08:00
|
|
|
import { useSelector, useDispatch } from 'react-redux'
|
2024-05-07 17:00:32 +08:00
|
|
|
import { useNavigate, useSearchParams, Outlet } from "react-router-dom";
|
2024-08-22 16:33:01 +08:00
|
|
|
import { Modal } from 'antd';
|
2024-05-07 17:00:32 +08:00
|
|
|
import { IMenuListItem, IMenuWithTopButton } from "../../interfaces/menu/IMenuWithTopButton.ts";
|
2024-03-27 18:56:48 +08:00
|
|
|
import MenuWithTopButton from "../../components/menu/MenuWithTopButton.tsx";
|
2024-08-22 16:33:01 +08:00
|
|
|
import RefunModal from '../../components/RefunModal/RefunModal.tsx'
|
2024-08-26 18:03:35 +08:00
|
|
|
import CorrectionModal from '../../components/CorrectionModal/CorrectionModal.tsx'
|
2024-11-29 17:52:17 +08:00
|
|
|
import ContractModal from '../../components/ContractModal/ContractModal.tsx'
|
2024-07-22 17:22:35 +08:00
|
|
|
// import MenuWithBottomButtom from '../../components/menu/MenuWithBottomButton.tsx'
|
2024-07-31 16:00:30 +08:00
|
|
|
// import MenuTreeWithTopButton from "../../components/menu/MenuTreeWithTopButton.tsx";
|
2024-05-07 17:00:32 +08:00
|
|
|
// import ListProj from "../../components/list/ListProj.tsx";
|
|
|
|
// import ListProjAgent from "../../components/list/ListProjAgent.tsx";
|
2024-09-03 17:51:42 +08:00
|
|
|
// import { getMenuActive } from '../../util/cache.ts'
|
2024-07-31 16:00:30 +08:00
|
|
|
import {
|
|
|
|
MenuProps, Select,
|
|
|
|
Button,
|
|
|
|
Pagination,
|
|
|
|
Empty
|
|
|
|
} from 'antd';
|
2024-03-27 18:56:48 +08:00
|
|
|
import {
|
|
|
|
IndexListContext,
|
|
|
|
IndexListDataType,
|
|
|
|
IndexListDispatchContext,
|
|
|
|
ListAction,
|
2024-04-01 20:39:22 +08:00
|
|
|
ListData,
|
2024-03-27 18:56:48 +08:00
|
|
|
} from "../../context/IndexListContext.ts";
|
2024-08-22 16:33:01 +08:00
|
|
|
// import { getMenuActive } from '../../util/cache.ts'
|
2024-07-31 16:00:30 +08:00
|
|
|
import {
|
|
|
|
MenuFoldOutlined,
|
2024-09-02 16:41:02 +08:00
|
|
|
ClearOutlined,
|
|
|
|
CloseOutlined
|
2024-07-31 16:00:30 +08:00
|
|
|
} from '@ant-design/icons';
|
2024-05-07 17:00:32 +08:00
|
|
|
import { useLocation } from 'react-router-dom';
|
2024-09-11 14:04:53 +08:00
|
|
|
import { get, downloadUrl, post, getCouponUrl } from '../../util/AjaxUtils.ts'
|
2024-08-29 17:56:39 +08:00
|
|
|
import { setMenuActive } from '../../util/cache.ts'
|
2024-05-07 17:00:32 +08:00
|
|
|
import gpsImg from '../../static/right/gps.png'
|
|
|
|
import backImg from '../../static/right/back.png'
|
2024-07-31 17:07:19 +08:00
|
|
|
// import { Link } from "react-router-dom";
|
2024-09-02 16:41:02 +08:00
|
|
|
import HeadCouponModal from '../../components/CouponModal/HeadCouponModal.tsx'
|
2024-07-31 18:41:25 +08:00
|
|
|
import {
|
|
|
|
Input,
|
2024-07-31 17:07:19 +08:00
|
|
|
// Breadcrumb,
|
2024-07-31 18:41:25 +08:00
|
|
|
message
|
|
|
|
} from 'antd';
|
2024-05-07 17:00:32 +08:00
|
|
|
const { Search } = Input;
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-03-27 18:56:48 +08:00
|
|
|
export default function Index() {
|
2024-08-22 16:33:01 +08:00
|
|
|
// 是否可以点击所属者 (当点击了退款选项,所属者列表跟他不产生联系 不给他点)
|
2024-09-03 17:51:42 +08:00
|
|
|
// const [clickBelongpeople, setClickBelongpeople] = useState(true)
|
2025-01-03 15:56:36 +08:00
|
|
|
// 补正搜索条件标签数组
|
|
|
|
const [tagCorArray, setTagCorArray] = useState([])
|
|
|
|
// 获取补正标签
|
|
|
|
const getCorTag = () => {
|
|
|
|
get({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/proj/correction/apply/tag/list-tag`,
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess(data: any) {
|
|
|
|
// console.log('标签信息', data);
|
|
|
|
const newarrty: any = (data.data).map((item: any) => ({
|
|
|
|
value: item.key,
|
|
|
|
label: item.value
|
|
|
|
}));
|
|
|
|
// console.log('标签信息', newarrty);
|
|
|
|
|
|
|
|
setTagCorArray(newarrty)
|
|
|
|
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
// 选择的标签
|
2025-01-03 16:03:35 +08:00
|
|
|
const [tagCor, setTagCor] = useState<string | null>(null)
|
2025-01-03 15:56:36 +08:00
|
|
|
|
|
|
|
|
2024-07-31 18:41:25 +08:00
|
|
|
// 选项数组
|
|
|
|
const [tagArray, setTagArray] = useState([])
|
2024-11-29 17:52:17 +08:00
|
|
|
|
2024-12-31 18:31:06 +08:00
|
|
|
// const[tagNot,setTagNot] = useState(false)
|
2024-07-31 18:41:25 +08:00
|
|
|
// 获取标签
|
|
|
|
const getTag = () => {
|
|
|
|
get({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/proj/tag/list-tag`,
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess(data: any) {
|
2025-01-03 15:56:36 +08:00
|
|
|
// console.log('标签信息', data);
|
2024-07-31 18:41:25 +08:00
|
|
|
const newarrty: any = (data.data).map((item: any) => ({
|
|
|
|
value: item.key,
|
|
|
|
label: item.value
|
|
|
|
}));
|
2024-12-31 18:31:06 +08:00
|
|
|
// console.log('标签信息', newarrty);
|
|
|
|
|
2024-07-31 18:41:25 +08:00
|
|
|
setTagArray(newarrty)
|
|
|
|
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
2024-11-04 11:55:51 +08:00
|
|
|
// 提示数组
|
|
|
|
const [remindTagArray, setRemindTagArray] = useState([])
|
|
|
|
// 获取提示
|
|
|
|
const getremindTag = () => {
|
|
|
|
get({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/proj/remind/list`,
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess(data: any) {
|
|
|
|
// console.log('标签信息', data.data);
|
|
|
|
const newarrty: any = (data.data).map((item: any) => ({
|
|
|
|
value: item.projRemindId,
|
|
|
|
label: item.title
|
|
|
|
}));
|
2024-12-31 18:31:06 +08:00
|
|
|
// console.log('标签信息', newarrty);
|
2024-11-04 11:55:51 +08:00
|
|
|
|
|
|
|
setRemindTagArray(newarrty)
|
|
|
|
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
2024-07-31 16:00:30 +08:00
|
|
|
const dispath = useDispatch()
|
|
|
|
//redux的belongArray
|
|
|
|
const redxuState: any = useSelector(state => state)
|
|
|
|
const belongArray = redxuState.belongArray
|
2024-09-02 16:41:02 +08:00
|
|
|
// 优惠券弹窗
|
|
|
|
const couponModal = redxuState.couponModal
|
2024-09-06 17:26:09 +08:00
|
|
|
|
2024-09-02 16:41:02 +08:00
|
|
|
// 编辑项目得项目名
|
|
|
|
const projName = redxuState.projName
|
|
|
|
// 项目状态 查看还是编辑
|
|
|
|
const projStatus = redxuState.projStatus
|
2024-07-31 16:00:30 +08:00
|
|
|
// 获取所属者表格储存至redux 更新表格
|
|
|
|
const getProjOwnerList = () => {
|
|
|
|
get({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/proj-owner/list/self`,
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess(data: any) {
|
|
|
|
// console.log('所属者表格', data.data);
|
|
|
|
// setBelongPeopleArray(data.data)
|
|
|
|
// 存redux的belongArray
|
|
|
|
dispath({
|
|
|
|
type: 'uparray',
|
|
|
|
val: data.data
|
|
|
|
})
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
// 更新数据
|
|
|
|
// const upBelongArray = () => {
|
|
|
|
// get({
|
|
|
|
// messageApi,
|
|
|
|
// url: `/api/proj-owner/list/self`,
|
|
|
|
// onBefore() {
|
|
|
|
|
|
|
|
// },
|
|
|
|
// onSuccess(data: any) {
|
|
|
|
// // console.log('所属者表格', data.data);
|
|
|
|
// setBelongPeopleArray(data.data)
|
|
|
|
|
|
|
|
// },
|
|
|
|
// onFinally() {
|
|
|
|
|
|
|
|
// }
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
// 监听redux的belongArray
|
|
|
|
// useEffect(()=>{
|
|
|
|
// },[belongArray])
|
|
|
|
|
|
|
|
const [messageApi, contextHolder] = message.useMessage();
|
|
|
|
// 临时关键字 (过度)
|
|
|
|
const [nowKeyword, setNowKeyWord] = useState('')
|
2024-07-15 16:58:47 +08:00
|
|
|
// 关键字
|
|
|
|
const [keywords, setKeywords] = useState('');
|
2024-07-31 16:00:30 +08:00
|
|
|
const [type, setType] = useState<string | null>(null)
|
|
|
|
const [chargeAdditionals, setchargeAdditionals] = useState<string | null>(null)
|
2024-07-31 18:41:25 +08:00
|
|
|
const [tagDataId, settagDataId] = useState<string | null>(null)
|
2024-08-29 17:56:39 +08:00
|
|
|
const [payStatus, setpayStatus] = useState<string | null>(null)
|
2024-07-31 16:00:30 +08:00
|
|
|
const [authorId, setauthorId] = useState('')
|
2024-11-29 17:52:17 +08:00
|
|
|
const [projRemindId, setprojRemindId] = useState<string | null>(null)
|
2024-09-04 15:52:35 +08:00
|
|
|
//退款状态
|
2024-09-03 17:51:42 +08:00
|
|
|
const [applyStatus, setapplyStatus] = useState<string | null>(null)
|
|
|
|
// 退款关键字
|
|
|
|
const [refunKeywords, setrefunKeywords] = useState('')
|
|
|
|
// 退款临时关键字
|
|
|
|
const [newRefunValue, setnewRefunValue] = useState('')
|
2024-09-04 15:52:35 +08:00
|
|
|
//补正搜索相关
|
|
|
|
// 补正关键字
|
|
|
|
const [correctionKeywords, setcorrectionKeywords] = useState('')
|
|
|
|
// 补正临时关键字
|
|
|
|
const [newCorrectionValue, setnewCorrectionValue] = useState('')
|
|
|
|
// 补正类型
|
|
|
|
const [correctionNumType, setcorrectionNumType] = useState<string | null>(null)
|
|
|
|
// 补正种类
|
|
|
|
const [correctionType, setcorrectionType] = useState<string | null>(null)
|
|
|
|
// 补正状态
|
|
|
|
const [correctionApplyStatus, setcorrectionApplyStatus] = useState<string | null>(null)
|
2024-05-07 17:00:32 +08:00
|
|
|
// const indexListContext = useContext(IndexListContext);
|
2024-07-31 16:00:30 +08:00
|
|
|
// 所属者信息
|
|
|
|
// const [belongPeopleArray, setBelongPeopleArray] = useState<any[]>([])
|
|
|
|
const [currentPage, setCurrentPage] = useState(1);
|
|
|
|
const itemsPerPage = 5;
|
|
|
|
// 计算总页数
|
|
|
|
const totalItems = belongArray.length;
|
|
|
|
const totalPages = Math.ceil(totalItems / itemsPerPage);
|
|
|
|
|
|
|
|
// 计算当前页数据的起始和结束索引
|
|
|
|
const startIndex = (currentPage - 1) * itemsPerPage;
|
|
|
|
const endIndex = Math.min(startIndex + itemsPerPage, totalItems);
|
|
|
|
|
|
|
|
// 提取当前页的数据
|
|
|
|
const currentPageData = belongArray.slice(startIndex, endIndex);
|
|
|
|
|
|
|
|
// 处理页码切换
|
|
|
|
const handlePageChange = (page: number) => {
|
|
|
|
if (page >= 1 && page <= totalPages) {
|
|
|
|
setCurrentPage(page);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
|
2024-09-03 17:51:42 +08:00
|
|
|
// // home页初始化搜索条件
|
2024-07-31 16:00:30 +08:00
|
|
|
const init = () => {
|
|
|
|
setNowKeyWord('')
|
|
|
|
setKeywords('')
|
|
|
|
setType(null)
|
|
|
|
setchargeAdditionals(null)
|
2024-07-31 18:41:25 +08:00
|
|
|
settagDataId(null)
|
2024-08-29 17:56:39 +08:00
|
|
|
setpayStatus(null)
|
2024-11-04 11:55:51 +08:00
|
|
|
setprojRemindId(null)
|
2024-07-31 16:00:30 +08:00
|
|
|
}
|
2024-09-04 15:52:35 +08:00
|
|
|
// 退款页初搜索条件始化
|
2024-09-03 17:51:42 +08:00
|
|
|
const refunInit = () => {
|
|
|
|
setnewRefunValue('')
|
|
|
|
setrefunKeywords('')
|
|
|
|
setapplyStatus(null)
|
|
|
|
}
|
2024-09-04 15:52:35 +08:00
|
|
|
// 补正页面搜索条件初始化
|
|
|
|
const correctionInit = () => {
|
|
|
|
setnewCorrectionValue('')
|
|
|
|
setcorrectionKeywords('')
|
|
|
|
setcorrectionNumType(null)
|
|
|
|
setcorrectionType(null)
|
|
|
|
setcorrectionApplyStatus(null)
|
2025-01-03 16:03:35 +08:00
|
|
|
setTagCor(null)
|
2024-09-04 15:52:35 +08:00
|
|
|
}
|
2024-03-27 18:56:48 +08:00
|
|
|
const nav = useNavigate();
|
2024-03-28 19:35:54 +08:00
|
|
|
const [searchParams] = useSearchParams();
|
2024-03-27 18:56:48 +08:00
|
|
|
|
|
|
|
const listReducer = (state: ListData, action: ListAction) => {
|
2024-04-01 20:39:22 +08:00
|
|
|
if (action.type == IndexListDataType.PROJ) {
|
2024-03-27 18:56:48 +08:00
|
|
|
state.type = IndexListDataType.PROJ;
|
2024-04-01 20:39:22 +08:00
|
|
|
state.status = action.value as string;
|
|
|
|
} else if (action.type == IndexListDataType.AGENT) {
|
2024-03-27 18:56:48 +08:00
|
|
|
state.type = IndexListDataType.AGENT;
|
2024-04-01 20:39:22 +08:00
|
|
|
state.status = action.value as string;
|
|
|
|
} else if (action.type == IndexListDataType.CATEGORY) {
|
|
|
|
state.categorys = action.value as MenuProps['items'];
|
2024-04-02 18:45:46 +08:00
|
|
|
state.categoryChangeCount++;
|
2024-04-01 20:39:22 +08:00
|
|
|
} else if (action.type == IndexListDataType.CATEGORY_CHANGE) {
|
2024-04-02 18:45:46 +08:00
|
|
|
state.category = action.value as string;
|
|
|
|
state.categoryChangeCount++;
|
|
|
|
} else if (action.type == IndexListDataType.CATEGORY_DELETE) {
|
|
|
|
state.categorys = action.value as MenuProps['items'];
|
|
|
|
state.category = '';
|
|
|
|
state.categoryChangeCount++;
|
2024-03-27 18:56:48 +08:00
|
|
|
}
|
|
|
|
return {
|
|
|
|
...state
|
|
|
|
};
|
|
|
|
}
|
|
|
|
|
|
|
|
const [listData, dispatch] = useReducer<Reducer<ListData, ListAction>>(listReducer, {
|
2024-04-02 18:45:46 +08:00
|
|
|
type: IndexListDataType.PROJ,
|
|
|
|
categoryChangeCount: 0
|
2024-03-27 18:56:48 +08:00
|
|
|
});
|
|
|
|
|
2024-04-01 20:39:22 +08:00
|
|
|
const [projMenu, setProjMenu] = useState<IMenuWithTopButton>({
|
2024-03-27 18:56:48 +08:00
|
|
|
button: {
|
2024-04-29 17:22:26 +08:00
|
|
|
name: '项目',
|
2024-03-27 18:56:48 +08:00
|
|
|
handle() {
|
2024-08-27 11:35:08 +08:00
|
|
|
dispatch({
|
|
|
|
type: IndexListDataType.PROJ,
|
2024-08-29 17:56:39 +08:00
|
|
|
value: 'ALL',
|
2024-08-27 11:35:08 +08:00
|
|
|
})
|
|
|
|
init()
|
2024-08-27 14:03:07 +08:00
|
|
|
setauthorId('')
|
2024-08-29 17:56:39 +08:00
|
|
|
// nav('/home')
|
2024-03-27 18:56:48 +08:00
|
|
|
nav('/proj-create')
|
2024-08-29 17:56:39 +08:00
|
|
|
|
2024-03-27 18:56:48 +08:00
|
|
|
}
|
|
|
|
},
|
|
|
|
list: [
|
2024-05-07 17:00:32 +08:00
|
|
|
{ id: 'ALL', name: '全部项目', active: true },
|
|
|
|
{ id: 'PROCESSING', name: '进行中的' },
|
2024-09-03 17:51:42 +08:00
|
|
|
{ id: 'COMPLETE', name: '已完成的' },
|
|
|
|
{ id: 'REFUN', name: '退款项目' },
|
|
|
|
// correction
|
|
|
|
{ id: 'CORRECTION', name: '补正项目' },
|
2024-11-29 17:52:17 +08:00
|
|
|
{ id: 'CONTRACT', name: '合同下载' },
|
2024-09-03 17:51:42 +08:00
|
|
|
|
2024-03-27 18:56:48 +08:00
|
|
|
],
|
2024-04-01 20:39:22 +08:00
|
|
|
handleListItem(_e, _index, item: IMenuListItem) {
|
|
|
|
projMenu.list.forEach(item => item.active = false);
|
2024-05-21 11:21:34 +08:00
|
|
|
sellMenu.list.forEach(item => item.active = false);
|
|
|
|
buyMenu.list.forEach(item => item.active = false);
|
2024-08-22 16:33:01 +08:00
|
|
|
refundMenu.list.forEach(item => item.active = false);
|
2024-08-26 18:03:35 +08:00
|
|
|
correctionMenu.list.forEach(item => item.active = false);
|
2024-04-01 20:39:22 +08:00
|
|
|
item.active = true;
|
|
|
|
setProjMenu({
|
|
|
|
...projMenu
|
|
|
|
})
|
2024-03-27 18:56:48 +08:00
|
|
|
dispatch({
|
|
|
|
type: IndexListDataType.PROJ,
|
2024-05-07 17:00:32 +08:00
|
|
|
value: item.id,
|
|
|
|
// keywords: ''
|
|
|
|
|
2024-03-27 18:56:48 +08:00
|
|
|
})
|
2024-04-29 17:22:26 +08:00
|
|
|
},
|
2024-03-27 18:56:48 +08:00
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
});
|
|
|
|
const [refunModal, setRefunModal] = useState(false) //退款弹窗
|
|
|
|
const [refundMenu, setRefundMenu] = useState<IMenuWithTopButton>({
|
|
|
|
button: {
|
2024-09-03 17:51:42 +08:00
|
|
|
name: '',
|
2024-08-22 16:33:01 +08:00
|
|
|
handle() {
|
|
|
|
// nav('/proj-create')
|
|
|
|
}
|
|
|
|
},
|
|
|
|
list: [
|
|
|
|
{ id: 'PENDING', name: '待审核', },
|
|
|
|
{ id: 'APPROVED', name: '已通过' },
|
|
|
|
{ id: 'REJECTED', name: '未通过' },
|
|
|
|
{ id: 'CANCELED', name: '已取消' }
|
2024-09-03 17:51:42 +08:00
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
],
|
|
|
|
handleListItem(_e, _index, item: IMenuListItem) {
|
|
|
|
projMenu.list.forEach(item => item.active = false);
|
|
|
|
sellMenu.list.forEach(item => item.active = false);
|
|
|
|
buyMenu.list.forEach(item => item.active = false);
|
|
|
|
refundMenu.list.forEach(item => item.active = false);
|
2024-08-26 18:03:35 +08:00
|
|
|
correctionMenu.list.forEach(item => item.active = false);
|
2024-08-22 16:33:01 +08:00
|
|
|
|
|
|
|
item.active = true;
|
|
|
|
setRefundMenu({
|
|
|
|
...refundMenu
|
|
|
|
})
|
|
|
|
dispatch({
|
|
|
|
type: IndexListDataType.PROJ,
|
|
|
|
value: item.id,
|
|
|
|
// keywords: ''
|
|
|
|
|
|
|
|
})
|
|
|
|
},
|
|
|
|
|
2024-05-07 17:00:32 +08:00
|
|
|
});
|
2024-08-26 18:03:35 +08:00
|
|
|
|
|
|
|
// 补正弹窗
|
|
|
|
const [correctionModal, setCorrectionModal] = useState(false)
|
|
|
|
const [correctionMenu, setCorrectionMenu] = useState<IMenuWithTopButton>({
|
|
|
|
button: {
|
|
|
|
name: '补正',
|
|
|
|
handle() {
|
|
|
|
// nav('/proj-create')
|
|
|
|
setCorrectionModal(true)
|
|
|
|
}
|
|
|
|
},
|
|
|
|
list: [
|
|
|
|
{ id: 'Correction-PENDING', name: '待审核', },
|
|
|
|
{ id: 'Correction-APPROVED', name: '已通过' },
|
|
|
|
{ id: 'Correction-REJECTED', name: '未通过' },
|
|
|
|
{ id: 'Correction-CANCELED', name: '已取消' }
|
|
|
|
],
|
|
|
|
handleListItem(_e, _index, item: IMenuListItem) {
|
|
|
|
projMenu.list.forEach(item => item.active = false);
|
|
|
|
sellMenu.list.forEach(item => item.active = false);
|
|
|
|
buyMenu.list.forEach(item => item.active = false);
|
|
|
|
refundMenu.list.forEach(item => item.active = false);
|
|
|
|
correctionMenu.list.forEach(item => item.active = false);
|
|
|
|
item.active = true;
|
|
|
|
setCorrectionMenu({
|
|
|
|
...correctionMenu
|
|
|
|
})
|
|
|
|
dispatch({
|
|
|
|
type: IndexListDataType.PROJ,
|
|
|
|
value: item.id,
|
|
|
|
// keywords: ''
|
|
|
|
|
|
|
|
})
|
|
|
|
},
|
|
|
|
})
|
2024-11-29 17:52:17 +08:00
|
|
|
|
|
|
|
// 新增合同弹窗
|
|
|
|
const [contractModal, setContractModal] = useState(false)
|
2024-05-21 11:21:34 +08:00
|
|
|
// const [agentMenu, setAgentMenu] = useState<IMenuWithTopButton>({
|
|
|
|
// button: {
|
|
|
|
// name: '代理服务',
|
|
|
|
// handle() {
|
|
|
|
// dispatch({
|
|
|
|
// type: IndexListDataType.PROJ,
|
|
|
|
// value: 'COMPLETE',
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
// },
|
|
|
|
// list: [
|
|
|
|
// { id: 'ALL', name: '全部项目' },
|
|
|
|
// { id: 'PROCESSING', name: '进行中的' },
|
|
|
|
// { id: 'COMPLETE', name: '已完成的' },
|
|
|
|
// ],
|
|
|
|
// handleListItem(_e: MouseEvent<HTMLLIElement>, _index: number, item: IMenuListItem) {
|
|
|
|
// projMenu.list.forEach(item => item.active = false);
|
|
|
|
// agentMenu.list.forEach(item => item.active = false);
|
|
|
|
// item.active = true;
|
|
|
|
// setAgentMenu({
|
|
|
|
// ...agentMenu
|
|
|
|
// })
|
|
|
|
// dispatch({
|
|
|
|
// type: IndexListDataType.AGENT,
|
|
|
|
// value: item.id,
|
|
|
|
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
// })
|
|
|
|
const [sellMenu, setSellMenu] = useState<IMenuWithTopButton>({
|
2024-03-27 18:56:48 +08:00
|
|
|
button: {
|
2024-05-21 11:21:34 +08:00
|
|
|
name: '我要卖',
|
2024-03-27 18:56:48 +08:00
|
|
|
handle() {
|
2024-05-21 11:21:34 +08:00
|
|
|
// dispatch({
|
|
|
|
// type: IndexListDataType.PROJ,
|
|
|
|
// value: 'COMPLETE',
|
|
|
|
// })
|
2024-03-27 18:56:48 +08:00
|
|
|
}
|
|
|
|
},
|
|
|
|
list: [
|
2024-05-21 11:21:34 +08:00
|
|
|
{ id: '1', name: '商品发布', path: '/product-release' },
|
|
|
|
{ id: '2', name: '交易订单', path: '/transaction-order' },
|
|
|
|
// { id: 'COMPLETE', name: '已完成的' },
|
2024-03-27 18:56:48 +08:00
|
|
|
],
|
|
|
|
handleListItem(_e: MouseEvent<HTMLLIElement>, _index: number, item: IMenuListItem) {
|
2024-04-01 20:39:22 +08:00
|
|
|
projMenu.list.forEach(item => item.active = false);
|
2024-05-21 11:21:34 +08:00
|
|
|
sellMenu.list.forEach(item => item.active = false);
|
|
|
|
buyMenu.list.forEach(item => item.active = false);
|
2024-08-26 18:03:35 +08:00
|
|
|
refundMenu.list.forEach(item => item.active = false);
|
|
|
|
correctionMenu.list.forEach(item => item.active = false);
|
2024-04-01 20:39:22 +08:00
|
|
|
item.active = true;
|
2024-05-21 11:21:34 +08:00
|
|
|
setSellMenu({
|
|
|
|
...sellMenu
|
2024-04-01 20:39:22 +08:00
|
|
|
})
|
2024-05-21 11:21:34 +08:00
|
|
|
// dispatch({
|
|
|
|
// type: IndexListDataType.AGENT,
|
|
|
|
// value: item.id,
|
2024-05-12 07:45:51 +08:00
|
|
|
|
2024-05-21 11:21:34 +08:00
|
|
|
// })
|
|
|
|
}
|
|
|
|
})
|
|
|
|
const [buyMenu, setBuyMenu] = useState<IMenuWithTopButton>({
|
|
|
|
button: {
|
|
|
|
name: '我要买',
|
|
|
|
handle() {
|
|
|
|
// dispatch({
|
|
|
|
// type: IndexListDataType.PROJ,
|
|
|
|
// value: 'COMPLETE',
|
|
|
|
// })
|
|
|
|
}
|
|
|
|
},
|
|
|
|
list: [
|
|
|
|
{ id: '1', name: '著作权商品', path: '/copyright-goods' },
|
|
|
|
{ id: '2', name: '交易商品', path: '/trading-goods' },
|
|
|
|
// { id: 'COMPLETE', name: '已完成的' },
|
|
|
|
],
|
|
|
|
handleListItem(_e: MouseEvent<HTMLLIElement>, _index: number, item: IMenuListItem) {
|
|
|
|
projMenu.list.forEach(item => item.active = false);
|
|
|
|
sellMenu.list.forEach(item => item.active = false);
|
|
|
|
buyMenu.list.forEach(item => item.active = false);
|
2024-08-26 18:03:35 +08:00
|
|
|
refundMenu.list.forEach(item => item.active = false);
|
|
|
|
correctionMenu.list.forEach(item => item.active = false);
|
2024-05-21 11:21:34 +08:00
|
|
|
item.active = true;
|
|
|
|
setBuyMenu({
|
|
|
|
...buyMenu
|
2024-03-27 18:56:48 +08:00
|
|
|
})
|
2024-05-21 11:21:34 +08:00
|
|
|
// dispatch({
|
|
|
|
// type: IndexListDataType.AGENT,
|
|
|
|
// value: item.id,
|
|
|
|
|
|
|
|
// })
|
2024-03-27 18:56:48 +08:00
|
|
|
}
|
2024-04-01 20:39:22 +08:00
|
|
|
})
|
2024-08-22 16:33:01 +08:00
|
|
|
// const [refund, setRefund] = useState<IMenuWithTopButton>({
|
|
|
|
// button: {
|
|
|
|
// name: '退款',
|
|
|
|
// handle() {
|
|
|
|
// // dispatch({
|
|
|
|
// // type: IndexListDataType.PROJ,
|
|
|
|
// // value: 'COMPLETE',
|
|
|
|
// // })
|
|
|
|
// }
|
|
|
|
// },
|
|
|
|
// list: [
|
|
|
|
// { id: '1', name: '待审核', path: '/copyright-goods?item=1' },
|
|
|
|
// { id: '2', name: '已通过', path: '/copyright-goods?item=2' },
|
|
|
|
// { id: '3', name: '未通过', path: '/copyright-goods?item=3' },
|
|
|
|
// // { id: 'COMPLETE', name: '已完成的' },
|
|
|
|
// ],
|
|
|
|
// handleListItem(_e: MouseEvent<HTMLLIElement>, _index: number, item: IMenuListItem) {
|
|
|
|
// projMenu.list.forEach(item => item.active = false);
|
|
|
|
// // sellMenu.list.forEach(item => item.active = false);
|
|
|
|
// // buyMenu.list.forEach(item => item.active = false);
|
|
|
|
// item.active = true;
|
|
|
|
// setRefund({
|
|
|
|
// ...refund
|
|
|
|
// })
|
|
|
|
// // dispatch({
|
|
|
|
// // type: IndexListDataType.AGENT,
|
|
|
|
// // value: item.id,
|
2024-05-21 11:21:34 +08:00
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
// // })
|
|
|
|
// }
|
|
|
|
// })
|
2024-05-07 17:00:32 +08:00
|
|
|
const location = useLocation()
|
2024-08-30 09:00:37 +08:00
|
|
|
const [now, setNow] = useState<string>('首页-项目')
|
2024-05-12 07:45:51 +08:00
|
|
|
// 编辑项目路由名
|
|
|
|
// const [editname,setEditname] = useState('')
|
|
|
|
// 新建项目路由名字
|
|
|
|
// const [newname,setNewname] = useState('')
|
|
|
|
|
2024-07-31 17:07:19 +08:00
|
|
|
// const [pathArray, setPathArray] = useState<any>([])
|
2024-07-17 14:19:28 +08:00
|
|
|
const [showSearchBox, setShowSearchBox] = useState(true)
|
2024-09-03 17:51:42 +08:00
|
|
|
const [refunSearchBox, setRrefunSearchBox] = useState(false)
|
|
|
|
const [correctionSearchBox, setCorrectionSearchBox] = useState(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
// 新增合同按钮是否显示
|
|
|
|
const [contractSearchBox, setContractSearchBox] = useState(false)
|
2024-09-06 17:26:09 +08:00
|
|
|
// 优惠券遮罩层是否i西安市
|
|
|
|
const [coupon, setCoupon] = useState(false)
|
2024-09-11 14:04:53 +08:00
|
|
|
// 获取优惠券弹出层是否显示
|
|
|
|
const [getCouponModal, setGetCouponModal] = useState(false)
|
|
|
|
// 优惠券数组
|
|
|
|
const [couponArray, setCouponArray] = useState<any>([])
|
2024-09-06 17:26:09 +08:00
|
|
|
//优惠券id
|
|
|
|
const [couponId, setCouponId] = useState('')
|
|
|
|
// 优惠券图片 const imgSrc = `${Axios.defaults?.baseURL}/route/file/v2/download/true/${data.data.couponId}`;
|
|
|
|
const [cpuponImg, setCouponImg] = useState('')
|
|
|
|
// 获取是否有优惠券信息
|
|
|
|
const getCoupon = () => {
|
|
|
|
get({
|
|
|
|
messageApi,
|
2024-09-11 14:04:53 +08:00
|
|
|
url: `/api/coupon/list-can-claim`,
|
2024-09-06 17:26:09 +08:00
|
|
|
// url: `/api/proj/refund/apply/listpage?applyStatus=${state.type}`,
|
|
|
|
config: {
|
|
|
|
params: {
|
|
|
|
|
|
|
|
}
|
|
|
|
},
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess(data: any) {
|
|
|
|
// console.log(data.data);
|
2024-09-11 14:04:53 +08:00
|
|
|
// if (data.data.couponId) {
|
|
|
|
// setCouponId(data.data.couponId)
|
|
|
|
// setCouponImg(data.data.logo)
|
|
|
|
// setCoupon(true)
|
|
|
|
// }
|
|
|
|
setCouponArray(data.data)
|
|
|
|
if (data.data.length == 1) {
|
|
|
|
setCouponId((data.data)[0].couponId)
|
|
|
|
setCouponImg((data.data)[0].logo)
|
2024-09-06 17:26:09 +08:00
|
|
|
setCoupon(true)
|
|
|
|
}
|
2024-09-11 14:04:53 +08:00
|
|
|
if (data.data.length > 1) {
|
|
|
|
setGetCouponModal(true)
|
|
|
|
}
|
2024-09-06 17:26:09 +08:00
|
|
|
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
},
|
|
|
|
})
|
|
|
|
}
|
2024-09-11 14:04:53 +08:00
|
|
|
// 领取优惠券单张
|
2024-09-06 17:26:09 +08:00
|
|
|
const receiveCoupon = () => {
|
|
|
|
post<any>({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/coupon/user/save`,
|
|
|
|
body: {
|
2024-09-10 11:52:02 +08:00
|
|
|
couponId: couponId
|
2024-09-06 17:26:09 +08:00
|
|
|
},
|
|
|
|
onBefore() {
|
2024-09-10 11:52:02 +08:00
|
|
|
|
2024-09-06 17:26:09 +08:00
|
|
|
},
|
|
|
|
onSuccess() {
|
2024-09-10 11:52:02 +08:00
|
|
|
messageApi.success('领取成功')
|
|
|
|
setTimeout(() => {
|
2024-09-06 17:26:09 +08:00
|
|
|
setCoupon(false)
|
2024-09-11 09:22:39 +08:00
|
|
|
// getCoupon()
|
2024-09-10 11:52:02 +08:00
|
|
|
}, 500)
|
2024-09-06 17:26:09 +08:00
|
|
|
},
|
|
|
|
onFinally() {
|
2024-09-10 11:52:02 +08:00
|
|
|
|
2024-09-06 17:26:09 +08:00
|
|
|
}
|
|
|
|
})
|
2024-09-10 11:52:02 +08:00
|
|
|
}
|
2024-09-11 14:04:53 +08:00
|
|
|
// 领取优惠券(多张)
|
|
|
|
const receiveCoupons = (id: string) => {
|
|
|
|
post<any>({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/coupon/user/save`,
|
|
|
|
body: {
|
|
|
|
couponId: id
|
|
|
|
},
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess() {
|
|
|
|
messageApi.success('领取成功')
|
|
|
|
//更新列表
|
|
|
|
get({
|
|
|
|
messageApi,
|
|
|
|
url: `/api/coupon/list-can-claim`,
|
|
|
|
// url: `/api/proj/refund/apply/listpage?applyStatus=${state.type}`,
|
|
|
|
config: {
|
|
|
|
params: {
|
|
|
|
|
|
|
|
}
|
|
|
|
},
|
|
|
|
onBefore() {
|
|
|
|
|
|
|
|
},
|
|
|
|
onSuccess(data: any) {
|
|
|
|
setCouponArray(data.data)
|
|
|
|
if (data.data.length == 0) {
|
|
|
|
setTimeout(() => {
|
|
|
|
setGetCouponModal(false)
|
|
|
|
// getCoupon()
|
|
|
|
}, 500)
|
|
|
|
}
|
|
|
|
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
},
|
|
|
|
})
|
|
|
|
},
|
|
|
|
onFinally() {
|
|
|
|
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
2024-05-12 07:45:51 +08:00
|
|
|
useEffect(() => {
|
2024-05-07 17:00:32 +08:00
|
|
|
// const nowname = sessionStorage.getItem('now')
|
2024-09-03 17:51:42 +08:00
|
|
|
if (location.pathname == '/') {
|
2024-09-06 17:26:09 +08:00
|
|
|
// setCoupon(true)
|
|
|
|
getCoupon()
|
2024-09-02 16:41:02 +08:00
|
|
|
}
|
|
|
|
|
2024-05-12 07:45:51 +08:00
|
|
|
if (location.pathname.includes('/home')) {
|
2024-09-06 17:26:09 +08:00
|
|
|
// setCoupon(true)
|
|
|
|
getCoupon()
|
2024-08-30 09:00:37 +08:00
|
|
|
setNow('首页-项目')
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: '首页' }])
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(true)
|
2024-09-03 17:51:42 +08:00
|
|
|
// setClickBelongpeople(true)
|
|
|
|
setRrefunSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setCorrectionSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
} else if (location.pathname.includes('/proj-create')) {
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-07 17:00:32 +08:00
|
|
|
setNow('创建项目')
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: '创建项目' }])
|
2024-05-22 16:18:38 +08:00
|
|
|
// /config-mod-list /config-menu-list /config-mod-show
|
2024-06-03 14:56:19 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit') && !location.pathname.includes('/config-mod-show') && !location.pathname.includes('/config-mod-edit') && !location.pathname.includes('/step') && !location.pathname.includes('/config-loginpage') && !location.pathname.includes('/config-mod-save') && !location.pathname.includes('/config-mod-list') && !location.pathname.includes('/config-menu-list')) {
|
2024-09-02 16:41:02 +08:00
|
|
|
setNow(`${projStatus}项目-${projName}`)
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
// setEditname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: '编辑项目' }])
|
2024-05-12 07:45:51 +08:00
|
|
|
} else if (location.pathname.includes('/proj-new')) {
|
2024-09-02 16:41:02 +08:00
|
|
|
setNow(`创建项目`)
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: '新建项目' }])
|
2024-05-15 18:00:20 +08:00
|
|
|
} else if (location.pathname.includes('/proj-efree')) {
|
2024-09-02 16:41:02 +08:00
|
|
|
setNow(`${projStatus}项目-${projName}`)
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: '编辑项目' }])
|
2024-05-15 18:00:20 +08:00
|
|
|
} else if (location.pathname.includes('/proj-eall')) {
|
2024-09-02 16:41:02 +08:00
|
|
|
setNow(`${projStatus}项目-${projName}`)
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页 </Link> }, { title: '编辑项目' }])
|
2024-05-15 18:00:20 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/step1')) {
|
2024-05-12 07:45:51 +08:00
|
|
|
setNow('标题简介')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '标题简介' }])
|
2024-05-15 18:00:20 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/step2')) {
|
2024-05-12 07:45:51 +08:00
|
|
|
setNow('标题简介')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-12 07:45:51 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '基本信息' }])
|
2024-05-21 11:21:34 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/config-loginpage')) {
|
2024-05-16 18:00:57 +08:00
|
|
|
setNow('登录界面设置')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-16 18:00:57 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '登录界面设置' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/config-mod-list')) {
|
2024-05-21 11:21:34 +08:00
|
|
|
setNow('系统菜单管理')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-21 11:21:34 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '系统菜单管理' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/config-menu-list')) {
|
2024-05-21 11:21:34 +08:00
|
|
|
setNow('系统菜单顺序')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-21 11:21:34 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '系统菜单顺序' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
} else if (location.pathname.includes('/step3')) {
|
2024-05-21 11:21:34 +08:00
|
|
|
setNow('软件功能特点')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-05-21 11:21:34 +08:00
|
|
|
// setNewname(location.pathname)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '软件功能特点' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/config-mod-save')) {
|
2024-05-21 11:21:34 +08:00
|
|
|
setNow('添加菜单')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '添加菜单' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
} else if (location.pathname.includes('/proj-edit/config-mod-edit')) {
|
2024-05-21 11:21:34 +08:00
|
|
|
setNow('编辑菜单')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-2) }}>编辑项目</a> }, { title: <a onClick={() => { nav(-1) }}>系统菜单管理</a> }, { title: '编辑菜单' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
// /config-mod-edit /config-mod-show
|
|
|
|
} else if (location.pathname.includes('/proj-edit/config-mod-show')) {
|
2024-05-22 16:18:38 +08:00
|
|
|
setNow('查看菜单')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-2) }}>编辑项目</a> }, { title: <a onClick={() => { nav(-1) }}>系统菜单管理</a> }, { title: '查看菜单' }])
|
2024-06-03 14:56:19 +08:00
|
|
|
// /config-mod-edit
|
|
|
|
} else if (location.pathname.includes('/product-release')) {
|
2024-05-28 18:00:42 +08:00
|
|
|
setNow('首页')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: '首页' }])
|
2024-06-11 17:45:40 +08:00
|
|
|
// /config-mod-edit /product-release /transaction-order
|
2024-06-14 15:50:34 +08:00
|
|
|
} else if (location.pathname.includes(' /transaction-order')) {
|
2024-06-11 17:45:40 +08:00
|
|
|
setNow('首页')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: '首页' }])
|
2024-06-11 17:45:40 +08:00
|
|
|
// /config-mod-edit /product-release /transaction-order
|
2024-06-14 15:50:34 +08:00
|
|
|
} else if (location.pathname.includes(' /copyright-goods')) {
|
2024-06-11 17:45:40 +08:00
|
|
|
setNow('首页')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: '首页' }])
|
2024-06-11 17:45:40 +08:00
|
|
|
// /config-mod-edit /product-release /transaction-order
|
2024-06-14 15:50:34 +08:00
|
|
|
} else if (location.pathname.includes(' /trading-goods')) {
|
2024-06-11 17:45:40 +08:00
|
|
|
setNow('首页')
|
2024-07-15 16:58:47 +08:00
|
|
|
setShowSearchBox(false)
|
2024-09-03 17:51:42 +08:00
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-07-31 17:07:19 +08:00
|
|
|
// setPathArray([{ title: '首页' }])
|
2024-06-11 17:45:40 +08:00
|
|
|
// /config-mod-edit /product-release /transaction-order
|
2024-08-22 16:33:01 +08:00
|
|
|
} else if (location.pathname.includes('/refun')) {
|
|
|
|
setShowSearchBox(false)
|
2024-08-30 09:00:37 +08:00
|
|
|
setNow('首页-退款')
|
2024-09-03 17:51:42 +08:00
|
|
|
// setClickBelongpeople(false)
|
|
|
|
setRrefunSearchBox(true)
|
|
|
|
setCorrectionSearchBox(false)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-08-22 16:33:01 +08:00
|
|
|
// setNewname(location.pathname)
|
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '软件功能特点' }])
|
2024-08-29 17:56:39 +08:00
|
|
|
} else if (location.pathname.includes('/correction')) {
|
2024-08-26 18:03:35 +08:00
|
|
|
setShowSearchBox(false)
|
2024-08-30 09:00:37 +08:00
|
|
|
setNow('首页-补正')
|
2024-09-03 17:51:42 +08:00
|
|
|
// setClickBelongpeople(false)
|
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(true)
|
2024-11-29 17:52:17 +08:00
|
|
|
setContractSearchBox(false)
|
2024-08-26 18:03:35 +08:00
|
|
|
// setNewname(location.pathname)
|
|
|
|
// setPathArray([{ title: <Link to={'/home'}>首页</Link> }, { title: <Link to={'/proj-create'}>创建项目</Link> }, { title: <a onClick={() => { nav(-1) }}>编辑项目</a> }, { title: '软件功能特点' }])
|
2024-11-29 17:52:17 +08:00
|
|
|
} else if (location.pathname.includes('/contract')) {
|
|
|
|
setShowSearchBox(false)
|
|
|
|
setRrefunSearchBox(false)
|
|
|
|
setCorrectionSearchBox(false)
|
|
|
|
setContractSearchBox(true)
|
|
|
|
setNow('首页-合同下载')
|
2024-05-07 17:00:32 +08:00
|
|
|
}
|
2024-05-12 07:45:51 +08:00
|
|
|
}, [location.pathname])
|
2024-03-28 19:35:54 +08:00
|
|
|
useEffect(() => {
|
2024-05-21 11:21:34 +08:00
|
|
|
// nav('/home')
|
|
|
|
// sessionStorage.setItem('pathArray', JSON.stringify([{ title: <Link to={'/home'}>首页</Link> }]));
|
|
|
|
// sessionStorage.setItem('now', '首页');
|
2024-04-01 20:39:22 +08:00
|
|
|
if (searchParams.get('type') == 'agent') {
|
2024-03-28 19:35:54 +08:00
|
|
|
dispatch({
|
|
|
|
type: IndexListDataType.AGENT,
|
2024-05-07 17:00:32 +08:00
|
|
|
value: 'ALL',
|
|
|
|
|
2024-03-28 19:35:54 +08:00
|
|
|
})
|
2024-05-07 17:00:32 +08:00
|
|
|
|
2024-03-28 19:35:54 +08:00
|
|
|
}
|
2024-07-31 16:00:30 +08:00
|
|
|
getProjOwnerList()
|
2025-01-03 15:56:36 +08:00
|
|
|
getCorTag()
|
2024-07-31 18:41:25 +08:00
|
|
|
getTag()
|
2024-11-04 11:55:51 +08:00
|
|
|
getremindTag()
|
2024-03-28 19:35:54 +08:00
|
|
|
}, []);
|
2024-07-17 14:19:28 +08:00
|
|
|
useEffect(() => {
|
2024-07-18 14:49:14 +08:00
|
|
|
if (location.pathname.includes('/home')) {
|
2024-08-01 13:25:33 +08:00
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: type,
|
|
|
|
chargeAdditionals: chargeAdditionals,
|
|
|
|
tagDataId: tagDataId,
|
2024-08-29 17:56:39 +08:00
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot
|
2024-08-01 13:25:33 +08:00
|
|
|
}
|
|
|
|
})
|
2024-07-18 14:49:14 +08:00
|
|
|
}
|
2024-09-03 17:51:42 +08:00
|
|
|
if (location.pathname.includes('/refun')) {
|
|
|
|
nav('/refun', {
|
|
|
|
state: {
|
|
|
|
keywords: refunKeywords,
|
|
|
|
applyStatus: applyStatus,
|
|
|
|
authorId: authorId
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
2024-09-04 15:52:35 +08:00
|
|
|
if (location.pathname.includes('/correction')) {
|
|
|
|
nav('/correction', {
|
|
|
|
state: {
|
|
|
|
keywords: correctionKeywords,
|
|
|
|
correctionNumType: correctionNumType,
|
|
|
|
correctionType: correctionType,
|
|
|
|
applyStatus: correctionApplyStatus,
|
2025-01-03 15:56:36 +08:00
|
|
|
authorId: authorId,
|
|
|
|
tagCor:tagCor,
|
2024-09-04 15:52:35 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
2024-09-03 17:51:42 +08:00
|
|
|
|
2025-01-03 15:56:36 +08:00
|
|
|
}, [type, chargeAdditionals, keywords, tagDataId, projRemindId, payStatus, authorId, refunKeywords, applyStatus, correctionKeywords, correctionNumType, correctionType, correctionApplyStatus,tagCor]);
|
2024-08-12 14:43:58 +08:00
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
// const [menuName,setMenuName] = useState<string | null>('')
|
|
|
|
// useEffect(()=>{
|
|
|
|
// setMenuName( getMenuActive())
|
|
|
|
// },[getMenuActive()])
|
2024-05-07 17:00:32 +08:00
|
|
|
const handleSearch = (value: string) => {
|
2024-07-31 16:00:30 +08:00
|
|
|
// console.log(value);
|
2024-07-15 16:58:47 +08:00
|
|
|
setKeywords(value)
|
2024-05-12 07:45:51 +08:00
|
|
|
nav('/home', {
|
|
|
|
state: {
|
2024-07-15 16:58:47 +08:00
|
|
|
keyword: value,
|
2024-08-01 13:25:33 +08:00
|
|
|
type: type,
|
2024-07-31 16:00:30 +08:00
|
|
|
chargeAdditionals: chargeAdditionals,
|
2024-07-31 18:41:25 +08:00
|
|
|
tagDataId: tagDataId,
|
2024-08-29 17:56:39 +08:00
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot
|
2024-11-04 11:55:51 +08:00
|
|
|
|
2024-05-12 07:45:51 +08:00
|
|
|
}
|
|
|
|
})
|
2024-05-07 17:00:32 +08:00
|
|
|
}
|
2024-07-18 14:49:14 +08:00
|
|
|
const handleChange = (e: any) => {
|
2024-07-31 16:00:30 +08:00
|
|
|
setNowKeyWord(e.target.value)
|
|
|
|
// console.log(e.target.value);
|
2024-07-18 14:49:14 +08:00
|
|
|
if (e.target.value == '') {
|
2024-07-17 14:21:59 +08:00
|
|
|
setKeywords('')
|
2024-07-17 14:19:28 +08:00
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: '',
|
2024-08-01 13:25:33 +08:00
|
|
|
type: type,
|
2024-07-31 16:00:30 +08:00
|
|
|
chargeAdditionals: chargeAdditionals,
|
2024-07-31 18:41:25 +08:00
|
|
|
tagDataId: tagDataId,
|
2024-08-29 17:56:39 +08:00
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot
|
2024-08-29 17:56:39 +08:00
|
|
|
|
2024-07-17 14:19:28 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
2024-09-03 17:51:42 +08:00
|
|
|
// 退款状态
|
|
|
|
|
|
|
|
|
|
|
|
// 退款关键字搜索
|
|
|
|
const refunhandleSearch = (value: string) => {
|
|
|
|
// console.log(value);
|
|
|
|
setrefunKeywords(value)
|
|
|
|
nav('/refun', {
|
|
|
|
state: {
|
|
|
|
keywords: value,
|
|
|
|
applyStatus: applyStatus,
|
|
|
|
authorId: authorId
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
const refunhandleChange = (e: any) => {
|
|
|
|
setnewRefunValue(e.target.value)
|
|
|
|
// console.log(e.target.value);
|
|
|
|
if (e.target.value == '') {
|
|
|
|
setrefunKeywords('')
|
|
|
|
nav('/refun', {
|
|
|
|
state: {
|
|
|
|
keywords: '',
|
|
|
|
applyStatus: applyStatus,
|
|
|
|
authorId: authorId
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
2024-09-04 15:52:35 +08:00
|
|
|
// 补正关键字搜索
|
|
|
|
const correctionhandleSearch = (value: string) => {
|
|
|
|
// console.log(value);
|
|
|
|
setcorrectionKeywords(value)
|
|
|
|
nav('/correction', {
|
|
|
|
state: {
|
|
|
|
keywords: value,
|
|
|
|
correctionNumType: correctionNumType,
|
|
|
|
correctionType: correctionType,
|
|
|
|
applyStatus: correctionApplyStatus,
|
2025-01-03 15:56:36 +08:00
|
|
|
authorId: authorId,
|
|
|
|
tagCor:tagCor,
|
2024-09-04 15:52:35 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
const correctionhandleChange = (e: any) => {
|
|
|
|
setnewCorrectionValue(e.target.value)
|
|
|
|
// console.log(e.target.value);
|
|
|
|
if (e.target.value == '') {
|
|
|
|
setcorrectionKeywords('')
|
|
|
|
nav('/correction', {
|
|
|
|
state: {
|
|
|
|
keywords: '',
|
|
|
|
correctionNumType: correctionNumType,
|
|
|
|
correctionType: correctionType,
|
|
|
|
applyStatus: correctionApplyStatus,
|
2025-01-03 15:56:36 +08:00
|
|
|
authorId: authorId,
|
|
|
|
tagCor:tagCor,
|
2024-09-04 15:52:35 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}
|
|
|
|
}
|
2024-03-27 18:56:48 +08:00
|
|
|
return (
|
|
|
|
<>
|
2024-04-29 17:22:26 +08:00
|
|
|
{/* <Breadcrumb
|
2024-03-27 18:56:48 +08:00
|
|
|
items={[
|
|
|
|
{title: <Link to={'/'}>首页</Link>}
|
|
|
|
]}
|
2024-04-29 17:22:26 +08:00
|
|
|
/> */}
|
2024-07-31 16:00:30 +08:00
|
|
|
{contextHolder}
|
2024-05-07 17:00:32 +08:00
|
|
|
<IndexListContext.Provider value={listData} >
|
2024-03-27 18:56:48 +08:00
|
|
|
<IndexListDispatchContext.Provider value={dispatch}>
|
|
|
|
<div className="index">
|
2024-09-02 16:41:02 +08:00
|
|
|
<div className='coupon-mask'></div>
|
2024-06-03 14:56:19 +08:00
|
|
|
<div className='leftbox'>
|
2024-08-29 17:56:39 +08:00
|
|
|
{/* <div style={{display:'flex'}}> */}
|
|
|
|
{/* <div style={{height:1000,width:6,background:'red',marginRight:-6,zIndex:99}}></div> */}
|
2024-06-03 14:56:19 +08:00
|
|
|
<div className="left" >
|
2024-12-24 16:18:18 +08:00
|
|
|
<div className='mediaBox' style={{
|
2024-12-24 15:41:20 +08:00
|
|
|
// height: '15px', width: '230px',
|
2024-12-24 16:18:18 +08:00
|
|
|
background: 'white'
|
|
|
|
}}></div>
|
2024-06-03 14:56:19 +08:00
|
|
|
<MenuWithTopButton
|
|
|
|
button={projMenu.button}
|
|
|
|
list={projMenu.list}
|
|
|
|
handleListItem={projMenu.handleListItem}
|
2024-07-31 16:00:30 +08:00
|
|
|
keywords={keywords}
|
2024-09-04 15:52:35 +08:00
|
|
|
|
2024-07-31 16:00:30 +08:00
|
|
|
chargeAdditionals={chargeAdditionals ? chargeAdditionals : ""}
|
2024-07-31 18:41:25 +08:00
|
|
|
tagDataId={tagDataId ? tagDataId : ""}
|
2024-07-31 17:07:19 +08:00
|
|
|
authorId={authorId ? authorId : ""}
|
2024-09-04 15:52:35 +08:00
|
|
|
payStatus={payStatus ? payStatus : ''}
|
|
|
|
// 退款
|
|
|
|
refunKeywords={refunKeywords}
|
|
|
|
applyStatus={applyStatus ? applyStatus : ''}
|
|
|
|
type={type ? type : ""}
|
|
|
|
// 补正
|
|
|
|
correctionKeywords={correctionKeywords ? correctionKeywords : ''}
|
|
|
|
correctionNumType={correctionNumType ? correctionNumType : ''}
|
|
|
|
correctionType={correctionType ? correctionType : ''}
|
|
|
|
correctionApplyStatus={correctionApplyStatus ? correctionApplyStatus : ''}
|
2025-01-03 16:16:10 +08:00
|
|
|
tagCor = {tagCor? tagCor : ''}
|
2024-08-26 18:03:35 +08:00
|
|
|
// enableBelongpeople = {()=>{setClickBelongpeople(true)}}
|
2024-06-03 14:56:19 +08:00
|
|
|
/>
|
2024-09-03 17:51:42 +08:00
|
|
|
|
2024-07-31 16:00:30 +08:00
|
|
|
<div className='belongPeopleMenu'>
|
|
|
|
<div className='belongPeopleMenu-title'>
|
|
|
|
<MenuFoldOutlined style={{ marginLeft: 10, marginRight: 10 }} />产权所属者
|
|
|
|
</div>
|
|
|
|
<div style={{ display: belongArray.length > 0 ? 'block' : 'none' }}>
|
|
|
|
<div className='belongPeopleMenu-box'>
|
|
|
|
{
|
|
|
|
currentPageData.map((item: any) => {
|
|
|
|
return (
|
|
|
|
<div className='belongpeopleName' key={item.projOwnerId} onClick={() => {
|
2024-09-03 17:51:42 +08:00
|
|
|
// const isHome = getMenuActive() == 'ALL' || getMenuActive() == 'PROCESSING' || getMenuActive() == 'COMPLETE'
|
|
|
|
if (authorId == item.projOwnerId) {
|
|
|
|
setauthorId('')
|
|
|
|
|
|
|
|
// if (isHome) {
|
|
|
|
|
|
|
|
// nav('/home', {
|
|
|
|
// state: {
|
|
|
|
// keyword: keywords,
|
|
|
|
// type: type,
|
|
|
|
// chargeAdditionals: chargeAdditionals,
|
|
|
|
// tagDataId: tagDataId,
|
|
|
|
// authorId: '',
|
|
|
|
// payStatus: payStatus
|
|
|
|
|
|
|
|
// }
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
// if (getMenuActive() == 'REFUN') {
|
|
|
|
// nav('/refun', {
|
|
|
|
// state: {
|
|
|
|
// state: {
|
|
|
|
// keywords: refunKeywords,
|
|
|
|
// applyStatus: applyStatus,
|
|
|
|
// authorId: '',
|
|
|
|
// }
|
|
|
|
|
|
|
|
// }
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
|
2024-08-29 17:56:39 +08:00
|
|
|
} else {
|
|
|
|
setauthorId(item.projOwnerId)
|
2024-09-03 17:51:42 +08:00
|
|
|
// if (isHome) {
|
|
|
|
// nav('/home', {
|
|
|
|
// state: {
|
|
|
|
// keyword: keywords,
|
|
|
|
// type: type,
|
|
|
|
// chargeAdditionals: chargeAdditionals,
|
|
|
|
// tagDataId: tagDataId,
|
|
|
|
// authorId: item.projOwnerId,
|
|
|
|
// payStatus: payStatus
|
|
|
|
|
|
|
|
// }
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
// if (getMenuActive() == 'REFUN') {
|
|
|
|
// nav('/refun', {
|
|
|
|
// state: {
|
|
|
|
// state: {
|
|
|
|
// keywords: refunKeywords,
|
|
|
|
// applyStatus: applyStatus,
|
|
|
|
// authorId: item.projOwnerId,
|
|
|
|
// }
|
|
|
|
|
|
|
|
// }
|
|
|
|
// })
|
|
|
|
// }
|
|
|
|
|
2024-07-31 16:00:30 +08:00
|
|
|
}
|
2024-09-03 17:51:42 +08:00
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
// alert(getMenuActive())
|
2024-08-26 18:03:35 +08:00
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
|
|
|
|
// const menuName = (getMenuActive())
|
|
|
|
// // const menuTrue = menuName == 'ALL' || 'PROCESSING' || 'COMPLETE'
|
|
|
|
// if(menuName == 'ALL' || 'PROCESSING' ||'COMPLETE' ){
|
|
|
|
// alert(1)
|
|
|
|
// }else{
|
|
|
|
// alert(2)
|
|
|
|
// }
|
|
|
|
|
2024-07-31 16:00:30 +08:00
|
|
|
}}
|
2024-09-03 17:51:42 +08:00
|
|
|
style={{ background: authorId == item.projOwnerId ? '#FF9F08' : '', color: authorId == item.projOwnerId ? '#FFF' : '' }}
|
2024-07-31 17:07:19 +08:00
|
|
|
title={item.name} // 添加 title 属性以显示完整文本
|
2024-07-31 16:00:30 +08:00
|
|
|
>
|
2024-08-02 09:23:23 +08:00
|
|
|
{item.name}
|
2024-07-31 16:00:30 +08:00
|
|
|
</div>
|
|
|
|
)
|
|
|
|
})
|
|
|
|
}
|
|
|
|
</div>
|
|
|
|
{/* 分页控件 */}
|
|
|
|
{/* <div className='pagination-controls'>
|
|
|
|
<Button
|
|
|
|
type="primary"
|
|
|
|
onClick={() => handlePageChange(currentPage - 1)}
|
|
|
|
disabled={currentPage === 1}
|
|
|
|
>
|
|
|
|
上一页
|
|
|
|
</Button>
|
|
|
|
|
|
|
|
<Button
|
|
|
|
type="primary"
|
|
|
|
onClick={() => handlePageChange(currentPage + 1)}
|
|
|
|
disabled={currentPage === totalPages}
|
|
|
|
style={{ marginLeft: 10 }}
|
|
|
|
>
|
|
|
|
下一页
|
|
|
|
</Button>
|
|
|
|
</div> */}
|
|
|
|
<div className='belong-pagination'>
|
|
|
|
<Pagination
|
2024-08-12 14:43:58 +08:00
|
|
|
showSizeChanger={false}
|
2024-07-31 16:00:30 +08:00
|
|
|
current={currentPage}
|
|
|
|
total={totalItems}
|
|
|
|
pageSize={itemsPerPage}
|
|
|
|
onChange={handlePageChange} // 页码改变时的回调
|
|
|
|
className="custom-pagination"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div style={{ display: belongArray.length > 0 ? 'none' : 'block', height: 230 }}>
|
2024-07-31 17:07:19 +08:00
|
|
|
<div style={{ width: 230, height: 230, display: 'flex', alignItems: 'center', justifyContent: 'center' }}>
|
2024-07-31 16:00:30 +08:00
|
|
|
<Empty
|
|
|
|
description="暂无数据"
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{/* <MenuTreeWithTopButton /> */}
|
2024-06-03 14:56:19 +08:00
|
|
|
{/* <MenuWithBottomButtom
|
2024-05-15 18:00:20 +08:00
|
|
|
button={agentMenu.button}
|
|
|
|
list={agentMenu.list}
|
|
|
|
handleListItem={agentMenu.handleListItem}
|
|
|
|
/> */}
|
2024-07-22 17:22:35 +08:00
|
|
|
{/* <MenuWithBottomButtom
|
2024-06-03 14:56:19 +08:00
|
|
|
button={sellMenu.button}
|
|
|
|
list={sellMenu.list}
|
|
|
|
handleListItem={sellMenu.handleListItem}
|
|
|
|
/>
|
|
|
|
<MenuWithBottomButtom
|
|
|
|
button={buyMenu.button}
|
|
|
|
list={buyMenu.list}
|
|
|
|
handleListItem={buyMenu.handleListItem}
|
2024-08-22 16:33:01 +08:00
|
|
|
/> */}
|
2024-09-03 17:51:42 +08:00
|
|
|
{/* <MenuWithTopButton
|
2024-08-22 16:33:01 +08:00
|
|
|
button={refundMenu.button}
|
|
|
|
list={refundMenu.list}
|
|
|
|
handleListItem={refundMenu.handleListItem}
|
2024-09-03 17:51:42 +08:00
|
|
|
|
|
|
|
/> */}
|
|
|
|
{/* <MenuWithTopButton
|
2024-08-26 18:03:35 +08:00
|
|
|
button={correctionMenu.button}
|
|
|
|
list={correctionMenu.list}
|
|
|
|
handleListItem={correctionMenu.handleListItem}
|
2024-09-03 17:51:42 +08:00
|
|
|
/> */}
|
2024-06-14 15:50:34 +08:00
|
|
|
</div>
|
2024-08-29 17:56:39 +08:00
|
|
|
{/* </div> */}
|
2024-03-27 18:56:48 +08:00
|
|
|
</div>
|
2024-08-29 17:56:39 +08:00
|
|
|
|
2024-03-27 18:56:48 +08:00
|
|
|
<div className="right">
|
2024-05-07 17:00:32 +08:00
|
|
|
<div>
|
|
|
|
<div className="top">
|
|
|
|
{/* 标签 */}
|
|
|
|
{/* {renderStatus()} */}
|
|
|
|
<div className='gps'>
|
|
|
|
<img src={gpsImg} alt="" />
|
2024-09-10 11:52:02 +08:00
|
|
|
<div className='gps-now'>当前位置:{now}</div>
|
|
|
|
</div>
|
|
|
|
<div className='mediaLine'>
|
|
|
|
<div className='line' style={{
|
|
|
|
display: showSearchBox ? 'block' : 'none',
|
|
|
|
|
|
|
|
}} ></div>
|
2024-05-07 17:00:32 +08:00
|
|
|
</div>
|
2024-09-03 17:51:42 +08:00
|
|
|
<div style={{ display: showSearchBox ? 'block' : 'none' }}>
|
2024-09-10 11:52:02 +08:00
|
|
|
<div
|
|
|
|
className='mediaSearch'
|
|
|
|
style={{
|
|
|
|
|
|
|
|
display: 'flex',
|
|
|
|
alignItems: 'center',
|
|
|
|
minHeight: 62,
|
|
|
|
// flexWrap: 'wrap',
|
|
|
|
padding: '10px 0',
|
|
|
|
boxSizing: 'border-box',
|
|
|
|
// background:'red',
|
|
|
|
// width:890
|
|
|
|
}}>
|
2024-09-03 17:51:42 +08:00
|
|
|
|
|
|
|
|
|
|
|
<div
|
|
|
|
style={{
|
|
|
|
width: 1,
|
|
|
|
height: 23,
|
|
|
|
marginLeft: 33,
|
|
|
|
marginRight: 31,
|
|
|
|
display: showSearchBox ? 'none' : 'block'
|
|
|
|
}}
|
|
|
|
></div>
|
|
|
|
<Search placeholder="输入项目名称"
|
|
|
|
value={nowKeyword}
|
|
|
|
onSearch={handleSearch}
|
|
|
|
onChange={handleChange}
|
2024-12-24 15:41:20 +08:00
|
|
|
className='searchInputmedia'
|
2024-09-03 17:51:42 +08:00
|
|
|
style={{
|
2024-12-24 15:41:20 +08:00
|
|
|
// maxWidth: '200px',
|
|
|
|
width: '170px',
|
2024-09-03 17:51:42 +08:00
|
|
|
height: '31px',
|
|
|
|
display: showSearchBox ? 'block' : 'none'
|
|
|
|
}}
|
|
|
|
allowClear
|
|
|
|
/>
|
|
|
|
<Select
|
|
|
|
value={type}
|
|
|
|
allowClear
|
2024-12-24 15:41:20 +08:00
|
|
|
style={{ height: '31px', width: '110px', marginLeft: 20, display: showSearchBox ? 'block' : 'none' }}
|
2024-09-03 17:51:42 +08:00
|
|
|
onChange={(value: string) => {
|
|
|
|
setType(value)
|
|
|
|
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: value,
|
|
|
|
chargeAdditionals: chargeAdditionals,
|
|
|
|
tagDataId: tagDataId,
|
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot
|
2024-09-03 17:51:42 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
}}
|
|
|
|
options={[
|
|
|
|
|
|
|
|
{ value: 'FREE', label: '免费试用' },
|
|
|
|
{ value: 'MATERIAL', label: '写材料' },
|
|
|
|
{ value: 'ALL', label: '全托管' },
|
|
|
|
]}
|
|
|
|
|
|
|
|
placeholder='选择类型'
|
|
|
|
/>
|
|
|
|
<Select
|
|
|
|
allowClear
|
|
|
|
value={chargeAdditionals}
|
|
|
|
|
|
|
|
style={{ height: '31px', width: '130px', marginLeft: 20, display: showSearchBox ? 'block' : 'none' }}
|
|
|
|
onChange={(value: string) => {
|
|
|
|
// console.log(`selected ${value}`);
|
|
|
|
setchargeAdditionals(value)
|
|
|
|
// alert(`selected ${value}`)
|
|
|
|
// lyp
|
|
|
|
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: type,
|
|
|
|
chargeAdditionals: value,
|
|
|
|
tagDataId: tagDataId,
|
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot
|
2024-09-03 17:51:42 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
}}
|
|
|
|
options={[
|
|
|
|
// { value: '', label: '全部项目' },
|
|
|
|
{ value: 'PKG', label: '安装包' },
|
|
|
|
{ value: 'VIDEO_DEMO', label: '演示视频' },
|
|
|
|
{ value: 'URGENT', label: '加急' },
|
|
|
|
]}
|
|
|
|
// defaultValue=""
|
|
|
|
placeholder={'选择拓展收费'}
|
|
|
|
/>
|
|
|
|
<Select
|
|
|
|
allowClear
|
2025-01-03 16:03:35 +08:00
|
|
|
value={tagDataId}
|
2024-09-03 17:51:42 +08:00
|
|
|
style={{ height: '31px', width: '130px', marginLeft: 20, display: showSearchBox ? 'block' : 'none' }}
|
|
|
|
onChange={(value: string) => {
|
2025-01-03 16:16:10 +08:00
|
|
|
// console.log(`selected ${value}`);
|
2024-12-31 18:31:06 +08:00
|
|
|
// const [part1, part2] = value.split(':');
|
|
|
|
// console.log('part1:', part1);
|
|
|
|
// console.log('part2:', part2);
|
|
|
|
// if (part1 == 'TAG_NOT') {
|
|
|
|
// setTagNot(true)
|
|
|
|
// }
|
|
|
|
|
2024-09-03 17:51:42 +08:00
|
|
|
settagDataId(value)
|
|
|
|
// alert(`selected ${value}`)
|
|
|
|
// lyp
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: type,
|
|
|
|
chargeAdditionals: chargeAdditionals,
|
|
|
|
tagDataId: value,
|
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot:part2 == 'TAG_NOT'?true:false
|
2024-09-03 17:51:42 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
}}
|
|
|
|
options={
|
2024-11-04 11:55:51 +08:00
|
|
|
|
2024-09-03 17:51:42 +08:00
|
|
|
tagArray
|
2024-08-29 17:56:39 +08:00
|
|
|
}
|
2024-09-03 17:51:42 +08:00
|
|
|
|
|
|
|
placeholder={'选择标签'}
|
|
|
|
|
|
|
|
|
2024-11-04 11:55:51 +08:00
|
|
|
/>
|
2024-12-24 16:18:18 +08:00
|
|
|
<div style={{
|
|
|
|
display:remindTagArray.length > 0 ? 'block' : 'none',
|
|
|
|
}}>
|
|
|
|
<Select
|
|
|
|
allowClear
|
|
|
|
value={projRemindId}
|
|
|
|
style={{ height: '31px', width: '130px', marginLeft: 20, display: showSearchBox ? 'block' : 'none' }}
|
|
|
|
onChange={(value: string) => {
|
|
|
|
// console.log(`selected ${value}`);
|
|
|
|
setprojRemindId(value)
|
|
|
|
// alert(`selected ${value}`)
|
|
|
|
// lyp
|
|
|
|
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: type,
|
|
|
|
chargeAdditionals: chargeAdditionals,
|
|
|
|
tagDataId: tagDataId,
|
|
|
|
authorId: authorId,
|
|
|
|
payStatus: payStatus,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: value,
|
|
|
|
// tagNot
|
2024-12-24 16:18:18 +08:00
|
|
|
}
|
|
|
|
})
|
2024-11-04 11:55:51 +08:00
|
|
|
|
2024-12-24 16:18:18 +08:00
|
|
|
}}
|
|
|
|
options={
|
2024-11-04 11:55:51 +08:00
|
|
|
|
2024-12-24 16:18:18 +08:00
|
|
|
remindTagArray
|
|
|
|
}
|
2024-11-04 11:55:51 +08:00
|
|
|
|
2024-12-24 16:18:18 +08:00
|
|
|
placeholder={'选择提醒'}
|
2024-11-04 11:55:51 +08:00
|
|
|
|
|
|
|
|
2024-12-24 16:18:18 +08:00
|
|
|
/>
|
|
|
|
</div>
|
2024-09-03 17:51:42 +08:00
|
|
|
<Select
|
|
|
|
allowClear
|
|
|
|
value={payStatus}
|
|
|
|
|
|
|
|
style={{ height: '31px', width: '130px', marginLeft: 20, display: showSearchBox ? 'block' : 'none' }}
|
|
|
|
onChange={(value: string) => {
|
|
|
|
setpayStatus(value)
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: type,
|
|
|
|
chargeAdditionals: chargeAdditionals,
|
|
|
|
tagDataId: tagDataId,
|
|
|
|
authorId: authorId,
|
2024-11-04 11:55:51 +08:00
|
|
|
payStatus: value,
|
2024-12-31 18:31:06 +08:00
|
|
|
projRemindId: projRemindId,
|
|
|
|
// tagNot
|
2024-09-03 17:51:42 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
}}
|
|
|
|
options={[
|
|
|
|
|
|
|
|
{ value: 'UNPAID', label: '未付款' },
|
|
|
|
{ value: 'PAID', label: '已付款' },
|
|
|
|
{ value: 'ARREARS', label: '欠费' },
|
|
|
|
{ value: 'FULL_REFUND', label: '全额退费' },
|
|
|
|
{ value: 'CORRECTION1_REFUND', label: '补正1次退款' },
|
|
|
|
{ value: 'CORRECTION2_REFUND', label: '补正2次退款' },
|
|
|
|
]}
|
|
|
|
|
|
|
|
placeholder={'选择付款类型'}
|
|
|
|
/>
|
|
|
|
<Button onClick={() => {
|
|
|
|
init()
|
|
|
|
}} style={{ marginLeft: 10, display: showSearchBox ? 'block' : 'none', height: 31 }}
|
|
|
|
// type="primary"
|
|
|
|
icon={<ClearOutlined />}>
|
|
|
|
清除
|
|
|
|
</Button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<div style={{ display: refunSearchBox ? 'block' : 'none' }}>
|
2024-09-10 11:52:02 +08:00
|
|
|
<div
|
|
|
|
className='mediaSearch'
|
|
|
|
style={{
|
|
|
|
display: 'flex',
|
|
|
|
alignItems: 'center'
|
|
|
|
}}>
|
|
|
|
<div className='mediaLine'>
|
|
|
|
<div className='line' style={{
|
|
|
|
}} ></div>
|
|
|
|
</div>
|
2024-09-03 17:51:42 +08:00
|
|
|
<Button type="primary" onClick={() => {
|
|
|
|
setRefunModal(true)
|
2024-09-04 15:52:35 +08:00
|
|
|
refunInit()
|
2024-09-11 16:50:20 +08:00
|
|
|
// dispath({
|
|
|
|
// type: 'newRefun',
|
|
|
|
// val: true
|
|
|
|
// })
|
2024-09-04 15:52:35 +08:00
|
|
|
}}
|
|
|
|
style={{ background: '#FF9F08' }}
|
|
|
|
>
|
2024-09-03 17:51:42 +08:00
|
|
|
申请退款
|
|
|
|
</Button>
|
|
|
|
<Search placeholder="输入项目名称"
|
|
|
|
value={newRefunValue}
|
|
|
|
onSearch={refunhandleSearch}
|
|
|
|
onChange={refunhandleChange}
|
|
|
|
style={{
|
|
|
|
width: '200px',
|
|
|
|
height: '31px',
|
|
|
|
marginLeft: 10
|
|
|
|
}}
|
|
|
|
allowClear
|
|
|
|
/>
|
|
|
|
<Select
|
|
|
|
value={applyStatus}
|
|
|
|
style={{ height: '31px', width: '150px', marginLeft: 10 }}
|
|
|
|
onChange={(value: string) => {
|
|
|
|
setapplyStatus(value)
|
|
|
|
nav('/refun', {
|
|
|
|
state: {
|
|
|
|
keywords: refunKeywords,
|
|
|
|
applyStatus: value,
|
|
|
|
authorId: authorId
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}}
|
|
|
|
options={[
|
|
|
|
// { value: '', label: '全部项目' },
|
|
|
|
{ value: 'PENDING', label: '待审核' },
|
|
|
|
{ value: 'APPROVED', label: '已通过' },
|
|
|
|
{ value: 'REJECTED', label: '未通过' },
|
|
|
|
{ value: 'CANCELED', label: '已取消' },
|
|
|
|
]}
|
|
|
|
// defaultValue=""
|
|
|
|
placeholder={'选择状态'}
|
|
|
|
allowClear
|
|
|
|
/>
|
|
|
|
<Button onClick={() => {
|
|
|
|
refunInit()
|
|
|
|
}} style={{ marginLeft: 10, height: 31 }}
|
|
|
|
// type="primary"
|
|
|
|
icon={<ClearOutlined />}>
|
|
|
|
清除
|
|
|
|
</Button>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div style={{ display: correctionSearchBox ? 'block' : 'none' }}>
|
2024-09-10 11:52:02 +08:00
|
|
|
<div className='mediaSearch' style={{
|
2024-09-03 17:51:42 +08:00
|
|
|
display: 'flex',
|
|
|
|
alignItems: 'center'
|
|
|
|
}}>
|
2024-09-10 11:52:02 +08:00
|
|
|
<div className='mediaLine'>
|
|
|
|
<div className='line' style={{
|
|
|
|
}} ></div>
|
|
|
|
</div>
|
2024-09-03 17:51:42 +08:00
|
|
|
<Button type="primary" onClick={() => {
|
|
|
|
setCorrectionModal(true)
|
2024-09-04 15:52:35 +08:00
|
|
|
correctionInit()
|
2024-09-11 16:50:20 +08:00
|
|
|
// dispath({
|
|
|
|
// type: 'newCorrection',
|
|
|
|
// val: true
|
|
|
|
// })
|
2024-09-04 15:52:35 +08:00
|
|
|
}}
|
|
|
|
style={{ background: '#FF9F08' }}
|
|
|
|
>
|
2024-09-03 17:51:42 +08:00
|
|
|
申请补正
|
|
|
|
</Button>
|
|
|
|
<Search placeholder="输入项目名称"
|
2024-09-04 15:52:35 +08:00
|
|
|
value={newCorrectionValue}
|
|
|
|
onSearch={correctionhandleSearch}
|
|
|
|
onChange={correctionhandleChange}
|
2024-09-03 17:51:42 +08:00
|
|
|
style={{
|
2025-01-03 15:56:36 +08:00
|
|
|
width: '160px',
|
2024-09-03 17:51:42 +08:00
|
|
|
height: '31px',
|
|
|
|
marginLeft: 10
|
|
|
|
}}
|
|
|
|
allowClear
|
|
|
|
/>
|
|
|
|
<Select
|
2024-09-04 15:52:35 +08:00
|
|
|
value={correctionNumType}
|
2025-01-03 15:56:36 +08:00
|
|
|
style={{ height: '31px', width: '110px', marginLeft: 10 }}
|
2024-09-03 17:51:42 +08:00
|
|
|
|
|
|
|
onChange={(value: string) => {
|
2024-09-04 15:52:35 +08:00
|
|
|
setcorrectionNumType(value)
|
|
|
|
nav('/correction', {
|
|
|
|
state: {
|
|
|
|
keywords: correctionKeywords,
|
|
|
|
correctionNumType: value,
|
|
|
|
correctionType: correctionType,
|
|
|
|
applyStatus: correctionApplyStatus,
|
2025-01-03 15:56:36 +08:00
|
|
|
authorId: authorId,
|
|
|
|
tagCor:tagCor,
|
2024-09-04 15:52:35 +08:00
|
|
|
}
|
|
|
|
})
|
2024-09-03 17:51:42 +08:00
|
|
|
}}
|
|
|
|
options={[
|
|
|
|
// { value: '', label: '全部项目' },
|
|
|
|
{ value: 'CORRECTION1', label: '一次补正' },
|
|
|
|
{ value: 'CORRECTION2', label: '二次补正' },
|
|
|
|
]}
|
|
|
|
// defaultValue=""
|
|
|
|
placeholder={'选择类型'}
|
|
|
|
allowClear
|
|
|
|
/>
|
|
|
|
<Select
|
2025-01-03 15:56:36 +08:00
|
|
|
style={{ height: '31px', width: '130px', marginLeft: 10 }}
|
2024-09-04 15:52:35 +08:00
|
|
|
value={correctionType}
|
2024-09-03 17:51:42 +08:00
|
|
|
onChange={(value: string) => {
|
2024-09-04 15:52:35 +08:00
|
|
|
setcorrectionType(value)
|
|
|
|
nav('/correction', {
|
|
|
|
state: {
|
|
|
|
keywords: correctionKeywords,
|
|
|
|
correctionNumType: correctionNumType,
|
|
|
|
correctionType: value,
|
|
|
|
applyStatus: correctionApplyStatus,
|
2025-01-03 15:56:36 +08:00
|
|
|
authorId: authorId,
|
|
|
|
tagCor:tagCor,
|
2024-09-04 15:52:35 +08:00
|
|
|
}
|
|
|
|
})
|
2024-09-03 17:51:42 +08:00
|
|
|
}}
|
|
|
|
allowClear
|
|
|
|
options={[
|
|
|
|
// { value: '', label: '全部项目' },
|
|
|
|
{ value: 'CODE', label: '代码' },
|
|
|
|
{ value: 'MANUAL', label: '操作手册' },
|
|
|
|
{ value: 'ALL', label: '全部补正' },
|
|
|
|
|
|
|
|
]}
|
|
|
|
// defaultValue=""
|
|
|
|
placeholder={'选择补正种类'}
|
|
|
|
/>
|
|
|
|
<Select
|
2024-09-04 15:52:35 +08:00
|
|
|
value={correctionApplyStatus}
|
2025-01-03 15:56:36 +08:00
|
|
|
style={{ height: '31px', width: '120px', marginLeft: 10 }}
|
2024-09-03 17:51:42 +08:00
|
|
|
onChange={(value: string) => {
|
2024-09-04 15:52:35 +08:00
|
|
|
setcorrectionApplyStatus(value)
|
|
|
|
nav('/correction', {
|
2024-09-03 17:51:42 +08:00
|
|
|
state: {
|
2024-09-04 15:52:35 +08:00
|
|
|
keywords: correctionKeywords,
|
|
|
|
correctionNumType: correctionNumType,
|
|
|
|
correctionType: correctionType,
|
2024-09-03 17:51:42 +08:00
|
|
|
applyStatus: value,
|
2025-01-03 15:56:36 +08:00
|
|
|
authorId: authorId,
|
|
|
|
tagCor:tagCor,
|
2024-09-03 17:51:42 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}}
|
|
|
|
options={[
|
|
|
|
// { value: '', label: '全部项目' },
|
|
|
|
{ value: 'PENDING', label: '待审核' },
|
|
|
|
{ value: 'APPROVED', label: '已通过' },
|
|
|
|
{ value: 'REJECTED', label: '未通过' },
|
|
|
|
{ value: 'CANCELED', label: '已取消' },
|
|
|
|
]}
|
|
|
|
// defaultValue=""
|
|
|
|
placeholder={'选择状态'}
|
|
|
|
allowClear
|
2025-01-03 15:56:36 +08:00
|
|
|
/>
|
|
|
|
<Select
|
2025-01-03 16:03:35 +08:00
|
|
|
value={tagCor}
|
2025-01-03 15:56:36 +08:00
|
|
|
style={{ height: '31px', width: '120px', marginLeft: 10 }}
|
|
|
|
onChange={(value: string) => {
|
|
|
|
setTagCor(value)
|
|
|
|
nav('/correction', {
|
|
|
|
state: {
|
|
|
|
keywords: correctionKeywords,
|
|
|
|
correctionNumType: correctionNumType,
|
|
|
|
correctionType: correctionType,
|
|
|
|
applyStatus: applyStatus,
|
|
|
|
authorId: authorId,
|
|
|
|
tagCor:value,
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}}
|
|
|
|
options={
|
|
|
|
tagCorArray
|
|
|
|
}
|
|
|
|
// defaultValue=""
|
|
|
|
placeholder={'选择标签'}
|
|
|
|
allowClear
|
2024-09-03 17:51:42 +08:00
|
|
|
/>
|
|
|
|
<Button onClick={() => {
|
2024-09-04 15:52:35 +08:00
|
|
|
correctionInit()
|
2024-09-03 17:51:42 +08:00
|
|
|
}} style={{ marginLeft: 10, height: 31 }}
|
|
|
|
// type="primary"
|
|
|
|
icon={<ClearOutlined />}>
|
|
|
|
清除
|
|
|
|
</Button>
|
|
|
|
</div>
|
|
|
|
</div>
|
2024-11-29 17:52:17 +08:00
|
|
|
<div style={{ display: contractSearchBox ? 'block' : 'none' }}>
|
|
|
|
<div className='mediaSearch' style={{
|
|
|
|
display: 'flex',
|
|
|
|
alignItems: 'center'
|
|
|
|
}}>
|
|
|
|
<div className='mediaLine'>
|
|
|
|
<div className='line' style={{
|
|
|
|
}} ></div>
|
|
|
|
</div>
|
|
|
|
<Button type="primary" onClick={() => {
|
|
|
|
setContractModal(true)
|
|
|
|
}}
|
|
|
|
style={{ background: '#FF9F08' }}
|
|
|
|
>
|
|
|
|
新增合同
|
|
|
|
</Button>
|
2024-09-03 17:51:42 +08:00
|
|
|
|
2024-11-29 17:52:17 +08:00
|
|
|
</div>
|
|
|
|
</div>
|
2024-06-14 15:50:34 +08:00
|
|
|
<div style={{
|
|
|
|
width: '253px',
|
|
|
|
height: '31px',
|
2024-11-29 17:52:17 +08:00
|
|
|
display: showSearchBox || refunSearchBox || correctionSearchBox || contractSearchBox ? 'none' : 'block'
|
2024-06-14 15:50:34 +08:00
|
|
|
}}></div>
|
2024-05-07 17:00:32 +08:00
|
|
|
<div className='nowPosition'>
|
|
|
|
<img src={backImg} alt="" />
|
2024-09-02 16:41:02 +08:00
|
|
|
<div style={{ display: now == '首页-项目' || now == '首页-退款' || now == '首页-补正' ? 'block' : 'none' }}>
|
2024-07-31 17:07:19 +08:00
|
|
|
{/* <Breadcrumb
|
2024-05-07 17:00:32 +08:00
|
|
|
separator="|"
|
|
|
|
// items={[
|
|
|
|
// { title: <Link to={'/home'}>首页</Link> },
|
|
|
|
// ]}
|
|
|
|
items={pathArray}
|
2024-07-31 17:07:19 +08:00
|
|
|
/> */}
|
|
|
|
<span>首页</span>
|
|
|
|
</div>
|
|
|
|
<div style={{ display: now == '创建项目' ? 'block' : 'none' }}>
|
|
|
|
{/* <Breadcrumb
|
|
|
|
separator="|"
|
|
|
|
// items={[
|
|
|
|
// { title: <Link to={'/home'}>首页</Link> },
|
|
|
|
// ]}
|
|
|
|
items={pathArray}
|
|
|
|
/> */}
|
|
|
|
<span style={{ cursor: 'pointer' }}
|
|
|
|
onClick={() => {
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
2024-08-01 13:25:33 +08:00
|
|
|
type: type,
|
2024-07-31 17:07:19 +08:00
|
|
|
chargeAdditionals: chargeAdditionals,
|
2024-07-31 18:41:25 +08:00
|
|
|
tagDataId: tagDataId,
|
2024-08-29 17:56:39 +08:00
|
|
|
authorId: authorId,
|
2024-12-31 18:31:06 +08:00
|
|
|
payStatus: payStatus,
|
|
|
|
// tagNot
|
2024-08-29 17:56:39 +08:00
|
|
|
|
2024-07-31 17:07:19 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}}
|
|
|
|
>首页</span>
|
|
|
|
<span style={{ marginLeft: 10, marginRight: 10 }}>|</span>
|
|
|
|
<span>创建项目</span>
|
|
|
|
</div>
|
2024-09-02 16:41:02 +08:00
|
|
|
<div style={{ display: now.includes('项目-') ? 'block' : 'none' }}>
|
2024-07-31 17:07:19 +08:00
|
|
|
{/* <Breadcrumb
|
|
|
|
separator="|"
|
|
|
|
// items={[
|
|
|
|
// { title: <Link to={'/home'}>首页</Link> },
|
|
|
|
// ]}
|
|
|
|
items={pathArray}
|
|
|
|
/> */}
|
|
|
|
<span style={{ cursor: 'pointer' }}
|
|
|
|
onClick={() => {
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
2024-08-01 13:25:33 +08:00
|
|
|
type: type,
|
2024-07-31 17:07:19 +08:00
|
|
|
chargeAdditionals: chargeAdditionals,
|
2024-07-31 18:41:25 +08:00
|
|
|
tagDataId: tagDataId,
|
2024-08-29 17:56:39 +08:00
|
|
|
authorId: authorId,
|
2024-12-31 18:31:06 +08:00
|
|
|
payStatus: payStatus,
|
|
|
|
// tagNot
|
2024-08-29 17:56:39 +08:00
|
|
|
|
2024-07-31 17:07:19 +08:00
|
|
|
}
|
|
|
|
})
|
|
|
|
}}
|
|
|
|
>首页</span>
|
|
|
|
<span style={{ marginLeft: 10, marginRight: 10 }}>|</span>
|
2024-09-02 16:41:02 +08:00
|
|
|
<span>{projStatus}项目</span>
|
2024-05-07 17:00:32 +08:00
|
|
|
</div>
|
2024-08-30 09:38:55 +08:00
|
|
|
<div style={{ display: now == '新建项目' ? 'block' : 'none' }}>
|
|
|
|
{/* <Breadcrumb
|
|
|
|
separator="|"
|
|
|
|
// items={[
|
|
|
|
// { title: <Link to={'/home'}>首页</Link> },
|
|
|
|
// ]}
|
|
|
|
items={pathArray}
|
|
|
|
/> */}
|
|
|
|
<span style={{ cursor: 'pointer' }}
|
|
|
|
onClick={() => {
|
|
|
|
nav('/home', {
|
|
|
|
state: {
|
|
|
|
keyword: keywords,
|
|
|
|
type: type,
|
|
|
|
chargeAdditionals: chargeAdditionals,
|
|
|
|
tagDataId: tagDataId,
|
|
|
|
authorId: authorId,
|
2024-12-31 18:31:06 +08:00
|
|
|
payStatus: payStatus,
|
|
|
|
// tagNot
|
2024-08-30 09:38:55 +08:00
|
|
|
|
|
|
|
}
|
|
|
|
})
|
|
|
|
}}
|
|
|
|
>首页</span>
|
|
|
|
<span style={{ marginLeft: 10, marginRight: 10 }}>|</span>
|
|
|
|
<span>新建项目</span>
|
|
|
|
</div>
|
2024-11-29 17:52:17 +08:00
|
|
|
<div style={{ display: now == '首页-合同下载' ? 'block' : 'none' }}>
|
|
|
|
<span>首页</span>
|
|
|
|
</div>
|
2024-05-07 17:00:32 +08:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{/* {
|
2024-03-27 18:56:48 +08:00
|
|
|
listData.type === IndexListDataType.PROJ ? <ListProj/> : (
|
|
|
|
listData.type == IndexListDataType.AGENT ? <ListProjAgent/> : <></>
|
|
|
|
)
|
2024-05-07 17:00:32 +08:00
|
|
|
} */}
|
2024-05-12 07:45:51 +08:00
|
|
|
<div>
|
|
|
|
<Outlet></Outlet>
|
|
|
|
</div>
|
2024-03-27 18:56:48 +08:00
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</IndexListDispatchContext.Provider>
|
|
|
|
</IndexListContext.Provider>
|
2024-08-22 16:33:01 +08:00
|
|
|
<Modal
|
|
|
|
title="申请退款"
|
|
|
|
destroyOnClose={true}
|
|
|
|
open={refunModal}
|
|
|
|
footer={null}
|
|
|
|
onCancel={() => {
|
|
|
|
setRefunModal(false)
|
|
|
|
}}
|
|
|
|
okButtonProps={{ style: { background: 'red', color: 'white' } }}
|
|
|
|
width={592}
|
2024-09-11 14:20:23 +08:00
|
|
|
maskClosable={false} // 禁止通过点击蒙层关闭
|
2024-11-29 17:52:17 +08:00
|
|
|
centered
|
|
|
|
|
2024-08-22 16:33:01 +08:00
|
|
|
>
|
|
|
|
<RefunModal closeModal={() => { setRefunModal(false) }}></RefunModal>
|
|
|
|
</Modal>
|
2024-08-26 18:03:35 +08:00
|
|
|
<Modal
|
|
|
|
title="申请补正"
|
|
|
|
destroyOnClose={true}
|
|
|
|
open={correctionModal}
|
|
|
|
footer={null}
|
2024-09-11 14:20:23 +08:00
|
|
|
maskClosable={false} // 禁止通过点击蒙层关闭
|
2024-08-26 18:03:35 +08:00
|
|
|
onCancel={() => {
|
|
|
|
setCorrectionModal(false)
|
|
|
|
}}
|
|
|
|
okButtonProps={{ style: { background: 'red', color: 'white' } }}
|
|
|
|
width={592}
|
2024-11-29 17:52:17 +08:00
|
|
|
centered
|
|
|
|
|
2024-08-26 18:03:35 +08:00
|
|
|
>
|
2024-09-11 16:45:19 +08:00
|
|
|
<CorrectionModal closeModal={() => { setCorrectionModal(false) }}
|
|
|
|
></CorrectionModal>
|
2024-08-26 18:03:35 +08:00
|
|
|
</Modal>
|
2024-11-29 17:52:17 +08:00
|
|
|
<Modal
|
|
|
|
title="新增合同"
|
|
|
|
destroyOnClose={true}
|
|
|
|
open={contractModal}
|
|
|
|
footer={null}
|
|
|
|
maskClosable={false} // 禁止通过点击蒙层关闭
|
|
|
|
onCancel={() => {
|
|
|
|
setContractModal(false)
|
|
|
|
}}
|
|
|
|
okButtonProps={{ style: { background: 'red', color: 'white' } }}
|
|
|
|
width={592}
|
|
|
|
centered
|
|
|
|
>
|
|
|
|
<ContractModal closeModal={() => { setContractModal(false) }}></ContractModal>
|
|
|
|
</Modal>
|
2024-09-02 16:41:02 +08:00
|
|
|
<Modal title="优惠券"
|
|
|
|
footer={null}
|
|
|
|
|
|
|
|
destroyOnClose
|
|
|
|
open={couponModal}
|
|
|
|
|
|
|
|
width={809}
|
|
|
|
onCancel={() => {
|
|
|
|
// setCouponModal(false)
|
|
|
|
// setUnRead(0)
|
|
|
|
dispath({
|
|
|
|
type: 'changeCouponModal',
|
|
|
|
val: false
|
|
|
|
})
|
|
|
|
}}>
|
|
|
|
<HeadCouponModal closeModal={() => {
|
|
|
|
// setCouponModal(false)
|
|
|
|
dispath({
|
|
|
|
type: 'changeCouponModal',
|
|
|
|
val: false
|
|
|
|
})
|
|
|
|
nav('/proj-create')
|
|
|
|
setMenuActive('ALL')
|
|
|
|
}}></HeadCouponModal>
|
|
|
|
</Modal>
|
2024-09-11 14:04:53 +08:00
|
|
|
<Modal title="可领取优惠券"
|
2024-09-02 16:41:02 +08:00
|
|
|
footer={null}
|
|
|
|
|
|
|
|
destroyOnClose
|
2024-09-11 14:04:53 +08:00
|
|
|
open={getCouponModal}
|
2024-09-02 16:41:02 +08:00
|
|
|
width={809}
|
|
|
|
onCancel={() => {
|
|
|
|
// setCouponModal(false)
|
|
|
|
// setUnRead(0)
|
2024-09-11 14:04:53 +08:00
|
|
|
setGetCouponModal(false)
|
2024-09-02 16:41:02 +08:00
|
|
|
}}>
|
2024-09-11 14:04:53 +08:00
|
|
|
<div className='headModal-bot'>
|
|
|
|
{couponArray.map((item: any) => {
|
|
|
|
return (
|
|
|
|
<div className='couponList' key={item.couponId} >
|
|
|
|
<div className='content'>
|
|
|
|
<div className='content-noUse-left'>
|
|
|
|
<div className='content-left-num'>
|
|
|
|
<div
|
|
|
|
style={{ marginTop: -10 }}
|
|
|
|
>
|
|
|
|
<span style={{ fontSize: 30 }}>¥</span>
|
|
|
|
<span style={{ fontSize: 60, fontWeight: 700 }}>{item.amount / 100}</span>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div className='content-right'>
|
|
|
|
<div style={{ display: 'flex', marginTop: 20, justifyContent: 'space-between' }}>
|
|
|
|
<div className='content-text'>
|
|
|
|
可购买平台内任意软著时使用
|
|
|
|
</div>
|
|
|
|
<div className='content-rule' onClick={() => {
|
|
|
|
// window.open('https://www.aimzhu.com/CouponRule.html')
|
|
|
|
|
|
|
|
getCouponUrl()
|
|
|
|
}}>
|
|
|
|
使用规则
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div className='content-bot'>
|
|
|
|
<div className='content-time'>
|
|
|
|
有效期:{item.useGmtStart} 至 {item.useGmtEnd}
|
|
|
|
</div>
|
|
|
|
|
2024-09-11 14:20:23 +08:00
|
|
|
<div className='content-button' style={{
|
2024-09-11 16:45:19 +08:00
|
|
|
background: '#1677FF'
|
2024-09-11 14:20:23 +08:00
|
|
|
}} onClick={() => {
|
2024-09-11 14:04:53 +08:00
|
|
|
// props.closeModal()
|
|
|
|
receiveCoupons(item.couponId)
|
|
|
|
|
|
|
|
}}>
|
|
|
|
立即领取
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
)
|
|
|
|
|
|
|
|
})}
|
|
|
|
</div>
|
|
|
|
</Modal>
|
|
|
|
<div className='couponMask-box'
|
|
|
|
style={{ display: coupon && (location.pathname == '/' || location.pathname.includes('/home')) && couponArray.length == 1 ? 'unset' : 'none' }}
|
|
|
|
>
|
|
|
|
|
|
|
|
<div className='couponMask' >
|
2024-09-02 16:41:02 +08:00
|
|
|
<div className='couponMask-img'>
|
|
|
|
|
2024-09-06 17:26:09 +08:00
|
|
|
<img src={downloadUrl(cpuponImg, false)} alt="" width={'100%'} height={'100%'} onClick={() => {
|
|
|
|
|
|
|
|
}}
|
|
|
|
className='testImg'
|
|
|
|
/>
|
|
|
|
<div className='couponMask-btn' onClick={() => {
|
|
|
|
receiveCoupon()
|
|
|
|
}}>
|
|
|
|
立即领取
|
|
|
|
</div>
|
2024-09-02 16:41:02 +08:00
|
|
|
</div>
|
|
|
|
<div className='couponMask-close' onClick={() => {
|
|
|
|
setCoupon(false)
|
|
|
|
}}>
|
|
|
|
<CloseOutlined />
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
2024-09-11 14:04:53 +08:00
|
|
|
|
|
|
|
|
2024-03-27 18:56:48 +08:00
|
|
|
</>
|
|
|
|
)
|
|
|
|
}
|