Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
jinfa-platform
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陈智峰
jinfa-platform
Commits
a0e25897
Commit
a0e25897
authored
Jul 03, 2021
by
Bill
Browse files
Options
Browse Files
Download
Plain Diff
merge: 合并冲突
parents
efe30e35
68434b27
Hide whitespace changes
Inline
Side-by-side
Showing
37 changed files
with
912 additions
and
804 deletions
+912
-804
index.ts
src/constants/index.ts
+1
-2
index.less
src/pages/member/components/MemberDocIncomingInfo/index.less
+2
-1
index.tsx
src/pages/member/components/MemberDocIncomingInfo/index.tsx
+9
-2
index.less
...pages/member/components/MemberDocQualification/index.less
+6
-1
index.tsx
src/pages/member/components/MemberDocQualification/index.tsx
+19
-60
index.less
src/pages/member/components/QualitiesUpload/index.less
+10
-1
index.tsx
src/pages/member/components/QualitiesUpload/index.tsx
+8
-1
index.tsx
...pages/member/components/QualitiesUploadFormItem/index.tsx
+2
-2
index.tsx
...nents/FlowRuleForm/components/ComingConfigTable/index.tsx
+6
-2
index.tsx
...le/components/FlowRuleForm/components/ComingCtl/index.tsx
+3
-3
index.tsx
...wRule/components/FlowRuleForm/components/Search/index.tsx
+7
-7
index.tsx
...pages/member/memberImport/components/MemberForm/index.tsx
+3
-2
importDetail.tsx
src/pages/member/memberImport/importDetail.tsx
+4
-8
archiveInfo.tsx
src/pages/member/memberMaintain/detailed/archiveInfo.tsx
+3
-3
index.tsx
src/pages/member/memberMaintain/index.tsx
+1
-1
index.tsx
src/pages/member/memberQuery/applyMember/index.tsx
+36
-14
archiveInfo.tsx
src/pages/member/memberQuery/detailed/archiveInfo.tsx
+1
-1
utils.tsx
src/pages/member/utils.tsx
+11
-3
index.tsx
...rocurement/callForBids/callForBidsSearch/detail/index.tsx
+18
-18
index.tsx
...rement/callForBids/readyQualifityChecked/detail/index.tsx
+8
-8
index.tsx
...ges/procurement/callForBids/tenderSearch/detail/index.tsx
+4
-4
index.tsx
src/pages/procurement/components/descriptionsInfo/index.tsx
+2
-2
index.tsx
src/pages/procurement/constants/index.tsx
+3
-3
index.ts
src/pages/procurement/tender/addBidRegister/schema/index.ts
+2
-2
index.tsx
...procurement/tender/readyQualifityChecked/detail/index.tsx
+10
-10
index.tsx
src/pages/transaction/components/TableModal/index.tsx
+1
-1
index.less
...ges/transaction/confirmInquiryQuote/components/index.less
+57
-58
index.tsx
...s/transaction/dealAbility/productInquiry/detail/index.tsx
+1
-1
basicInfo.tsx
...ty/productInquiry/waitAddInquiry/components/basicInfo.tsx
+34
-7
inquiryProduct.tsx
...oductInquiry/waitAddInquiry/components/inquiryProduct.tsx
+76
-7
index.less
src/pages/transaction/demandPosts/components/index.less
+94
-94
index.less
src/pages/transaction/enquiryOffer/components/index.less
+118
-119
index.less
src/pages/transaction/enquiryOffer/enquirySearch/index.less
+118
-119
index.less
...ges/transaction/enquiryOfferConfirm/components/index.less
+118
-119
index.less
src/pages/transaction/goodsOffer/components/index.less
+57
-58
index.less
src/pages/transaction/inquiryQuote/components/index.less
+57
-58
index.tsx
...rder/orderCollect/components/materialModalTable/index.tsx
+2
-2
No files found.
src/constants/index.ts
View file @
a0e25897
...
...
@@ -84,8 +84,7 @@ export enum LAYOUT_TYPE {
// 本地环境跳过权限校验
export
const
isDev
=
false
;
// export const isDev = process.env.NODE_ENV === "development"
export
const
isDev
=
process
.
env
.
NODE_ENV
===
"development"
...
...
src/pages/member/components/MemberDocIncomingInfo/index.less
View file @
a0e25897
...
...
@@ -3,10 +3,11 @@
.changed {
width: 100%;
display: flex;
align-items:
center
;
align-items:
flex-start
;
justify-content: space-between;
.new {
flex-shrink: 0;
padding: 0 2px;
color: #FFFFFF;
font-size: @font-size-sm;
...
...
src/pages/member/components/MemberDocIncomingInfo/index.tsx
View file @
a0e25897
...
...
@@ -2,12 +2,14 @@
* @Author: XieZhiXiong
* @Date: 2021-05-21 17:14:39
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-10 09:57:18
* @LastEditTime: 2021-0
7-03 14:57:41
* @Description: 会员入库信息
*/
import
React
from
'react'
;
import
{
Tooltip
}
from
'antd'
;
import
CustomizeColumn
,
{
IProps
as
CustomizeColumnProps
,
DataItem
}
from
'@/components/CustomizeColumn'
;
import
{
renderFieldTypeContent
,
FieldType
}
from
'../../utils'
;
import
PicWrap
from
'../PicWrap'
;
import
styles
from
'./index.less'
;
interface
IProps
extends
Omit
<
CustomizeColumnProps
,
'data'
|
'columns'
>
{
...
...
@@ -39,6 +41,10 @@ interface IProps extends Omit<CustomizeColumnProps, 'data' | 'columns'> {
* 修改之前的值,如果没有为空字符串
*/
lastValue
?:
string
,
/**
* 类型
*/
fieldType
?:
string
,
}[],
}[],
}
...
...
@@ -57,7 +63,8 @@ const MemberDocIncomingInfo: React.FC<IProps> = (props: IProps) => {
title
:
ele
.
fieldLocalName
,
value
:
(
<
div
className=
{
styles
.
changed
}
>
{
ele
.
fieldValue
}
{
/* {ele.fieldValue} */
}
{
renderFieldTypeContent
(
ele
.
fieldType
,
ele
.
fieldValue
)
}
{
ele
.
lastValue
&&
(
<
Tooltip
title=
{
`变更前:${ele.lastValue}`
}
>
<
span
className=
{
styles
.
new
}
>
NEW
</
span
>
...
...
src/pages/member/components/MemberDocQualification/index.less
View file @
a0e25897
...
...
@@ -21,7 +21,12 @@
margin-right: @margin-sm;
width: 175px;
height: 120px;
border: 1px solid #EBECF0;
> img {
width: 100%;
height: 100%;
object-fit: contain;
}
}
&-right {
...
...
src/pages/member/components/MemberDocQualification/index.tsx
View file @
a0e25897
...
...
@@ -2,22 +2,13 @@
* @Author: XieZhiXiong
* @Date: 2021-05-21 17:25:39
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-18 17:47:44
* @LastEditTime: 2021-0
7-03 11:32:38
* @Description: 会员公司资质
*/
import
React
from
'react'
;
// import { Descriptions } from 'antd';
import
{
createFormActions
,
}
from
'@formily/antd'
;
import
{
DatePicker
,
Checkbox
}
from
'@formily/antd-components'
;
import
{
normalizeFiledata
}
from
'@/utils'
;
import
NiceForm
from
'@/components/NiceForm'
;
import
{
Descriptions
}
from
'antd'
;
import
MellowCard
,
{
MellowCardProps
}
from
'@/components/MellowCard'
;
import
{
schema
}
from
'./schema'
;
import
QualitiesUpload
from
'../QualitiesUpload'
;
import
QualitiesUploadFormItem
from
'../QualitiesUploadFormItem'
;
// import styles from './index.less';
import
styles
from
'./index.less'
;
export
type
ValueType
=
{
/**
...
...
@@ -45,63 +36,31 @@ interface IProps extends MellowCardProps {
dataSource
:
ValueType
[],
}
const
formActions
=
createFormActions
();
const
MemberDocQualification
:
React
.
FC
<
IProps
>
=
(
props
:
IProps
)
=>
{
const
{
dataSource
=
[],
...
rest
}
=
props
;
const
qualities
=
(
Array
.
isArray
(
dataSource
)
?
dataSource
.
map
((
item
)
=>
({
file
:
item
.
url
?
[
normalizeFiledata
(
item
.
url
)]
:
[],
expireDay
:
item
.
expireDay
,
permanent
:
item
.
permanent
===
1
?
[
item
.
permanent
]
:
[],
}))
:
[]
);
return
(
<
MellowCard
title=
"资质证明"
bodyStyle=
{
{
paddingBottom
:
0
,
}
}
{
...
rest
}
>
{
/* <ul className={styles.qualification}>
<li className={styles['qualification-item']}>
<div className={styles['qualification-item-wrap']}>
<div className={styles['qualification-item-left']}>
</div>
<div className={styles['qualification-item-right']}>
<Descriptions column={1}>
<Descriptions.Item label="到期日">2022-10-01</Descriptions.Item>
<Descriptions.Item label="有效期" style={{ paddingBottom: 0 }}>长期有效</Descriptions.Item>
</Descriptions>
<
ul
className=
{
styles
.
qualification
}
>
{
dataSource
.
map
((
item
,
index
)
=>
(
<
li
key=
{
index
}
className=
{
styles
[
'qualification-item'
]
}
>
<
div
className=
{
styles
[
'qualification-item-wrap'
]
}
>
<
div
className=
{
styles
[
'qualification-item-left'
]
}
>
<
img
src=
{
item
.
url
}
/>
</
div
>
<
div
className=
{
styles
[
'qualification-item-right'
]
}
>
<
Descriptions
column=
{
1
}
>
<
Descriptions
.
Item
label=
"到期日"
>
{
item
.
expireDay
||
''
}
</
Descriptions
.
Item
>
<
Descriptions
.
Item
label=
"有效期"
style=
{
{
paddingBottom
:
0
}
}
>
{
item
.
permanent
===
1
?
'长期有效'
:
''
}
</
Descriptions
.
Item
>
</
Descriptions
>
</
div
>
</
div
>
</div>
</li>
</ul> */
}
<
NiceForm
previewPlaceholder=
" "
initialValues=
{
{
qualities
,
}
}
components=
{
{
DatePicker
,
Checkbox
,
CheckboxGroup
:
Checkbox
.
Group
,
QualitiesUpload
,
QualitiesUploadFormItem
,
}
}
effects=
{
()
=>
{
}
}
actions=
{
formActions
}
schema=
{
schema
}
editable=
{
false
}
/>
</
li
>
))
}
</
ul
>
</
MellowCard
>
);
};
...
...
src/pages/member/components/QualitiesUpload/index.less
View file @
a0e25897
...
...
@@ -6,9 +6,17 @@
}
}
.no-img {
:global {
.ant-upload.ant-upload-select-picture-card {
border: none;
}
}
}
.img {
width: 175px;
height: 120px;
object-fit: co
ntain
;
object-fit: co
ver
;
}
}
\ No newline at end of file
src/pages/member/components/QualitiesUpload/index.tsx
View file @
a0e25897
...
...
@@ -2,13 +2,14 @@
* @Author: XieZhiXiong
* @Date: 2021-06-04 17:26:51
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-21 14:50:58
* @LastEditTime: 2021-0
7-03 13:58:05
* @Description: 资质上传组件
*/
import
React
,
{
useState
}
from
'react'
;
import
{
Upload
}
from
'antd'
;
import
{
PlusOutlined
,
FileOutlined
,
LoadingOutlined
,
ExclamationCircleOutlined
}
from
'@ant-design/icons'
;
import
{
UploadChangeParam
}
from
'antd/lib/upload'
;
import
classNames
from
'classnames'
;
import
styles
from
'./index.less'
;
const
QualitiesUpload
=
(
props
)
=>
{
...
...
@@ -73,6 +74,11 @@ const QualitiesUpload = (props) => {
);
};
const
uploadCls
=
classNames
({
[
styles
[
'no-img'
]]:
arrValue
.
length
,
className
,
});
return
(
<
div
className=
{
styles
.
upload
}
>
<
Upload
...
...
@@ -83,6 +89,7 @@ const QualitiesUpload = (props) => {
fileList=
{
arrValue
}
onChange=
{
handleChange
}
disabled=
{
!
editable
}
className=
{
uploadCls
}
>
{
!
loading
?
(
arrValue
.
length
?
renderFile
()
:
uploadButton
...
...
src/pages/member/components/QualitiesUploadFormItem/index.tsx
View file @
a0e25897
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-06-01 16:13:35
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-18 17:50:57
* @LastEditTime: 2021-0
7-03 14:48:39
* @Description: 资质证明上传组件
*/
import
React
from
'react'
;
...
...
@@ -108,7 +108,7 @@ const QualitiesUploadFormItem = (props) => {
<
div
style=
{
{
width
:
'100%'
}
}
>
<
ArrayList
value=
{
value
}
>
<
Row
gutter=
{
{
sm
:
44
,
md
:
88
,
lg
:
88
}
}
gutter=
{
[
66
,
66
]
}
>
{
toArr
(
value
).
map
((
item
,
index
)
=>
(
<
Col
key=
{
index
}
{
...
span
}
>
...
...
src/pages/member/memberFlowRule/components/FlowRuleForm/components/ComingConfigTable/index.tsx
View file @
a0e25897
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-05-28 15:24:56
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-18 15:57:10
* @LastEditTime: 2021-0
7-03 14:10:53
* @Description:
*/
import
React
,
{
useState
}
from
'react'
;
...
...
@@ -92,7 +92,11 @@ const ComingConfigTable = (props) => {
};
const
filtered
=
keyword
?
value
.
filter
((
item
)
=>
item
.
fieldLocalName
.
includes
(
keyword
))
:
[...
value
];
const
dataSource
=
pagingArr
(
page
,
size
,
filtered
);
let
dataSource
=
filtered
;
if
(
!
editable
)
{
dataSource
=
pagingArr
(
page
,
size
,
filtered
);
}
return
(
<
div
className=
{
styles
[
'config-table'
]
}
>
...
...
src/pages/member/memberFlowRule/components/FlowRuleForm/components/ComingCtl/index.tsx
View file @
a0e25897
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-05-28 15:19:56
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-01 14:47:01
* @LastEditTime: 2021-0
7-03 14:03:52
* @Description: 入库资料操作组
*/
import
React
,
{
useState
,
useRef
,
useEffect
}
from
'react'
;
...
...
@@ -129,9 +129,9 @@ const ComingCtl = (props: IProps) => {
新建入库资料
</
Button
>
)
}
<
Button
>
{
/*
<Button>
预览入库资料
</
Button
>
</Button>
*/
}
</
Space
>
<
Drawer
...
...
src/pages/member/memberFlowRule/components/FlowRuleForm/components/Search/index.tsx
View file @
a0e25897
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-05-28 14:30:06
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-08 16:27:02
* @LastEditTime: 2021-0
7-03 14:02:39
* @Description: 搜索组件
*/
import
React
,
{
useState
,
useEffect
}
from
'react'
;
...
...
@@ -49,12 +49,12 @@ const MySearch: React.FC<IProps> = (props: IProps) => {
}
},
[
value
]);
const
handleChange
=
(
e
)
=>
{
const
handleChange
=
(
next
:
string
)
=>
{
if
(
!
(
'value'
in
props
))
{
setKeyword
(
e
.
target
.
value
);
setKeyword
(
next
);
}
if
(
onChange
)
{
onChange
(
e
.
target
.
value
);
onChange
(
next
);
}
};
...
...
@@ -65,9 +65,9 @@ const MySearch: React.FC<IProps> = (props: IProps) => {
};
const
handleReset
=
()
=>
{
on
Change
(
''
);
handle
Change
(
''
);
if
(
searchOnResetAction
)
{
on
Search
(
''
);
handle
Search
(
''
);
}
if
(
onReset
)
{
onReset
();
...
...
@@ -79,7 +79,7 @@ const MySearch: React.FC<IProps> = (props: IProps) => {
<
Input
.
Search
style=
{
{
width
:
'200px'
,
marginRight
:
16
}
}
value=
{
keyword
}
onChange=
{
handleChange
}
onChange=
{
(
e
)
=>
handleChange
(
e
.
target
.
value
)
}
onSearch=
{
handleSearch
}
{
...
rest
}
/>
...
...
src/pages/member/memberImport/components/MemberForm/index.tsx
View file @
a0e25897
...
...
@@ -10,9 +10,9 @@ import NiceForm from '@/components/NiceForm';
import
{
useAsyncInitSelect
}
from
'@/formSchema/effects/useAsyncInitSelect'
;
import
{
useLinkageUtils
}
from
'@/utils/formEffectUtils'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
GetMemberAbilitySubGetResponse
,
GetMemberMainpageDetailGetResponse
}
from
'@/services/MemberV2Api'
;
import
{
initDetailSchema
}
from
'./schema'
;
import
{
getAuth
,
setAuth
}
from
'@/utils/auth'
;
import
{
initDetailSchema
}
from
'./schema'
;
import
AreaSelect
from
'../../../components/AreaSelect'
;
const
formActions
=
createFormActions
();
const
{
...
...
@@ -559,6 +559,7 @@ const MemberForm: React.FC<MemberFormProps> = ({
components=
{
{
RadioGroup
:
Radio
.
Group
,
CheckboxGroup
:
Checkbox
.
Group
,
AreaSelect
,
}
}
effects=
{
(
$
,
actions
)
=>
{
useAsyncInitSelect
(
...
...
src/pages/member/memberImport/importDetail.tsx
View file @
a0e25897
...
...
@@ -6,7 +6,7 @@ import {
}
from
'antd'
;
import
{
usePageStatus
}
from
'@/hooks/usePageStatus'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
GetMemberAbilitySub
Get
Response
}
from
'@/services/MemberV2Api'
;
import
{
GetMemberAbilitySub
Detail
Response
}
from
'@/services/MemberV2Api'
;
import
{
MEMBER_TYPE_CHANNEL_CORPORATE
,
MEMBER_TYPE_CHANNEL_INDIVIDUAL
,
...
...
@@ -19,7 +19,6 @@ import FlowRecords from '@/components/FlowRecords';
import
CustomizeColumn
from
'@/components/CustomizeColumn'
;
import
{
MEMBER_OUTER_COLUMNS
,
MEMBER_INNER_COLUMNS
,
}
from
'../constant'
;
import
MemberBasicInfo
from
'../components/MemberBasicInfo'
;
import
MemberChannelInfo
from
'../components/MemberChannelInfo'
;
...
...
@@ -27,13 +26,13 @@ import PicWrap from '../components/PicWrap';
const
ImportDetail
:
React
.
FC
<
{}
>
=
()
=>
{
const
{
id
,
validateId
}
=
usePageStatus
();
const
[
memberInfo
,
setMemberInfo
]
=
useState
<
GetMemberAbilitySub
Get
Response
>
(
null
);
const
[
memberInfo
,
setMemberInfo
]
=
useState
<
GetMemberAbilitySub
Detail
Response
>
(
null
);
const
[
infoLoading
,
setInfoLoading
]
=
useState
(
false
);
const
getDetailedInfo
=
()
=>
{
if
(
id
&&
validateId
)
{
setInfoLoading
(
true
);
PublicApi
.
getMemberAbilitySub
Get
({
PublicApi
.
getMemberAbilitySub
Detail
({
memberId
:
id
,
validateId
,
}).
then
(
res
=>
{
...
...
@@ -137,7 +136,7 @@ const ImportDetail: React.FC<{}> = () => {
<
MemberChannelInfo
dataSource=
{
{
level
:
memberInfo
?.
channelLevelTag
,
type
:
memberInfo
?.
channel
TypeName
,
type
:
memberInfo
?.
channel
LevelTag
,
areas
:
memberInfo
?.
areas
,
desc
:
memberInfo
?.
remark
,
}
}
...
...
@@ -180,11 +179,8 @@ const ImportDetail: React.FC<{}> = () => {
<
Col
span=
{
24
}
>
<
FlowRecords
outerColumns=
{
MEMBER_OUTER_COLUMNS
}
innerColumns=
{
MEMBER_INNER_COLUMNS
}
outerRowkey=
"id"
innerRowkey=
"id"
outerDataSource=
{
memberInfo
?.
outerHistory
}
innerDataSource=
{
memberInfo
?.
innerHistory
}
id=
"flowRecords"
/>
</
Col
>
...
...
src/pages/member/memberMaintain/detailed/archiveInfo.tsx
View file @
a0e25897
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-05-21 16:45:32
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-18 17:04:06
* @LastEditTime: 2021-0
7-03 15:44:03
* @Description: 会员档案信息
*/
import
React
,
{
useEffect
,
useState
}
from
'react'
;
...
...
@@ -186,7 +186,7 @@ const MemberArchiveInfo = () => {
const
getAppraisalList
=
(
params
:
ParamsType
):
Promise
<
ReponseType
<
AppraisalListItemType
>>
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
PublicApi
.
getMemberAbilityMaintenanceD
a
tailAppraisalPage
({
PublicApi
.
getMemberAbilityMaintenanceD
e
tailAppraisalPage
({
validateId
,
...
params
,
})
...
...
@@ -254,7 +254,7 @@ const MemberArchiveInfo = () => {
{
/* 分类信息 */
}
<
Col
span=
{
24
}
>
<
MemberDocCategory
dataSource=
{
archiveInfo
?.
classfication
}
dataSource=
{
archiveInfo
?.
class
i
fication
}
id=
"categoryInfo"
/>
</
Col
>
...
...
src/pages/member/memberMaintain/index.tsx
View file @
a0e25897
...
...
@@ -142,7 +142,7 @@ const MemberMaintain: React.FC<[]> = () => {
</
Link
>
)
}
{
record
.
showCorrect
&&
(
<
Link
to=
{
`/memberCenter/memberAbility/memberRectification/rectificationAdd/add?
n
ame=${record.name}&memberId=${record.memberId}&roleId=${record.roleId}`
}
>
<
Link
to=
{
`/memberCenter/memberAbility/memberRectification/rectificationAdd/add?
memberN
ame=${record.name}&memberId=${record.memberId}&roleId=${record.roleId}`
}
>
<
Button
type=
"link"
>
...
...
src/pages/member/memberQuery/applyMember/index.tsx
View file @
a0e25897
...
...
@@ -2,7 +2,7 @@
* @Author: XieZhiXiong
* @Date: 2021-05-26 16:52:48
* @LastEditors: XieZhiXiong
* @LastEditTime: 2021-0
6-30 10:22:49
* @LastEditTime: 2021-0
7-03 14:50:48
* @Description: 申请会员
*/
import
React
,
{
useState
,
useEffect
,
useRef
}
from
'react'
;
...
...
@@ -21,6 +21,7 @@ import ReutrnEle from '@/components/ReturnEle';
import
NiceForm
from
'@/components/NiceForm'
;
import
MellowCard
from
'@/components/MellowCard'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
normalizeFiledata
,
FileData
}
from
'@/utils'
;
import
schema
,
{
GroupItem
}
from
'./schema'
;
import
{
useBusinessEffects
}
from
'../../components/QualitiesUploadFormItem/effects'
;
import
ComingAgreement
from
'./components/ComingAgreement'
;
...
...
@@ -66,6 +67,16 @@ type ValueType = {
},
}
interface
MemberInfo
{
step4
:
{
qualities
:
{
file
:
FileData
[],
expireDay
:
string
,
permanent
:
number
[],
}[],
},
}
let
countDownLen
=
10
;
const
formActions
=
createFormActions
();
...
...
@@ -86,6 +97,7 @@ const MemberQueryApplyMember: React.FC = () => {
const
[
loading
,
setLoading
]
=
useState
(
false
);
const
[
agreement
,
setAgreement
]
=
useState
(
''
);
const
[
agreementLoading
,
setAgreementLoading
]
=
useState
(
false
);
const
[
memberInfo
,
setMemberInfo
]
=
useState
<
MemberInfo
>
();
const
stepRef
=
useRef
(
!
validateId
?
0
:
1
);
...
...
@@ -131,7 +143,17 @@ const MemberQueryApplyMember: React.FC = () => {
validateId
:
`
${
validateId
}
`
,
});
if
(
res
.
code
===
1000
)
{
const
qualities
=
res
.
data
.
qualities
||
[];
setDepositInfo
(
res
.
data
.
groups
);
setMemberInfo
({
step4
:
{
qualities
:
qualities
.
map
((
item
)
=>
({
file
:
item
.
url
?
[
normalizeFiledata
(
item
.
url
)]
:
[],
expireDay
:
item
.
expireDay
,
permanent
:
item
.
permanent
===
1
?
[
item
.
permanent
]
:
[],
}))
},
});
}
setLoading
(
false
);
};
...
...
@@ -172,6 +194,16 @@ const MemberQueryApplyMember: React.FC = () => {
content
:
'正在保存,请稍候...'
,
duration
:
0
,
});
const
commonPayload
=
{
qualities
:
qualities
.
map
((
item
)
=>
({
expireDay
:
item
.
expireDay
||
''
,
permanent
:
item
.
permanent
&&
item
.
permanent
[
0
]
||
0
,
url
:
item
.
file
&&
item
.
file
[
0
]
?
item
.
file
[
0
].
url
:
''
,
name
:
item
.
file
&&
item
.
file
[
0
]
?
item
.
file
[
0
].
name
:
''
,
})),
};
if
(
!
validateId
)
{
if
((
!
upperMemberId
||
!
upperRoleId
))
{
return
;
...
...
@@ -180,12 +212,7 @@ const MemberQueryApplyMember: React.FC = () => {
upperMemberId
,
upperRoleId
,
depositDetails
:
step3
,
qualities
:
qualities
.
map
((
item
)
=>
({
expireDay
:
item
.
expireDay
||
''
,
permanent
:
item
.
permanent
&&
item
.
permanent
[
0
]
||
0
,
url
:
item
.
file
&&
item
.
file
[
0
]
?
item
.
file
[
0
].
url
:
''
,
name
:
item
.
file
&&
item
.
file
[
0
]
?
item
.
file
[
0
].
name
:
''
,
})),
...
commonPayload
,
}).
then
(
res
=>
{
if
(
res
.
code
!==
1000
)
{
return
;
...
...
@@ -200,12 +227,7 @@ const MemberQueryApplyMember: React.FC = () => {
PublicApi
.
postMemberAbilityInfoDepositDetailUpdate
({
validateId
,
detail
:
step3
,
qualities
:
qualities
.
map
((
item
)
=>
({
expireDay
:
item
.
expireDay
||
''
,
permanent
:
item
.
permanent
&&
item
.
permanent
[
0
]
||
0
,
url
:
item
.
file
&&
item
.
file
[
0
]
?
item
.
file
[
0
].
url
:
''
,
name
:
item
.
file
&&
item
.
file
[
0
]
?
item
.
file
[
0
].
name
:
''
,
})),
...
commonPayload
,
}).
then
(
res
=>
{
if
(
res
.
code
!==
1000
)
{
return
;
...
...
@@ -320,7 +342,7 @@ const MemberQueryApplyMember: React.FC = () => {
previewPlaceholder=
" "
onSubmit=
{
handleSubmit
}
actions=
{
formActions
}
initialValues=
{
{}
}
initialValues=
{
memberInfo
}
components=
{
{
Checkbox
,
CheckboxGroup
:
Checkbox
.
Group
,
...
...
src/pages/member/memberQuery/detailed/archiveInfo.tsx
View file @
a0e25897
...
...
@@ -184,7 +184,7 @@ const MemberArchiveInfo = () => {
const
getAppraisalList
=
(
params
:
ParamsType
):
Promise
<
ReponseType
<
AppraisalListItemType
>>
=>
{
return
new
Promise
((
resolve
,
reject
)
=>
{
PublicApi
.
getMemberAbilityInfoD
a
tailAppraisalPage
({
PublicApi
.
getMemberAbilityInfoD
e
tailAppraisalPage
({
validateId
,
...
params
,
})
...
...
src/pages/member/utils.tsx
View file @
a0e25897
...
...
@@ -94,7 +94,7 @@ export function coverColFiltersItem(
}
};
type
FieldType
=
'string'
|
'long'
|
'upload'
|
'radio'
|
'select'
|
'checkbox'
|
'area'
;
export
type
FieldType
=
'string'
|
'long'
|
'upload'
|
'radio'
|
'select'
|
'checkbox'
|
'area'
|
string
&
{}
;
// 字段校验规则枚举:0-无校验规则,1-邮箱规则,2-手机号码规则,3-身份证规则,4-电话号码规则
const
RULE_REG_MAP
=
{
...
...
@@ -154,7 +154,6 @@ const getFieldType = (field: ElementType) => {
'x-component'
:
'RadioGroup'
,
enum
:
field
.
fieldEnum
,
'x-component-props'
:
{
showDesc
:
false
,
disabled
:
!!
field
.
disabled
,
},
};
...
...
@@ -163,6 +162,9 @@ const getFieldType = (field: ElementType) => {
case
'select'
:
{
description
=
{
enum
:
field
.
fieldEnum
,
'x-component-props'
:
{
disabled
:
!!
field
.
disabled
,
},
};
break
;
}
...
...
@@ -170,12 +172,18 @@ const getFieldType = (field: ElementType) => {
description
=
{
'x-component'
:
'CheckboxGroup'
,
enum
:
field
.
fieldEnum
,
'x-component-props'
:
{
disabled
:
!!
field
.
disabled
,
},
};
break
;
}
case
'area'
:
{
description
=
{
'x-component'
:
'AreaSelect'
,
'x-component-props'
:
{
disabled
:
!!
field
.
disabled
,
},
};
break
;
}
...
...
@@ -206,7 +214,7 @@ export function renderFieldTypeContent(fieldType: FieldType, fieldValue: any): R
case
'upload'
:
node
=
(
<
PicWrap
pics=
{
[
fieldValue
.
fieldValue
]
}
pics=
{
[
fieldValue
]
}
/>
);
break
;
...
...
src/pages/procurement/callForBids/callForBidsSearch/detail/index.tsx
View file @
a0e25897
...
...
@@ -30,27 +30,27 @@ const CallForBidsSearchDetail: React.FC = () => {
{
title
:
'流转记录'
,
id
:
'transferRecord'
,
componentName
:
"BidTransformRecord"
},
]
//
已经报名 才有报名信息
if
(
data
?.
inviteTenderOutStatus
<
BidOuterWorkState
.
Not_Submitted_Qualifications_Check
)
{
anchorTitleList
.
splice
(
5
,
1
)
}
//
// 已经报名 才有报名信息 @注释原因:无法通过状态判断
//
if(data?.inviteTenderOutStatus < BidOuterWorkState.Not_Submitted_Qualifications_Check) {
//
anchorTitleList.splice(5, 1)
//
}
// 已经资格预审 才有资格预审信息
if
(
data
?.
inviteTenderOutStatus
<
BidOuterWorkState
.
Not_Submit_Tender
&&
!
data
?.
isQualificationCheck
)
{
// anchorTitleList.splice(7, 1)
anchorTitleList
.
forEach
((
ele
,
index
)
=>
ele
[
'title'
]
===
'资格预审信息'
&&
anchorTitleList
.
splice
(
index
,
1
))
}
//
//
已经资格预审 才有资格预审信息
//
if(data?.inviteTenderOutStatus < BidOuterWorkState.Not_Submit_Tender && !data?.isQualificationCheck) {
//
// anchorTitleList.splice(7, 1)
//
anchorTitleList.forEach((ele, index) => ele['title'] === '资格预审信息' && anchorTitleList.splice(index, 1))
//
}
// 已经评标 才有评标报告
if
(
data
?.
inviteTenderOutStatus
<
BidOuterWorkState
.
Not_Finish_Notice
)
{
// anchorTitleList.splice(9, 1)
anchorTitleList
.
forEach
((
ele
,
index
)
=>
ele
[
'title'
]
===
'评标报告'
&&
anchorTitleList
.
splice
(
index
,
1
))
}
//
//
已经评标 才有评标报告
//
if(data?.inviteTenderOutStatus < BidOuterWorkState.Not_Finish_Notice) {
//
// anchorTitleList.splice(9, 1)
//
anchorTitleList.forEach((ele, index) => ele['title'] === '评标报告' && anchorTitleList.splice(index, 1))
//
}
// 已经完成招标 才有招标结果
if
(
data
?.
inviteTenderOutStatus
<
BidOuterWorkState
.
Finish_Invite_Tender
)
{
anchorTitleList
.
splice
(
-
2
,
1
)
}
//
//
已经完成招标 才有招标结果
//
if(data?.inviteTenderOutStatus < BidOuterWorkState.Finish_Invite_Tender) {
//
anchorTitleList.splice(-2, 1)
//
}
return
(
<
div
>
...
...
src/pages/procurement/callForBids/readyQualifityChecked/detail/index.tsx
View file @
a0e25897
...
...
@@ -139,15 +139,15 @@ const ReadyQualifityCheckedDetail: React.FC = () => {
<
div
id=
"transferProcess"
>
<
TransferProcess
cardTitle=
"流转进度"
customTitleKey=
'
operationalProcess
'
customKey=
'
state
'
outerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
.
data
?.
externalWorkflowFlowRecordLogResponses
||
[])
}
innerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
.
data
?.
interiorWorkflowFlowRecordLogResponses
||
[])
}
customTitleKey=
'
name
'
customKey=
'
id
'
outerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
?.
externalWorkflowFlowRecordLogResponses
||
[])
}
innerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
?.
interiorWorkflowFlowRecordLogResponses
||
[])
}
outerVerifySteps=
{
formContext
.
data
?.
externalWorkflowFlowRecordLogResponses
?
formContext
.
data
.
externalWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
formContext
?.
externalWorkflowFlowRecordLogResponses
?
formContext
.
externalWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
...
item
,
status
:
item
.
is
Execut
e
?
'finish'
:
'wait'
,
status
:
item
.
is
Activ
e
?
'finish'
:
'wait'
,
}))
:
[]
}
...
...
@@ -155,7 +155,7 @@ const ReadyQualifityCheckedDetail: React.FC = () => {
formContext
.
data
?.
interiorWorkflowFlowRecordLogResponses
?
formContext
.
data
.
interiorWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
...
item
,
status
:
item
.
is
Execut
e
?
'finish'
:
'wait'
,
status
:
item
.
is
Activ
e
?
'finish'
:
'wait'
,
}))
:
[]
}
...
...
src/pages/procurement/callForBids/tenderSearch/detail/index.tsx
View file @
a0e25897
...
...
@@ -26,10 +26,10 @@ const TenderSearchDetail: React.FC = () => {
{
title
:
'流转记录'
,
id
:
'transferRecord'
,
componentName
:
"BidTransformRecord"
},
]
//
没有完成的标 隐藏中标结果、中标明细
if
(
data
?.
inviteTender
?.
inviteTenderOutStatus
!==
BidOuterWorkState
.
Finish_Invite_Tender
)
{
anchorTitleList
.
splice
(
1
,
2
)
}
//
// 没有完成的标 隐藏中标结果、中标明细 @注释原因:无法通过状态判断
//
if(data?.inviteTender?.inviteTenderOutStatus !== BidOuterWorkState.Finish_Invite_Tender) {
//
anchorTitleList.splice(1, 2)
//
}
return
(
<
div
>
...
...
src/pages/procurement/components/descriptionsInfo/index.tsx
View file @
a0e25897
...
...
@@ -48,8 +48,8 @@ const DescriptionsInfo: React.FC<BasicInfoProps> = ({cardTitle, type}) => {
span
:
8
,
fieldList
:
[
{
title
:
'招标编号:'
,
name
:
'code'
},
{
title
:
'外部状态:'
,
name
:
'inviteTenderOutStatus
'
,
render
:
(
text
)
=>
BidOutStateTexts
[
text
]
},
{
title
:
'内部状态:'
,
name
:
'inviteTenderInStatus
'
,
render
:
(
text
)
=>
BidInStateTexts
[
text
]
},
{
title
:
'外部状态:'
,
name
:
'inviteTenderOutStatus
Value'
},
{
title
:
'内部状态:'
,
name
:
'inviteTenderInStatus
Value'
},
{
title
:
'发布时间:'
,
name
:
'createTime'
,
render
:
(
text
)
=>
formatTimeString
(
text
)
},
]
},
...
...
src/pages/procurement/constants/index.tsx
View file @
a0e25897
...
...
@@ -25,15 +25,15 @@ export const processLogResponses = (resData) => {
const
externalLogs
=
externalTasks
.
map
(
item
=>
({
id
:
item
.
taskStep
,
name
:
item
.
taskName
,
operationRole
:
item
.
us
erRoleName
,
isActive
:
item
.
taskStep
<
=
currentOuterStep
operationRole
:
item
.
memb
erRoleName
,
isActive
:
item
.
taskStep
<
currentOuterStep
}))
const
subTasks
=
externalTasks
.
filter
(
item
=>
item
.
taskStep
===
currentOuterStep
)
const
interiorLogs
=
subTasks
.
length
?
subTasks
[
0
][
'subTasks'
].
map
(
item
=>
({
id
:
item
.
taskStep
,
name
:
item
.
taskName
,
operationRole
:
item
.
userRoleName
,
isActive
:
item
.
taskStep
<=
currentInnerStep
isActive
:
currentInnerStep
===
0
?
true
:
(
item
.
taskStep
<
currentInnerStep
)
}))
:
null
return
{
interiorLogs
,
...
...
src/pages/procurement/tender/addBidRegister/schema/index.ts
View file @
a0e25897
...
...
@@ -157,7 +157,7 @@ export const formSchema: ISchema = {
type
:
'object'
,
'x-component'
:
'Mega-Layout'
,
'x-component-props'
:
{
label
:
'
注册手机
'
,
label
:
'
联系人电话
'
,
required
:
true
,
wrapperCol
:
24
,
className
:
"clearParentMargin"
...
...
@@ -218,7 +218,7 @@ export const formSchema: ISchema = {
type
:
'object'
,
'x-component'
:
'Mega-Layout'
,
'x-component-props'
:
{
label
:
'
投标单位
地址'
,
label
:
'地址'
,
required
:
true
,
wrapperCol
:
24
,
},
...
...
src/pages/procurement/tender/readyQualifityChecked/detail/index.tsx
View file @
a0e25897
...
...
@@ -176,23 +176,23 @@ const ReadyQualifityCheckedDetail: React.FC = () => {
<
div
id=
"transferProcess"
>
<
TransferProcess
cardTitle=
"流转进度"
customTitleKey=
'
operationalProcess
'
customKey=
'
state
'
outerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
.
data
?.
externalWorkflowFlowRecordLogResponses
||
[])
}
innerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
.
data
?.
interiorWorkflowFlowRecordLogResponses
||
[])
}
customTitleKey=
'
name
'
customKey=
'
id
'
outerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
?.
externalWorkflowFlowRecordLogResponses
||
[])
}
innerVerifyCurrent=
{
findLastIndexFlowState
(
formContext
?.
interiorWorkflowFlowRecordLogResponses
||
[])
}
outerVerifySteps=
{
formContext
.
data
?.
externalWorkflowFlowRecordLogResponses
?
formContext
.
data
.
externalWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
formContext
?.
externalWorkflowFlowRecordLogResponses
?
formContext
.
externalWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
...
item
,
status
:
item
.
is
Execut
e
?
'finish'
:
'wait'
,
status
:
item
.
is
Activ
e
?
'finish'
:
'wait'
,
}))
:
[]
}
innerVerifySteps=
{
formContext
.
data
?.
interiorWorkflowFlowRecordLogResponses
?
formContext
.
data
.
interiorWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
formContext
?.
interiorWorkflowFlowRecordLogResponses
?
formContext
.
interiorWorkflowFlowRecordLogResponses
.
map
(
item
=>
({
...
item
,
status
:
item
.
is
Execut
e
?
'finish'
:
'wait'
,
status
:
item
.
is
Activ
e
?
'finish'
:
'wait'
,
}))
:
[]
}
...
...
src/pages/transaction/components/TableModal/index.tsx
View file @
a0e25897
...
...
@@ -151,7 +151,7 @@ const TableModal: React.FC<Iprops> = (props: Iprops) => {
hideSelectAll
:
customizeRadio
,
}
}
formRender=
{
(
child
,
ps
)
=>
<
Row
justify=
'space-between'
style=
{
{
marginBottom
:
16
}
}
>
<
Col
s
pan=
{
18
}
s
tyle=
{
{
zIndex
:
99
}
}
>
{
child
}
</
Col
>
<
Col
style=
{
{
zIndex
:
99
}
}
>
{
child
}
</
Col
>
<
Col
style=
{
{
marginTop
:
4
}
}
>
{
ps
}
</
Col
>
</
Row
>
}
controlRender=
{
...
...
src/pages/transaction/confirmInquiryQuote/components/index.less
View file @
a0e25897
@import "../../../member/components/index.less";
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
\ No newline at end of file
// @import "../../../member/components/index.less";
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
src/pages/transaction/dealAbility/productInquiry/detail/index.tsx
View file @
a0e25897
...
...
@@ -98,7 +98,7 @@ const ProductInquiryDetail = () => {
{
label
:
'附件'
,
extra
:
<>
{
data
.
enclosureUrls
.
map
((
item
:
any
,
index
:
number
)
=>
(
{
data
.
enclosureUrls
&&
data
.
enclosureUrls
.
map
((
item
:
any
,
index
:
number
)
=>
(
<
Typography
.
Link
style=
{
{
display
:
'block'
,
paddingBottom
:
'8px'
}
}
key=
{
`link_${index + 1}`
}
...
...
src/pages/transaction/dealAbility/productInquiry/waitAddInquiry/components/basicInfo.tsx
View file @
a0e25897
...
...
@@ -6,6 +6,8 @@ import TableModal from '@/pages/transaction/components/TableModal';
import
{
PublicApi
}
from
'@/services/api'
;
import
style
from
'./index.less'
;
import
{
isEmpty
}
from
'@formily/shared'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
interface
BasicInfoLayoutProps
{
/** 获取询价会员 */
...
...
@@ -111,16 +113,41 @@ const BasicInfoLayout: React.FC<BasicInfoLayoutProps> = (props: any) => {
onClose=
{
()
=>
toggle
(
false
)
}
onOk=
{
handleLogisticOnOk
}
columns=
{
columns
}
effects=
{
(
$
,
actions
)
=>
{
actions
.
reset
()
useStateFilterSearchLinkageEffect
(
$
,
actions
,
"name"
,
FORM_FILTER_PATH
)
}
}
schema=
{
{
type
:
'object'
,
type
:
"object"
,
properties
:
{
name
:
{
type
:
'string'
,
"x-component"
:
'Search'
,
"x-component-props"
:
{
placeholder
:
'请输入会员名称'
,
advanced
:
false
megalayout
:
{
type
:
"object"
,
"x-component"
:
"mega-layout"
,
properties
:
{
name
:
{
type
:
"string"
,
"x-component"
:
"Search"
,
"x-mega-props"
:
{},
"x-component-props"
:
{
placeholder
:
"会员名称"
,
advanced
:
false
,
align
:
"flex-left"
,
}
}
}
},
[
FORM_FILTER_PATH
]:
{
type
:
"object"
,
"x-component"
:
"flex-layout"
,
"x-component-props"
:
{
rowStyle
:
{
justifyContent
:
"flex-start"
,
flexWrap
:
"nowrap"
},
colStyle
:
{
//改变间隔
marginRight
:
20
}
},
}
}
}
}
...
...
src/pages/transaction/dealAbility/productInquiry/waitAddInquiry/components/inquiryProduct.tsx
View file @
a0e25897
...
...
@@ -6,6 +6,8 @@ import { ColumnType } from 'antd/lib/table/interface';
import
TableModal
from
'@/pages/transaction/components/TableModal'
;
import
{
PublicApi
}
from
'@/services/api'
;
import
{
isEmpty
}
from
'lodash'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
interface
InquiryProductLayoutProps
{
/** 获得询价商品 */
...
...
@@ -133,7 +135,7 @@ const InquiryProductLayout: React.FC<InquiryProductLayoutProps> = (props: any) =
purchaseCount
:
1
,
logistics
:
v
.
logistics
,
memberId
:
v
.
memberId
,
memberRoleId
:
v
.
r
oleId
,
memberRoleId
:
v
.
memberR
oleId
,
imgUrl
:
v
.
mainPic
})
})
...
...
@@ -197,15 +199,82 @@ const InquiryProductLayout: React.FC<InquiryProductLayoutProps> = (props: any) =
onClose=
{
()
=>
toggle
(
false
)
}
onOk=
{
handleLogisticOnOk
}
columns=
{
productColumns
}
effects=
{
(
$
,
actions
)
=>
{
actions
.
reset
()
useStateFilterSearchLinkageEffect
(
$
,
actions
,
"name"
,
FORM_FILTER_PATH
)
}
}
schema=
{
{
type
:
'object'
,
type
:
"object"
,
properties
:
{
name
:
{
type
:
'string'
,
"x-component"
:
'Search'
,
megalayout
:
{
type
:
"object"
,
"x-component"
:
"mega-layout"
,
properties
:
{
name
:
{
type
:
"string"
,
"x-component"
:
"Search"
,
"x-mega-props"
:
{},
"x-component-props"
:
{
placeholder
:
"商品名称"
,
align
:
"flex-left"
,
}
}
}
},
[
FORM_FILTER_PATH
]:
{
type
:
"object"
,
"x-component"
:
"flex-layout"
,
"x-component-props"
:
{
placeholder
:
'请输入会员名称'
,
advanced
:
false
rowStyle
:
{
justifyContent
:
"flex-start"
,
flexWrap
:
"nowrap"
},
colStyle
:
{
//改变间隔
marginRight
:
20
}
},
properties
:
{
PRO_LAYOUT
:
{
type
:
"object"
,
"x-component"
:
"mega-layout"
,
"x-mega-props"
:
{
span
:
5
},
"x-component-props"
:
{
inline
:
true
},
properties
:
{
customerCategoryId
:
{
type
:
"string"
,
"x-component-props"
:
{
placeholder
:
"请选择品类"
,
style
:
{
width
:
160
}
},
enum
:
[]
},
brandId
:
{
type
:
"string"
,
"x-component-props"
:
{
placeholder
:
"请选择品牌"
,
style
:
{
width
:
160
}
},
enum
:
[]
},
}
},
sumbit
:
{
"x-component"
:
"Submit"
,
"x-mega-props"
:
{
span
:
1
},
"x-component-props"
:
{
children
:
"查询"
}
}
}
}
}
...
...
src/pages/transaction/demandPosts/components/index.less
View file @
a0e25897
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
.checkbox_wrap_style {
width: 100%;
:global {
.ant-checkbox-wrapper {
width: 100%;
border: 1px solid #ccc;
padding: 8px 18px;
.ant-checkbox {
display: none;
}
> span {
display: flex;
align-items: center;
padding: 0px 0px;
.checkbox_avatar {
width: 32px;
height: 32px;
margin-right: 8px;
}
}
}
.ant-checkbox-wrapper-checked {
border-color: #00b37a!important;
color: #00b37a;
position: relative;
&:after {
content: "";
position: absolute;
width: 12px;
height: 11px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAALCAYAAABLcGxfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAACwAAAAChLCZNAAAA6klEQVQoFWNgIAVsruliJkr9/1XMDCZqcxkY/mczEtSwv4GD4euvlQz/GfxAavFr2N3Bz/Dz8yaG///tYAbj1rC1QYLh/+8dQMX6MMW4bdjSoMTA8Gs30BlAGhUwoXKBvM21QBN/H0VWbMovzXDSOgOsFFXD1mo7Bsa/B5U5BSVgBoEUrzaOZMi5shkshAjWLTWgUNgINJlnh1k8AysTEzhEQIpDzy5nOP3xKVgDxNNbqxIY/jHMAYqADRBi5WTYY5HEIMbGzRB4ZilcMUgHI8PWqlKg4i6wdiRCgIWDQYSNi+HOt3dIogwMANgLQif9hMeFAAAAAElFTkSuQmCC);
right: 0;
bottom: 0;
}
}
}
}
@import "../../../member/components/index.less";
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
.checkbox_wrap_style {
width: 100%;
:global {
.ant-checkbox-wrapper {
width: 100%;
border: 1px solid #ccc;
padding: 8px 18px;
.ant-checkbox {
display: none;
}
> span {
display: flex;
align-items: center;
padding: 0px 0px;
.checkbox_avatar {
width: 32px;
height: 32px;
margin-right: 8px;
}
}
}
.ant-checkbox-wrapper-checked {
border-color: #00b37a!important;
color: #00b37a;
position: relative;
&:after {
content: "";
position: absolute;
width: 12px;
height: 11px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAALCAYAAABLcGxfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAADKADAAQAAAABAAAACwAAAAChLCZNAAAA6klEQVQoFWNgIAVsruliJkr9/1XMDCZqcxkY/mczEtSwv4GD4euvlQz/GfxAavFr2N3Bz/Dz8yaG///tYAbj1rC1QYLh/+8dQMX6MMW4bdjSoMTA8Gs30BlAGhUwoXKBvM21QBN/H0VWbMovzXDSOgOsFFXD1mo7Bsa/B5U5BSVgBoEUrzaOZMi5shkshAjWLTWgUNgINJlnh1k8AysTEzhEQIpDzy5nOP3xKVgDxNNbqxIY/jHMAYqADRBi5WTYY5HEIMbGzRB4ZilcMUgHI8PWqlKg4i6wdiRCgIWDQYSNi+HOt3dIogwMANgLQif9hMeFAAAAAElFTkSuQmCC);
right: 0;
bottom: 0;
}
}
}
}
// @import "../../../member/components/index.less";
src/pages/transaction/enquiryOffer/components/index.less
View file @
a0e25897
@import "../../../member/components/index.less";
.count{
font-size: 24px;
color: #303133;
font-weight: 500;
}
.add-btn{
margin-bottom: 24px;
padding: 6px 0;
text-align: center;
background: #FAFBFC;
}
.alignCenter{
text-align: center;
}
.alignLeft{
text-align: left;
}
.hidden{
display: none;
}
.block{
display: block;
}
.selectBtn {
margin: 0 16px;
}
.filter-btn{
width : 112px;
margin: 0 0 0 16px;
}
.select {
width : 160px;
&:nth-last-of-type(1) {
margin-right: 0;
}
}
.mainCol {
background-color: #fff;
margin-bottom : 24px;
padding : 0 24px;
box-sizing : border-box;
&-title {
font-size : 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color : #303133;
padding : 20px 0;
}
&:nth-last-of-type(1) {
margin: 0;
}
&-row {
display : flex;
flex-wrap : wrap;
padding-bottom: 16px;
&-col {
display: flex;
width : calc(100% / 3);
padding: 16px 0;
&-option {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
&-rows {
display : flex;
padding-bottom: 16px;
&-cols {
flex: 1;
.cols-main {
display: flex;
padding: 16px 0;
&:nth-last-of-type(1) {
padding-bottom: 0;
}
&-options {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
}
}
\ No newline at end of file
// @import "../../../member/components/index.less";
.count{
font-size: 24px;
color: #303133;
font-weight: 500;
}
.add-btn{
margin-bottom: 24px;
padding: 6px 0;
text-align: center;
background: #FAFBFC;
}
.alignCenter{
text-align: center;
}
.alignLeft{
text-align: left;
}
.hidden{
display: none;
}
.block{
display: block;
}
.selectBtn {
margin: 0 16px;
}
.filter-btn{
width : 112px;
margin: 0 0 0 16px;
}
.select {
width : 160px;
&:nth-last-of-type(1) {
margin-right: 0;
}
}
.mainCol {
background-color: #fff;
margin-bottom : 24px;
padding : 0 24px;
box-sizing : border-box;
&-title {
font-size : 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color : #303133;
padding : 20px 0;
}
&:nth-last-of-type(1) {
margin: 0;
}
&-row {
display : flex;
flex-wrap : wrap;
padding-bottom: 16px;
&-col {
display: flex;
width : calc(100% / 3);
padding: 16px 0;
&-option {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
&-rows {
display : flex;
padding-bottom: 16px;
&-cols {
flex: 1;
.cols-main {
display: flex;
padding: 16px 0;
&:nth-last-of-type(1) {
padding-bottom: 0;
}
&-options {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
}
}
src/pages/transaction/enquiryOffer/enquirySearch/index.less
View file @
a0e25897
@import "../../../member/components/index.less";
.count{
font-size: 24px;
color: #303133;
font-weight: 500;
}
.add-btn{
margin-bottom: 24px;
padding: 6px 0;
text-align: center;
background: #FAFBFC;
}
.alignCenter{
text-align: center;
}
.alignLeft{
text-align: left;
}
.hidden{
display: none;
}
.block{
display: block;
}
.selectBtn {
margin: 0 16px;
}
.filter-btn{
width : 112px;
margin: 0 0 0 16px;
}
.select {
width : 160px;
&:nth-last-of-type(1) {
margin-right: 0;
}
}
.mainCol {
background-color: #fff;
margin-bottom : 24px;
padding : 0 24px;
box-sizing : border-box;
&-title {
font-size : 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color : #303133;
padding : 20px 0;
}
&:nth-last-of-type(1) {
margin: 0;
}
&-row {
display : flex;
flex-wrap : wrap;
padding-bottom: 16px;
&-col {
display: flex;
width : calc(100% / 3);
padding: 16px 0;
&-option {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
&-rows {
display : flex;
padding-bottom: 16px;
&-cols {
flex: 1;
.cols-main {
display: flex;
padding: 16px 0;
&:nth-last-of-type(1) {
padding-bottom: 0;
}
&-options {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
}
}
\ No newline at end of file
// @import "../../../member/components/index.less";
.count{
font-size: 24px;
color: #303133;
font-weight: 500;
}
.add-btn{
margin-bottom: 24px;
padding: 6px 0;
text-align: center;
background: #FAFBFC;
}
.alignCenter{
text-align: center;
}
.alignLeft{
text-align: left;
}
.hidden{
display: none;
}
.block{
display: block;
}
.selectBtn {
margin: 0 16px;
}
.filter-btn{
width : 112px;
margin: 0 0 0 16px;
}
.select {
width : 160px;
&:nth-last-of-type(1) {
margin-right: 0;
}
}
.mainCol {
background-color: #fff;
margin-bottom : 24px;
padding : 0 24px;
box-sizing : border-box;
&-title {
font-size : 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color : #303133;
padding : 20px 0;
}
&:nth-last-of-type(1) {
margin: 0;
}
&-row {
display : flex;
flex-wrap : wrap;
padding-bottom: 16px;
&-col {
display: flex;
width : calc(100% / 3);
padding: 16px 0;
&-option {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
&-rows {
display : flex;
padding-bottom: 16px;
&-cols {
flex: 1;
.cols-main {
display: flex;
padding: 16px 0;
&:nth-last-of-type(1) {
padding-bottom: 0;
}
&-options {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
}
}
src/pages/transaction/enquiryOfferConfirm/components/index.less
View file @
a0e25897
@import "../../../member/components/index.less";
.count{
font-size: 24px;
color: #303133;
font-weight: 500;
}
.add-btn{
margin-bottom: 24px;
padding: 6px 0;
text-align: center;
background: #FAFBFC;
}
.alignCenter{
text-align: center;
}
.alignLeft{
text-align: left;
}
.hidden{
display: none;
}
.block{
display: block;
}
.selectBtn {
margin: 0 16px;
}
.filter-btn{
width : 112px;
margin: 0 0 0 16px;
}
.select {
width : 160px;
&:nth-last-of-type(1) {
margin-right: 0;
}
}
.mainCol {
background-color: #fff;
margin-bottom : 24px;
padding : 0 24px;
box-sizing : border-box;
&-title {
font-size : 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color : #303133;
padding : 20px 0;
}
&:nth-last-of-type(1) {
margin: 0;
}
&-row {
display : flex;
flex-wrap : wrap;
padding-bottom: 16px;
&-col {
display: flex;
width : calc(100% / 3);
padding: 16px 0;
&-option {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
&-rows {
display : flex;
padding-bottom: 16px;
&-cols {
flex: 1;
.cols-main {
display: flex;
padding: 16px 0;
&:nth-last-of-type(1) {
padding-bottom: 0;
}
&-options {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
}
}
\ No newline at end of file
// @import "../../../member/components/index.less";
.count{
font-size: 24px;
color: #303133;
font-weight: 500;
}
.add-btn{
margin-bottom: 24px;
padding: 6px 0;
text-align: center;
background: #FAFBFC;
}
.alignCenter{
text-align: center;
}
.alignLeft{
text-align: left;
}
.hidden{
display: none;
}
.block{
display: block;
}
.selectBtn {
margin: 0 16px;
}
.filter-btn{
width : 112px;
margin: 0 0 0 16px;
}
.select {
width : 160px;
&:nth-last-of-type(1) {
margin-right: 0;
}
}
.mainCol {
background-color: #fff;
margin-bottom : 24px;
padding : 0 24px;
box-sizing : border-box;
&-title {
font-size : 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color : #303133;
padding : 20px 0;
}
&:nth-last-of-type(1) {
margin: 0;
}
&-row {
display : flex;
flex-wrap : wrap;
padding-bottom: 16px;
&-col {
display: flex;
width : calc(100% / 3);
padding: 16px 0;
&-option {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
&-rows {
display : flex;
padding-bottom: 16px;
&-cols {
flex: 1;
.cols-main {
display: flex;
padding: 16px 0;
&:nth-last-of-type(1) {
padding-bottom: 0;
}
&-options {
flex : 1;
font-size : 14px;
font-family: PingFangSC-Regular, PingFang SC;
font-weight: 400;
color : #909399;
&:nth-last-of-type(1) {
flex : 3;
padding-right: 20px;
box-sizing : border-box;
color : #303133;
}
}
}
}
}
}
src/pages/transaction/goodsOffer/components/index.less
View file @
a0e25897
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
@import "../../../member/components/index.less";
\ No newline at end of file
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
// @import "../../../member/components/index.less";
src/pages/transaction/inquiryQuote/components/index.less
View file @
a0e25897
@import "../../../member/components/index.less";
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
\ No newline at end of file
// @import "../../../member/components/index.less";
.item_wrap {
margin-bottom: 24px;
background-color: #FFF;
border-radius: 8px;
padding: 24px;
&:last-child {
margin-bottom: 0px;
}
.mainCol_title {
font-size: 16px;
font-family: PingFangSC-Medium, PingFang SC;
font-weight: 500;
color: #303133;
padding: 0px 0 20px;
}
:global {
.ant-tabs-nav {
&::before {
border-bottom-color: #FFF;
}
}
}
}
.header {
:global {
.ant-page-header {
padding: 24px 24px !important;
}
}
}
.upload_item {
width: 498px;
padding: 5px 8px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: space-between;
background-color: #FAFBFC;
.upload_left {
display: flex;
align-items: center;
color: #00B37A;
cursor: pointer;
:global {
.anticon-link {
color: #00B37A;
font-size: 16px;
margin-right: 8px;
}
}
}
}
src/pages/transaction/purchaseOrder/orderCollect/components/materialModalTable/index.tsx
View file @
a0e25897
...
...
@@ -64,9 +64,9 @@ export const materialColumns: any[] = [
},
{
title
:
'供方库存'
,
dataIndex
:
'
bidCount
'
,
dataIndex
:
'
supplierInventory
'
,
align
:
'center'
,
key
:
'
bidCount
'
key
:
'
supplierInventory
'
},
]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment