|
@@ -1,31 +1,43 @@
|
|
|
<script setup lang="ts">
|
|
|
import { computed, onMounted, ref } from "vue";
|
|
|
-import NewPayment from "./component/new-payment/index.vue";
|
|
|
-import InitiateAudit from "./component/Initiate-audit/index.vue";
|
|
|
-import BusinessAudit from "./component/business-audit/index.vue";
|
|
|
-import FinancialAudit from "./component/financial-audit/index.vue";
|
|
|
-import PaymentReceipt from "./component/payment-receipt/index.vue";
|
|
|
-import { httpStatus, httpAdd } from "/@/api/purchase/orderPay";
|
|
|
-import { httpList } from "/@/api/purchase/orderRecord";
|
|
|
+import InitiateAudit from "./component/approval-process/Initiate-audit.vue";
|
|
|
+import BusinessAudit from "./component/approval-process/business-audit.vue";
|
|
|
+import FinancialAudit from "./component/approval-process/financial-audit.vue";
|
|
|
+import PaymentReceipt from "./component/approval-process/payment-receipt.vue";
|
|
|
+import CreatePayment from "./component/create-payment/index.vue";
|
|
|
+import PaymentDetail from "./component/payment-detail/index.vue";
|
|
|
import { useShowAudit } from "./hooks/use-show-audit";
|
|
|
import { useRoute, useRouter } from "vue-router";
|
|
|
import { useResponseHandle } from "/@/hooks";
|
|
|
|
|
|
-const responseHandle = useResponseHandle();
|
|
|
+import {
|
|
|
+ httpStatus,
|
|
|
+ httpAdd,
|
|
|
+ httpList,
|
|
|
+ httpInfo
|
|
|
+} from "/@/api/purchase/orderPay";
|
|
|
+
|
|
|
const { push } = useRouter();
|
|
|
const { query } = useRoute();
|
|
|
+const dzNo = computed(() => query.id as string);
|
|
|
+const isCreate = computed(() => !dzNo.value);
|
|
|
+const responseHandle = useResponseHandle();
|
|
|
|
|
|
-const payNo = computed(() => query.id as string);
|
|
|
-const isCreate = computed(() => !payNo.value);
|
|
|
+//对账列表
|
|
|
const paymentList = ref<Array<Record<string, string>>>([]);
|
|
|
-const paymentDetail = ref<Record<string, string>>({});
|
|
|
+
|
|
|
+//付款详情
|
|
|
+const purchPayDetail = ref<Record<string, string>>({});
|
|
|
const handler = () => push("/purchase/purchPay");
|
|
|
|
|
|
-//状态
|
|
|
+//采购付款详情状态
|
|
|
const status = computed(() =>
|
|
|
- paymentDetail.value ? Number(paymentDetail.value.status) : 0
|
|
|
+ purchPayDetail.value ? Number(purchPayDetail.value.status) : 0
|
|
|
);
|
|
|
|
|
|
+//展开所有折叠面板
|
|
|
+const collapses = ["0", "1", "2", "3", "4"];
|
|
|
+
|
|
|
const {
|
|
|
showInitiateAudit,
|
|
|
showBusinessAudit,
|
|
@@ -33,22 +45,15 @@ const {
|
|
|
showPaymentReceipt
|
|
|
} = useShowAudit(status, isCreate);
|
|
|
|
|
|
-const paymentTitle = computed(() =>
|
|
|
- isCreate.value ? "新建采购付款订单" : "采购付款申请详情"
|
|
|
-);
|
|
|
-
|
|
|
-//初始化采购
|
|
|
+//初始化订单对账列表
|
|
|
async function requestPaymentList() {
|
|
|
- const { code, message, data } = await httpList({
|
|
|
- ...(payNo.value ? { payNo: payNo.value } : {})
|
|
|
- });
|
|
|
+ const { code, message, data } = await httpList({});
|
|
|
|
|
|
responseHandle({
|
|
|
code,
|
|
|
message,
|
|
|
handler: () => {
|
|
|
paymentList.value = data.list;
|
|
|
- paymentDetail.value = data.list[0];
|
|
|
}
|
|
|
});
|
|
|
}
|
|
@@ -61,7 +66,7 @@ async function requestStatusPayment(
|
|
|
const { code, message } = await httpStatus({
|
|
|
status,
|
|
|
...otherParam,
|
|
|
- payNo: payNo.value
|
|
|
+ dzNo: dzNo.value
|
|
|
});
|
|
|
|
|
|
responseHandle({
|
|
@@ -82,52 +87,83 @@ async function requesetCreatePayment(data: Record<string, string>) {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-onMounted(() => requestPaymentList());
|
|
|
+//请求采购付款详情
|
|
|
+async function requesetPaymentDetail() {
|
|
|
+ const { message, code, data } = await httpInfo({
|
|
|
+ DzNo: dzNo.value
|
|
|
+ });
|
|
|
+
|
|
|
+ responseHandle({
|
|
|
+ message,
|
|
|
+ code,
|
|
|
+ handler: () => (purchPayDetail.value = data)
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+//创建选择订单对账列表 详情查询付款单详情 查询采购列表
|
|
|
+async function initalData() {
|
|
|
+ if (isCreate.value) return requestPaymentList();
|
|
|
+ //拉取详情
|
|
|
+ requesetPaymentDetail();
|
|
|
+}
|
|
|
+
|
|
|
+//初始化数据
|
|
|
+onMounted(() => initalData());
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
<div class="pay__content" bg-white>
|
|
|
- <h1 text-xl font-bold py-2>{{ paymentTitle }}</h1>
|
|
|
<!-- 创建采购付款订单 -->
|
|
|
- <NewPayment
|
|
|
- :paymentList="paymentList"
|
|
|
- :readonly="isCreate"
|
|
|
- @create-payment="requesetCreatePayment"
|
|
|
- />
|
|
|
-
|
|
|
- <!-- 发起审核 状态1 -->
|
|
|
- <InitiateAudit
|
|
|
- v-if="showInitiateAudit"
|
|
|
- @change-status="requestStatusPayment"
|
|
|
- />
|
|
|
-
|
|
|
- <!-- 业务审核 状态2 -->
|
|
|
- <BusinessAudit
|
|
|
- v-if="showBusinessAudit"
|
|
|
- :disabled="status > 1"
|
|
|
- :detail="paymentDetail"
|
|
|
- @change-status="requestStatusPayment"
|
|
|
- />
|
|
|
-
|
|
|
- <!-- 财务审核 状态3 -->
|
|
|
- <FinancialAudit
|
|
|
- v-if="showFinancialAudit"
|
|
|
- :disabled="status > 2"
|
|
|
- :detail="paymentDetail"
|
|
|
- @change-status="requestStatusPayment"
|
|
|
- />
|
|
|
-
|
|
|
- <!-- 付款回执 状态4 -->
|
|
|
- <PaymentReceipt
|
|
|
- v-if="showPaymentReceipt"
|
|
|
- :disabled="status > 3"
|
|
|
- @change-status="requestStatusPayment"
|
|
|
- />
|
|
|
+ <template v-if="isCreate">
|
|
|
+ <h1 text-xl font-bold py-2>新建采购付款申请</h1>
|
|
|
+ <CreatePayment
|
|
|
+ v-if="isCreate"
|
|
|
+ :paymentList="paymentList"
|
|
|
+ :readonly="isCreate"
|
|
|
+ @create-payment="requesetCreatePayment"
|
|
|
+ />
|
|
|
+ </template>
|
|
|
+
|
|
|
+ <!-- 采购付款订单详情 -->
|
|
|
+ <ElTabs v-else>
|
|
|
+ <ElTabPane label="采购付款申请详情">
|
|
|
+ <ElCollapse v-model="collapses">
|
|
|
+ <!-- 详情 -->
|
|
|
+ <ElCollapseItem title="采购付款申请详情" name="0">
|
|
|
+ <PaymentDetail :detail="purchPayDetail" />
|
|
|
+ </ElCollapseItem>
|
|
|
+
|
|
|
+ <!-- 审核 -->
|
|
|
+ <ElCollapseItem
|
|
|
+ name="1"
|
|
|
+ title="发起审核流程"
|
|
|
+ v-if="showInitiateAudit"
|
|
|
+ >
|
|
|
+ <InitiateAudit @change-status="requestStatusPayment" />
|
|
|
+ </ElCollapseItem>
|
|
|
+
|
|
|
+ <ElCollapseItem name="2" title="业务审核" v-if="showBusinessAudit">
|
|
|
+ <BusinessAudit @change-status="requestStatusPayment" />
|
|
|
+ </ElCollapseItem>
|
|
|
+
|
|
|
+ <ElCollapseItem name="3" title="财务审核" v-if="showFinancialAudit">
|
|
|
+ <FinancialAudit @change-status="requestStatusPayment" />
|
|
|
+ </ElCollapseItem>
|
|
|
+
|
|
|
+ <ElCollapseItem title="付款回执" name="4" v-if="showPaymentReceipt">
|
|
|
+ <PaymentReceipt @change-status="requestStatusPayment" />
|
|
|
+ </ElCollapseItem>
|
|
|
+ </ElCollapse>
|
|
|
+ </ElTabPane>
|
|
|
+
|
|
|
+ <!-- 审批记录 -->
|
|
|
+ <ElTabPane label="审批记录" />
|
|
|
+ </ElTabs>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
.pay__content {
|
|
|
- padding: 30px !important;
|
|
|
+ padding: 10px !important;
|
|
|
}
|
|
|
</style>
|