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
shenshaokai
jinfa-platform
Commits
b3f658ea
Commit
b3f658ea
authored
May 09, 2022
by
GuanHua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 解决输入4位开票数量也可以保存的问题
parent
0fe695f1
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
19 additions
and
2 deletions
+19
-2
index.tsx
...balance/invoice/srm/components/productTableCell/index.tsx
+3
-0
invoiceForm.tsx
src/pages/balance/invoice/srm/manage/invoiceForm.tsx
+7
-1
useInvoiceDetailTable.tsx
...alance/invoice/srm/manage/model/useInvoiceDetailTable.tsx
+9
-1
No files found.
src/pages/balance/invoice/srm/components/productTableCell/index.tsx
View file @
b3f658ea
...
...
@@ -12,6 +12,7 @@ export interface ProductTableCellProps {
dataIndex
:
string
;
record
:
any
;
handleSave
:
(
record
:
any
)
=>
Promise
<
any
>
;
handleError
:
()
=>
void
;
forceEdit
:
boolean
,
formItem
:
string
,
formItemProps
:
any
,
...
...
@@ -43,6 +44,7 @@ export const ProductTableCell:React.FC<ProductTableCellProps> = ({
dataIndex
,
record
,
handleSave
,
handleError
,
forceEdit
,
formItem
,
formItemProps
=
{},
...
...
@@ -55,6 +57,7 @@ export const ProductTableCell:React.FC<ProductTableCellProps> = ({
const
values
=
await
form
.
validateFields
();
handleSave
({
...
record
,
...
values
});
}
catch
(
errInfo
)
{
handleError
()
console
.
log
(
'Save failed'
,
errInfo
);
}
};
...
...
src/pages/balance/invoice/srm/manage/invoiceForm.tsx
View file @
b3f658ea
...
...
@@ -26,6 +26,7 @@ import moment from 'moment';
import
UploadInvoice
from
'../components/UploadInvoice'
import
{
useStateFilterSearchLinkageEffect
}
from
'@/formSchema/effects/useFilterSearch'
;
import
{
FORM_FILTER_PATH
}
from
'@/formSchema/const'
;
import
{
PATTERN_MAPS
}
from
'@/constants/regExp'
;
const
{
onFieldValueChange$
}
=
FormEffectHooks
const
addSchemaAction
=
createFormActions
();
...
...
@@ -56,7 +57,7 @@ const InvoiceForm: React.FC<InvoiceFormProps> = (props) => {
});
const
[
invoiceDrawerVisible
,
setInvoiceDrawerVisible
]
=
useState
<
boolean
>
(
false
);
// 选择单据
const
[
statementsDrawerVisible
,
setStatementsDrawerVisible
]
=
useState
<
boolean
>
(
false
);
// 选择对账单抽屉
const
{
invoiceDetailColumns
,
invoiceDetailComponents
}
=
useInvoiceDetailTable
(
addSchemaAction
,
type
===
OperateType
.
detail
?
'detail'
:
'edit'
)
const
{
invoiceDetailColumns
,
invoiceDetailComponents
,
canSave
}
=
useInvoiceDetailTable
(
addSchemaAction
,
type
===
OperateType
.
detail
?
'detail'
:
'edit'
)
const
[
current
]
=
useState
<
number
>
(
1
)
const
[
pageSize
]
=
useState
<
number
>
(
20
)
...
...
@@ -268,6 +269,11 @@ const InvoiceForm: React.FC<InvoiceFormProps> = (props) => {
const
checkInvoiceDetail
=
(
values
:
InvoiceFromValuesType
):
boolean
=>
{
for
(
const
item
of
values
.
rows
)
{
console
.
log
(
canSave
,
'canSave'
)
if
(
!
canSave
)
{
return
false
}
if
(
Number
(
item
.
currentNumber
)
>
Number
(
item
.
treatReconciliationQuantity
)
)
{
message
.
error
(
intl
.
formatMessage
({
id
:
'balance.invoice.count.tip'
,
...
...
src/pages/balance/invoice/srm/manage/model/useInvoiceDetailTable.tsx
View file @
b3f658ea
...
...
@@ -23,6 +23,7 @@ export const sortByKey = (params) => {
* @param relevanceRef 关联报价商品抽屉的ref
*/
export
const
useInvoiceDetailTable
=
(
ctx
:
ISchemaFormActions
|
ISchemaFormAsyncActions
,
type
:
'edit'
|
'detail'
)
=>
{
const
[
canSave
,
setCanSave
]
=
useState
<
boolean
>
(
true
)
const
invoiceDetailComponents
=
{
body
:
{
...
...
@@ -33,6 +34,7 @@ export const useInvoiceDetailTable = (ctx: ISchemaFormActions | ISchemaFormAsync
const
handleSave
=
(
row
)
=>
{
return
new
Promise
((
resolve
)
=>
{
setCanSave
(
true
)
const
newData
=
[...
ctx
.
getFieldValue
(
'rows'
)];
const
index
=
newData
.
findIndex
(
item
=>
row
.
id
===
item
.
id
);
const
item
=
{...
row
};
...
...
@@ -46,6 +48,10 @@ export const useInvoiceDetailTable = (ctx: ISchemaFormActions | ISchemaFormAsync
})
};
const
handleError
=
()
=>
{
setCanSave
(
false
)
}
const
handleDelete
=
(
row
)
=>
{
let
newData
=
[...
ctx
.
getFieldValue
(
'rows'
)];
newData
=
newData
.
filter
((
item
)
=>
item
.
id
!==
row
.
id
)
...
...
@@ -105,7 +111,8 @@ export const useInvoiceDetailTable = (ctx: ISchemaFormActions | ISchemaFormAsync
title
:
col
.
title
,
formItem
:
col
.
formItem
,
// formItemProps: col.formItemProps,
handleSave
handleSave
,
handleError
,
}),
};
})
...
...
@@ -113,5 +120,6 @@ export const useInvoiceDetailTable = (ctx: ISchemaFormActions | ISchemaFormAsync
return
{
invoiceDetailColumns
:
invoiceMergeColumns
,
invoiceDetailComponents
,
canSave
}
}
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