Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in
Toggle navigation
M
mes-kanban
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
ximai
mes-kanban
Commits
a749ec69
Commit
a749ec69
authored
Nov 20, 2024
by
沈翠玲
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
临时提交第三个看板
parent
0caeee7d
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
122 additions
and
179 deletions
+122
-179
kanban.ts
src/locales/th-TH/kanban.ts
+2
-1
menu.ts
src/locales/th-TH/menu.ts
+1
-1
kanban.ts
src/locales/zh-CN/kanban.ts
+2
-1
menu.ts
src/locales/zh-CN/menu.ts
+1
-1
index.tsx
...s/kanban/ProductProgress/components/SettingForm/index.tsx
+1
-1
index.tsx
...ban/ProductionProgress/components/ProgressTable/index.tsx
+37
-91
index.tsx
...anban/ProductionProgress/components/SettingForm/index.tsx
+47
-31
index.tsx
src/pages/kanban/ProductionProgress/index.tsx
+15
-30
api.ts
src/pages/kanban/ProductionProgress/services/api.ts
+15
-2
index.tsx
...an/paintingProcessKanban/components/SettingForm/index.tsx
+1
-20
No files found.
src/locales/th-TH/kanban.ts
View file @
a749ec69
...
...
@@ -53,7 +53,8 @@ export default {
'原因'
:
'เหตุผล'
,
'状态'
:
'สถานะ'
,
'产线选择'
:
'การเลือกสายการผลิต'
,
'日产出'
:
'นิสสัน'
'日产出'
:
'นิสสัน'
,
'生产计划看板'
:
'แผนการผลิต Kanban'
}
;
\ No newline at end of file
src/locales/th-TH/menu.ts
View file @
a749ec69
...
...
@@ -9,7 +9,7 @@ export default {
'menu.common.pwd'
:
'เปลี่ยนรหัสผ่าน'
,
'menu.kanban'
:
'กระดาน'
,
'menu.kanban.jiejingProduction'
:
'กระดานความคืบหน้าการผลิตที่สะอาด'
,
'menu.kanban.productionProgressKanban'
:
'
กระดานความคืบหน้าการผลิต
'
,
'menu.kanban.productionProgressKanban'
:
'
แผนการผลิต Kanban
'
,
'menu.kanban.productionComprehensKanban'
:
'กระดานการผลิตรวม'
,
'menu.kanban.deviceStatusKanban'
:
'การผลิตอุปกรณ์ที่ครอบคลุมของวัน Kanban'
,
'menu.kanban.materialSynthesisKanban'
:
'กระดานสังเคราะห์วัสดุ'
,
...
...
src/locales/zh-CN/kanban.ts
View file @
a749ec69
...
...
@@ -53,6 +53,7 @@ export default {
'原因'
:
'原因'
,
'状态'
:
'状态'
,
'产线选择'
:
'产线选择'
,
'日产出'
:
'日产出'
'日产出'
:
'日产出'
,
'生产计划看板'
:
'生产计划看板'
};
\ No newline at end of file
src/locales/zh-CN/menu.ts
View file @
a749ec69
...
...
@@ -9,7 +9,7 @@ export default {
'menu.common.pwd'
:
'修改密码'
,
'menu.kanban'
:
'看板'
,
'menu.kanban.jiejingProduction'
:
'洁净生产进度看板'
,
'menu.kanban.productionProgressKanban'
:
'生产
进度
看板'
,
'menu.kanban.productionProgressKanban'
:
'生产
计划
看板'
,
'menu.kanban.productionComprehensKanban'
:
'生产综合看板'
,
'menu.kanban.deviceStatusKanban'
:
'当日设备生产综合看板'
,
'menu.kanban.materialSynthesisKanban'
:
'物料综合看板'
,
...
...
src/pages/kanban/ProductProgress/components/SettingForm/index.tsx
View file @
a749ec69
...
...
@@ -9,7 +9,7 @@ export type Setting = {
autoResize
:
boolean
;
intervalTime
:
number
;
rowMovingTime
:
number
;
productProgressKanbanSetting
?:
ProductProgressKanbanSett
ing
;
lineName
:
str
ing
;
};
export
type
SettingFormProps
=
{
...
...
src/pages/kanban/ProductionProgress/components/ProgressTable/index.tsx
View file @
a749ec69
...
...
@@ -13,18 +13,39 @@ type ProductionProgressKanbanData = KANBAN.ProductionProgress.ProductionProgress
type
ProductionProgressKanbanSetting
=
KANBAN
.
ProductionProgress
.
ProductionProgressKanbanSetting
;
type
ProgressTableProps
=
{
setting
:
ProductionProgressKanbanSett
ing
;
lineName
:
str
ing
;
data
:
ProductionProgressKanbanData
[];
conditionKey
:
string
;
rowMovingTime
:
number
;
};
const
ProgressTable
:
React
.
FC
<
ProgressTableProps
>
=
({
setting
,
lineName
,
data
,
conditionKey
,
rowMovingTime
,
})
=>
{
data
=
{
"taskPlanDayList"
:
[
{
"productList"
:
[
{
"itemCode"
:
""
,
"planQuantity"
:
""
,
"processList"
:
[
{
"processName"
:
""
,
"qualifiedRate"
:
0
,
"qualifyQuantity"
:
0
,
"reportQuantity"
:
0
}
]
}
],
"startDate"
:
""
}
]
}
const
rowHight
=
60
;
const
displayCount
=
13
;
...
...
@@ -33,19 +54,6 @@ const ProgressTable: React.FC<ProgressTableProps> = ({
const
[
lastConditionKey
,
setLastConditionKey
]
=
useState
(
''
);
const
[
pause
,
setPause
]
=
useState
(
false
);
const
[
scollOnce
,
setScollOnce
]
=
useState
(
false
);
//去掉步骤中的重复步骤名
let
tempStepName
=
''
;
setting
.
progress
.
steps
=
setting
.
progress
.
steps
.
filter
((
s
)
=>
{
if
(
tempStepName
==
s
.
name
)
{
return
false
;
}
tempStepName
=
s
.
name
;
return
true
;
});
const
row_segment2_section_width
=
useMemo
(
()
=>
(
100
/
setting
.
progress
.
steps
.
length
).
toFixed
(
4
)
+
'%'
,
[
setting
],
);
const
updateDisplayData
=
(
da
:
number
,
sData
:
ProductionProgressKanbanData
[])
=>
{
let
endAt1
=
da
+
displayCount
;
...
...
@@ -93,47 +101,14 @@ const ProgressTable: React.FC<ProgressTableProps> = ({
};
},
[
rowMovingTime
,
scoll
]);
const
[
isModalOpen
,
setIsModalOpen
]
=
useState
(
false
);
const
[
isModalOpen2
,
setIsModalOpen2
]
=
useState
(
false
);
const
[
criteria
,
setCriteria
]
=
useState
({}
as
ErrorDetailCriteria
);
const
closeModal
=
()
=>
setIsModalOpen
(
false
);
const
closeModal2
=
()
=>
setIsModalOpen2
(
false
);
const
[
productionDetailParams
,
setProductionDetailParams
]
=
useState
({
kanbanSettingId
:
''
,
aufnr
:
''
,
processName
:
''
,
});
const
openModal
=
(
data
,
step
)
=>
{
if
(
!
setting
.
id
)
return
;
if
(
data
.
stepData
.
length
)
{
setProductionDetailParams
({
kanbanSettingId
:
setting
.
id
,
aufnr
:
data
.
aufnr
,
processName
:
step
.
name
,
});
setIsModalOpen
(
true
);
}
};
const
openModal2
=
(
zgh
:
string
)
=>
{
setCriteria
({
workshopName
:
''
,
zgh
:
zgh
,
status
:
'1,2,3,4,5'
,
createdDateFrom
:
moment
()
.
date
(
1
)
.
hour
(
0
)
.
minute
(
0
)
.
second
(
0
)
.
millisecond
(
0
)
.
format
(
'YYYY-MM-DD HH:mm'
),
createdDateTo
:
moment
().
format
(
'YYYY-MM-DD HH:mm'
),
current
:
1
,
pageSize
:
10
,
});
if
(
!
setting
.
id
)
return
;
setIsModalOpen2
(
true
);
};
useEffect
(()
=>
{
if
(
scollOnce
)
{
...
...
@@ -149,25 +124,17 @@ const ProgressTable: React.FC<ProgressTableProps> = ({
<
div
className=
{
`${styles.row_segment1_section1} ${styles.no_top_border} ${styles.no_left_border}`
}
>
<
div
className=
{
styles
.
cell
}
>
施工号
</
div
>
<
div
className=
{
styles
.
cell
}
>
日期
</
div
>
</
div
>
<
div
className=
{
`${styles.row_segment1_section2} ${styles.no_top_border}`
}
>
<
div
className=
{
styles
.
cell
}
>
数量
</
div
>
<
div
className=
{
styles
.
cell
}
>
产品
</
div
>
</
div
>
<
div
className=
{
`${styles.row_segment1_section2} ${styles.no_top_border}`
}
>
<
div
className=
{
styles
.
cell
}
>
计划数
</
div
>
</
div
>
<
div
className=
{
`${styles.row_segment1_section2} ${styles.no_top_border} ${styles.no_right_border}`
}
>
<
div
className=
{
styles
.
cell
}
>
工序
</
div
>
</
div
>
</
div
>
<
div
className=
{
styles
.
row_segment2
}
>
{
setting
.
progress
.
steps
.
map
((
step
,
i
)
=>
(
<
div
className=
{
`${styles.row_section} ${styles.no_top_border} `
+
(
i
+
1
===
setting
.
progress
.
steps
.
length
&&
styles
.
no_right_border
)
}
style=
{
{
width
:
row_segment2_section_width
}
}
key=
{
step
.
code
}
>
<
div
className=
{
styles
.
cell
}
>
{
step
.
name
}
</
div
>
</
div
>
))
}
</
div
>
</
div
>
<
NodeGroup
...
...
@@ -215,53 +182,32 @@ const ProgressTable: React.FC<ProgressTableProps> = ({
opacity
:
node
.
state
.
opacity
,
}
}
>
<
div
className=
{
styles
.
row_segment1
}
>
{
/*
<div className={styles.row_segment1}>
<div
className={styles.row_segment1_section1}
onClick=
{
()
=>
openModal2
(
node
.
data
[
setting
.
sgNoSourceType
.
code
])
}
>
<
div
className=
{
styles
.
cell
}
>
{
node
.
data
[
setting
.
sgNoSourceType
.
code
]
}
</
div
>
<div className={styles.cell}>{node.data[
lineName
.sgNoSourceType.code]}</div>
</div>
<div className={styles.row_segment1_section2}>
<div className={styles.cell}>{node.data.planQuantity}</div>
</div>
</div>
<div className={styles.row_segment2}>
{
setting
.
progress
.
steps
.
map
((
step
)
=>
(
{
lineName
.progress.steps.map((step) => (
<div
className={styles.row_section}
style={{ width: row_segment2_section_width }}
key={step.code}
onClick=
{
()
=>
openModal
(
node
.
data
,
step
)
}
>
<
StepCell
step=
{
step
}
data=
{
node
.
data
}
setting=
{
setting
}
/>
<StepCell step={step} data={node.data}
lineName={lineName
} />
</div>
))}
</
div
>
</div>
*/
}
</
div
>
))
}
</
div
>
)
}
</
NodeGroup
>
<
Modal
title=
{
'批次完工'
}
visible=
{
isModalOpen
}
footer=
{
null
}
width=
{
'70%'
}
onCancel=
{
closeModal
}
>
<
ProductionDetail
params=
{
productionDetailParams
}
/>
</
Modal
>
<
Modal
title=
{
'生产异常'
}
visible=
{
isModalOpen2
}
footer=
{
null
}
width=
{
'70%'
}
onCancel=
{
closeModal2
}
>
<
ProductionAbnormal
values=
{
criteria
}
/>
</
Modal
>
</
div
>
);
};
...
...
src/pages/kanban/ProductionProgress/components/SettingForm/index.tsx
View file @
a749ec69
import
React
,
{
useRef
,
useState
}
from
'react'
;
import
{
DrawerForm
,
ProFormCheckbox
,
ProFormDigit
,
ProFormSelect
}
from
'@ant-design/pro-form'
;
import
{
useIntl
}
from
'umi'
;
import
ProForm
,
{
DrawerForm
,
ProFormCheckbox
,
ProFormDigit
,
ProFormRadio
,
ProFormSelect
,
}
from
'@ant-design/pro-form'
;
import
type
{
ProFormInstance
}
from
'@ant-design/pro-form'
;
import
{
queryProductionProgressKanbanSetting
}
from
'../../services/api'
;
import
{
queryProductionComprehensKanbanData
}
from
'../../services/api'
;
type
KanbanSetting
=
KANBAN
.
ProductionComprehens
.
ProductionComprehensKanbanDataDto
;
type
ProductionProgressKanbanSetting
=
KANBAN
.
ProductionProgress
.
ProductionProgressKanbanSetting
;
type
FormSettingDto
=
{
autoResize
:
boolean
;
intervalTime
:
number
;
rowMovingTime
:
number
;
dataRange
:
number
;
planSource
:
number
;
productionComprehensKanbanSettingId
:
string
;
};
export
type
Setting
=
{
autoResize
:
boolean
;
intervalTime
:
number
;
rowMovingTime
:
number
;
productionProgressKanbanSetting
?:
ProductionProgressKanbanSetting
;
dataRange
:
number
;
planSource
:
number
;
lineName
?:
string
;
};
export
type
SettingFormProps
=
{
...
...
@@ -21,43 +38,40 @@ export type SettingFormProps = {
const
SettingForm
:
React
.
FC
<
SettingFormProps
>
=
(
props
)
=>
{
const
formRef
=
useRef
<
ProFormInstance
>
();
const
[
productionProgressKanbanSettings
,
setProductionProgressKanbanSettings
]
=
useState
<
ProductionProgressKanbanSetting
[]
const
intl
=
useIntl
();
const
[
lineName
,
setLineName
]
=
useState
<
KanbanSetting
[]
>
([]);
return
(
<
DrawerForm
formRef=
{
formRef
}
title=
"设置"
title=
{
intl
.
formatMessage
({
id
:
'设置'
})
}
width=
{
600
}
submitter=
{
{
searchConfig
:
{
resetText
:
intl
.
formatMessage
({
id
:
'取消'
}),
submitText
:
intl
.
formatMessage
({
id
:
'确认'
}),
}
}
}
visible=
{
props
.
visible
}
onVisibleChange=
{
(
visible
:
boolean
)
=>
{
if
(
visible
)
{
formRef
?.
current
?.
setFieldsValue
({
...
props
.
values
,
productionProgressKanbanSettingId
:
props
.
values
.
productionProgressKanbanSetting
?.
id
,
...
props
.
values
});
}
props
.
onVisibleChange
(
visible
);
}
}
onFinish=
{
async
(
values
:
{
autoResize
:
boolean
;
intervalTime
:
number
;
rowMovingTime
:
number
;
productionProgressKanbanSettingId
:
string
;
})
=>
{
const
productionProgressKanbanSetting
=
productionProgressKanbanSettings
.
filter
((
a
)
=>
a
.
id
===
values
.
productionProgressKanbanSettingId
)
.
pop
();
productionProgressKanbanSetting
?.
progress
.
steps
.
sort
((
a
,
b
)
=>
a
.
ordinal
-
b
.
ordinal
);
props
.
onSubmitting
({
...
values
,
productionProgressKanbanSetting
});
onFinish=
{
async
(
values
:
FormSettingDto
)
=>
{
props
.
onSubmitting
({
...
values
});
props
.
onVisibleChange
(
false
);
}
}
>
<
ProFormCheckbox
name=
"autoResize"
label=
"适配窗口"
width=
"xl"
/>
<
ProFormCheckbox
name=
"autoResize"
label=
{
intl
.
formatMessage
({
id
:
'适配窗口'
})
}
width=
"xl"
/>
<
ProFormDigit
name=
"intervalTime"
label=
"刷新时间间隔(秒)"
label=
{
intl
.
formatMessage
({
id
:
'刷新时间间隔(秒)'
})
}
required
width=
"xl"
min=
{
10
}
...
...
@@ -65,24 +79,26 @@ const SettingForm: React.FC<SettingFormProps> = (props) => {
/>
<
ProFormDigit
name=
"rowMovingTime"
label=
"内容滚动(秒)"
label=
{
intl
.
formatMessage
({
id
:
'内容滚动(秒)'
})
}
required
width=
"xl"
min=
{
1
}
fieldProps=
{
{
precision
:
0
}
}
/>
<
ProFormSelect
name=
"
productionProgressKanbanSettingId
"
label=
"看板设置"
name=
"
lineName
"
label=
{
intl
.
formatMessage
({
id
:
'产线选择'
})
}
required
width=
"xl"
request=
{
async
()
=>
{
const
data
=
await
queryProductionProgressKanbanSetting
();
setProductionProgressKanbanSettings
(
data
);
return
data
.
map
((
a
)
=>
({
label
:
`${a.werks}-${a.fevor}-${a.subTitle1}-${a.subTitle2}`
,
value
:
a
.
id
,
}));
const
{
data
}
=
await
queryProductionComprehensKanbanData
();
if
(
Array
.
isArray
(
data
))
{
data
.
unshift
(
intl
.
formatMessage
({
id
:
'全厂'
}))
}
setLineName
(
data
);
return
data
.
map
((
a
)
=>
({
label
:
a
,
value
:
a
}));
}
}
/>
</
DrawerForm
>
...
...
src/pages/kanban/ProductionProgress/index.tsx
View file @
a749ec69
...
...
@@ -7,15 +7,19 @@ import Crust1 from '../components/FHD1080P/Crust1';
import
ProgressTable
from
'./components/ProgressTable'
;
import
{
queryProductionProgressKanbanData
}
from
'./services/api'
;
import
moment
from
'moment'
;
import
{
useIntl
}
from
'umi'
;
type
ProductionProgressKanbanData
=
KANBAN
.
ProductionProgress
.
ProductionProgressKanbanDataDto
;
const
Main
:
React
.
FC
=
()
=>
{
const
intl
=
useIntl
();
const
[
setting
,
setSetting
]
=
useState
<
Setting
>
({
autoResize
:
true
,
intervalTime
:
600
,
rowMovingTime
:
5
,
productionProgressKanbanSetting
:
undefined
,
lineName
:
intl
.
formatMessage
({
id
:
'全厂'
}),
});
const
[
conditionKey
,
setConditionKey
]
=
useState
(
''
);
...
...
@@ -23,22 +27,15 @@ const Main: React.FC = () => {
const
[
settingFormVisible
,
setSettingFormVisible
]
=
useState
(
false
);
useEffect
(()
=>
{
const
{
intervalTime
,
productionProgressKanbanSetting
}
=
setting
;
if
(
!!!
productionProgressKanbanSetting
)
{
setConditionKey
(
Date
.
now
().
toString
());
setData
([]);
return
;
}
const
{
intervalTime
}
=
setting
;
let
changeConditionKey
=
true
;
const
refresh
=
()
=>
{
const
now
=
Date
.
now
();
const
gstrpFrom
=
moment
(
now
).
startOf
(
'month'
);
const
gstrpTo
=
moment
(
now
).
endOf
(
'month'
);
queryProductionProgressKanbanData
({
productionProgressKanbanSettingId
:
productionProgressKanbanSetting
.
id
,
gstrpFrom
:
gstrpFrom
.
format
(
'YYYY-MM-DD HH:mm:ss'
),
gstrpTo
:
gstrpTo
.
format
(
'YYYY-MM-DD HH:mm:ss'
),
lineName
:
setting
?.
lineName
===
intl
.
formatMessage
({
id
:
'全厂'
})
?
null
:
setting
?.
lineName
})
.
then
((
value
)
=>
{
setData
(
value
.
data
);
...
...
@@ -61,27 +58,15 @@ const Main: React.FC = () => {
return
(
<>
<
KanbanStyle
headerText=
"生产进度看板"
subTitle=
{
setting
.
productionProgressKanbanSetting
?.
subTitle1
}
headerText=
{
intl
.
formatMessage
({
id
:
'生产计划看板'
})
}
subTitle=
{
setting
?.
lineName
}
autoResize=
{
setting
.
autoResize
}
onHeaderClick=
{
()
=>
{
setSettingFormVisible
(
true
);
}
}
>
<
div
className=
{
styles
.
main
}
>
<
div
className=
{
styles
.
title
}
>
<
div
className=
{
styles
.
title_left
}
>
<
div
className=
{
setting
.
productionProgressKanbanSetting
?.
subTitle2
?
styles
.
title_left_legend
:
styles
.
title_left_legend_hidden
}
/>
<
div
className=
{
styles
.
title_left_text
}
>
{
setting
.
productionProgressKanbanSetting
?.
subTitle2
}
</
div
>
</
div
>
{
/* <div className={styles.title}>
<div className={styles.title_center} />
<div className={styles.title_right}>
<div className={styles.itle_right_legend_intime} />
...
...
@@ -91,13 +76,13 @@ const Main: React.FC = () => {
<div className={styles.itle_right_legend_outtime} />
<div className={styles.title_right_text}>超期一天以上完成</div>
</div>
</
div
>
</div>
*/
}
<
div
className=
{
styles
.
content
}
>
<
Crust1
className=
{
styles
.
crust
}
>
<
div
className=
{
styles
.
content_usable
}
>
{
setting
.
productionProgressKanbanSetting
&&
(
{
setting
.
lineName
&&
(
<
ProgressTable
setting=
{
setting
.
productionProgressKanbanSetting
}
lineName=
{
setting
.
lineName
}
data=
{
data
}
conditionKey=
{
conditionKey
}
rowMovingTime=
{
setting
.
rowMovingTime
}
...
...
src/pages/kanban/ProductionProgress/services/api.ts
View file @
a749ec69
...
...
@@ -8,7 +8,8 @@ type ProductionProgressKanbanDataDto = KANBAN.ProductionProgress.ProductionProgr
type
ProductionProgressKanbanDataCriteria
=
KANBAN
.
ProductionProgress
.
ProductionProgressKanbanDataCriteria
;
type
ProductionProgressKanbanSetting
=
KANBAN
.
ProductionProgress
.
ProductionProgressKanbanSetting
;
type
ProductionComprehensKanbanDataDto
=
KANBAN
.
ProductionComprehens
.
ProductionComprehensKanbanDataDto
;
const
productionProgressKanbanSettingGraphqlString
=
'query{productionProgressKanbanSetting{id,subTitle1,subTitle2,werks,fevor,overdueNone,overdueWarn,overdueSeverity,sgNoSourceType{id,code},progress{steps{code,ordinal,name}}}}'
;
...
...
@@ -17,7 +18,7 @@ export async function queryProductionProgressKanbanData(
options
?:
{
[
key
:
string
]:
any
},
)
{
return
request
<
Api
.
ServiceResult
<
ProductionProgressKanbanDataDto
[]
>>
(
'/
api/productionProgressKanban/data
'
,
'/
kanban/task/taskPlanStat
'
,
{
method
:
'POST'
,
headers
:
{
...
...
@@ -55,3 +56,15 @@ export async function queryProductionProgressKanbanDetail(body: {
data
:
body
,
});
}
export
async
function
queryProductionComprehensKanbanData
()
{
return
request
<
Api
.
ServiceResult
<
ProductionComprehensKanbanDataDto
[]
>>
(
'/md/workunit/selectGroupLineName'
,
{
method
:
'GET'
,
headers
:
{
'Content-Type'
:
'application/json'
,
},
},
);
}
\ No newline at end of file
src/pages/kanban/paintingProcessKanban/components/SettingForm/index.tsx
View file @
a749ec69
...
...
@@ -26,8 +26,7 @@ export type Setting = {
rowMovingTime
:
number
;
dataRange
:
number
;
planSource
:
number
;
productionComprehensKanbanSettingId
?:
string
;
productionComprehensKanbanSetting
?:
KanbanSetting
;
lineName
?:
string
;
};
export
type
SettingFormProps
=
{
...
...
@@ -102,24 +101,6 @@ const SettingForm: React.FC<SettingFormProps> = (props) => {
return
data
.
map
((
a
)
=>
({
label
:
a
,
value
:
a
}));
}
}
/>
{
/*
<ProFormRadio.Group
label="工序产量"
name="dataRange"
options={[
{ label: '按日', value: 1 },
{ label: '按月', value: 2 },
]}
/>
<ProForm.Group>
<ProFormRadio.Group
name="planSource"
options={[
{ label: '手动导入', value: 1 },
{ label: '排产计划量', value: 2 },
]}
/>
</ProForm.Group> */
}
</
DrawerForm
>
);
};
...
...
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