|
@@ -4,6 +4,10 @@ import { computed, reactive, ref } from "vue";
|
|
import { upload_invoice_rules } from "../../../config/configs";
|
|
import { upload_invoice_rules } from "../../../config/configs";
|
|
import { input_type_list, open_type_list } from "../../../status";
|
|
import { input_type_list, open_type_list } from "../../../status";
|
|
|
|
|
|
|
|
+const props = defineProps<{
|
|
|
|
+ iSelectronic: boolean;
|
|
|
|
+}>();
|
|
|
|
+
|
|
const emit = defineEmits(["changeStatus"]);
|
|
const emit = defineEmits(["changeStatus"]);
|
|
const rules = reactive({ ...upload_invoice_rules });
|
|
const rules = reactive({ ...upload_invoice_rules });
|
|
|
|
|
|
@@ -26,18 +30,37 @@ const formData = reactive({
|
|
});
|
|
});
|
|
|
|
|
|
function handleSaveStatus() {
|
|
function handleSaveStatus() {
|
|
- const { input_type: _, subtotal_fee, total_fee, ...otherParams } = formData;
|
|
|
|
-
|
|
|
|
- emit(
|
|
|
|
- "changeStatus",
|
|
|
|
- formData.status === "4"
|
|
|
|
- ? { status: "4", remark: formData.remark }
|
|
|
|
- : {
|
|
|
|
- ...otherParams,
|
|
|
|
- subtotal_fee: subtotal_fee.toFixed(2),
|
|
|
|
- total_fee: total_fee.toFixed(2)
|
|
|
|
- }
|
|
|
|
- );
|
|
|
|
|
|
+ const {
|
|
|
|
+ input_type: _,
|
|
|
|
+ status,
|
|
|
|
+ remark,
|
|
|
|
+ subtotal_fee,
|
|
|
|
+ total_fee,
|
|
|
|
+ ...otherParams
|
|
|
|
+ } = formData;
|
|
|
|
+ let params: Record<string, string> | null = null;
|
|
|
|
+
|
|
|
|
+ /***
|
|
|
|
+ * 线下开票 & 电子发票 -》 开票完成
|
|
|
|
+ * 线下开票 & 纸质发票 -》 填写物流
|
|
|
|
+ * 金税开票 -》 财务审核
|
|
|
|
+ */
|
|
|
|
+
|
|
|
|
+ switch (status) {
|
|
|
|
+ case "4":
|
|
|
|
+ params = { status: "4", remark: formData.remark };
|
|
|
|
+ break;
|
|
|
|
+ default:
|
|
|
|
+ if (formData.open_type === "1") {
|
|
|
|
+ //金税开票 -> 财务审核
|
|
|
|
+ params = { status: "2", remark };
|
|
|
|
+ } else {
|
|
|
|
+ //线下开票
|
|
|
|
+ params = { status: props.iSelectronic ? "5" : "4" };
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
function handleScanKeydown(evt: KeyboardEvent) {
|
|
function handleScanKeydown(evt: KeyboardEvent) {
|
|
@@ -71,10 +94,10 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
</script>
|
|
</script>
|
|
|
|
|
|
<template>
|
|
<template>
|
|
|
|
+ <!-- :rules="rules" -->
|
|
<el-form
|
|
<el-form
|
|
ref="formRef"
|
|
ref="formRef"
|
|
:model="formData"
|
|
:model="formData"
|
|
- :rules="rules"
|
|
|
|
label-width="90px"
|
|
label-width="90px"
|
|
class="demo-ruleForm"
|
|
class="demo-ruleForm"
|
|
size="small"
|
|
size="small"
|
|
@@ -100,8 +123,9 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
:label="si.label"
|
|
:label="si.label"
|
|
:value="si.value"
|
|
:value="si.value"
|
|
/>
|
|
/>
|
|
- </el-select> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
|
|
|
|
<el-col :span="16">
|
|
<el-col :span="16">
|
|
<el-form-item label="审核备注" prop="remark">
|
|
<el-form-item label="审核备注" prop="remark">
|
|
@@ -111,8 +135,9 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
type="textarea"
|
|
type="textarea"
|
|
maxlength="2000"
|
|
maxlength="2000"
|
|
placeholder="申请备注"
|
|
placeholder="申请备注"
|
|
- /> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<el-row v-show="formData.open_type !== '1'" v-if="!noPass">
|
|
<el-row v-show="formData.open_type !== '1'" v-if="!noPass">
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
@@ -127,8 +152,10 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
:key="'type' + si.value + sii"
|
|
:key="'type' + si.value + sii"
|
|
:label="si.label"
|
|
:label="si.label"
|
|
:value="si.value"
|
|
:value="si.value"
|
|
- /> </el-select></el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-select>
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
<el-col
|
|
<el-col
|
|
:span="16"
|
|
:span="16"
|
|
style="padding: 0 0 0 16px"
|
|
style="padding: 0 0 0 16px"
|
|
@@ -151,24 +178,27 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
v-model="formData.invCode"
|
|
v-model="formData.invCode"
|
|
placeholder="发票号码"
|
|
placeholder="发票号码"
|
|
:disabled="disabled"
|
|
:disabled="disabled"
|
|
- /> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="发票代码" prop="invNum">
|
|
<el-form-item label="发票代码" prop="invNum">
|
|
<el-input
|
|
<el-input
|
|
v-model="formData.invNum"
|
|
v-model="formData.invNum"
|
|
placeholder="发票代码"
|
|
placeholder="发票代码"
|
|
:disabled="disabled"
|
|
:disabled="disabled"
|
|
- /> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="开票日期" prop="open_date">
|
|
<el-form-item label="开票日期" prop="open_date">
|
|
<el-date-picker
|
|
<el-date-picker
|
|
value-format="YYYY-MM-DD HH:mm:ss"
|
|
value-format="YYYY-MM-DD HH:mm:ss"
|
|
v-model="formData.open_date"
|
|
v-model="formData.open_date"
|
|
:disabled="disabled"
|
|
:disabled="disabled"
|
|
- /> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="税前金额" prop="subtotal_fee">
|
|
<el-form-item label="税前金额" prop="subtotal_fee">
|
|
<el-input-number
|
|
<el-input-number
|
|
@@ -178,8 +208,9 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
:min="0"
|
|
:min="0"
|
|
:max="999999"
|
|
:max="999999"
|
|
:disabled="disabled"
|
|
:disabled="disabled"
|
|
- /> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
<el-col :span="8">
|
|
<el-col :span="8">
|
|
<el-form-item label="税后金额" prop="total_fee">
|
|
<el-form-item label="税后金额" prop="total_fee">
|
|
<el-input-number
|
|
<el-input-number
|
|
@@ -189,8 +220,9 @@ function handleScanKeydown(evt: KeyboardEvent) {
|
|
:min="0"
|
|
:min="0"
|
|
:max="999999"
|
|
:max="999999"
|
|
:disabled="disabled"
|
|
:disabled="disabled"
|
|
- /> </el-form-item
|
|
|
|
- ></el-col>
|
|
|
|
|
|
+ />
|
|
|
|
+ </el-form-item>
|
|
|
|
+ </el-col>
|
|
</el-row>
|
|
</el-row>
|
|
<div class="flex justify-end">
|
|
<div class="flex justify-end">
|
|
<el-button type="primary" @click="handleSaveStatus">保存</el-button>
|
|
<el-button type="primary" @click="handleSaveStatus">保存</el-button>
|