ylj20011123 fa1840d21b update
2025-07-23 18:39:23 +08:00

758 lines
38 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { connect } from "umi";
import type { ConnectState } from "@/models/connect";
import { PageContainer } from "@ant-design/pro-layout";
import type { FormInstance } from "antd";
import { message } from "antd";
import { Button, Col, Descriptions, Row, Tooltip } from "antd";
import moment from 'moment'
import { contractType } from "@/pages/contract/emun";
import session from "@/utils/session";
import ProTable from "@ant-design/pro-table";
import numeral from 'numeral'
import { useImperativeHandle, useRef, useState } from "react";
import CorrectTable from "./correctTable";
import { handleGetPeriodSupplementList } from "../service";
import ProForm, { ProFormDigit, ProFormSelect, ProFormTextArea, ProFormUploadButton } from "@ant-design/pro-form";
import { handleGetAPPROVALROUTEDetail, handleGetProjectPeriodAccount } from "../../ShopExpenseDetail/service";
import ReviewProcess from "../../revenueConfirmation/components/ReviewProcess";
import { getMoney } from "@/services/options";
import { wrapTreeNode } from "@/utils/format";
import { handleGetBUSINESSAPPROVALDetail } from "@/pages/examine/monthSettlement/service";
import HistoricalProjects from "./HistoricalProjects";
type DetailProps = {
parentRow: any
dataRef: any // 可以通过这个拿到选中的数据
onShow: boolean // 组件是否显示
setIsFinishCalibration?: any
onRef: any
currentUser?: any
readonly: boolean // 判断是否显示按钮和 精算表单
}
const AfterSettlement = ({ parentRow, dataRef, onShow, setIsFinishCalibration, onRef, currentUser, readonly }: DetailProps) => {
const SETTLEMENTMODESOBJ: any = session.get('SETTLEMENT_MODESObj')
const settlementRef = useRef<FormInstance>();
const HistoricalProjectsRef = useRef<any>()
// 表格数据
const [tableData, setTableData] = useState<any>()
// 表格的加载效果
const [tableLoading, setTableLoading] = useState<boolean>(false)
// 日结冲正信息表的表格数据
const [correctTableData, setCorrectTableData] = useState<any>()
// 校验表单的加载效果
const [proFormLoading, setProFormLoading] = useState<boolean>(false)
// 附件
const [fileList, setFileList] = useState<any>()
// 当前是否为指定重新申请
const [currentREJECTTYPE, setCurrentREJECT_TYPE] = useState<boolean>(false)
// 指定的下一个状态
const [nextState, setNextState] = useState<any>()
const columns: any = [
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'PeriodDesc',
align: 'left',
width: 300,
fixed: 'left',
hideInSearch: true,
render: (_, record) => {
return record?.PeriodDesc === '合计' ?
<span style={{ color: '#9A3D1A', fontWeight: 600 }}></span> :
record?.level === 1 ?
<span>{`${record?.PeriodDesc}`}</span> :
<>
<span>{`${record?.PeriodDesc}`}</span>
{
record?.EarlySettlement ?
<span style={{ color: 'red', marginLeft: '4px' }}></span> : ''
}
</>
}
},
{
title: '租金信息',
dataIndex: '',
hideInSearch: true,
children: [
{
title: <div style={{ textAlign: 'center' }}>/</div>,
dataIndex: 'MinturnOver',
valueType: 'digit',
align: 'right',
width: 130,
hideInSearch: true,
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'GuaranteeRatio',
hideInSearch: true,
align: 'right',
width: 100,
render: (_, record) => {
return record?.GuaranteeRatio ? `${record?.GuaranteeRatio}%` : ''
}
}
]
},
{
title: '营业额',
dataIndex: '',
hideInSearch: true,
children: [
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'CashAmount',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'MobilePayAmount',
valueType: 'digit',
align: 'right',
width: 100,
hideInSearch: true,
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'RevenueAmount',
valueType: 'digit',
align: 'right',
width: 150,
hideInSearch: true,
render: (_, record) => {
return <span style={{ color: '#1890ff' }}>
{record?.RevenueAmount ?
`${numeral(getMoney(record?.RevenueAmount)).format('0,0.00')}${record?.addRevenueMoney ? `${record?.addRevenueMoney > 0 ? '+' : record?.addRevenueMoney < 0 ? '' : ''}${record?.addRevenueMoney}`
: ''
}`
: '0'}</span>
}
}
]
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'RoyaltyAmount',
valueType: 'digit',
width: 100,
align: 'right',
hideInSearch: true,
},
{
title: '应收费用',
dataIndex: '',
hideInSearch: true,
children: [
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'ReceivableAmount',
valueType: 'digit',
align: 'right',
width: 100,
hideInSearch: true,
render: (_, record) => {
const str: string = `租金(${numeral(record?.GuaranteeFee).format('0.00')}) + 物业费(${numeral(record?.PropertyFee).format('0.00')}) + 房租(${numeral(record?.HouseRent).format('0.00')}) + 罚款(${numeral(record?.BreachPenalty).format('0.00')}) + 电费(${numeral(record?.ElectricityCharge).format('0.00')}) + 水费(${numeral(record?.WaterCharge).format('0.00')}) + 其他(${numeral(record?.OtherFee).format('0.00')})`
return record?.ReceivableAmount ?
<Tooltip title={str}>
<span>
{numeral(record?.ReceivableAmount).format('0,0.00')}
</span>
</Tooltip>
: ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'GuaranteeFee',
valueType: 'digit',
align: 'right',
width: 120,
hideInSearch: true,
render: (_, record) => {
const str: string = `租金(${numeral(record?.MinturnOver).format('0.00')}) ${record?.MinturnOver > (record?.RevenueAmount * (record?.GuaranteeRatio) / 100) ? '>' : '<'} 营业额(${record?.RevenueAmount || 0}) * 提成比率(${record?.GuaranteeRatio ? `${record?.GuaranteeRatio}%` : ''})`
return record?.GuaranteeFee ?
<Tooltip title={record?.PeriodDesc === '合计' ? '' : str}>
<span>{numeral(record?.GuaranteeFee).format('0,0.00')}</span>
</Tooltip>
: ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'PropertyFee',
valueType: 'digit',
align: 'right',
width: 100,
hideInSearch: true,
render: (_, record) => {
return record?.PropertyFee ?
numeral(record?.PropertyFee).format('0,0.00')
: record?.PropertyFee === 0 ? <span style={{ color: 'red' }}>0</span> : ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'HouseRent',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'BreachPenalty',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'ElectricityCharge',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
render: (_, record) => {
return record?.ElectricityCharge ?
numeral(record?.ElectricityCharge).format('0,0.00')
: record?.ElectricityCharge === 0 ? <span style={{ color: 'red' }}>0</span> : ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'WaterCharge',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
render: (_, record) => {
return record?.WaterCharge ?
numeral(record?.WaterCharge).format('0,0.00')
: record?.WaterCharge === 0 ? <span style={{ color: 'red' }}>0</span> : ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'OtherFee',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
}
]
},
{
title: '已缴费用',
dataIndex: '',
align: 'center',
hideInSearch: true,
children: [
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'PaidFee',
valueType: 'digit',
align: 'right',
width: 100,
hideInSearch: true,
render: (_, record) => {
const str: string = `水费(${numeral(record?.SHOPEXPENSE_AMOUNT_1000).format('0.00')}) + 电费(${numeral(record?.SHOPEXPENSE_AMOUNT_2000).format('0.00')}) + 房租(${numeral(record?.SHOPEXPENSE_AMOUNT_3000).format('0.00')})
+ 物业费(${numeral(record?.SHOPEXPENSE_AMOUNT_5000).format('0.00')})`
return record?.PaidFee
?
<Tooltip title={str}>
<span>{numeral(record?.PaidFee).format('0,0.00')}</span>
</Tooltip>
: ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'SHOPEXPENSE_AMOUNT_1000',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
render: (_, record) => {
return record?.SHOPEXPENSE_AMOUNT_1000 ?
numeral(record?.SHOPEXPENSE_AMOUNT_1000).format('0,0.00')
: record?.SHOPEXPENSE_AMOUNT_1000 === 0 ? <span style={{ color: 'red' }}>0</span> : ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'SHOPEXPENSE_AMOUNT_2000',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
render: (_, record) => {
return record?.SHOPEXPENSE_AMOUNT_2000 ?
numeral(record?.SHOPEXPENSE_AMOUNT_2000).format('0,0.00')
: record?.SHOPEXPENSE_AMOUNT_2000 === 0 ? <span style={{ color: 'red' }}>0</span> : ''
}
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'SHOPEXPENSE_AMOUNT_3000',
valueType: 'digit',
align: 'right',
width: 80,
hideInSearch: true,
},
{
title: <div style={{ textAlign: 'center' }}></div>,
dataIndex: 'SHOPEXPENSE_AMOUNT_5000',
valueType: 'digit',
align: 'right',
width: 100,
hideInSearch: true,
render: (_, record) => {
return record?.SHOPEXPENSE_AMOUNT_5000 ?
numeral(record?.SHOPEXPENSE_AMOUNT_5000).format('0,0.00')
: record?.SHOPEXPENSE_AMOUNT_5000 === 0 ? <span style={{ color: 'red' }}>0</span> : ''
}
}
]
},
{
title: <div style={{ textAlign: 'center' }}>退</div>,
dataIndex: 'RefundSupplement',
valueType: 'digit',
align: 'right',
fixed: 'right',
width: 100,
hideInSearch: true,
render: (_, record) => {
const str: string = `业主收款(${record?.RoyaltyAmount || 0}) - 应收费用(${record?.ReceivableAmount || 0}) + 已缴费用(${record?.PaidFee || 0})`
return record?.RefundSupplement ?
<Tooltip title={str}>
<span style={{ color: '#9A3D1A', fontWeight: 600 }}>{numeral(record?.RefundSupplement).format('0,0.00')}</span>
</Tooltip>
: ''
}
},
]
const descirption = () => {
return <>
<Descriptions column={3}>
<Descriptions.Item label="开始日期">{parentRow?.STARTDATE ? moment(parentRow?.STARTDATE).format('YYYY-MM-DD') : ''}</Descriptions.Item>
<Descriptions.Item label="截止日期">{parentRow?.ENDDATE ? moment(parentRow?.ENDDATE).format('YYYY-MM-DD') : ''}</Descriptions.Item>
<Descriptions.Item label="经营商户">{parentRow?.MERCHANTS_NAME}</Descriptions.Item>
</Descriptions>
<Descriptions column={3}>
<Descriptions.Item label="经营模式">{parentRow?.BUSINESS_TYPE ? contractType[parentRow?.BUSINESS_TYPE] : '-'}</Descriptions.Item>
<Descriptions.Item label="结算模式">{parentRow?.SETTLEMENT_MODES ? SETTLEMENTMODESOBJ[parentRow?.SETTLEMENT_MODES] : '-'}</Descriptions.Item>
{/* <Descriptions.Item label="项目税率">{}</Descriptions.Item> */}
<Descriptions.Item label="经营门店">{parentRow?.SERVERPARTSHOP_NAME}</Descriptions.Item>
</Descriptions>
{/* <Descriptions column={3}> */}
{/* </Descriptions> */}
</>
}
// 重新校准
const handleRecalibrate = (money?: any) => {
if (tableData && tableData.length > 0) {
// 避免重复添加重新精算的数据 把原本重新精算的数据 先给筛选掉
const newReqList: any = []
tableData.forEach((item: any) => {
if (item.PeriodDesc !== '精算数据' && item.PeriodDesc !== '合计') {
newReqList.push(item)
}
if (item.PeriodDesc === '合计' && item.children && item.children.length > 0) {
item.children.forEach((subItem: any) => {
newReqList.push(subItem)
})
}
})
console.log('tableData', tableData);
// 最近的一条数据
const newObj: any = JSON.parse(JSON.stringify(newReqList[newReqList.length - 1]))
// 重新校准点击拿到的值
const res = settlementRef.current?.getFieldsValue()
newObj.RevenueAmount += (res?.CORRECT_AMOUNT || money || 0)
newObj.addRevenueMoney = (res?.CORRECT_AMOUNT || money || 0)
let isBig: boolean = false
// 判断现在新的小计乘以提升比率 是否大于租金
if ((newObj.RevenueAmount * (newObj.GuaranteeRatio / 100)) > newObj.GuaranteeFee) {
isBig = true
}
// 如果新小计大于租金 那么租金就变成小计乘以比率 反之就是原本的值
newObj.GuaranteeFee = isBig ? getMoney(newObj.RevenueAmount * (newObj.GuaranteeRatio / 100)) : newObj.GuaranteeFee
if (isBig) {
// 算出合计
newObj.ReceivableAmount = newObj.GuaranteeFee + newObj.PropertyFee + newObj.HouseRent + newObj.BreachPenalty + newObj.ElectricityCharge + newObj.WaterCharge + newObj.OtherFee
// 算出退补款
newObj.RefundSupplement = newObj.RoyaltyAmount - newObj.ReceivableAmount + newObj?.PaidFee
}
const list = JSON.parse(JSON.stringify(newReqList))
newObj.PeriodDesc = '精算数据'
newObj.children = null
// 根据新要求 冲正了多少钱应该显示在第二条记录里面 即精算数据的上面一行 精算数据 直接显示结果既可
list.forEach((item: any, index: number) => {
if (index === list.length - 1) {
item.addRevenueMoney = newObj.addRevenueMoney
}
})
newObj.addRevenueMoney = null
list.push(newObj)
console.log('list', list);
setTableData(list)
}
}
useImperativeHandle(onRef, () => ({
settlementRef,
tableData,
fileList,
nextState,
HistoricalProjectsRef
}));
return (
<div>
<PageContainer
style={{ width: '100%', height: '100%', background: '#ffffff' }}
header={{
title: parentRow?.BUSINESSPROJECT_NAME,
breadcrumb: {},
}}
>
<>
<>
{descirption()}
</>
<>
<ProTable
rowKey={(record) => {
return `${record?.ShopRoyalty_Id}-${record?.PeriodIndexStr}-${record?.PeriodDesc}`
}}
columns={columns}
bordered
search={false}
pagination={false}
scroll={{ x: 'max-content' }}
loading={tableLoading}
request={async () => {
setTableLoading(true)
console.log('dataRef', dataRef);
const res: any = dataRef.current?.YearExamineDetailTableRef?.current?.selectDetailList
setTableData(res)
console.log('res', res);
// 拿最小的开始 最大的结束
let startTime: string = ''
let endTime: string = ''
let ShopRoyaltyIdStr: string = ''
if (res && res.length > 0) {
res.forEach((item: any, index: number) => {
if (item.PeriodDesc !== '合计') {
if (ShopRoyaltyIdStr) {
ShopRoyaltyIdStr += `,${item.ShopRoyalty_Id}`
} else {
ShopRoyaltyIdStr = `${item.ShopRoyalty_Id}`
}
if (startTime) {
if (new Date(moment(item.StartDate).format('YYYY-MM-DD')).getTime() < new Date(startTime).getTime()) {
startTime = moment(item.StartDate).format('YYYY-MM-DD')
}
} else {
startTime = moment(item.StartDate).format('YYYY-MM-DD')
}
if (endTime) {
if (new Date(moment(item.EndDate).format('YYYY-MM-DD')).getTime() > new Date(endTime).getTime()) {
endTime = moment(item.EndDate).format('YYYY-MM-DD')
}
} else {
endTime = moment(item.EndDate).format('YYYY-MM-DD')
}
} else {
if (item.children && item.children.length > 0) {
item.children.forEach((subItem) => {
if (ShopRoyaltyIdStr) {
ShopRoyaltyIdStr += `,${subItem.ShopRoyalty_Id}`
} else {
ShopRoyaltyIdStr = `${subItem.ShopRoyalty_Id}`
}
if (startTime) {
if (new Date(moment(subItem.StartDate).format('YYYY-MM-DD')).getTime() < new Date(startTime).getTime()) {
startTime = moment(subItem.StartDate).format('YYYY-MM-DD')
}
} else {
startTime = moment(subItem.StartDate).format('YYYY-MM-DD')
}
if (endTime) {
if (new Date(moment(subItem.EndDate).format('YYYY-MM-DD')).getTime() > new Date(endTime).getTime()) {
endTime = moment(subItem.EndDate).format('YYYY-MM-DD')
}
} else {
endTime = moment(subItem.EndDate).format('YYYY-MM-DD')
}
})
}
}
})
}
console.log('parentRow', parentRow);
// 调新接口 拿数据
const newReq: any = {
BusinessProjectId: parentRow?.BUSINESSPROJECT_ID,
ShopRoyaltyId: ShopRoyaltyIdStr,
ServerpartShopId: parentRow?.SERVERPARTSHOP_ID,
StartDate: startTime,
EndDate: endTime,
}
const newData = await handleGetPeriodSupplementList(newReq)
console.log('newDatanewDatanewDatanewData', newData);
setCorrectTableData(newData)
if (!(parentRow?.APPLY_PROCCESS && parentRow?.BUSINESSAPPROVAL_ID)) {
settlementRef.current?.setFieldsValue({ CORRECT_AMOUNT: newData && newData.length > 0 ? newData[0].CorrectAmount : '' })
}
setTableLoading(false)
// 如果是重新申请的话 再调用这个接口
if (parentRow?.APPLY_PROCCESS && parentRow?.BUSINESSAPPROVAL_ID) {
const req: any = {
BUSINESSPROJECT_ID: parentRow?.BUSINESSPROJECT_ID,
SHOPROYALTY_ID: parentRow?.SHOPROYALTY_ID,
BUSINESSAPPROVAL_ID: parentRow?.BUSINESSAPPROVAL_ID
}
const data = await handleGetProjectPeriodAccount(req)
if (data.ProjectPeriodList && data.ProjectPeriodList.length > 0) {
const list: any = wrapTreeNode(data.ProjectPeriodList)
console.log('dskdjaskldjas', list);
if (list && list.length > 0) {
list.forEach((item: any) => {
if (item.PeriodIndex > 0) {
settlementRef.current?.setFieldsValue({ CORRECT_AMOUNT: item.CorrectAmount })
}
})
}
}
}
}}
dataSource={tableData}
/>
</>
{/* <HistoricalProjects parentRow={parentRow} onRef={HistoricalProjectsRef} /> */}
<>
{
tableLoading ? '' :
<CorrectTable data={correctTableData} show={false} currentRow={parentRow} money={parentRow?.CORRECT_AMOUNT} />
}
</>
{
readonly ? '' :
<div style={{ marginTop: '16px' }}>
<ProForm
formRef={settlementRef}
submitter={{
render: () => {
return []
}
}}
// loading={proFormLoading ? {
// spinning: proFormLoading,
// tip: '正在为您查询结算年度内,服务区管理员校验冲正数据...'
// } : false}
// request={() => {
// setProFormLoading(true)
// if (correctTableData && correctTableData.length > 0) {
// const obj: any = correctTableData[0]
// setProFormLoading(false)
// return { CORRECT_AMOUNT: obj?.CorrectAmount || 0 }
// }
// setProFormLoading(false)
// return {}
// }}
>
<Row gutter={16}>
<Col span={6}>
<ProFormDigit
name={'CORRECT_AMOUNT'}
label={'冲正金额'}
fieldProps={{
min: -9999999999
}}
/>
</Col>
<Col span={6}>
<ProFormSelect
name="APPROVALSTAFF_ID"
label="审批人"
rules={[
{
required: true,
message: '请选择审批人'
}
]}
disabled={currentREJECTTYPE}
request={async () => {
console.log('currentRow请选择审批人', parentRow);
const req = {
OperationType: 11,
CurState: 1000,
IsValid: 1,
ShowApprovalUser: true,
ServerpartIds: parentRow?.SERVERPART_ID || '',
ShopIds: parentRow?.SERVERPARTSHOP_ID || ''
}
const data = await handleGetAPPROVALROUTEDetail(req)
const detailReq: any = {
BUSINESSAPPROVALId: parentRow?.BUSINESSAPPROVAL_ID
}
console.log('req', req);
let detailData: any = []
if (parentRow?.BUSINESSAPPROVAL_ID) {
detailData = await handleGetBUSINESSAPPROVALDetail(detailReq)
}
const list: any = []
if (detailData.REJECT_TYPE === 2) {
const nowPersonList: any = detailData.approveList[detailData.approveList.length - 1]
const list: any = [{ label: nowPersonList.REJECT_STAFF, value: `${nowPersonList.REJECT_STAFF}-${nowPersonList.REJECT_ID}` }]
settlementRef.current?.setFieldsValue({ APPROVALSTAFF_ID: `${nowPersonList.REJECT_STAFF}-${nowPersonList.REJECT_ID}` })
setNextState(nowPersonList?.REJECT_TYPE)
setCurrentREJECT_TYPE(true)
return list
}
setCurrentREJECT_TYPE(false)
setNextState(undefined)
if (data.UserList && data.UserList.length > 0) {
data.UserList.forEach((item: any) => {
list.push({ label: item.USER_NAME, value: `${item.USER_NAME}-${item.USER_ID}` })
})
}
if (list && list.length > 0 && list.length === 1) {
settlementRef.current?.setFieldsValue({ APPROVALSTAFF_ID: list[0].value })
}
if (currentUser?.ID === 2785) {
list.push({ label: '严琅杰', value: `严琅杰-2785` })
}
return list
}}
/>
</Col>
</Row>
<ProFormTextArea
label={"结算备注"}
name={"BUSINESSAPPROVAL_DESC"}
rules={[
{
required: true,
message: '请输入结算备注'
}
]}
/>
<ProFormUploadButton
label={"上传年度结算单"}
name="files"
fileList={fileList}
fieldProps={{
beforeUpload: () => false,
onChange: async (info: any) => {
console.log('info', info);
// setFileList(info.fileList)
const { fileList: newFileList } = info;
// 过滤出有效的图片文件
const validFileList = newFileList.filter(file => {
if (file.type.startsWith('image/')) {
return true;
}
message.error(`${file.name} 不是图片文件,已被移除.`);
return false;
});
// 更新文件列表
setFileList(validFileList);
// console.log('parentRow', parentRow);
// const formData = new FormData();
// info.fileList.forEach((item: any) => {
// if (item.status !== "done") {
// console.log('item', item);
// formData.append('files[]', item.originFileObj);
// formData.append('ImageName', item.name);
// }
// })
// formData.append('TableType', '1130');
// formData.append('TableId', );
}
}}
buttonProps={{
children: '上传年度结算单'
}}
/>
<div style={{ width: '100%', display: 'flex', justifyContent: 'flex-end' }}>
<Button type="primary" onClick={() => {
handleRecalibrate()
setIsFinishCalibration(true)
}}>
</Button>
</div>
</ProForm>
</div>
}
{
readonly ? '' :
<div style={{ paddingBottom: '16px', paddingTop: '16px' }}>
<ReviewProcess showReviewProcess={onShow} compareCurrent={{
...parentRow,
BusinessApprovalId: parentRow?.BUSINESSAPPROVAL_ID
}} changeDesc={settlementRef} />
</div>
}
</>
</PageContainer>
</div>
)
}
export default connect(({ user, }: ConnectState) => ({
currentUser: user.currentUser,
}))(AfterSettlement);