Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
A
admin-ci-test
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
test-ci
admin-ci-test
Commits
ae13cac9
提交
ae13cac9
authored
6月 15, 2023
作者:
龚洪江
提交者:
ZhangLingKun
6月 15, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修复:服务上传提示,商品返回当前页
上级
48806035
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
136 行增加
和
12 行删除
+136
-12
index.tsx
src/components/uploader/index.tsx
+3
-1
index.tsx
src/pages/mallManage/mallGoods/goodsList/index.tsx
+68
-6
index.tsx
src/pages/mallManage/rentGoods/rentList/index.tsx
+65
-5
没有找到文件。
src/components/uploader/index.tsx
浏览文件 @
ae13cac9
...
@@ -50,7 +50,9 @@ export const Uploader: React.FC<PropsType> = (props) => {
...
@@ -50,7 +50,9 @@ export const Uploader: React.FC<PropsType> = (props) => {
const
isType
=
fileType
?.
includes
(
res
.
type
);
const
isType
=
fileType
?.
includes
(
res
.
type
);
const
isSize
=
res
.
size
/
1024
/
1024
<
(
fileSize
||
2
);
const
isSize
=
res
.
size
/
1024
/
1024
<
(
fileSize
||
2
);
if
(
!
isType
)
{
if
(
!
isType
)
{
message
.
error
(
`请上传
${
fileType
.
join
(
'、'
)}
格式的文件!`
).
then
();
message
.
error
(
`请上传
${
fileType
.
join
(
'、'
).
replace
(
/image
\/
|video
\/
/g
,
''
)}
格式的文件!`
)
.
then
();
return
isType
;
return
isType
;
}
}
if
(
!
isSize
)
{
if
(
!
isSize
)
{
...
...
src/pages/mallManage/mallGoods/goodsList/index.tsx
浏览文件 @
ae13cac9
import
SearchBox
,
{
searchColumns
}
from
'~/components/search-box'
;
import
SearchBox
,
{
searchColumns
}
from
'~/components/search-box'
;
import
React
,
{
useEffect
,
useState
}
from
'react'
;
import
React
,
{
useEffect
,
use
Ref
,
use
State
}
from
'react'
;
import
{
useNavigate
}
from
'react-router-dom'
;
import
{
useNavigate
,
useSearchParams
}
from
'react-router-dom'
;
import
{
Button
,
Card
,
Image
,
message
,
Modal
,
Table
}
from
'antd'
;
import
{
Button
,
Card
,
Image
,
message
,
Modal
,
Table
}
from
'antd'
;
import
{
import
{
ArrowDownOutlined
,
ArrowDownOutlined
,
...
@@ -14,6 +14,7 @@ import { InterDataType, InterReqType, PaginationProps } from '~/api/interface';
...
@@ -14,6 +14,7 @@ import { InterDataType, InterReqType, PaginationProps } from '~/api/interface';
import
{
listGoodsType
}
from
'~/api/interface/goodsType'
;
import
{
listGoodsType
}
from
'~/api/interface/goodsType'
;
import
{
CategoryManageAPI
}
from
'~/api'
;
import
{
CategoryManageAPI
}
from
'~/api'
;
import
{
filterObjAttr
}
from
'~/utils'
;
import
{
filterObjAttr
}
from
'~/utils'
;
import
qs
from
'query-string'
;
//商品返回类型
//商品返回类型
type
goodsType
=
InterDataType
<
listGoodsType
>
[
'list'
];
type
goodsType
=
InterDataType
<
listGoodsType
>
[
'list'
];
...
@@ -21,7 +22,10 @@ type goodsType = InterDataType<listGoodsType>['list'];
...
@@ -21,7 +22,10 @@ type goodsType = InterDataType<listGoodsType>['list'];
type
goodsSearchParameters
=
Omit
<
InterReqType
<
listGoodsType
>
,
'pageNo'
|
'pageSize'
|
'goodsType'
>
;
type
goodsSearchParameters
=
Omit
<
InterReqType
<
listGoodsType
>
,
'pageNo'
|
'pageSize'
|
'goodsType'
>
;
const
GoodsList
=
()
=>
{
const
GoodsList
=
()
=>
{
//筛选ref
const
searchRef
=
useRef
();
const
navigate
=
useNavigate
();
const
navigate
=
useNavigate
();
const
[
searchParams
,
setSearchParams
]
=
useSearchParams
();
const
tabList
=
[
const
tabList
=
[
{
{
key
:
'1'
,
key
:
'1'
,
...
@@ -111,21 +115,47 @@ const GoodsList = () => {
...
@@ -111,21 +115,47 @@ const GoodsList = () => {
const
onTabChange
=
(
key
:
string
)
=>
{
const
onTabChange
=
(
key
:
string
)
=>
{
pagination
.
pageNo
=
1
;
pagination
.
pageNo
=
1
;
pagination
.
pageSize
=
10
;
query
.
status
=
key
===
'1'
?
undefined
:
key
===
'2'
?
1
:
0
;
query
.
status
=
key
===
'1'
?
undefined
:
key
===
'2'
?
1
:
0
;
setSearchParams
(
qs
.
stringify
({
pageNo
:
1
,
pageSize
:
10
,
...
query
,
status
:
query
.
status
===
undefined
?
'all'
:
query
.
status
,
}),
);
getGoodsList
(
query
);
getGoodsList
(
query
);
setQuery
(
query
);
setQuery
(
query
);
setActiveTabKey
(
key
);
setActiveTabKey
(
key
);
};
};
const
paginationChange
=
(
pageNo
:
number
,
pageSize
:
number
)
=>
{
const
paginationChange
=
(
pageNo
:
number
,
pageSize
:
number
)
=>
{
pagination
.
pageSize
=
pageSize
;
pagination
.
pageNo
=
pageNo
;
pagination
.
pageNo
=
pageNo
;
pagination
.
pageSize
=
pageSize
;
setSearchParams
(
qs
.
stringify
({
pageNo
:
pageNo
,
pageSize
:
pageSize
,
...
query
,
status
:
query
.
status
===
undefined
?
'all'
:
query
.
status
,
}),
);
getGoodsList
(
query
);
getGoodsList
(
query
);
};
};
//筛选
//筛选
const
searchSuccess
=
(
data
:
any
)
=>
{
const
searchSuccess
=
(
data
:
any
)
=>
{
pagination
.
pageNo
=
1
;
pagination
.
pageNo
=
1
;
setQuery
(
filterObjAttr
(
data
,
[
'time'
]));
pagination
.
pageSize
=
10
;
getGoodsList
(
filterObjAttr
(
data
,
[
'time'
]));
setQuery
({
...
filterObjAttr
(
data
,
[
'time'
]),
status
:
query
.
status
});
getGoodsList
({
...
filterObjAttr
(
data
,
[
'time'
]),
status
:
query
.
status
});
setSearchParams
(
qs
.
stringify
({
pageNo
:
1
,
pageSize
:
10
,
...
filterObjAttr
(
data
,
[
'time'
]),
status
:
query
.
status
===
undefined
?
'all'
:
query
.
status
,
}),
);
};
};
//商品列表
//商品列表
const
getGoodsList
=
(
query
?:
goodsSearchParameters
)
=>
{
const
getGoodsList
=
(
query
?:
goodsSearchParameters
)
=>
{
...
@@ -184,6 +214,7 @@ const GoodsList = () => {
...
@@ -184,6 +214,7 @@ const GoodsList = () => {
if
(
code
===
'200'
)
{
if
(
code
===
'200'
)
{
message
.
success
(
status
?
'上架成功'
:
'下架成功'
);
message
.
success
(
status
?
'上架成功'
:
'下架成功'
);
getGoodsList
(
query
);
getGoodsList
(
query
);
setSelectedRowKeys
([]);
}
}
},
},
);
);
...
@@ -204,14 +235,44 @@ const GoodsList = () => {
...
@@ -204,14 +235,44 @@ const GoodsList = () => {
}
}
message
.
success
(
'删除成功'
);
message
.
success
(
'删除成功'
);
getGoodsList
(
query
);
getGoodsList
(
query
);
setSelectedRowKeys
([]);
}
}
});
});
},
},
});
});
};
};
useEffect
(()
=>
{
useEffect
(()
=>
{
getGoodsList
();
getDirectoryList
();
getDirectoryList
();
pagination
.
pageNo
=
Number
(
searchParams
.
get
(
'pageNo'
)
||
1
);
pagination
.
pageSize
=
Number
(
searchParams
.
get
(
'pageSize'
)
||
10
);
getGoodsList
({
goodsName
:
searchParams
.
get
(
'goodsName'
)
||
undefined
,
directoryId
:
searchParams
.
get
(
'directoryId'
)
?
Number
(
searchParams
.
get
(
'directoryId'
))
:
undefined
,
startTime
:
searchParams
.
get
(
'startTime'
)
||
undefined
,
endTime
:
searchParams
.
get
(
'endTime'
)
||
undefined
,
status
:
searchParams
.
get
(
'status'
)
===
'all'
||
searchParams
.
get
(
'status'
)
===
null
?
undefined
:
Number
(
searchParams
.
get
(
'status'
)),
});
setActiveTabKey
(
searchParams
.
get
(
'status'
)
===
'all'
||
searchParams
.
get
(
'status'
)
===
null
?
'1'
:
Number
(
searchParams
.
get
(
'status'
))
===
1
?
'2'
:
'3'
,
);
(
searchRef
.
current
as
any
).
getForm
().
setFieldsValue
({
goodsName
:
searchParams
.
get
(
'goodsName'
)
||
undefined
,
directoryId
:
searchParams
.
get
(
'directoryId'
)
?
Number
(
searchParams
.
get
(
'directoryId'
))
:
undefined
,
time
:
searchParams
.
get
(
'startTime'
)
?
[
searchParams
.
get
(
'startTime'
),
searchParams
.
get
(
'endTime'
)]
:
undefined
,
});
},
[]);
},
[]);
return
(
return
(
<
div
className=
'goods-list'
>
<
div
className=
'goods-list'
>
...
@@ -223,6 +284,7 @@ const GoodsList = () => {
...
@@ -223,6 +284,7 @@ const GoodsList = () => {
</
Button
>
</
Button
>
}
}
searchData=
{
searchSuccess
}
searchData=
{
searchSuccess
}
baseRef=
{
searchRef
}
/>
/>
<
Card
tabList=
{
tabList
}
activeTabKey=
{
activeTabKey
}
onTabChange=
{
onTabChange
}
>
<
Card
tabList=
{
tabList
}
activeTabKey=
{
activeTabKey
}
onTabChange=
{
onTabChange
}
>
<
div
className=
'header-operate'
style=
{
{
marginBottom
:
'10px'
}
}
>
<
div
className=
'header-operate'
style=
{
{
marginBottom
:
'10px'
}
}
>
...
...
src/pages/mallManage/rentGoods/rentList/index.tsx
浏览文件 @
ae13cac9
import
SearchBox
,
{
searchColumns
}
from
'~/components/search-box'
;
import
SearchBox
,
{
searchColumns
}
from
'~/components/search-box'
;
import
React
,
{
useEffect
,
useState
}
from
'react'
;
import
React
,
{
useEffect
,
use
Ref
,
use
State
}
from
'react'
;
import
{
useNavigate
}
from
'react-router-dom'
;
import
{
useNavigate
,
useSearchParams
}
from
'react-router-dom'
;
import
{
Button
,
Card
,
Image
,
message
,
Modal
,
Table
}
from
'antd'
;
import
{
Button
,
Card
,
Image
,
message
,
Modal
,
Table
}
from
'antd'
;
import
{
import
{
ArrowDownOutlined
,
ArrowDownOutlined
,
...
@@ -14,13 +14,17 @@ import { InterDataType, InterReqType, PaginationProps } from '~/api/interface';
...
@@ -14,13 +14,17 @@ import { InterDataType, InterReqType, PaginationProps } from '~/api/interface';
import
{
listGoodsType
}
from
'~/api/interface/goodsType'
;
import
{
listGoodsType
}
from
'~/api/interface/goodsType'
;
import
{
CategoryManageAPI
}
from
'~/api'
;
import
{
CategoryManageAPI
}
from
'~/api'
;
import
{
filterObjAttr
}
from
'~/utils'
;
import
{
filterObjAttr
}
from
'~/utils'
;
import
qs
from
'query-string'
;
//商品返回类型
//商品返回类型
type
goodsType
=
InterDataType
<
listGoodsType
>
[
'list'
];
type
goodsType
=
InterDataType
<
listGoodsType
>
[
'list'
];
//商品列表筛选类型
//商品列表筛选类型
type
goodsSearchParameters
=
Omit
<
InterReqType
<
listGoodsType
>
,
'pageNo'
|
'pageSize'
|
'goodsType'
>
;
type
goodsSearchParameters
=
Omit
<
InterReqType
<
listGoodsType
>
,
'pageNo'
|
'pageSize'
|
'goodsType'
>
;
const
RentList
=
()
=>
{
const
RentList
=
()
=>
{
//筛选ref
const
searchRef
=
useRef
();
const
navigate
=
useNavigate
();
const
navigate
=
useNavigate
();
const
[
searchParams
,
setSearchParams
]
=
useSearchParams
();
const
tabList
=
[
const
tabList
=
[
{
{
key
:
'1'
,
key
:
'1'
,
...
@@ -110,7 +114,16 @@ const RentList = () => {
...
@@ -110,7 +114,16 @@ const RentList = () => {
const
onTabChange
=
(
key
:
string
)
=>
{
const
onTabChange
=
(
key
:
string
)
=>
{
pagination
.
pageNo
=
1
;
pagination
.
pageNo
=
1
;
pagination
.
pageSize
=
10
;
query
.
status
=
key
===
'1'
?
undefined
:
key
===
'2'
?
1
:
0
;
query
.
status
=
key
===
'1'
?
undefined
:
key
===
'2'
?
1
:
0
;
setSearchParams
(
qs
.
stringify
({
pageNo
:
1
,
pageSize
:
10
,
...
query
,
status
:
query
.
status
===
undefined
?
'all'
:
query
.
status
,
}),
);
getGoodsList
(
query
);
getGoodsList
(
query
);
setQuery
(
query
);
setQuery
(
query
);
setActiveTabKey
(
key
);
setActiveTabKey
(
key
);
...
@@ -118,13 +131,30 @@ const RentList = () => {
...
@@ -118,13 +131,30 @@ const RentList = () => {
const
paginationChange
=
(
pageNo
:
number
,
pageSize
:
number
)
=>
{
const
paginationChange
=
(
pageNo
:
number
,
pageSize
:
number
)
=>
{
pagination
.
pageSize
=
pageSize
;
pagination
.
pageSize
=
pageSize
;
pagination
.
pageNo
=
pageNo
;
pagination
.
pageNo
=
pageNo
;
setSearchParams
(
qs
.
stringify
({
pageNo
:
pageNo
,
pageSize
:
pageSize
,
...
query
,
status
:
query
.
status
===
undefined
?
'all'
:
query
.
status
,
}),
);
getGoodsList
(
query
);
getGoodsList
(
query
);
};
};
//筛选
//筛选
const
searchSuccess
=
(
data
:
any
)
=>
{
const
searchSuccess
=
(
data
:
any
)
=>
{
pagination
.
pageNo
=
1
;
pagination
.
pageNo
=
1
;
setQuery
(
filterObjAttr
(
data
,
[
'time'
]));
pagination
.
pageSize
=
10
;
getGoodsList
(
filterObjAttr
(
data
,
[
'time'
]));
setQuery
({
...
filterObjAttr
(
data
,
[
'time'
]),
status
:
query
.
status
});
getGoodsList
({
...
filterObjAttr
(
data
,
[
'time'
]),
status
:
query
.
status
});
setSearchParams
(
qs
.
stringify
({
pageNo
:
1
,
pageSize
:
10
,
...
filterObjAttr
(
data
,
[
'time'
]),
status
:
query
.
status
===
undefined
?
'all'
:
query
.
status
,
}),
);
};
};
//商品列表
//商品列表
const
getGoodsList
=
(
query
?:
goodsSearchParameters
)
=>
{
const
getGoodsList
=
(
query
?:
goodsSearchParameters
)
=>
{
...
@@ -209,8 +239,37 @@ const RentList = () => {
...
@@ -209,8 +239,37 @@ const RentList = () => {
});
});
};
};
useEffect
(()
=>
{
useEffect
(()
=>
{
getGoodsList
();
getDirectoryList
();
getDirectoryList
();
pagination
.
pageNo
=
Number
(
searchParams
.
get
(
'pageNo'
)
||
1
);
pagination
.
pageSize
=
Number
(
searchParams
.
get
(
'pageSize'
)
||
10
);
getGoodsList
({
goodsName
:
searchParams
.
get
(
'goodsName'
)
||
undefined
,
directoryId
:
searchParams
.
get
(
'directoryId'
)
?
Number
(
searchParams
.
get
(
'directoryId'
))
:
undefined
,
startTime
:
searchParams
.
get
(
'startTime'
)
||
undefined
,
endTime
:
searchParams
.
get
(
'endTime'
)
||
undefined
,
status
:
searchParams
.
get
(
'status'
)
===
'all'
||
searchParams
.
get
(
'status'
)
===
null
?
undefined
:
Number
(
searchParams
.
get
(
'status'
)),
});
setActiveTabKey
(
searchParams
.
get
(
'status'
)
===
'all'
||
searchParams
.
get
(
'status'
)
===
null
?
'1'
:
Number
(
searchParams
.
get
(
'status'
))
===
1
?
'2'
:
'3'
,
);
(
searchRef
.
current
as
any
).
getForm
().
setFieldsValue
({
goodsName
:
searchParams
.
get
(
'goodsName'
)
||
undefined
,
directoryId
:
searchParams
.
get
(
'directoryId'
)
?
Number
(
searchParams
.
get
(
'directoryId'
))
:
undefined
,
time
:
searchParams
.
get
(
'startTime'
)
?
[
searchParams
.
get
(
'startTime'
),
searchParams
.
get
(
'endTime'
)]
:
undefined
,
});
},
[]);
},
[]);
return
(
return
(
<
div
className=
'goods-list'
>
<
div
className=
'goods-list'
>
...
@@ -222,6 +281,7 @@ const RentList = () => {
...
@@ -222,6 +281,7 @@ const RentList = () => {
</
Button
>
</
Button
>
}
}
searchData=
{
searchSuccess
}
searchData=
{
searchSuccess
}
baseRef=
{
searchRef
}
/>
/>
<
Card
tabList=
{
tabList
}
activeTabKey=
{
activeTabKey
}
onTabChange=
{
onTabChange
}
>
<
Card
tabList=
{
tabList
}
activeTabKey=
{
activeTabKey
}
onTabChange=
{
onTabChange
}
>
<
div
className=
'header-operate'
style=
{
{
marginBottom
:
'10px'
}
}
>
<
div
className=
'header-operate'
style=
{
{
marginBottom
:
'10px'
}
}
>
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论