|
@@ -38,13 +38,18 @@
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="6">
|
|
|
- <el-form-item label="关联预支" prop="advanceId" v-if="formData.data.type === '3'">
|
|
|
+ <el-col :span="6" v-if="formData.data.type === '3'">
|
|
|
+ <el-form-item label="关联预支" prop="advanceId">
|
|
|
<el-select v-model="formData.data.advanceId" placeholder="请选择" filterable style="width: 100%" @change="changeAdvanceId">
|
|
|
<el-option v-for="item in advanceList" :label="item.createTime.substr(0, 10) + ' ' + item.currency + item.total" :value="item.id"> </el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
+ <el-col :span="6" v-if="formData.data.type === '3'">
|
|
|
+ <el-form-item label=" ">
|
|
|
+ <el-button type="primary" @click="clickPrint" text>查看</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
</el-row>
|
|
|
<el-row>
|
|
|
<el-col :span="6">
|
|
@@ -187,6 +192,213 @@
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
+
|
|
|
+ <el-dialog title="查看" v-if="openPrint" v-model="openPrint" width="680px">
|
|
|
+ <div id="pdfDom" style="width: 616px">
|
|
|
+ <div style="margin: 16px 8px; border: 1px solid black; font-size: 12px !important; color: black">
|
|
|
+ <div style="font-size: 16px; font-weight: 700; text-align: center; padding: 8px">
|
|
|
+ <span>{{ printDetails.corporationName }}</span>
|
|
|
+ <span style="margin-left: 16px">{{ dictDataEcho(printDetails.type, fundsType) }}审批单</span>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow"></div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">请款部门</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.deptName }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 80px">货币</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ dictDataEcho(printDetails.currency, currencyType) }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">请款时间</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.createTime }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 80px">发票类型</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)"></div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex" v-if="printDetails.type == '3'">
|
|
|
+ <div class="contentRow" style="width: 80px">预支单</div>
|
|
|
+ <div class="contentRow" style="width: calc(100% - 80px)">
|
|
|
+ {{ printDetails.advanceText }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">请款说明</div>
|
|
|
+ <div class="contentRow" style="width: calc(100% - 80px)">
|
|
|
+ {{ printDetails.paymentRemarks }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">凭证</div>
|
|
|
+ <div class="contentRow" style="width: calc(100% - 80px)"></div>
|
|
|
+ </div>
|
|
|
+ <div class="specialRow">
|
|
|
+ <span>请款明细</span>
|
|
|
+ </div>
|
|
|
+ <div v-if="printDetails.type == '3'">
|
|
|
+ <div v-if="printDetails.accountRequestFundsDetailList && printDetails.accountRequestFundsDetailList.length > 0">
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 17%">费用类型</div>
|
|
|
+ <div class="contentRow" style="width: 17%">关联合同</div>
|
|
|
+ <div class="contentRow" style="width: 17%">预支金额</div>
|
|
|
+ <div class="contentRow" style="width: 32%">核销说明</div>
|
|
|
+ <div class="contentRow" style="width: 17%">核销金额</div>
|
|
|
+ </div>
|
|
|
+ <div v-for="item in printDetails.accountRequestFundsDetailList" :key="item.id">
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 17%">
|
|
|
+ {{ dictDataEcho(item.costType, fundsCostType) }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 17%">
|
|
|
+ {{ item.contractCode }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 17%">
|
|
|
+ {{ item.advanceAmount }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 32%">
|
|
|
+ {{ item.remarks }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 17%">
|
|
|
+ {{ item.amount }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 17%">费用类型</div>
|
|
|
+ <div class="contentRow" style="width: 17%">关联合同</div>
|
|
|
+ <div class="contentRow" style="width: 17%">预支金额</div>
|
|
|
+ <div class="contentRow" style="width: 32%">核销说明</div>
|
|
|
+ <div class="contentRow" style="width: 17%">核销金额</div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 17%"></div>
|
|
|
+ <div class="contentRow" style="width: 17%"></div>
|
|
|
+ <div class="contentRow" style="width: 17%"></div>
|
|
|
+ <div class="contentRow" style="width: 32%"></div>
|
|
|
+ <div class="contentRow" style="width: 17%"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">预支总额</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">{{ printDetails.advanceAmounts }}</div>
|
|
|
+ <div class="contentRow" style="width: 80px">核销总额</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">{{ printDetails.total }}</div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">差额</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)"></div>
|
|
|
+ <div class="contentRow" style="width: 80px">单证数量</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">{{ printDetails.quantity }}</div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <div v-if="printDetails.accountRequestFundsDetailList && printDetails.accountRequestFundsDetailList.length > 0">
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 25%">费用类型</div>
|
|
|
+ <div class="contentRow" style="width: 25%">关联合同</div>
|
|
|
+ <div class="contentRow" style="width: 25%">款项说明</div>
|
|
|
+ <div class="contentRow" style="width: 25%">请款金额</div>
|
|
|
+ </div>
|
|
|
+ <div v-for="item in printDetails.accountRequestFundsDetailList" :key="item.id">
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 25%">
|
|
|
+ {{ dictDataEcho(item.costType, fundsCostType) }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 25%">
|
|
|
+ {{ item.contractCode }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 25%">
|
|
|
+ {{ item.remarks }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 25%">
|
|
|
+ {{ item.amount }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 25%">费用类型</div>
|
|
|
+ <div class="contentRow" style="width: 25%">关联合同</div>
|
|
|
+ <div class="contentRow" style="width: 25%">款项说明</div>
|
|
|
+ <div class="contentRow" style="width: 25%">请款金额</div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 25%"></div>
|
|
|
+ <div class="contentRow" style="width: 25%"></div>
|
|
|
+ <div class="contentRow" style="width: 25%"></div>
|
|
|
+ <div class="contentRow" style="width: 25%"></div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">请款总额</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.total }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 80px">单证数量</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.quantity }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="specialRow">
|
|
|
+ <span>付款明细</span>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">付款方式</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ dictDataEcho(printDetails.paymentMethod, fundsPaymentMethod) }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 80px">付款账户</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ dictValueLabel(printDetails.accountManagementId, accountData) }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">户名</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.name }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 80px">开户银行</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.openingBank }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="baseRow" style="display: flex">
|
|
|
+ <div class="contentRow" style="width: 80px">账号</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.accountOpening }}
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 80px">联行号</div>
|
|
|
+ <div class="contentRow" style="width: calc(50% - 80px)">
|
|
|
+ {{ printDetails.interbankNumber }}
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div class="specialRow">
|
|
|
+ <span>审批记录</span>
|
|
|
+ </div>
|
|
|
+ <template v-if="printDetails.recordList && printDetails.recordList.length > 0">
|
|
|
+ <div class="baseRow" style="display: flex" v-for="(item, index) in printDetails.recordList" :key="index">
|
|
|
+ <div class="contentRow" style="width: 80px">{{ item.nodeName }}</div>
|
|
|
+ <div class="contentRow" style="width: calc(100% - 330px)">
|
|
|
+ <span v-if="item.remark">{{ item.remark }}</span>
|
|
|
+ </div>
|
|
|
+ <div class="contentRow" style="width: 110px">{{ item.processedUser }}</div>
|
|
|
+ <div class="contentRow" style="width: 140px">{{ item.processedDate }}</div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <template #footer>
|
|
|
+ <el-button @click="openPrint = false" size="large">取消</el-button>
|
|
|
+ <el-button type="primary" @click="clickDownload()" size="large">下载PDF</el-button>
|
|
|
+ </template>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -457,9 +669,17 @@ const changeType = () => {
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
+const openPrint = ref(false);
|
|
|
+const printDetails = ref({});
|
|
|
const changeAdvanceId = (val) => {
|
|
|
if (val) {
|
|
|
proxy.post("/accountRequestFunds/detail", { id: val }).then((res) => {
|
|
|
+ printDetails.value = res;
|
|
|
+ if (res.flowInfoId) {
|
|
|
+ proxy.post("/flowExample/getApprovalRecord", { id: res.flowInfoId }).then((record) => {
|
|
|
+ printDetails.value.recordList = record.recordList;
|
|
|
+ });
|
|
|
+ }
|
|
|
formData.data.departmentId = res.departmentId;
|
|
|
formData.data.currency = res.currency;
|
|
|
formData.data.paymentRemarks = res.paymentRemarks;
|
|
@@ -496,6 +716,16 @@ const changeAdvanceId = (val) => {
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
+const clickDownload = () => {
|
|
|
+ proxy.getPdf("请款PDF文件");
|
|
|
+};
|
|
|
+const clickPrint = () => {
|
|
|
+ if (formData.data.advanceId) {
|
|
|
+ openPrint.value = true;
|
|
|
+ } else {
|
|
|
+ ElMessage("请选择关联预支");
|
|
|
+ }
|
|
|
+};
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
@@ -506,4 +736,21 @@ const changeAdvanceId = (val) => {
|
|
|
::v-deep(.el-input-number .el-input__inner) {
|
|
|
text-align: left;
|
|
|
}
|
|
|
+.baseRow {
|
|
|
+ min-height: 24px;
|
|
|
+ border-top: 1px solid black;
|
|
|
+}
|
|
|
+.contentRow {
|
|
|
+ border-right: 1px solid black;
|
|
|
+ line-height: 24px;
|
|
|
+ padding-left: 4px;
|
|
|
+}
|
|
|
+.specialRow {
|
|
|
+ font-size: 14px;
|
|
|
+ font-weight: 700;
|
|
|
+ text-align: center;
|
|
|
+ border-top: 1px solid black;
|
|
|
+ height: 30px;
|
|
|
+ line-height: 30px;
|
|
|
+}
|
|
|
</style>
|