Merge remote-tracking branch 'origin/master'
This commit is contained in:
@ -32,6 +32,7 @@ export default defineConfig({
|
|||||||
targets: {
|
targets: {
|
||||||
ie: 11,
|
ie: 11,
|
||||||
},
|
},
|
||||||
|
jsMinifier: 'terser',
|
||||||
define: {
|
define: {
|
||||||
PROJECT_THEME: JSON.stringify(theme),
|
PROJECT_THEME: JSON.stringify(theme),
|
||||||
},
|
},
|
||||||
|
@ -32,6 +32,11 @@ export default [{
|
|||||||
path: '/System/CategoryManagement',
|
path: '/System/CategoryManagement',
|
||||||
component: './CategoryManagement/components/CategoryMaintenance',
|
component: './CategoryManagement/components/CategoryMaintenance',
|
||||||
},
|
},
|
||||||
|
{//品类管理
|
||||||
|
name: '供应商账号管理',
|
||||||
|
path: '/System/SupplierAccount',
|
||||||
|
component: './System/SupplierUser',
|
||||||
|
},
|
||||||
{//定时任务管理
|
{//定时任务管理
|
||||||
path: '/System/Scheduled',
|
path: '/System/Scheduled',
|
||||||
component: './System/Scheduled',
|
component: './System/Scheduled',
|
||||||
|
@ -242,9 +242,9 @@ const Sing: React.FC<{}> = () => {
|
|||||||
<Spin spinning={spin}>
|
<Spin spinning={spin}>
|
||||||
<div className='xsy-headerDiv pd24'>
|
<div className='xsy-headerDiv pd24'>
|
||||||
<h3 className="first-title floatLeft">{showNameT.kb}列表</h3>
|
<h3 className="first-title floatLeft">{showNameT.kb}列表</h3>
|
||||||
<div className='xsy-rightDiv-struct'>
|
{/* <div className='xsy-rightDiv-struct'>
|
||||||
<Button type="primary" onClick={() => window.open(`/bidOpening/bidOpening.html?&roomType=${roomType}`)}>虚拟大厅</Button>
|
<Button type="primary" onClick={() => window.open(`/bidOpening/bidOpening.html?&roomType=${roomType}`)}>虚拟大厅</Button>
|
||||||
</div>
|
</div> */}
|
||||||
</div>
|
</div>
|
||||||
<ProTable
|
<ProTable
|
||||||
columns={columns}//表格
|
columns={columns}//表格
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import React, { useEffect, useRef, useState } from 'react';
|
import React, { useEffect, useRef, useState } from 'react';
|
||||||
import { Button, Checkbox, Col, Collapse, DatePicker, Drawer, Form, Input, message, Modal, Popconfirm, Row, Select, Spin, Upload, Image, InputNumber } from 'antd'
|
import { Button, Checkbox, Col, Collapse, DatePicker, Drawer, Form, Input, message, Modal, Popconfirm, Row, Select, Spin, Upload, Radio, InputNumber } from 'antd'
|
||||||
import ProTable, { ActionType, EditableProTable, ProColumns } from '@ant-design/pro-table';
|
import ProTable, { ActionType, EditableProTable, ProColumns } from '@ant-design/pro-table';
|
||||||
import tableProps from '@/utils/tableProps';
|
import tableProps from '@/utils/tableProps';
|
||||||
import { getList, saveGroup, delOne, saveMember, changeEx, queryVoList, changeMember, applyFor, roomStatus, juryTem, rePassWord, getUserPhoto, unlockAccount, getCrotchListUsingGET, getSecs } from './service';
|
import { getList, saveGroup, delOne, saveMember, changeEx, queryVoList, changeMember, applyFor, roomStatus, juryTem, rePassWord, getUserPhoto, unlockAccount, getCrotchListUsingGET, getSecs } from './service';
|
||||||
@ -12,9 +12,10 @@ import FileDown from '@/utils/Download';
|
|||||||
import { UploadOutlined } from '@ant-design/icons';
|
import { UploadOutlined } from '@ant-design/icons';
|
||||||
import { btnAuthority } from '@/utils/authority';
|
import { btnAuthority } from '@/utils/authority';
|
||||||
import RiskPrevention from '@/utils/RiskPrevention';
|
import RiskPrevention from '@/utils/RiskPrevention';
|
||||||
import { downloadPath } from '@/utils/DownloadUtils';
|
import ExtendUpload from '@/utils/ExtendUpload';
|
||||||
|
// import { downloadPath } from '@/utils/DownloadUtils';
|
||||||
import { sortBy } from 'lodash';
|
import { sortBy } from 'lodash';
|
||||||
import ExpertSchemeProfessionalInfo from './ExpertSchemeProfessionalInfo';
|
// import ExpertSchemeProfessionalInfo from './ExpertSchemeProfessionalInfo';
|
||||||
|
|
||||||
const JudgingPanel: React.FC<{}> = () => {
|
const JudgingPanel: React.FC<{}> = () => {
|
||||||
const modalHeight = window.innerHeight * 96 / 100;
|
const modalHeight = window.innerHeight * 96 / 100;
|
||||||
@ -46,7 +47,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
// const [manNum, manNumSet] = useState<number>(5);//人数
|
// const [manNum, manNumSet] = useState<number>(5);//人数
|
||||||
const [riskVisible, setRiskVisible] = useState<boolean>(false);//风控弹窗 2021.9.7 zhoujianlong
|
const [riskVisible, setRiskVisible] = useState<boolean>(false);//风控弹窗 2021.9.7 zhoujianlong
|
||||||
const [riskData, setRiskData] = useState<any[]>([]);//风控数据 2021.9.7 zhoujianlong
|
const [riskData, setRiskData] = useState<any[]>([]);//风控数据 2021.9.7 zhoujianlong
|
||||||
// const [userPhotoId, setUserPhotoId] = useState<string>("");//电子评标室-录入外部专家-相片id 2022.8.29 zhoujianlong
|
// const [userPhotoId, setUserPhotoId] = useState<string>("");//电子评标室-录入专家-相片id 2022.8.29 zhoujianlong
|
||||||
const userData = getSessionUserData();//当前登录人用户信息
|
const userData = getSessionUserData();//当前登录人用户信息
|
||||||
|
|
||||||
const [professionalMap, setProfessionalMap] = useState<any>();
|
const [professionalMap, setProfessionalMap] = useState<any>();
|
||||||
@ -890,7 +891,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
//成员管理
|
//成员管理
|
||||||
const [add, setAdd] = useState<boolean>(false);//录入外部专家Drawer显隐
|
const [add, setAdd] = useState<boolean>(false);//录入专家Drawer显隐
|
||||||
const [changeMan, changeManSet] = useState<boolean>(false);//更换Drawer显隐
|
const [changeMan, changeManSet] = useState<boolean>(false);//更换Drawer显隐
|
||||||
const [juryId, juryIdSet] = useState<any>('');//更换专家所需评委会id
|
const [juryId, juryIdSet] = useState<any>('');//更换专家所需评委会id
|
||||||
const [reason, reasonSet] = useState<any>('');//更换专家原因
|
const [reason, reasonSet] = useState<any>('');//更换专家原因
|
||||||
@ -908,6 +909,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
const [changeMemberId, changeMemberIdSet] = useState<any>('');//更换专家id
|
const [changeMemberId, changeMemberIdSet] = useState<any>('');//更换专家id
|
||||||
const [changeBtn, changeBtnSet] = useState<any>(true);//更换按钮显隐
|
const [changeBtn, changeBtnSet] = useState<any>(true);//更换按钮显隐
|
||||||
const [formMem] = Form.useForm();
|
const [formMem] = Form.useForm();
|
||||||
|
const formMemSourceType = Form.useWatch('sourceType', formMem);
|
||||||
function reset() {//重置
|
function reset() {//重置
|
||||||
categorySet([]);
|
categorySet([]);
|
||||||
luruSet(0);
|
luruSet(0);
|
||||||
@ -1099,7 +1101,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
message.error('录入人数已满')
|
message.error('录入人数已满')
|
||||||
}
|
}
|
||||||
}}
|
}}
|
||||||
> 录入外部专家</Button>
|
> 录入专家</Button>
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Panel>
|
</Panel>
|
||||||
@ -1123,7 +1125,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
} else {
|
} else {
|
||||||
message.error('录入人数已满')
|
message.error('录入人数已满')
|
||||||
}
|
}
|
||||||
}}> 录入外部专家</Button>
|
}}> 录入专家</Button>
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Panel>
|
</Panel>
|
||||||
@ -1147,7 +1149,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
} else {
|
} else {
|
||||||
message.error('录入人数已满')
|
message.error('录入人数已满')
|
||||||
}
|
}
|
||||||
}}> 录入外部专家</Button>
|
}}> 录入专家</Button>
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Panel>
|
</Panel>
|
||||||
@ -1171,7 +1173,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
} else {
|
} else {
|
||||||
message.error('录入人数已满')
|
message.error('录入人数已满')
|
||||||
}
|
}
|
||||||
}}> 录入外部专家</Button>
|
}}> 录入专家</Button>
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Panel>
|
</Panel>
|
||||||
@ -1195,7 +1197,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
// } else {
|
// } else {
|
||||||
// message.error('录入人数已满')
|
// message.error('录入人数已满')
|
||||||
// }
|
// }
|
||||||
// }}> 录入外部专家</Button>
|
// }}> 录入专家</Button>
|
||||||
]}
|
]}
|
||||||
/>
|
/>
|
||||||
</Panel>
|
</Panel>
|
||||||
@ -1253,7 +1255,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Drawer
|
<Drawer
|
||||||
title="录入外部专家"
|
title="录入专家"
|
||||||
placement="right"
|
placement="right"
|
||||||
width={'50%'}
|
width={'50%'}
|
||||||
onClose={() => {
|
onClose={() => {
|
||||||
@ -1261,11 +1263,21 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
changeBtnSet(true);
|
changeBtnSet(true);
|
||||||
// formMem.resetFields();
|
// formMem.resetFields();
|
||||||
}}
|
}}
|
||||||
visible={add}
|
open={add}
|
||||||
getContainer={false}
|
getContainer={false}
|
||||||
style={{ position: 'absolute' }}
|
style={{ position: 'absolute' }}
|
||||||
>
|
>
|
||||||
<Form {...formLayoutDrawer} form={formMem}>
|
<Form {...formLayoutDrawer} form={formMem}>
|
||||||
|
<Row><Col span={24}><FormItem
|
||||||
|
name="sourceType"
|
||||||
|
label="专家来源"
|
||||||
|
rules={rule('专家来源')}
|
||||||
|
>
|
||||||
|
<Radio.Group>
|
||||||
|
<Radio value="0">集团内部专家</Radio>
|
||||||
|
<Radio value="1">集团外部专家</Radio>
|
||||||
|
</Radio.Group>
|
||||||
|
</FormItem></Col></Row>
|
||||||
<Row><Col span={24}><FormItem
|
<Row><Col span={24}><FormItem
|
||||||
name="mobile"
|
name="mobile"
|
||||||
label="手机号"
|
label="手机号"
|
||||||
@ -1326,6 +1338,12 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
>
|
>
|
||||||
<Input style={{ width: "60%" }} onChange={onCertificateChange} />
|
<Input style={{ width: "60%" }} onChange={onCertificateChange} />
|
||||||
</FormItem></Col></Row>
|
</FormItem></Col></Row>
|
||||||
|
{formMemSourceType === '1' ? (<Row><Col span={24}><FormItem
|
||||||
|
name="fileId"
|
||||||
|
label="上传证明文件"
|
||||||
|
>
|
||||||
|
<ExtendUpload bid={formMem.getFieldValue('fileId')} btnName='选择文件' maxCount={1} uploadProps={{ name: 'fileId', accept: '.jpg,.png,.pdf' }} />
|
||||||
|
</FormItem></Col></Row>) : null}
|
||||||
<Row><Col span={24}><FormItem {...tailLayoutDrawer}>
|
<Row><Col span={24}><FormItem {...tailLayoutDrawer}>
|
||||||
<Button type="primary" loading={loading} hidden={btnAuthority(['ebtp-agency-project-manager', 'ebtp-purchase']) || !changeBtn} onClick={async () => {
|
<Button type="primary" loading={loading} hidden={btnAuthority(['ebtp-agency-project-manager', 'ebtp-purchase']) || !changeBtn} onClick={async () => {
|
||||||
loadingSet(true);
|
loadingSet(true);
|
||||||
@ -1670,7 +1688,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
dataSet(dataTem, type);
|
dataSet(dataTem, type);
|
||||||
memberCountSet(memberCount + 1);
|
memberCountSet(memberCount + 1);
|
||||||
}
|
}
|
||||||
//录入外部专家-获取照片
|
//录入专家-获取照片
|
||||||
const getExpertPhoto = () => {
|
const getExpertPhoto = () => {
|
||||||
formMem.validateFields(["certificate"]).then(value => {
|
formMem.validateFields(["certificate"]).then(value => {
|
||||||
getUserPhoto(value.certificate).then(res => {//获取照片
|
getUserPhoto(value.certificate).then(res => {//获取照片
|
||||||
@ -1710,7 +1728,7 @@ const JudgingPanel: React.FC<{}> = () => {
|
|||||||
form.setFieldsValue({ startTime, endTime });
|
form.setFieldsValue({ startTime, endTime });
|
||||||
}
|
}
|
||||||
return (
|
return (
|
||||||
<div className='bgCWhite' style={{ padding: '0px 24px 24px' }}>
|
<div className='bgCWhite' style={{ padding: '0px 0 24px' }}>
|
||||||
<Spin spinning={spin}>
|
<Spin spinning={spin}>
|
||||||
<ProTable
|
<ProTable
|
||||||
key='proTable6'
|
key='proTable6'
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
import { UnorderedListOutlined } from "@ant-design/icons"
|
import { UnorderedListOutlined } from "@ant-design/icons"
|
||||||
import ProTable, { ActionType, ProColumns } from "@ant-design/pro-table"
|
import ProTable, { ActionType, ProColumns } from "@ant-design/pro-table"
|
||||||
import tableProps from '@/utils/tableProps';
|
import tableProps from '@/utils/tableProps';
|
||||||
import { Button, Card, Divider, message, Spin } from "antd"
|
import { Button, Card, Divider, message, Modal, Popconfirm, Spin } from "antd"
|
||||||
import React, { useEffect, useRef, useState } from "react"
|
import React, { useEffect, useRef, useState } from "react"
|
||||||
import BiddingDocument from "./components/BiddingDocument"
|
import BiddingDocument from "./components/BiddingDocument"
|
||||||
import {
|
import {
|
||||||
@ -95,7 +95,9 @@ const BiddingDocumentList: React.FC<{}> = (props) => {
|
|||||||
let btn1 = (
|
let btn1 = (
|
||||||
<>
|
<>
|
||||||
<Button hidden={btnAuthority(['ebtp-agency-project-manager', 'ebtp-purchase'])} type="text" onClick={() => toEdit(record)}>修改</Button>
|
<Button hidden={btnAuthority(['ebtp-agency-project-manager', 'ebtp-purchase'])} type="text" onClick={() => toEdit(record)}>修改</Button>
|
||||||
<Button hidden={btnAuthority(['ebtp-agency-project-manager', 'ebtp-purchase'])} type="text" onClick={() => toRemove(record)}>删除</Button>
|
<Popconfirm title="确定删除吗?" onConfirm={() => toRemove(record)}>
|
||||||
|
<Button hidden={btnAuthority(['ebtp-agency-project-manager', 'ebtp-purchase'])} type="text">删除</Button>
|
||||||
|
</Popconfirm>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
let btn2 = (
|
let btn2 = (
|
||||||
@ -172,21 +174,31 @@ const BiddingDocumentList: React.FC<{}> = (props) => {
|
|||||||
}
|
}
|
||||||
const toRemoveMore = () => {
|
const toRemoveMore = () => {
|
||||||
if (selectedRowsState.length != 0) {
|
if (selectedRowsState.length != 0) {
|
||||||
setPageloading(true);
|
Modal.confirm({
|
||||||
let param = []
|
title: '确定删除吗?',
|
||||||
for (const item of selectedRowsState) {
|
onOk: () => {
|
||||||
param.push(item.id);
|
setPageloading(true);
|
||||||
}
|
let param = []
|
||||||
removefile(param).then(res => {
|
for (const item of selectedRowsState) {
|
||||||
if (res.code == 200) {
|
param.push(item.id);
|
||||||
message.success('删除成功');
|
}
|
||||||
}
|
removefile(param).then(res => {
|
||||||
|
if (res.code == 200) {
|
||||||
|
message.success('删除成功');
|
||||||
|
}
|
||||||
|
|
||||||
setPageloading(false);
|
setPageloading(false);
|
||||||
setRefresh(Math.random() + 1)
|
setRefresh(Math.random() + 1)
|
||||||
setSelectedRows([]);
|
setSelectedRows([]);
|
||||||
actionRef?.current?.reloadAndRest?.();
|
actionRef?.current?.reloadAndRest?.();
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
onCancel: () => {
|
||||||
|
setSelectedRows([]);
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
message.warn('请选择要删除的资审文件');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user