修改
This commit is contained in:
commit
22dd481b38
@ -71,7 +71,7 @@ export default function OrderDetailModal(props: any) {
|
|||||||
idcardType: '',//证件类型
|
idcardType: '',//证件类型
|
||||||
idcard: '',//证件号码
|
idcard: '',//证件号码
|
||||||
})
|
})
|
||||||
// const [waitCorrectionCount, setWaitCorrectionCount] = useState(0) //待补充资料
|
const [waitCorrectionCount, setWaitCorrectionCount] = useState(0) //待补充资料
|
||||||
// tab栏 标题数组
|
// tab栏 标题数组
|
||||||
const tapTitleArray = [
|
const tapTitleArray = [
|
||||||
{
|
{
|
||||||
@ -96,17 +96,17 @@ export default function OrderDetailModal(props: any) {
|
|||||||
{
|
{
|
||||||
key: 'authorize',
|
key: 'authorize',
|
||||||
title: '受让人信息',
|
title: '受让人信息',
|
||||||
className: activeKey == 'authorize' ? 'orderDetailTop-title tapActive borderRight' : 'orderDetailTop-title borderRight'
|
className: activeKey == 'authorize' ? 'orderDetailTop-title tapActive ' : 'orderDetailTop-title '
|
||||||
}
|
}
|
||||||
: {}
|
: {}
|
||||||
),
|
),
|
||||||
// (waitCorrectionCount > 0?
|
(waitCorrectionCount > 0?
|
||||||
// {
|
{
|
||||||
// key: 'file',
|
key: 'file',
|
||||||
// title: '资料补充',
|
title: '资料补充',
|
||||||
// className: activeKey == 'file'? 'orderDetailTop-title tapActive borderRight' : 'orderDetailTop-title borderRight'
|
className: activeKey == 'file'? 'orderDetailTop-title tapActive borderRight' : 'orderDetailTop-title borderRight'
|
||||||
// }:{}
|
}:{}
|
||||||
// )
|
)
|
||||||
// {
|
// {
|
||||||
// key: 'file',
|
// key: 'file',
|
||||||
// title: '资料补充',
|
// title: '资料补充',
|
||||||
@ -137,7 +137,7 @@ export default function OrderDetailModal(props: any) {
|
|||||||
setAuthorizeInfo({
|
setAuthorizeInfo({
|
||||||
...res.buyUserDTO
|
...res.buyUserDTO
|
||||||
})
|
})
|
||||||
// setWaitCorrectionCount(res.waitCorrectionCount)
|
setWaitCorrectionCount(res.waitCorrectionCount)
|
||||||
|
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
|
|
||||||
@ -187,7 +187,7 @@ export default function OrderDetailModal(props: any) {
|
|||||||
<Authorize authorizeInfo={authorizeInfo} ></Authorize>
|
<Authorize authorizeInfo={authorizeInfo} ></Authorize>
|
||||||
</div>
|
</div>
|
||||||
<div style={{ display: activeKey == 'file' ? 'block' : 'none' }}>
|
<div style={{ display: activeKey == 'file' ? 'block' : 'none' }}>
|
||||||
<File user={props.user} orderId={props.orderId}></File>
|
<File user={props.user} upData={props.upData} orderId={props.orderId}></File>
|
||||||
</div>
|
</div>
|
||||||
{/* <div style={{ display: activeKey == 'result' ? 'block' : 'none' }}>
|
{/* <div style={{ display: activeKey == 'result' ? 'block' : 'none' }}>
|
||||||
<Result ></Result>
|
<Result ></Result>
|
||||||
|
@ -12,7 +12,7 @@ export default function File(props: any) {
|
|||||||
// 自定义验证函数
|
// 自定义验证函数
|
||||||
const validateContentOrFile = (_rule: any, _value: any, callback: (error?: string) => void, form: any) => {
|
const validateContentOrFile = (_rule: any, _value: any, callback: (error?: string) => void, form: any) => {
|
||||||
const { upCorrectionRemark, upFile } = form.getFieldsValue();
|
const { upCorrectionRemark, upFile } = form.getFieldsValue();
|
||||||
if (upCorrectionRemark || (upFile && Array.isArray(upFile.fileList) && upFile.fileList.length > 0)) {
|
if (upCorrectionRemark || upFile) {
|
||||||
callback();
|
callback();
|
||||||
} else {
|
} else {
|
||||||
callback('内容和附件至少需要填写或上传一项');
|
callback('内容和附件至少需要填写或上传一项');
|
||||||
@ -126,6 +126,8 @@ export default function File(props: any) {
|
|||||||
const res: any = await getFileTypeByIds({
|
const res: any = await getFileTypeByIds({
|
||||||
ids: ids
|
ids: ids
|
||||||
})
|
})
|
||||||
|
// console.log(res);
|
||||||
|
|
||||||
setFileList(res)
|
setFileList(res)
|
||||||
|
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
@ -141,14 +143,99 @@ export default function File(props: any) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 获取上传过的文件类型
|
||||||
|
const getUpFileTypeByIdsArray = async (ids: string) => {
|
||||||
|
try {
|
||||||
|
const res: any = await getFileTypeByIds({
|
||||||
|
ids: ids
|
||||||
|
})
|
||||||
|
console.log(res);
|
||||||
|
const newUpFile = res.map((item: any) => {
|
||||||
|
return {
|
||||||
|
uid: item.fileId,
|
||||||
|
name: item.fileName,
|
||||||
|
status: 'done',
|
||||||
|
url: showImage(item.fileId, false)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
// console.log(newUpFile, 'newUpFile');
|
||||||
|
setUpFileArray(newUpFile)
|
||||||
|
|
||||||
|
} catch (error: any) {
|
||||||
|
|
||||||
|
if (error.response) {
|
||||||
|
const data = error.response.data;
|
||||||
|
messageApi.open({
|
||||||
|
type: 'error',
|
||||||
|
content: data.msg ? data.msg : `${data.path}(${data.status})`,
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
console.error(error)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
// 补充资料详情
|
// 补充资料详情
|
||||||
const [detailData, setDetailData] = useState<any>({})
|
const [detailData, setDetailData] = useState<any>({})
|
||||||
|
const [disabled, setDisabled] = useState(false) // 是否禁用
|
||||||
const getSupplementDetail = async (id: string) => {
|
const getSupplementDetail = async (id: string) => {
|
||||||
try {
|
try {
|
||||||
const res: any = await supplementDetail(id)
|
const res: any = await supplementDetail(id)
|
||||||
console.log(res);
|
// console.log(res);
|
||||||
|
// 给表单赋值
|
||||||
|
// form.setFieldsValue({
|
||||||
|
// upCorrectionRemark: res.correctionRemark, // 内容
|
||||||
|
// upFile:'1111'
|
||||||
|
// })
|
||||||
|
// 给上传列表赋值
|
||||||
|
// setUpFileArray([{
|
||||||
|
// uid: '1111',
|
||||||
|
// name: '嘻嘻',
|
||||||
|
// status: 'done',
|
||||||
|
// url: 'www.baidu.com'
|
||||||
|
// }])
|
||||||
|
|
||||||
|
|
||||||
setDetailData(res)
|
setDetailData(res)
|
||||||
await getFileTypeByIdsArray(res.correctionFiles)
|
await getFileTypeByIdsArray(res.correctionFiles)
|
||||||
|
// console.log(props.user, 'user');
|
||||||
|
const userId = props.user == 'sell' ? res.sellId : res.buyId;
|
||||||
|
// console.log(userId, 'userId');
|
||||||
|
if (userId) {
|
||||||
|
console.log('已补充');
|
||||||
|
setDisabled(true)
|
||||||
|
const newData: any = await supplementDetail(userId)
|
||||||
|
console.log('以补充材料', newData);
|
||||||
|
form.setFieldsValue({
|
||||||
|
upCorrectionRemark: newData.correctionRemark, // 内容
|
||||||
|
|
||||||
|
})
|
||||||
|
if (newData.correctionFiles) {
|
||||||
|
getUpFileTypeByIdsArray(newData.correctionFiles)
|
||||||
|
// const newArray:any = getFileTypeByIds({
|
||||||
|
// ids: newData.correctionFiles
|
||||||
|
// })
|
||||||
|
// console.log(newArray, 'newArray');
|
||||||
|
// console.log('有补充资料');
|
||||||
|
// // 循环newArray 形成新
|
||||||
|
// const newUpFile = newArray.map((item:any)=>{
|
||||||
|
// return {
|
||||||
|
// uid: item.fileId,
|
||||||
|
// name: item.fileName,
|
||||||
|
// status: 'done',
|
||||||
|
// url: 'www.baidu.com'
|
||||||
|
// }
|
||||||
|
// })
|
||||||
|
// console.log(newUpFile, 'newUpFile');
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
} else {
|
||||||
|
setDisabled(false)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
|
|
||||||
@ -254,6 +341,8 @@ export default function File(props: any) {
|
|||||||
setCorrectionId(record.correctionId)
|
setCorrectionId(record.correctionId)
|
||||||
getSupplementDetail(record.correctionId)
|
getSupplementDetail(record.correctionId)
|
||||||
setIsModalVisible(true)
|
setIsModalVisible(true)
|
||||||
|
// 清空上传的文件数组
|
||||||
|
setUpFileArray([])
|
||||||
// 清空表单
|
// 清空表单
|
||||||
form.resetFields();
|
form.resetFields();
|
||||||
// setCorrectionType(record.correctionType)
|
// setCorrectionType(record.correctionType)
|
||||||
@ -263,7 +352,7 @@ export default function File(props: any) {
|
|||||||
)}
|
)}
|
||||||
/>
|
/>
|
||||||
</Table>
|
</Table>
|
||||||
<Modal title={'补充'}
|
<Modal title={disabled?'查看':'补充'}
|
||||||
destroyOnClose={true}
|
destroyOnClose={true}
|
||||||
open={isModalVisible}
|
open={isModalVisible}
|
||||||
footer={null} // 将 footer 设置为 null 来隐藏自带按钮
|
footer={null} // 将 footer 设置为 null 来隐藏自带按钮
|
||||||
@ -354,7 +443,7 @@ export default function File(props: any) {
|
|||||||
|
|
||||||
onFinish={(value) => {
|
onFinish={(value) => {
|
||||||
|
|
||||||
// console.log(value);
|
console.log(value);
|
||||||
// if (value.upFile && Array.isArray(value.upFile.fileList)) {
|
// if (value.upFile && Array.isArray(value.upFile.fileList)) {
|
||||||
// const uids = value.upFile.fileList.map((file: any) => file.uid);
|
// const uids = value.upFile.fileList.map((file: any) => file.uid);
|
||||||
// const uidString = uids.join(',');
|
// const uidString = uids.join(',');
|
||||||
@ -366,18 +455,20 @@ export default function File(props: any) {
|
|||||||
|
|
||||||
// console.log('提取的 uid 字符串:', uids);
|
// console.log('提取的 uid 字符串:', uids);
|
||||||
|
|
||||||
|
submitData({
|
||||||
|
correctionFiles: value.upFile ? value.upFile : '',
|
||||||
|
correctionRemark: value.upCorrectionRemark ? value.upCorrectionRemark : '',
|
||||||
|
})
|
||||||
|
// console.log(upFileArray);
|
||||||
|
// 将upFileArray 数组里的uid 提取出来
|
||||||
|
// const uids = upFileArray.map((file: any) => file.uid).join(',');
|
||||||
|
|
||||||
|
// const uids = upFileArray.map((file: any) => file.response.data.fileId).join(',');
|
||||||
|
// console.log('提取的 uid 字符串:', uids);
|
||||||
// submitData({
|
// submitData({
|
||||||
// correctionFiles: uids,
|
// correctionFiles: uids,
|
||||||
// correctionRemark: value.upCorrectionRemark,
|
// correctionRemark: value.upCorrectionRemark,
|
||||||
// })
|
// })
|
||||||
// console.log(upFileArray);
|
|
||||||
// 将upFileArray 数组周末和每项的response里的data 里的 fileId 拼接成一个字符串,用逗号隔开
|
|
||||||
const uids = upFileArray.map((file: any) => file.response.data.fileId).join(',');
|
|
||||||
// console.log('提取的 uid 字符串:', uids);
|
|
||||||
submitData({
|
|
||||||
correctionFiles: uids,
|
|
||||||
correctionRemark: value.upCorrectionRemark,
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
}}
|
}}
|
||||||
@ -408,6 +499,7 @@ export default function File(props: any) {
|
|||||||
width: 900,
|
width: 900,
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
disabled={disabled}
|
||||||
placeholder='请输入需要补充内容'
|
placeholder='请输入需要补充内容'
|
||||||
></TextArea>
|
></TextArea>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
@ -435,12 +527,35 @@ export default function File(props: any) {
|
|||||||
>
|
>
|
||||||
|
|
||||||
<Upload
|
<Upload
|
||||||
|
disabled={disabled}
|
||||||
name="file"
|
name="file"
|
||||||
action={uploadFileUrl()}
|
action={uploadFileUrl()}
|
||||||
defaultFileList={upFileArray}
|
fileList={upFileArray}
|
||||||
onChange={(info) => {
|
onChange={(info) => {
|
||||||
setUpFileArray(info.fileList)
|
// console.log(info.file.status);
|
||||||
// console.log(info.fileList);
|
// setUpFileArray(info.fileList)
|
||||||
|
const { fileList } = info;
|
||||||
|
const newFileArray = fileList.map((file) => {
|
||||||
|
if (file.status === 'done' && file.response) {
|
||||||
|
return {
|
||||||
|
uid: file.response.data.fileId,
|
||||||
|
name: file.response.data.fileName,
|
||||||
|
status: 'done',
|
||||||
|
url: showImage(file.response.data.fileId, false)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return file;
|
||||||
|
});
|
||||||
|
setUpFileArray(newFileArray);
|
||||||
|
// console.log(newFileArray);
|
||||||
|
const uids = newFileArray.map((file: any) => file.uid).join(',');
|
||||||
|
// console.log(uids);
|
||||||
|
|
||||||
|
// 给form 赋值
|
||||||
|
form.setFieldsValue({
|
||||||
|
upFile: uids,
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
}}
|
}}
|
||||||
|
|
||||||
@ -464,12 +579,16 @@ export default function File(props: any) {
|
|||||||
justifyContent: 'flex-end',
|
justifyContent: 'flex-end',
|
||||||
gap: 10,
|
gap: 10,
|
||||||
// marginTop: 20
|
// marginTop: 20
|
||||||
|
}}>
|
||||||
|
<div style={{
|
||||||
|
display: disabled ? 'none' : 'unset',
|
||||||
}}>
|
}}>
|
||||||
<Button onClick={() => {
|
<Button onClick={() => {
|
||||||
setIsModalVisible(false)
|
setIsModalVisible(false)
|
||||||
form.resetFields();
|
form.resetFields();
|
||||||
}}>取消</Button>
|
}}>取消</Button>
|
||||||
<Button type="primary" htmlType="submit" >确定</Button>
|
<Button type="primary" htmlType="submit" style={{ marginLeft: 10 }} >确定</Button>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Form.Item>
|
</Form.Item>
|
||||||
|
|
||||||
|
@ -62,6 +62,8 @@ export default function MenuWithTopButton(props: IMenuWithTopButton) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
if (item.id == 'COPYRIGHT') {
|
if (item.id == 'COPYRIGHT') {
|
||||||
|
// console.log('传递',props.specialPrice);
|
||||||
|
|
||||||
navigate('/copyright-goods', {
|
navigate('/copyright-goods', {
|
||||||
state: {
|
state: {
|
||||||
copyrightKeywords: props.copyrightKeywords,
|
copyrightKeywords: props.copyrightKeywords,
|
||||||
@ -71,6 +73,7 @@ export default function MenuWithTopButton(props: IMenuWithTopButton) {
|
|||||||
copyrightDate: props.copyrightDate,
|
copyrightDate: props.copyrightDate,
|
||||||
copyrightLanguage: props.copyrightLanguage,
|
copyrightLanguage: props.copyrightLanguage,
|
||||||
copyrightType: props.copyrightType,
|
copyrightType: props.copyrightType,
|
||||||
|
specialPrice: props.specialPrice,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -94,7 +94,11 @@ export default function MenuWithTopButton(props: IMenuWithTopButton) {
|
|||||||
if (item.id == 'REPLACENAME') {
|
if (item.id == 'REPLACENAME') {
|
||||||
// props.disableBelongpeople()
|
// props.disableBelongpeople()
|
||||||
navugate('/replace', {
|
navugate('/replace', {
|
||||||
|
state: {
|
||||||
|
keywords: props.replaceKeyWords,
|
||||||
|
applyStatus: props.replaceStatus,
|
||||||
|
authorId: props.authorId
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -59,4 +59,9 @@ export interface IMenuWithTopButton {
|
|||||||
tradingEndTime?: any,
|
tradingEndTime?: any,
|
||||||
tradingStatus?: any,
|
tradingStatus?: any,
|
||||||
|
|
||||||
|
|
||||||
|
replaceKeyWords?: any,
|
||||||
|
replaceStatus?: any,
|
||||||
|
|
||||||
|
specialPrice?: any,
|
||||||
}
|
}
|
@ -61,7 +61,7 @@ export default function CopyrightGgoods() {
|
|||||||
const copyrightDate = state ? state.copyrightDate : ''; // 版权日期
|
const copyrightDate = state ? state.copyrightDate : ''; // 版权日期
|
||||||
const copyrightLanguage = state ? state.copyrightLanguage : ''; // 开发语言
|
const copyrightLanguage = state ? state.copyrightLanguage : ''; // 开发语言
|
||||||
// const copyrightType = state ? state.copyrightType : ''; // 软著类型
|
// const copyrightType = state ? state.copyrightType : ''; // 软著类型
|
||||||
const goodsFlag = state ? state.goodsFlag : ''; // 商品特价标识
|
const goodsFlag = state ? state.specialPrice : ''; // 商品特价标识
|
||||||
|
|
||||||
|
|
||||||
const [data, setData] = useState([]); // 表格数据
|
const [data, setData] = useState([]); // 表格数据
|
||||||
@ -109,6 +109,9 @@ export default function CopyrightGgoods() {
|
|||||||
const [selectTypeArray, setSelectTypeArray] = useState<any>([]) // 选择的软著类型
|
const [selectTypeArray, setSelectTypeArray] = useState<any>([]) // 选择的软著类型
|
||||||
|
|
||||||
const getBuyGoodsList = async (page: number) => {
|
const getBuyGoodsList = async (page: number) => {
|
||||||
|
// console.log('呵呵', goodsFlag);
|
||||||
|
// console.log('嘻嘻', state.goodsFlag);
|
||||||
|
// return
|
||||||
try {
|
try {
|
||||||
setLoading(true)
|
setLoading(true)
|
||||||
const res: any = await buyGoodsList({
|
const res: any = await buyGoodsList({
|
||||||
@ -122,7 +125,7 @@ export default function CopyrightGgoods() {
|
|||||||
goodsDevelop: copyrightLanguage ? copyrightLanguage : '', // 开发语言
|
goodsDevelop: copyrightLanguage ? copyrightLanguage : '', // 开发语言
|
||||||
// goodsType: copyrightType ? copyrightType.join(',') : '', // 软著类型
|
// goodsType: copyrightType ? copyrightType.join(',') : '', // 软著类型
|
||||||
goodsType: selectTypeArray.length > 0 ? selectTypeArray.join(',') : '',
|
goodsType: selectTypeArray.length > 0 ? selectTypeArray.join(',') : '',
|
||||||
goodsFlag: goodsFlag ? goodsFlag : '' // 商品特价标识
|
goodsFlag: goodsFlag == '特价' ? '特价' : '' // 商品特价标识
|
||||||
|
|
||||||
})
|
})
|
||||||
// console.log(res);
|
// console.log(res);
|
||||||
@ -208,6 +211,8 @@ export default function CopyrightGgoods() {
|
|||||||
// if (copyrightDate) {
|
// if (copyrightDate) {
|
||||||
// console.log('sellDate', dayjs(copyrightDate).year());
|
// console.log('sellDate', dayjs(copyrightDate).year());
|
||||||
// }
|
// }
|
||||||
|
// console.log('嘻嘻',state.specialPrice);
|
||||||
|
|
||||||
setPage(1)
|
setPage(1)
|
||||||
getBuyGoodsList(1)
|
getBuyGoodsList(1)
|
||||||
}, [state])
|
}, [state])
|
||||||
@ -283,7 +288,7 @@ export default function CopyrightGgoods() {
|
|||||||
style={{ maxWidth: '100%' }}
|
style={{ maxWidth: '100%' }}
|
||||||
></Image>
|
></Image>
|
||||||
<div className='tipsPrice' style={{
|
<div className='tipsPrice' style={{
|
||||||
display: item.goodsFlag == '特价' ? 'unset' : 'none'
|
display: item.goodsFlag.includes('特价') ? 'unset' : 'none'
|
||||||
}}>特价</div>
|
}}>特价</div>
|
||||||
<div className='goodsTime'>
|
<div className='goodsTime'>
|
||||||
截止日期 : {item.goodsLastTime}
|
截止日期 : {item.goodsLastTime}
|
||||||
|
@ -883,6 +883,7 @@ export default function Correction() {
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// getData(1)
|
// getData(1)
|
||||||
|
// console.log(state);
|
||||||
|
|
||||||
getData(1)
|
getData(1)
|
||||||
setPage(1)
|
setPage(1)
|
||||||
|
@ -82,6 +82,7 @@ thead {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.showGoodsBox {
|
.showGoodsBox {
|
||||||
|
margin-top: 80px;
|
||||||
width: calc(100% - 2px);
|
width: calc(100% - 2px);
|
||||||
/* height: 100%; */
|
/* height: 100%; */
|
||||||
/* background-color: pink; */
|
/* background-color: pink; */
|
||||||
@ -265,15 +266,38 @@ thead {
|
|||||||
/* 让第一个按钮的左边距为 0 */
|
/* 让第一个按钮的左边距为 0 */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (min-width: 1571px) {
|
||||||
.goodsTypeArrayBox {
|
.goodsTypeArrayBox {
|
||||||
width: 100%;
|
width: calc(100% - 338px);
|
||||||
background-color: #F6F6F6;
|
background-color: #F6F6F6;
|
||||||
padding: 15px;
|
padding: 15px;
|
||||||
/* box-sizing: border-box; */
|
/* box-sizing: border-box; */
|
||||||
margin-bottom: 15px;
|
margin-bottom: 15px;
|
||||||
display: flex;
|
display: flex;
|
||||||
|
/* background-color: pink; */
|
||||||
|
position: fixed;
|
||||||
|
/* width: 100%; */
|
||||||
|
z-index: 999;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 1570px) {
|
||||||
|
.goodsTypeArrayBox {
|
||||||
|
width: calc(100% - 298px);
|
||||||
|
background-color: #F6F6F6;
|
||||||
|
padding: 15px;
|
||||||
|
/* box-sizing: border-box; */
|
||||||
|
margin-bottom: 15px;
|
||||||
|
display: flex;
|
||||||
|
/* background-color: pink; */
|
||||||
|
position: fixed;
|
||||||
|
/* width: 100%; */
|
||||||
|
z-index: 999;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.goodsTypeTitle {
|
.goodsTypeTitle {
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
|
@ -234,6 +234,7 @@ export default function Replcae() {
|
|||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
// getData(1)
|
// getData(1)
|
||||||
|
// console.log(state);
|
||||||
|
|
||||||
getData(1)
|
getData(1)
|
||||||
setPage(1)
|
setPage(1)
|
||||||
|
158
src/route/TrademarkMall/TrademarkAiEdit.tsx
Normal file
158
src/route/TrademarkMall/TrademarkAiEdit.tsx
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
import { useState } from 'react'
|
||||||
|
import './trademark-edit.css'
|
||||||
|
import {
|
||||||
|
RightOutlined
|
||||||
|
} from '@ant-design/icons';
|
||||||
|
import EditOne from './components/EditOne/EditOne';
|
||||||
|
import EditTwo from './components/EditTwo/EditTwo';
|
||||||
|
import EditThree from './components/EditThree/EditThree';
|
||||||
|
import EditFour from './components/EditFour/EditFour';
|
||||||
|
import EditFive from './components/EditFive/EditFive';
|
||||||
|
import EditSix from './components/EditSix/EditSix';
|
||||||
|
export default function TrademarkAiEdit() {
|
||||||
|
const height = window.innerHeight - 180;
|
||||||
|
const [editProcess, setEditProcess] = useState(1);
|
||||||
|
return (
|
||||||
|
<div className='trademarkAiBox' style={{ height: `${height}px`, overflow: 'auto' }}>
|
||||||
|
<div className='editProcessBox' style={{
|
||||||
|
marginBottom: 20
|
||||||
|
}}>
|
||||||
|
<div className='editProcess' >
|
||||||
|
<div className='editProcessNum'
|
||||||
|
style={{
|
||||||
|
background: editProcess >= 1 ? '#3B60E8' : '',
|
||||||
|
color: editProcess >= 1 ? '#fff' : '#B1B1B1',
|
||||||
|
borderColor: editProcess >= 1 ? '' : '#B1B1B1'
|
||||||
|
}}
|
||||||
|
>1</div>
|
||||||
|
<div className='editProcessTitle'
|
||||||
|
style={{
|
||||||
|
color: editProcess >= 1 ? '#353535' : '#878787',
|
||||||
|
fontWeight: editProcess >= 1 ? 'bold' : 'normal'
|
||||||
|
}}
|
||||||
|
>填写基础信息</div>
|
||||||
|
</div>
|
||||||
|
<div className='editright'><RightOutlined /></div>
|
||||||
|
<div className='editProcess'>
|
||||||
|
<div className='editProcessNum' style={{
|
||||||
|
background: editProcess >= 2 ? '#3B60E8' : '',
|
||||||
|
color: editProcess >= 2 ? '#fff' : '#B1B1B1',
|
||||||
|
borderColor: editProcess >= 2 ? '' : '#B1B1B1'
|
||||||
|
}}>2</div>
|
||||||
|
<div className='editProcessTitle'
|
||||||
|
style={{
|
||||||
|
color: editProcess >= 2 ? '#353535' : '#878787',
|
||||||
|
fontWeight: editProcess >= 2 ? 'bold' : 'normal'
|
||||||
|
}}
|
||||||
|
>选择商标类别</div>
|
||||||
|
</div>
|
||||||
|
<div className='editright'><RightOutlined /></div>
|
||||||
|
<div className='editProcess'>
|
||||||
|
<div className='editProcessNum' style={{
|
||||||
|
background: editProcess >= 3 ? '#3B60E8' : '',
|
||||||
|
color: editProcess >= 3 ? '#fff' : '#B1B1B1',
|
||||||
|
borderColor: editProcess >= 3 ? '' : '#B1B1B1'
|
||||||
|
}}>3</div>
|
||||||
|
<div className='editProcessTitle'
|
||||||
|
style={{
|
||||||
|
color: editProcess >= 3 ? '#353535' : '#878787',
|
||||||
|
fontWeight: editProcess >= 3 ? 'bold' : 'normal'
|
||||||
|
}}
|
||||||
|
>选择所属者</div>
|
||||||
|
</div>
|
||||||
|
<div className='editright'><RightOutlined /></div>
|
||||||
|
<div className='editProcess'>
|
||||||
|
<div className='editProcessNum' style={{
|
||||||
|
background: editProcess >= 4 ? '#3B60E8' : '',
|
||||||
|
color: editProcess >= 4 ? '#fff' : '#B1B1B1',
|
||||||
|
borderColor: editProcess >= 4 ? '' : '#B1B1B1'
|
||||||
|
}}>4</div>
|
||||||
|
<div className='editProcessTitle'
|
||||||
|
style={{
|
||||||
|
color: editProcess >= 4 ? '#353535' : '#878787',
|
||||||
|
fontWeight: editProcess >= 4 ? 'bold' : 'normal'
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
订单支付
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className='editright'><RightOutlined /></div>
|
||||||
|
<div className='editProcess'>
|
||||||
|
<div className='editProcessNum' style={{
|
||||||
|
background: editProcess >= 5 ? '#3B60E8' : '',
|
||||||
|
color: editProcess >= 5 ? '#fff' : '#B1B1B1',
|
||||||
|
borderColor: editProcess >= 5 ? '' : '#B1B1B1'
|
||||||
|
}}>5</div>
|
||||||
|
<div className='editProcessTitle'
|
||||||
|
style={{
|
||||||
|
color: editProcess >= 5 ? '#353535' : '#878787',
|
||||||
|
fontWeight: editProcess >= 5 ? 'bold' : 'normal'
|
||||||
|
}}
|
||||||
|
>上传委托书</div>
|
||||||
|
</div>
|
||||||
|
<div className='editright'><RightOutlined /></div>
|
||||||
|
<div className='editProcess'>
|
||||||
|
<div className='editProcessNum' style={{
|
||||||
|
background: editProcess >= 6 ? '#3B60E8' : '',
|
||||||
|
color: editProcess >= 6 ? '#fff' : '#B1B1B1',
|
||||||
|
borderColor: editProcess >= 6 ? '' : '#B1B1B1'
|
||||||
|
}}>6</div>
|
||||||
|
<div className='editProcessTitle'
|
||||||
|
style={{
|
||||||
|
color: editProcess >= 6 ? '#353535' : '#878787',
|
||||||
|
fontWeight: editProcess >= 6 ? 'bold' : 'normal'
|
||||||
|
}}
|
||||||
|
>上传商标局</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className='editFormBox'>
|
||||||
|
<div style={{
|
||||||
|
display: editProcess == 1 ? 'block' : 'none'
|
||||||
|
}}>
|
||||||
|
<EditOne
|
||||||
|
key={editProcess}
|
||||||
|
setEditProcess={setEditProcess}
|
||||||
|
></EditOne>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: editProcess == 2 ? 'block' : 'none'
|
||||||
|
}}>
|
||||||
|
<EditTwo
|
||||||
|
key={editProcess}
|
||||||
|
setEditProcess={setEditProcess}></EditTwo>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: editProcess == 3 ? 'block' : 'none'
|
||||||
|
}}>
|
||||||
|
<EditThree
|
||||||
|
key={editProcess}
|
||||||
|
setEditProcess={setEditProcess}></EditThree>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: editProcess == 4 ? 'block' : 'none'
|
||||||
|
}}>
|
||||||
|
<EditFour
|
||||||
|
key={editProcess}
|
||||||
|
setEditProcess={setEditProcess}></EditFour>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: editProcess == 5 ? 'block' : 'none'
|
||||||
|
}}>
|
||||||
|
<EditFive
|
||||||
|
key={editProcess}
|
||||||
|
setEditProcess={setEditProcess}></EditFive>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: editProcess == 6 ? 'block' : 'none'
|
||||||
|
}}>
|
||||||
|
<EditSix
|
||||||
|
key={editProcess}
|
||||||
|
setEditProcess={setEditProcess}></EditSix>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
@ -1,10 +1,151 @@
|
|||||||
import React from 'react'
|
import { useEffect, useState } from 'react'
|
||||||
import './trademark-edit.css'
|
import './trademark-edit.css'
|
||||||
|
import { useLocation } from 'react-router-dom';
|
||||||
|
import {
|
||||||
|
Form,
|
||||||
|
Input, Button,
|
||||||
|
Modal
|
||||||
|
} from 'antd';
|
||||||
|
const { TextArea } = Input;
|
||||||
export default function TrademarkExpertEdit() {
|
export default function TrademarkExpertEdit() {
|
||||||
|
const { state } = useLocation()
|
||||||
const height = window.innerHeight - 180;
|
const height = window.innerHeight - 180;
|
||||||
|
const [form] = Form.useForm<any>();
|
||||||
|
const [modal, setModal] = useState(false)
|
||||||
|
const onFinish = (values: any) => {
|
||||||
|
console.log(values);
|
||||||
|
setModal(true)
|
||||||
|
}
|
||||||
|
useEffect(() => {
|
||||||
|
console.log('state', state);
|
||||||
|
}, [])
|
||||||
return (
|
return (
|
||||||
<div className='trademarkExpertBox' style={{ height: `${height}px`, overflow: 'auto' }}>
|
<div className='trademarkExpertBox' style={{ height: `${height}px`, overflow: 'auto' }}>
|
||||||
|
<div style={{
|
||||||
|
display: state.title == '专家辅助注册' ? 'unset' : 'none'
|
||||||
|
}}>
|
||||||
|
<div className='trademarkTop'>
|
||||||
|
<div className='trademarkTopL'>
|
||||||
|
!
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
支付完成后会有商标专家联系您并为您服务,请确保填写的手机号真实准确。填写的商标信息后续可以修改,请您放心填写。
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: state.title == '至尊无忧注册' ? 'unset' : 'none'
|
||||||
|
}}>
|
||||||
|
<div className='trademarkTop'>
|
||||||
|
<div className='trademarkTopL'>
|
||||||
|
!
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div>至尊无忧注册由专业商标顾问团队为您全程代办商标申请和递交流程,</div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '5px'
|
||||||
|
}}>指定类目至尊无忧注册,指定类目被驳回可全额赔付,非指定类目驳回不支持赔付;</div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '5px'
|
||||||
|
}}>全部小类至尊无忧注册,商标局下发《商标驳回通知书》可全额赔付,包含部分驳回和全部驳回通知书。</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className='trademarkForm '>
|
||||||
|
|
||||||
|
<Form
|
||||||
|
name="Form"
|
||||||
|
form={form}
|
||||||
|
onFinish={onFinish}
|
||||||
|
initialValues={{ softWare: '' }}
|
||||||
|
style={{ maxWidth: 600, marginTop: 20 }}
|
||||||
|
>
|
||||||
|
<div className='trademarkForm-item'>
|
||||||
|
<div className='trademarkForm-title'>
|
||||||
|
商标名称<span style={{
|
||||||
|
color: 'red'
|
||||||
|
}}>*</span> :
|
||||||
|
</div>
|
||||||
|
<div className='trademarkInput'>
|
||||||
|
|
||||||
|
<Form.Item
|
||||||
|
name="title"
|
||||||
|
rules={[{ required: true, message: '请输入商标名称!' }]}
|
||||||
|
>
|
||||||
|
<Input style={{
|
||||||
|
width: 500,
|
||||||
|
height: 46,
|
||||||
|
background: '#FFF',
|
||||||
|
color: 'black'
|
||||||
|
}}
|
||||||
|
placeholder="商标名称"
|
||||||
|
>
|
||||||
|
</Input>
|
||||||
|
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className='trademarkForm-item'>
|
||||||
|
<div className='trademarkForm-title'>
|
||||||
|
需求描述 :
|
||||||
|
</div>
|
||||||
|
<div className='trademarkInput'>
|
||||||
|
|
||||||
|
<Form.Item
|
||||||
|
name="text"
|
||||||
|
// rules={[{ required: true, message: '请输入商标名称!' }]}
|
||||||
|
>
|
||||||
|
<TextArea style={{
|
||||||
|
width: 500,
|
||||||
|
height: 200,
|
||||||
|
background: '#FFF',
|
||||||
|
color: 'black',
|
||||||
|
resize: 'none'
|
||||||
|
}}
|
||||||
|
placeholder="需求描述"
|
||||||
|
>
|
||||||
|
</TextArea>
|
||||||
|
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
textWrap: 'nowrap',
|
||||||
|
}}>在您提交商标申请咨询单后,工作日期间专业顾问会在1小时内与您联系,非工作日时间会在下一个工作日与您取得联系。</div>
|
||||||
|
<div style={{
|
||||||
|
textWrap: 'nowrap',
|
||||||
|
}}>本网站会保护您的个人信息,仅有本网站及其授权委托机构可以看到您提交的信息,请放心提供。</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<Form.Item>
|
||||||
|
<div className='trademark-btn'>
|
||||||
|
<Button type="primary" htmlType="submit" style={{
|
||||||
|
width: 273,
|
||||||
|
height: 52
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
提交订单
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</Form.Item>
|
||||||
|
</Form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<Modal title="提示"
|
||||||
|
centered
|
||||||
|
destroyOnClose={true}
|
||||||
|
open={modal}
|
||||||
|
onCancel={() => { setModal(false) }}
|
||||||
|
okText='确定'
|
||||||
|
cancelText='取消'
|
||||||
|
>
|
||||||
|
该操作会扣除{state.price}元,确定操作吗?
|
||||||
|
</Modal>
|
||||||
</div>
|
</div>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
50
src/route/TrademarkMall/components/EditFive/EditFive.tsx
Normal file
50
src/route/TrademarkMall/components/EditFive/EditFive.tsx
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import { Button } from 'antd'
|
||||||
|
export default function editFive(props: any) {
|
||||||
|
const height = window.innerHeight - 350;
|
||||||
|
const handleSubmit = () => {
|
||||||
|
// console.log(form);
|
||||||
|
props.setEditProcess(6);
|
||||||
|
// 调用表单实例的 submit 方法
|
||||||
|
// form.submit();
|
||||||
|
|
||||||
|
};
|
||||||
|
return (
|
||||||
|
<div className='editOneTwo'>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div className='appInfoFormBox' style={{
|
||||||
|
height: height,
|
||||||
|
background: 'pink'
|
||||||
|
}}></div>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '8px',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'flex-end',
|
||||||
|
}}>
|
||||||
|
<Button
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
props.setEditProcess(4)
|
||||||
|
}}
|
||||||
|
>上一步</Button>
|
||||||
|
<Button
|
||||||
|
type='primary'
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
marginLeft: '10px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
handleSubmit()
|
||||||
|
}}
|
||||||
|
>下一步</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
50
src/route/TrademarkMall/components/EditFour/EditFour.tsx
Normal file
50
src/route/TrademarkMall/components/EditFour/EditFour.tsx
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import { Button } from 'antd'
|
||||||
|
export default function editFour(props: any) {
|
||||||
|
const height = window.innerHeight - 350;
|
||||||
|
const handleSubmit = () => {
|
||||||
|
// console.log(form);
|
||||||
|
props.setEditProcess(5);
|
||||||
|
// 调用表单实例的 submit 方法
|
||||||
|
// form.submit();
|
||||||
|
|
||||||
|
};
|
||||||
|
return (
|
||||||
|
<div className='editOneTwo'>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div className='appInfoFormBox' style={{
|
||||||
|
height: height,
|
||||||
|
background: 'pink'
|
||||||
|
}}></div>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '8px',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'flex-end',
|
||||||
|
}}>
|
||||||
|
<Button
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
props.setEditProcess(3)
|
||||||
|
}}
|
||||||
|
>上一步</Button>
|
||||||
|
<Button
|
||||||
|
type='primary'
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
marginLeft: '10px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
handleSubmit()
|
||||||
|
}}
|
||||||
|
>下一步</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
44
src/route/TrademarkMall/components/EditOne/EditOne.css
Normal file
44
src/route/TrademarkMall/components/EditOne/EditOne.css
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
.topLine {
|
||||||
|
width: 100%;
|
||||||
|
height: 10px;
|
||||||
|
background: #F3F3F3;
|
||||||
|
}
|
||||||
|
|
||||||
|
.editFormBox {
|
||||||
|
/* padding: 10px;
|
||||||
|
box-sizing: border-box; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.editFormTitle {
|
||||||
|
font-size: 18px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
/* height: 46px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.editFormItem {
|
||||||
|
display: flex;
|
||||||
|
/* align-items: center; */
|
||||||
|
height: 46px;
|
||||||
|
/* background-color: pink; */
|
||||||
|
line-height: 46px;
|
||||||
|
/* width: 200px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.firstItem {
|
||||||
|
/* background: skyblue; */
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.editFormItemTitle {
|
||||||
|
font-size: 16px;
|
||||||
|
/* width: 120px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.redTitle {
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
.pointerBlue{
|
||||||
|
color: var(--color-blue);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
624
src/route/TrademarkMall/components/EditOne/EditOne.tsx
Normal file
624
src/route/TrademarkMall/components/EditOne/EditOne.tsx
Normal file
@ -0,0 +1,624 @@
|
|||||||
|
import { useState } from 'react'
|
||||||
|
import { Button, Radio, Form, Input, Upload, message, Image, Spin } from 'antd'
|
||||||
|
import './EditOne.css'
|
||||||
|
import { uploadFileUrl, showImage } from '../../../../request/request'
|
||||||
|
import {
|
||||||
|
DeleteOutlined
|
||||||
|
} from '@ant-design/icons';
|
||||||
|
const { TextArea } = Input;
|
||||||
|
import type { UploadProps } from 'antd';
|
||||||
|
export default function EditOne(props: any) {
|
||||||
|
const token = sessionStorage.getItem('token')
|
||||||
|
const [formA] = Form.useForm<any>(); // 文字商标表单
|
||||||
|
const [formB] = Form.useForm<any>(); // 图形商标表单
|
||||||
|
const height = window.innerHeight - 350;
|
||||||
|
const [goodsType, setGoodsType] = useState('a')
|
||||||
|
// 生成方式
|
||||||
|
const [generateType, setGenerateType] = useState('1')
|
||||||
|
const handleSubmit = () => {
|
||||||
|
// console.log(form);
|
||||||
|
// props.setEditProcess(2);
|
||||||
|
// 调用表单实例的 submit 方法
|
||||||
|
if (goodsType === 'a') {
|
||||||
|
formA.submit();
|
||||||
|
} else if (goodsType === 'b') {
|
||||||
|
formB.submit();
|
||||||
|
} else {
|
||||||
|
// 表单不显示时,直接更新步骤
|
||||||
|
props.setEditProcess(2);
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
const [fileList, setFileList] = useState<any>([]);
|
||||||
|
|
||||||
|
const handleChange: UploadProps['onChange'] = (info) => {
|
||||||
|
// console.log(info.file.status);
|
||||||
|
|
||||||
|
|
||||||
|
if (info.file.status === 'uploading') {
|
||||||
|
// setFileList([])
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (info.file.status === 'done') {
|
||||||
|
|
||||||
|
// const fileId = info.file.response.data.fileId;
|
||||||
|
// // console.log(downloadUrl(fileId));
|
||||||
|
|
||||||
|
// const url = showImage(fileId, false);
|
||||||
|
setFileList([
|
||||||
|
{
|
||||||
|
uid: info.file.response.data.fileId,
|
||||||
|
name: info.file.response.data.fileName,
|
||||||
|
status: 'done',
|
||||||
|
url: showImage(info.file.response.data.fileId, false)
|
||||||
|
}
|
||||||
|
])
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (info.file.status === 'error') {
|
||||||
|
message.error(`上传失败`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
// 自动生成的img
|
||||||
|
const [generateImgId, setGenerateImgId] = useState<any>('')
|
||||||
|
const [imgList, setImgList] = useState<any>([])
|
||||||
|
// 上传商标文字图片
|
||||||
|
const [textLodaing, setTextLodaing] = useState(false)
|
||||||
|
const upImgHandleChange: UploadProps['onChange'] = (info) => {
|
||||||
|
console.log(info.file.status);
|
||||||
|
|
||||||
|
|
||||||
|
if (info.file.status === 'uploading') {
|
||||||
|
// setFileList([])
|
||||||
|
setTextLodaing(true)
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (info.file.status === 'done') {
|
||||||
|
setTextLodaing(false)
|
||||||
|
// const fileId = info.file.response.data.fileId;
|
||||||
|
// // console.log(downloadUrl(fileId));
|
||||||
|
|
||||||
|
// const url = showImage(fileId, false);
|
||||||
|
console.log(info.file.response.data.fileId);
|
||||||
|
|
||||||
|
setImgList([
|
||||||
|
{
|
||||||
|
uid: info.file.response.data.fileId,
|
||||||
|
name: info.file.response.data.fileName,
|
||||||
|
status: 'done',
|
||||||
|
url: showImage(info.file.response.data.fileId, false)
|
||||||
|
}
|
||||||
|
])
|
||||||
|
formA.setFieldsValue({ imgUrl: info.file.response.data.fileId })
|
||||||
|
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (info.file.status === 'error') {
|
||||||
|
setTextLodaing(false)
|
||||||
|
message.error(`上传失败`);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
const onFinishA = (values: any) => {
|
||||||
|
console.log(values);
|
||||||
|
// props.setEditProcess(2);
|
||||||
|
|
||||||
|
}
|
||||||
|
const onFinishB = (values: any) => {
|
||||||
|
console.log(values);
|
||||||
|
// props.setEditProcess(2);
|
||||||
|
|
||||||
|
}
|
||||||
|
const onChange = (e: any) => {
|
||||||
|
setGoodsType(e.target.value)
|
||||||
|
};
|
||||||
|
const generateTypeChange = (e: any) => {
|
||||||
|
setGenerateType(e.target.value)
|
||||||
|
// 给FormA表单的imgUrl赋值
|
||||||
|
// if (e.target.value === '1') {
|
||||||
|
// formA.setFieldsValue({ imgUrl: generateImgId })
|
||||||
|
// }
|
||||||
|
// if (e.target.value === '2') {
|
||||||
|
// formA.setFieldsValue({ imgUrl: imgList[0]?.uid})
|
||||||
|
// }
|
||||||
|
formA.setFieldsValue({ imgUrl: '' })
|
||||||
|
setGenerateImgId('')
|
||||||
|
setImgList([])
|
||||||
|
}
|
||||||
|
return (
|
||||||
|
<div className='editOneBox'>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div className='' style={{
|
||||||
|
height: height,
|
||||||
|
// background: 'pink',
|
||||||
|
padding: '10px',
|
||||||
|
boxSizing: 'border-box',
|
||||||
|
overflow: 'auto',
|
||||||
|
}}>
|
||||||
|
<div className='trademarkTop'>
|
||||||
|
<div className='trademarkTopL'>
|
||||||
|
!
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
<div>智能商标申请存在较高的失败风险,建议无商标申请经验的用户使用“<a>专家辅助申请</a>"或"<a>至尊无忧注册</a>"提高商标申清通过率。</div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '5px'
|
||||||
|
}}>当前仅提供文字、图形或文字图形组合商标申请;暂不支持立体商标、声音商标、证明商标、集体商标的申请。</div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '5px'
|
||||||
|
}}>商标局录入的商标信息以商标图样为准,且最终使用需与商标图样一致,请您确认手动上传的商标图样是您想要注册的商标。</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div className='editFormTitle' style={{
|
||||||
|
marginTop: '20px',
|
||||||
|
}}>
|
||||||
|
基本信息
|
||||||
|
</div>
|
||||||
|
<div className='editFormItem firstItem'>
|
||||||
|
<div className='editFormItemTitle'>
|
||||||
|
商标类型<span className='redTitle'>*</span>:
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
marginLeft: '2px',
|
||||||
|
}}>
|
||||||
|
<Radio.Group onChange={onChange} value={goodsType}>
|
||||||
|
<Radio.Button value="a">文字商标</Radio.Button>
|
||||||
|
<Radio.Button value="b">图形商标</Radio.Button>
|
||||||
|
<Radio.Button value="c">文字图形组合商标</Radio.Button>
|
||||||
|
</Radio.Group>
|
||||||
|
</div>
|
||||||
|
<a style={{
|
||||||
|
marginLeft: '10px',
|
||||||
|
cursor: 'pointer',
|
||||||
|
}}>如何选择?</a>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: goodsType === 'a' ? 'unset' : 'none',
|
||||||
|
}}>
|
||||||
|
<Form
|
||||||
|
name="FormA"
|
||||||
|
form={formA}
|
||||||
|
onFinish={onFinishA}
|
||||||
|
onFinishFailed={(errorInfo) => {
|
||||||
|
// console.log(errorInfo)
|
||||||
|
// message.error('请填写完整的信息!')
|
||||||
|
errorInfo.errorFields.forEach((field) => {
|
||||||
|
if (field.errors.length > 0) {
|
||||||
|
// 显示每条错误信息
|
||||||
|
message.error(field.errors[0]);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
initialValues={{ softWare: '' }}
|
||||||
|
style={{ marginTop: 20 }}
|
||||||
|
>
|
||||||
|
<div className='editFormItem'>
|
||||||
|
<div className='editFormItemTitle'>
|
||||||
|
商标名称<span className='redTitle' >*</span>:
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div style={{
|
||||||
|
// background:'pink',
|
||||||
|
position: 'relative',
|
||||||
|
}}>
|
||||||
|
<Form.Item
|
||||||
|
name="title"
|
||||||
|
rules={[{ required: true, message: '请输入商标名称' }]}
|
||||||
|
>
|
||||||
|
<Input style={{
|
||||||
|
width: 600,
|
||||||
|
height: 46,
|
||||||
|
background: '#FFF',
|
||||||
|
color: 'black'
|
||||||
|
}}
|
||||||
|
placeholder="商标名称"
|
||||||
|
>
|
||||||
|
</Input>
|
||||||
|
|
||||||
|
</Form.Item>
|
||||||
|
<div style={{
|
||||||
|
position: 'absolute',
|
||||||
|
top: 70,
|
||||||
|
// textWrap: 'nowrap',
|
||||||
|
width: 800,
|
||||||
|
lineHeight: '20px',
|
||||||
|
}}>
|
||||||
|
<div style={{
|
||||||
|
display: 'flex'
|
||||||
|
}}>
|
||||||
|
若您的商标涉及他人姓名/肖像/期刊,请下载<span className='pointerBlue'>授权声明书模板</span>,填写完盖章签字后
|
||||||
|
<div>
|
||||||
|
<Upload
|
||||||
|
name="file"
|
||||||
|
maxCount={1}
|
||||||
|
action={uploadFileUrl()}
|
||||||
|
beforeUpload={(file) => {
|
||||||
|
const isPNG = file.type === 'image/png';
|
||||||
|
const isPDF = file.type === 'application/pdf';
|
||||||
|
const isJPG = file.type === 'image/jpg' || file.type === 'image/jpeg';
|
||||||
|
if (!isPNG && !isPDF && !isJPG) {
|
||||||
|
// console.error('仅支持 PNG、PDF、JPG 格式的文件!');
|
||||||
|
message.error('仅支持 PNG、PDF、JPG 格式的文件!');
|
||||||
|
}
|
||||||
|
return isPNG || isPDF || isJPG;
|
||||||
|
}}
|
||||||
|
// fileList={[]}
|
||||||
|
onChange={handleChange}
|
||||||
|
showUploadList={false}
|
||||||
|
headers={{ 'Auth': `Bearer ${token}` }}
|
||||||
|
disabled={fileList.length > 0}
|
||||||
|
>
|
||||||
|
<span className='pointerBlue'>上传附件</span>
|
||||||
|
</Upload>
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
({fileList.length}/1)
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
{fileList.length > 0 ? (
|
||||||
|
<div style={{
|
||||||
|
display: 'flex',
|
||||||
|
alignItems: 'center',
|
||||||
|
}}>
|
||||||
|
<div
|
||||||
|
style={{
|
||||||
|
// background: 'pink',
|
||||||
|
width: 100,
|
||||||
|
// 超出部分隐藏用...代替
|
||||||
|
overflow: 'hidden',
|
||||||
|
textOverflow: 'ellipsis',
|
||||||
|
whiteSpace: 'nowrap',
|
||||||
|
color: 'var(--color-blue)',
|
||||||
|
cursor: 'pointer',
|
||||||
|
// 加下划线
|
||||||
|
textDecoration: 'underline',
|
||||||
|
}}
|
||||||
|
title={fileList[0].name}
|
||||||
|
onClick={() => {
|
||||||
|
window.open(showImage(fileList[0].uid, false))
|
||||||
|
}}>
|
||||||
|
{fileList[0].name}
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
style={{
|
||||||
|
marginLeft: '2px',
|
||||||
|
cursor: 'pointer',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
setFileList([])
|
||||||
|
}}><DeleteOutlined /></div>
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<></>
|
||||||
|
)}
|
||||||
|
{/* 嘻嘻 */}
|
||||||
|
{/* <img src={showImage('e98b50ad-7167-49ac-902d-ac3c713f815a')} alt="" /> */}
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
// marginTop: '-20px',
|
||||||
|
}}>
|
||||||
|
2021年12月10日起,商标名称作为必填项提交至商标局。商标局审核人员会根据商标图样中的文字字母等实际展示的信息重新命名商标名称,并展示在商标局官网。 如何解决请参考<span className='pointerBlue'>文档</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className='editFormItem' style={{
|
||||||
|
marginTop: '100px',
|
||||||
|
}}>
|
||||||
|
<div className='editFormItemTitle'>
|
||||||
|
商标说明<span className='redTitle'>*</span>:
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<Form.Item
|
||||||
|
name="text"
|
||||||
|
rules={[{ required: true, message: '请输入商标说明' }]}
|
||||||
|
>
|
||||||
|
<TextArea style={{
|
||||||
|
width: 600,
|
||||||
|
height: 150,
|
||||||
|
background: '#FFF',
|
||||||
|
color: 'black',
|
||||||
|
resize: 'none'
|
||||||
|
}}
|
||||||
|
placeholder="例:商标由中文“**”、英文“**”及图形构成,无特殊含义。"
|
||||||
|
>
|
||||||
|
</TextArea>
|
||||||
|
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className='editFormItem' style={{
|
||||||
|
marginTop: '120px',
|
||||||
|
}}>
|
||||||
|
<div className='editFormItemTitle'>
|
||||||
|
商标类型<span className='redTitle'>*</span>:
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
marginLeft: '2px',
|
||||||
|
}}>
|
||||||
|
<Radio.Group onChange={generateTypeChange} value={generateType}>
|
||||||
|
<Radio value="1">自动生成</Radio>
|
||||||
|
<Radio value="2">手动上传</Radio>
|
||||||
|
</Radio.Group>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
display: 'flex',
|
||||||
|
}}>
|
||||||
|
<div style={{
|
||||||
|
marginLeft: '90px',
|
||||||
|
// background:'pink',
|
||||||
|
width: 200,
|
||||||
|
position: 'relative',
|
||||||
|
}}>
|
||||||
|
<Form.Item
|
||||||
|
name="imgUrl"
|
||||||
|
rules={[{ required: true, message: generateType == '1' ? '请点击生成按钮生成商标图样' : '请上传商标图样' }]}
|
||||||
|
>
|
||||||
|
<TextArea style={{
|
||||||
|
width: 200,
|
||||||
|
height: 100,
|
||||||
|
background: '#FFF',
|
||||||
|
color: 'black',
|
||||||
|
resize: 'none'
|
||||||
|
}}
|
||||||
|
// value={generateType == '1' ? generateImgId : imgList[0]?.uid}
|
||||||
|
placeholder="商标说明"
|
||||||
|
>
|
||||||
|
</TextArea>
|
||||||
|
|
||||||
|
</Form.Item>
|
||||||
|
<div style={{
|
||||||
|
display: generateType == '1' && generateImgId == '' ? 'unset' : 'none',
|
||||||
|
width: 200,
|
||||||
|
height: 100,
|
||||||
|
background: 'white',
|
||||||
|
color: 'black',
|
||||||
|
position: 'absolute',
|
||||||
|
top: 0,
|
||||||
|
left: 0,
|
||||||
|
lineHeight: '100px',
|
||||||
|
textAlign: 'center',
|
||||||
|
fontSize: '20px',
|
||||||
|
border: '1px dashed #d6d6d6',
|
||||||
|
}}>
|
||||||
|
暂无图片
|
||||||
|
</div>
|
||||||
|
{/* 自动生成图片 */}
|
||||||
|
<div style={{
|
||||||
|
display: generateType == '1' && generateImgId != '' ? 'unset' : 'none',
|
||||||
|
width: 200,
|
||||||
|
height: 100,
|
||||||
|
background: 'white',
|
||||||
|
color: 'black',
|
||||||
|
position: 'absolute',
|
||||||
|
top: 0,
|
||||||
|
left: 0,
|
||||||
|
lineHeight: '100px',
|
||||||
|
textAlign: 'center',
|
||||||
|
fontSize: '20px',
|
||||||
|
border: '1px dashed #d6d6d6',
|
||||||
|
}}>
|
||||||
|
<div style={{
|
||||||
|
width: '100%',
|
||||||
|
height: '100%',
|
||||||
|
// background:'pink',
|
||||||
|
overflow: 'hidden',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'center',
|
||||||
|
alignItems: 'flex-start',
|
||||||
|
}}>
|
||||||
|
<Image src={generateImgId} height={100} style={{ maxWidth: 200, height: '100%' }} ></Image>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{/* 手动上传图片 */}
|
||||||
|
<div style={{
|
||||||
|
display: generateType == '2' && imgList.length > 0 ? 'unset' : 'none',
|
||||||
|
width: 200,
|
||||||
|
height: 100,
|
||||||
|
background: 'white',
|
||||||
|
color: 'black',
|
||||||
|
position: 'absolute',
|
||||||
|
top: 0,
|
||||||
|
left: 0,
|
||||||
|
lineHeight: '100px',
|
||||||
|
textAlign: 'center',
|
||||||
|
fontSize: '20px',
|
||||||
|
border: '1px dashed #d6d6d6',
|
||||||
|
}}>
|
||||||
|
|
||||||
|
<div style={{
|
||||||
|
width: '100%',
|
||||||
|
height: '100%',
|
||||||
|
// background:'pink',
|
||||||
|
overflow: 'hidden',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'center',
|
||||||
|
alignItems: 'flex-start',
|
||||||
|
}}>
|
||||||
|
<Image src={imgList[0]?.url} height={100} style={{ maxWidth: 200, height: '100%' }} ></Image>
|
||||||
|
</div>
|
||||||
|
<div style={{
|
||||||
|
position: 'absolute',
|
||||||
|
bottom: 0,
|
||||||
|
right: -50,
|
||||||
|
fontSize: '16px',
|
||||||
|
lineHeight:'16px',
|
||||||
|
// background:'pink',
|
||||||
|
cursor:'pointer',
|
||||||
|
padding:'5px',
|
||||||
|
color:'red'
|
||||||
|
}}
|
||||||
|
onClick={()=>{
|
||||||
|
setImgList([])
|
||||||
|
formA.setFieldsValue({ imgUrl: '' })
|
||||||
|
}}
|
||||||
|
>删除</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div style={{
|
||||||
|
display: generateType == '2' && imgList.length <= 0 ? 'unset' : 'none',
|
||||||
|
width: 200,
|
||||||
|
height: 100,
|
||||||
|
background: 'white',
|
||||||
|
color: 'black',
|
||||||
|
position: 'absolute',
|
||||||
|
top: 0,
|
||||||
|
left: 0,
|
||||||
|
lineHeight: '100px',
|
||||||
|
textAlign: 'center',
|
||||||
|
fontSize: '20px',
|
||||||
|
border: '1px dashed #d6d6d6',
|
||||||
|
}}>
|
||||||
|
<Spin tip="正在处理,请稍后..." size="small" spinning={textLodaing}>
|
||||||
|
<Upload
|
||||||
|
name="file"
|
||||||
|
maxCount={1}
|
||||||
|
action={uploadFileUrl()}
|
||||||
|
beforeUpload={(file) => {
|
||||||
|
const isPNG = file.type === 'image/png';
|
||||||
|
const isJPG = file.type === 'image/jpg' || file.type === 'image/jpeg';
|
||||||
|
if (!isPNG && !isJPG) {
|
||||||
|
// console.error('仅支持 PNG、PDF、JPG 格式的文件!');
|
||||||
|
message.error('仅支持 PNG、JPG 格式的文件!');
|
||||||
|
}
|
||||||
|
return isPNG || isJPG;
|
||||||
|
}}
|
||||||
|
// fileList={[]}
|
||||||
|
onChange={upImgHandleChange}
|
||||||
|
showUploadList={false}
|
||||||
|
headers={{ 'Auth': `Bearer ${token}` }}
|
||||||
|
disabled={imgList.length > 0}
|
||||||
|
>
|
||||||
|
<div style={{
|
||||||
|
width: 200,
|
||||||
|
height: 100,
|
||||||
|
background: 'white',
|
||||||
|
color: 'black',
|
||||||
|
|
||||||
|
lineHeight: '100px',
|
||||||
|
textAlign: 'center',
|
||||||
|
fontSize: '20px',
|
||||||
|
border: '1px dashed #d6d6d6',
|
||||||
|
}}>
|
||||||
|
上传图片
|
||||||
|
</div>
|
||||||
|
</Upload>
|
||||||
|
</Spin>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<Button type="primary"
|
||||||
|
onClick={() => {
|
||||||
|
setGenerateImgId('http://gips2.baidu.com/it/u=1674525583,3037683813&fm=3028&app=3028&f=JPEG&fmt=auto?w=1024&h=1024')
|
||||||
|
// 给FormA表单的imgUrl赋值
|
||||||
|
formA.setFieldsValue({
|
||||||
|
imgUrl: 'http://gips2.baidu.com/it/u=1674525583,3037683813&fm=3028&app=3028&f=JPEG&fmt=auto?w=1024&h=1024'
|
||||||
|
})
|
||||||
|
}}
|
||||||
|
style={{
|
||||||
|
marginTop: '70px',
|
||||||
|
marginLeft: '10px',
|
||||||
|
width: 150,
|
||||||
|
display: generateType == '1' ? 'unset' : 'none',
|
||||||
|
}}>立即生成</Button>
|
||||||
|
</div>
|
||||||
|
</Form>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div style={{
|
||||||
|
display: goodsType === 'b' ? 'unset' : 'none',
|
||||||
|
}}>
|
||||||
|
<Form
|
||||||
|
name="FormB"
|
||||||
|
form={formB}
|
||||||
|
onFinish={onFinishB}
|
||||||
|
initialValues={{ softWare: '' }}
|
||||||
|
style={{ marginTop: 20 }}
|
||||||
|
>
|
||||||
|
|
||||||
|
<div className='editFormItem' style={{
|
||||||
|
marginTop: '20px',
|
||||||
|
}}>
|
||||||
|
<div className='editFormItemTitle'>
|
||||||
|
商标说明<span className='redTitle'>*</span>:
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<Form.Item
|
||||||
|
name="textB"
|
||||||
|
rules={[{ required: true, message: '请输入商标说明' }]}
|
||||||
|
>
|
||||||
|
<TextArea style={{
|
||||||
|
width: 600,
|
||||||
|
height: 150,
|
||||||
|
background: '#FFF',
|
||||||
|
color: 'black',
|
||||||
|
resize: 'none'
|
||||||
|
}}
|
||||||
|
placeholder="商标说明"
|
||||||
|
>
|
||||||
|
</TextArea>
|
||||||
|
|
||||||
|
</Form.Item>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
{/* <Form.Item>
|
||||||
|
<div className='trademark-btn'>
|
||||||
|
<Button type="primary" htmlType="submit" style={{
|
||||||
|
width: 273,
|
||||||
|
height: 52
|
||||||
|
}}
|
||||||
|
>
|
||||||
|
提交订单
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
</Form.Item> */}
|
||||||
|
</Form>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '8px',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'flex-end',
|
||||||
|
}}>
|
||||||
|
<Button
|
||||||
|
type='primary'
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
handleSubmit()
|
||||||
|
}}
|
||||||
|
>下一步</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
50
src/route/TrademarkMall/components/EditSix/EditSix.tsx
Normal file
50
src/route/TrademarkMall/components/EditSix/EditSix.tsx
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import { Button } from 'antd'
|
||||||
|
export default function editSix(props: any) {
|
||||||
|
const height = window.innerHeight - 350;
|
||||||
|
const handleSubmit = () => {
|
||||||
|
// console.log(form);
|
||||||
|
// 调用表单实例的 submit 方法
|
||||||
|
// form.submit();
|
||||||
|
alert('提交成功')
|
||||||
|
|
||||||
|
};
|
||||||
|
return (
|
||||||
|
<div className='editOneTwo'>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div className='appInfoFormBox' style={{
|
||||||
|
height: height,
|
||||||
|
background: 'pink'
|
||||||
|
}}></div>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '8px',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'flex-end',
|
||||||
|
}}>
|
||||||
|
<Button
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
props.setEditProcess(4)
|
||||||
|
}}
|
||||||
|
>上一步</Button>
|
||||||
|
<Button
|
||||||
|
type='primary'
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
marginLeft: '10px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
handleSubmit()
|
||||||
|
}}
|
||||||
|
>上传</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
50
src/route/TrademarkMall/components/EditThree/EditThree.tsx
Normal file
50
src/route/TrademarkMall/components/EditThree/EditThree.tsx
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import { Button } from 'antd'
|
||||||
|
export default function editThree(props: any) {
|
||||||
|
const height = window.innerHeight - 350;
|
||||||
|
const handleSubmit = () => {
|
||||||
|
// console.log(form);
|
||||||
|
props.setEditProcess(4);
|
||||||
|
// 调用表单实例的 submit 方法
|
||||||
|
// form.submit();
|
||||||
|
|
||||||
|
};
|
||||||
|
return (
|
||||||
|
<div className='editOneTwo'>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div className='appInfoFormBox' style={{
|
||||||
|
height: height,
|
||||||
|
background: 'pink'
|
||||||
|
}}></div>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '8px',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'flex-end',
|
||||||
|
}}>
|
||||||
|
<Button
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
props.setEditProcess(2)
|
||||||
|
}}
|
||||||
|
>上一步</Button>
|
||||||
|
<Button
|
||||||
|
type='primary'
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
marginLeft: '10px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
handleSubmit()
|
||||||
|
}}
|
||||||
|
>下一步</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
50
src/route/TrademarkMall/components/EditTwo/EditTwo.tsx
Normal file
50
src/route/TrademarkMall/components/EditTwo/EditTwo.tsx
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
import React from 'react'
|
||||||
|
import { Button } from 'antd'
|
||||||
|
export default function editTwo(props: any) {
|
||||||
|
const height = window.innerHeight - 350;
|
||||||
|
const handleSubmit = () => {
|
||||||
|
// console.log(form);
|
||||||
|
props.setEditProcess(3);
|
||||||
|
// 调用表单实例的 submit 方法
|
||||||
|
// form.submit();
|
||||||
|
|
||||||
|
};
|
||||||
|
return (
|
||||||
|
<div className='editOneTwo'>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div className='appInfoFormBox' style={{
|
||||||
|
height: height,
|
||||||
|
background: 'pink'
|
||||||
|
}}></div>
|
||||||
|
<div className='topLine'></div>
|
||||||
|
<div style={{
|
||||||
|
marginTop: '8px',
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: 'flex-end',
|
||||||
|
}}>
|
||||||
|
<Button
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
props.setEditProcess(1)
|
||||||
|
}}
|
||||||
|
>上一步</Button>
|
||||||
|
<Button
|
||||||
|
type='primary'
|
||||||
|
style={{
|
||||||
|
width: '100px',
|
||||||
|
height: '40px',
|
||||||
|
borderRadius: '5px',
|
||||||
|
marginLeft: '10px',
|
||||||
|
}}
|
||||||
|
onClick={() => {
|
||||||
|
handleSubmit()
|
||||||
|
}}
|
||||||
|
>下一步</Button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
}
|
@ -6,3 +6,61 @@
|
|||||||
padding: 30px 45px 0 45px;
|
padding: 30px 45px 0 45px;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.trademarkAiBox {
|
||||||
|
margin-top: 18px;
|
||||||
|
background-color: rgb(255, 255, 255);
|
||||||
|
padding: 0px 19px 0px 19px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 30px 45px 0 45px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
.trademarkTop {
|
||||||
|
padding: 5px 10px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
background-color: #fff4e6;
|
||||||
|
display: flex;
|
||||||
|
/* line-height: 20px; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.trademarkTopL {
|
||||||
|
width: 20px;
|
||||||
|
height: 20px;
|
||||||
|
border-radius: 10px;
|
||||||
|
background-color: #ff9326;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 20px;
|
||||||
|
color: #ffffff;
|
||||||
|
margin-right: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.trademarkForm {
|
||||||
|
margin-left: 100px;
|
||||||
|
/* display: flex; */
|
||||||
|
/* align-items: center; */
|
||||||
|
/* justify-content: center; */
|
||||||
|
}
|
||||||
|
|
||||||
|
.trademarkForm-item {
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
/* background-color: pink; */
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.trademarkForm-title {
|
||||||
|
width: 120px;
|
||||||
|
height: 46px;
|
||||||
|
line-height: 46px;
|
||||||
|
/* background-color: pink; */
|
||||||
|
font-size: 16px;
|
||||||
|
text-wrap: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
.trademark-btn {
|
||||||
|
/* background-color: pink; */
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
margin-top: 50px;
|
||||||
|
}
|
@ -504,7 +504,9 @@ export default function TradingGoods() {
|
|||||||
justifyContent: 'center',
|
justifyContent: 'center',
|
||||||
height: `${height}px`,
|
height: `${height}px`,
|
||||||
}}>
|
}}>
|
||||||
<OrderDetail orderId={orderId} user={'buy'}></OrderDetail>
|
<OrderDetail orderId={orderId} user={'buy'} upData={() => {
|
||||||
|
getDataList(page)
|
||||||
|
}}></OrderDetail>
|
||||||
</Modal>
|
</Modal>
|
||||||
<Modal
|
<Modal
|
||||||
title="补充资料"
|
title="补充资料"
|
||||||
|
@ -23,7 +23,7 @@ import MenuWithBottomButtom from '../../components/menu/MenuWithBottomButton.tsx
|
|||||||
// import MenuTreeWithTopButton from "../../components/menu/MenuTreeWithTopButton.tsx";
|
// import MenuTreeWithTopButton from "../../components/menu/MenuTreeWithTopButton.tsx";
|
||||||
// import ListProj from "../../components/list/ListProj.tsx";
|
// import ListProj from "../../components/list/ListProj.tsx";
|
||||||
// import ListProjAgent from "../../components/list/ListProjAgent.tsx";
|
// import ListProjAgent from "../../components/list/ListProjAgent.tsx";
|
||||||
// import { getMenuActive } from '../../util/cache.ts'
|
import { getMenuActive } from '../../util/cache.ts'
|
||||||
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
@ -87,10 +87,10 @@ interface DataType {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// import app from '../../static/left/app.png'
|
import app from '../../static/left/app.png'
|
||||||
// import appnew from '../../static/left/appnew.png'
|
import appnew from '../../static/left/appnew.png'
|
||||||
// import tra from '../../static/left/tra.png'
|
import tra from '../../static/left/tra.png'
|
||||||
// import tranew from '../../static/left/tranew.png'
|
import tranew from '../../static/left/tranew.png'
|
||||||
|
|
||||||
// import topblack from '../../static/appimgs/topblack.png'
|
// import topblack from '../../static/appimgs/topblack.png'
|
||||||
// import topblue from '../../static/appimgs/topblue.png'
|
// import topblue from '../../static/appimgs/topblue.png'
|
||||||
@ -889,7 +889,7 @@ export default function Index() {
|
|||||||
const copyrightKeyWordshandleSearch = () => {
|
const copyrightKeyWordshandleSearch = () => {
|
||||||
setCopyrightKeywords(copyrightNewKeywords)
|
setCopyrightKeywords(copyrightNewKeywords)
|
||||||
}
|
}
|
||||||
const [specialPrice, setSpecialPrice] = useState(false) //商品特价标识
|
const [specialPrice, setSpecialPrice] = useState('') //商品特价标识
|
||||||
const copyrightInit = () => {
|
const copyrightInit = () => {
|
||||||
setMinPrice(null)
|
setMinPrice(null)
|
||||||
setMaxPrice(null)
|
setMaxPrice(null)
|
||||||
@ -900,7 +900,7 @@ export default function Index() {
|
|||||||
setCopyrightNewKeywords('')
|
setCopyrightNewKeywords('')
|
||||||
setCopyrightKeywords('')
|
setCopyrightKeywords('')
|
||||||
// 清除特价标识
|
// 清除特价标识
|
||||||
setSpecialPrice(false)
|
setSpecialPrice('')
|
||||||
}
|
}
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@ -2006,6 +2006,10 @@ export default function Index() {
|
|||||||
correctionType={correctionType ? correctionType : ''}
|
correctionType={correctionType ? correctionType : ''}
|
||||||
correctionApplyStatus={correctionApplyStatus ? correctionApplyStatus : ''}
|
correctionApplyStatus={correctionApplyStatus ? correctionApplyStatus : ''}
|
||||||
tagCor={tagCor ? tagCor : ''}
|
tagCor={tagCor ? tagCor : ''}
|
||||||
|
|
||||||
|
// 换名
|
||||||
|
replaceKeyWords={replaceKeyWords ? replaceKeyWords : ''}
|
||||||
|
replaceStatus={replaceStatus ? replaceStatus : ''}
|
||||||
// enableBelongpeople = {()=>{setClickBelongpeople(true)}}
|
// enableBelongpeople = {()=>{setClickBelongpeople(true)}}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@ -2066,7 +2070,7 @@ export default function Index() {
|
|||||||
list={agentMenu.list}
|
list={agentMenu.list}
|
||||||
handleListItem={agentMenu.handleListItem}
|
handleListItem={agentMenu.handleListItem}
|
||||||
/> */}
|
/> */}
|
||||||
{/* {THEME == 'mzw' ? (
|
{THEME == 'mzw' ? (
|
||||||
<>
|
<>
|
||||||
<div style={{
|
<div style={{
|
||||||
background: getMenuActive() == 'APP' ? 'linear-gradient(90deg, #FF9F08 0%, #FF7331 100%)' : ' var(--color-menuback)',
|
background: getMenuActive() == 'APP' ? 'linear-gradient(90deg, #FF9F08 0%, #FF7331 100%)' : ' var(--color-menuback)',
|
||||||
@ -2139,12 +2143,13 @@ export default function Index() {
|
|||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<></>
|
<></>
|
||||||
)} */}
|
)}
|
||||||
{THEME == 'mzw' ? (
|
{THEME == 'mzw' ? (
|
||||||
<MenuWithBottomButtom
|
<MenuWithBottomButtom
|
||||||
button={sellMenu.button}
|
button={sellMenu.button}
|
||||||
list={sellMenu.list}
|
list={sellMenu.list}
|
||||||
handleListItem={sellMenu.handleListItem}
|
handleListItem={sellMenu.handleListItem}
|
||||||
|
|
||||||
sellKeywords={sellKeywords}
|
sellKeywords={sellKeywords}
|
||||||
sellBelongType={sellBelongType}
|
sellBelongType={sellBelongType}
|
||||||
sellDate={sellDate}
|
sellDate={sellDate}
|
||||||
@ -2155,6 +2160,23 @@ export default function Index() {
|
|||||||
sellEndTime={sellEndTime}
|
sellEndTime={sellEndTime}
|
||||||
sellOrderStatus={sellOrderStatus}
|
sellOrderStatus={sellOrderStatus}
|
||||||
sellOrderKeywords={sellOrderKeywords}
|
sellOrderKeywords={sellOrderKeywords}
|
||||||
|
|
||||||
|
copyrightKeywords={copyrightKeywords}
|
||||||
|
minPrice={minPrice}
|
||||||
|
maxPrice={maxPrice}
|
||||||
|
sort={sort}
|
||||||
|
copyrightDate={copyrightDate}
|
||||||
|
copyrightLanguage={copyrightLanguage}
|
||||||
|
copyrightType={copyrightType}
|
||||||
|
|
||||||
|
tradingKeywords={tradingKeywords}
|
||||||
|
tradingStartTime={tradingStartTime}
|
||||||
|
tradingEndTime={tradingEndTime}
|
||||||
|
tradingStatus={tradingStatus}
|
||||||
|
|
||||||
|
specialPrice={specialPrice}
|
||||||
|
|
||||||
|
|
||||||
/>
|
/>
|
||||||
) : (
|
) : (
|
||||||
<></>
|
<></>
|
||||||
@ -3441,8 +3463,13 @@ export default function Index() {
|
|||||||
border: '1px solid #FF9F00 ',
|
border: '1px solid #FF9F00 ',
|
||||||
}}
|
}}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
|
if (specialPrice == '') {
|
||||||
|
setSpecialPrice('特价')
|
||||||
|
} else {
|
||||||
|
setSpecialPrice('')
|
||||||
|
}
|
||||||
// 特价标识
|
// 特价标识
|
||||||
setSpecialPrice(!specialPrice)
|
// setSpecialPrice(!specialPrice)
|
||||||
}}
|
}}
|
||||||
>
|
>
|
||||||
今日特价
|
今日特价
|
||||||
@ -4328,9 +4355,14 @@ export default function Index() {
|
|||||||
|
|
||||||
}}
|
}}
|
||||||
onClick={() => {
|
onClick={() => {
|
||||||
console.log(item.nowprice);
|
console.log(item);
|
||||||
setTrademarkModal(false)
|
setTrademarkModal(false)
|
||||||
nav('/trademark-expert-edit')
|
nav('/trademark-expert-edit', {
|
||||||
|
state: {
|
||||||
|
title: item.title,
|
||||||
|
price: item.nowprice
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
console.log('简单');
|
console.log('简单');
|
||||||
|
|
||||||
@ -4359,6 +4391,13 @@ export default function Index() {
|
|||||||
onClick={() => {
|
onClick={() => {
|
||||||
console.log(item.nowprice);
|
console.log(item.nowprice);
|
||||||
console.log('复杂');
|
console.log('复杂');
|
||||||
|
setTrademarkModal(false)
|
||||||
|
nav('/trademark-ai-edit', {
|
||||||
|
state: {
|
||||||
|
title: item.title,
|
||||||
|
price: item.nowprice
|
||||||
|
}
|
||||||
|
})
|
||||||
}}
|
}}
|
||||||
>开始编辑</div>
|
>开始编辑</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -5,6 +5,7 @@ import AppElectron from '../route/AppElectron/AppElectron.tsx'
|
|||||||
import AppEdit from '../route/AppElectron/AppEdit.tsx'
|
import AppEdit from '../route/AppElectron/AppEdit.tsx'
|
||||||
import TrademarkMall from '../route/TrademarkMall/TrademarkMall.tsx'
|
import TrademarkMall from '../route/TrademarkMall/TrademarkMall.tsx'
|
||||||
import TrademarkExpertEdit from '../route/TrademarkMall/TrademarkExpertEdit.tsx'
|
import TrademarkExpertEdit from '../route/TrademarkMall/TrademarkExpertEdit.tsx'
|
||||||
|
import TrademarkAiEdit from '../route/TrademarkMall/TrademarkAiEdit.tsx'
|
||||||
import TransactionOrder from '../route/TransactionOrder/TransactionOrder.tsx'
|
import TransactionOrder from '../route/TransactionOrder/TransactionOrder.tsx'
|
||||||
import CopyrightGgoods from '../route/CopyrightGgoods/CopyrightGgoods.tsx'
|
import CopyrightGgoods from '../route/CopyrightGgoods/CopyrightGgoods.tsx'
|
||||||
import TradingGoods from '../route/TradingGoods/TradingGoods.tsx'
|
import TradingGoods from '../route/TradingGoods/TradingGoods.tsx'
|
||||||
@ -238,6 +239,10 @@ export const router = createHashRouter(
|
|||||||
{
|
{
|
||||||
path:'/trademark-expert-edit',
|
path:'/trademark-expert-edit',
|
||||||
element:<TrademarkExpertEdit/>
|
element:<TrademarkExpertEdit/>
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path:'/trademark-ai-edit',
|
||||||
|
element:<TrademarkAiEdit/>
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
path: '/transaction-order',
|
path: '/transaction-order',
|
||||||
|
Loading…
Reference in New Issue
Block a user