Commit 785b3095 authored by 前端-钟卫鹏's avatar 前端-钟卫鹏

fix:销售订单待确认回单按钮添加是否发货完成的判断和继续发货功能

parent 2983dfdd
...@@ -11,7 +11,7 @@ import OrderSaleRecord from '../orderSaleRecord' ...@@ -11,7 +11,7 @@ import OrderSaleRecord from '../orderSaleRecord'
export interface OrderDetailSectionProps { export interface OrderDetailSectionProps {
formContext: any, formContext: any,
type?: 'purchaseOrder' | 'saleOrder' type?: 'purchaseOrder' | 'saleOrder',
} }
const OrderDetailSection:React.FC<OrderDetailSectionProps> = ({formContext, type = 'purchaseOrder'}) => { const OrderDetailSection:React.FC<OrderDetailSectionProps> = ({formContext, type = 'purchaseOrder'}) => {
...@@ -46,7 +46,7 @@ const OrderDetailSection:React.FC<OrderDetailSectionProps> = ({formContext, type ...@@ -46,7 +46,7 @@ const OrderDetailSection:React.FC<OrderDetailSectionProps> = ({formContext, type
<OrderMergeInfo /> <OrderMergeInfo />
{ type === 'saleOrder' ? <OrderSaleRecord/> : <OrderDeleveRecord /> } { type === 'saleOrder' ? <OrderSaleRecord /> : <OrderDeleveRecord /> }
<OrderTransformRecord type={type}/> <OrderTransformRecord type={type}/>
</div> </div>
......
import React, { useContext, useRef } from 'react' import React, { useCallback, useContext, useEffect, useRef, useState } from 'react'
import { Tabs, Table, Button } from 'antd' import { Tabs, Table, Button, Space,Modal } from 'antd'
import StatusColors from '@/pages/transaction/components/StatusColors' import StatusColors from '@/pages/transaction/components/StatusColors'
import { formatTimeString } from '@/utils' import { formatTimeString } from '@/utils'
import { OrderDetailContext } from '../../_public/order/context' import { OrderDetailContext } from '../../_public/order/context'
...@@ -8,8 +8,14 @@ import NestTable from '@/components/NestTable' ...@@ -8,8 +8,14 @@ import NestTable from '@/components/NestTable'
import { DeliverySideState } from '@/constants' import { DeliverySideState } from '@/constants'
import { PublicApi } from '@/services/api' import { PublicApi } from '@/services/api'
import { history } from 'umi' import { history } from 'umi'
import { ExclamationCircleOutlined } from '@ant-design/icons'
import { useHttpRequest } from '@/hooks/useHttpRequest'
export interface OrderSaleRecordProps {} export interface OrderSaleRecordProps {
}
const { confirm } = Modal;
const outOrderCols: any[] = [ const outOrderCols: any[] = [
{ {
...@@ -163,6 +169,7 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => { ...@@ -163,6 +169,7 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => {
const dataRef = useRef<any>([]) const dataRef = useRef<any>([])
const { data, reloadFormData } = useContext(OrderDetailContext) const { data, reloadFormData } = useContext(OrderDetailContext)
const { orderReceivingStatisticsResponses, orderDeliveryDetailsResponses } = data const { orderReceivingStatisticsResponses, orderDeliveryDetailsResponses } = data
const sideOrderCols: any[] = [ const sideOrderCols: any[] = [
{ {
title: '发货批次', title: '发货批次',
...@@ -227,6 +234,21 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => { ...@@ -227,6 +234,21 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => {
}, },
] ]
const { run, loading } = useHttpRequest(PublicApi.postOrderReceiptOrderConfirmedAll)
// 确认全部回单
const handleSubmit = useCallback(async () => {
const params = {
id: Number(data.id),
state: 1
}
const result = await run(params)
if (result.code === 1000) {
history.goBack()
}
}, [])
// 确认发货 // 确认发货
const handleConfirm = async (record) => { const handleConfirm = async (record) => {
const params = { const params = {
...@@ -254,6 +276,45 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => { ...@@ -254,6 +276,45 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => {
reloadFormData && reloadFormData() reloadFormData && reloadFormData()
} }
} }
// 确认全部发货单已收到回单
const handelReciveReturnOrder = async () => {
const res = await PublicApi.getOrderIsDeliveryCompleted({id: data.id})
const { code } = res
let tip = ''
if(code === 1000)
tip = '是否确认本单全部发货单已收到回单?'
else
tip = '您还有未发货的商品,是否确认全部发货都已完成?'
confirm({
title: '提示',
icon: <ExclamationCircleOutlined />,
content: tip,
onOk() {
handleSubmit()
},
});
}
// 继续发货
const handleContinueDeliver = async () => {
const res = await PublicApi.getOrderIsDeliveryCompleted({id: data.id})
const { code } = res
let tip = ''
if(code === 1000)
tip = '您商品都已发货.是否确认还需要继续发货?'
else
tip = '是否继续发货?'
confirm({
title: '提示',
icon: <ExclamationCircleOutlined />,
content: tip,
onOk() {
PublicApi.postOrderReceiptOrderContinueShipping({orderId: data.id})
},
});
}
return ( return (
<> <>
{ {
...@@ -278,6 +339,10 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => { ...@@ -278,6 +339,10 @@ const OrderSaleRecord:React.FC<OrderSaleRecordProps> = (props) => {
childrenDataKey='orderDeliveryProducts' childrenDataKey='orderDeliveryProducts'
dataSource={orderDeliveryDetailsResponses} dataSource={orderDeliveryDetailsResponses}
/> />
<Space style={{marginTop: 18, display: "flex", justifyContent: "flex-end"}}>
<Button onClick={handelReciveReturnOrder}>确认本单全部发货单已收到回单</Button>
<Button onClick={handleContinueDeliver}>继续发货</Button>
</Space>
</Tabs.TabPane> </Tabs.TabPane>
} }
</Tabs> </Tabs>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment