perf: 切换供应商: invoice

main
Lei OT 6 months ago
parent 7f0845a111
commit 0e393762ae

@ -82,8 +82,8 @@ const initRouter = async () => {
{ path: 'notice/:CCP_BLID', element: <NoticeDetail />},
//
{ path: 'invoice',element:<RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoiceIndex /></RequireAuth>},
{ path: 'invoice/detail/:GMDSN/:GSN',element:<RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoiceDetail /></RequireAuth>},
{ path: 'invoice/history/:GMDSN/:GSN',element:<RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoiceHistory /></RequireAuth>},
{ path: 'invoice/detail/:GMDSN/:GSN/:VEI',element:<RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoiceDetail /></RequireAuth>},
{ path: 'invoice/history/:GMDSN/:GSN/:VEI',element:<RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoiceHistory /></RequireAuth>},
{ path: 'invoice/paid',element:<RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoicePaid /></RequireAuth>},
{ path: 'invoice/paid/detail/:flid', element: <RequireAuth subject={PERM_INVOICE_ALL} result={true}><InvoicePaidDetail /></RequireAuth>},

@ -9,13 +9,18 @@ import { fetchInvoiceDetail, postEditInvoiceDetail, postAddInvoice } from "@/sto
import { removeFeedbackImages } from "@/stores/Feedback";
import BackBtn from "@/components/BackBtn";
import { usingStorage } from "@/hooks/usingStorage";
import useFormStore from "@/stores/Form";
const { Title, Text } = Typography;
function Detail() {
const navigate = useNavigate();
const { GMDSN, GSN } = useParams();
const { userId, travelAgencyId, loginToken } = usingStorage();
const { GMDSN, GSN, VEI: agency } = useParams();
const { userId, travelAgencyId: myAgencyId, loginToken } = usingStorage();
const [{agency: pickAgency, ...formValues}] = useFormStore(state => [state.formValuesToSub]);
const travelAgencyId = Number(agency) || pickAgency || myAgencyId;
const [form] = Form.useForm();
const [dataLoading, setDataLoading] = useState(false);
const [edited, setEdited] = useState(true); //
@ -358,7 +363,7 @@ function Detail() {
</Col>
<Col span={4}>
<BackBtn />
<Button icon={<AuditOutlined />} onClick={() => navigate(`/invoice/history/0/338787`)}>
<Button icon={<AuditOutlined />} onClick={() => navigate(`/invoice/history/0/338787/${travelAgencyId}`)}>
Billing Records
</Button>
</Col>

@ -10,8 +10,8 @@ import useInvoiceStore from "@/stores/Invoice";
import { usingStorage } from "@/hooks/usingStorage";
function History() {
const { travelAgencyId } = usingStorage();
const { GMDSN, GSN } = useParams();
const { travelAgencyId: myAgencyId } = usingStorage();
const { GMDSN, GSN, VEI: travelAgencyId } = useParams();
const [dataLoading, setDataLoading] = useState(false);
const [invoiceZDDetail, setInvoiceZDDetail] = useState([]);
const { notification } = App.useApp();

@ -6,10 +6,13 @@ import SearchForm from '@/components/SearchForm';
import dayjs from 'dayjs';
import useInvoiceStore from '@/stores/Invoice';
import { usingStorage } from "@/hooks/usingStorage";
import useFormStore from "@/stores/Form";
function Index() {
const {travelAgencyId, } = usingStorage();
const [{agency, ...formValues}] = useFormStore(state => [state.formValuesToSub]);
const { travelAgencyId: myAgencyId } = usingStorage();
const travelAgencyId = agency || myAgencyId;
const [invoiceList, fetchInvoiceList] = useInvoiceStore((state) => [state.invoiceList, state.fetchInvoiceList]);
const navigate = useNavigate();
const { notification } = App.useApp();
@ -20,7 +23,7 @@ function Index() {
title: "Ref.No",
dataIndex: "GroupName",
key: "GroupName",
render: (text, record) => <NavLink to={`/invoice/detail/${record.key}/${record.gmd_gri_sn}`}>{text}</NavLink>,
render: (text, record) => <NavLink to={`/invoice/detail/${record.key}/${record.gmd_gri_sn}/${record.gmd_vei_sn}`}>{text}</NavLink>,
},
{
title: "Arrival Date",
@ -72,7 +75,7 @@ function Index() {
return (
<Space direction="vertical" style={{ width: "100%" }}>
<Row gutter={16}>
<Col md={16} sm={16} xs={24} >
<Col md={18} sm={18} xs={24} >
<SearchForm
initialValue={{
dates: [dayjs().subtract(2, 'M').startOf('M'), dayjs().endOf('M')],
@ -86,13 +89,13 @@ function Index() {
},
}}
onSubmit={(err, formVal, filedsVal) => {
fetchInvoiceList(travelAgencyId, formVal.referenceNo, formVal.startdate, formVal.enddate, formVal.invoiceStatus);
fetchInvoiceList(formVal.agency || travelAgencyId, formVal.referenceNo, formVal.startdate, formVal.enddate, formVal.invoiceStatus);
}}
/>
</Col>
<Col md={8} sm={8} xs={24} >
<Col md={6} sm={6} xs={24} >
<Space>
<Button icon={<AuditOutlined />} onClick={() => navigate(`/invoice/detail/0/395074`)}>
<Button icon={<AuditOutlined />} onClick={() => navigate(`/invoice/detail/0/395074/0`)}>
Misc. Invoice
</Button>
<Button icon={<AuditOutlined />} onClick={() => navigate(`/invoice/paid`)}>

@ -7,9 +7,14 @@ import dayjs from 'dayjs';
import BackBtn from '@/components/BackBtn';
import useInvoiceStore from '@/stores/Invoice';
import { usingStorage } from '@/hooks/usingStorage';
import useFormStore from "@/stores/Form";
function Paid() {
const {travelAgencyId, } = usingStorage();
const [{agency, ...formValues}] = useFormStore(state => [state.formValuesToSub]);
const {travelAgencyId: myAgencyId, } = usingStorage();
const travelAgencyId = agency || myAgencyId;
const [invoicePaid, fetchInvoicePaid] = useInvoiceStore((state) => [state.invoicePaid, state.fetchInvoicePaid]);
const navigate = useNavigate();
const showTotal = (total) => `Total ${total} items`;

@ -5,12 +5,16 @@ import { formatDate, isNotEmpty } from '@/utils/commons';
import BackBtn from '@/components/BackBtn';
import { fetchInvoicePaidDetail } from '@/stores/Invoice';
import { usingStorage } from '@/hooks/usingStorage';
import useFormStore from "@/stores/Form";
const { Title } = Typography;
function PaidDetail() {
const navigate = useNavigate();
const {travelAgencyId, } = usingStorage();
const [{agency, ...formValues}] = useFormStore(state => [state.formValuesToSub]);
const { travelAgencyId: myAgencyId } = usingStorage();
const travelAgencyId = agency || myAgencyId;
const { flid } = useParams();
const [invoicePaidDetail, setInvoicePaidDetail] = useState([]);

Loading…
Cancel
Save