|
@@ -1,39 +1,27 @@
|
|
|
<template>
|
|
|
<div class="tenant">
|
|
|
- <byTable
|
|
|
- :hideTable="true"
|
|
|
- :hidePagination="true"
|
|
|
- :source="sourceList.data"
|
|
|
- :pagination="sourceList.pagination"
|
|
|
- :config="config"
|
|
|
- :statConfig="statConfig"
|
|
|
- :loading="loading"
|
|
|
- :selectConfig="selectConfig"
|
|
|
- highlight-current-row
|
|
|
- :onMoreSearch="true"
|
|
|
- @moreSearch="clickMoreSearch"
|
|
|
- :action-list="[
|
|
|
+ <byTable :hideTable="true" :hidePagination="true" :source="sourceList.data" :pagination="sourceList.pagination" :config="config"
|
|
|
+ :statConfig="statConfig" :loading="loading" :selectConfig="selectConfig" highlight-current-row :onMoreSearch="true"
|
|
|
+ @moreSearch="clickMoreSearch" :action-list="[
|
|
|
{
|
|
|
text: '默认汇率',
|
|
|
action: () => openModal(),
|
|
|
},
|
|
|
- ]"
|
|
|
- @get-list="getList"
|
|
|
- >
|
|
|
+ ]" @get-list="getList">
|
|
|
</byTable>
|
|
|
- <div
|
|
|
- style="padding: 0 20px 20px 20px; background-color: white"
|
|
|
- v-if="rateStatus"
|
|
|
- >
|
|
|
+ <div style="padding: 0 20px 20px 20px; background-color: white" v-if="rateStatus">
|
|
|
<el-table :data="sourceList.data">
|
|
|
<el-table-column label="合同编号" prop="code" width="160" fixed />
|
|
|
- <el-table-column
|
|
|
- label="客户名称"
|
|
|
- prop="customerName"
|
|
|
- min-width="200"
|
|
|
- fixed
|
|
|
- />
|
|
|
+ <el-table-column label="客户名称" prop="customerName" min-width="200" fixed />
|
|
|
<el-table-column label="业务员" prop="userName" width="140" fixed />
|
|
|
+ <el-table-column label="收入总计" prop="incomeAmount" width="140" fixed />
|
|
|
+ <el-table-column label="支出总计" prop="expenditureAmount" width="140" fixed />
|
|
|
+ <el-table-column label="毛利率" width="140" fixed>
|
|
|
+ <template #default="{ row }">
|
|
|
+ <div>{{ parseFloat(row.grossRate).toFixed(2) }}%</div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="毛利" prop="gross" width="140" fixed />
|
|
|
<el-table-column label="合同金额" width="140">
|
|
|
<template #default="{ row }">
|
|
|
<div>{{ row.currency }} {{ row.amount }}</div>
|
|
@@ -52,11 +40,7 @@
|
|
|
<div>13%</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column
|
|
|
- label="应退税金额"
|
|
|
- prop="refundableAmount"
|
|
|
- width="140"
|
|
|
- />
|
|
|
+ <el-table-column label="应退税金额" prop="refundableAmount" width="140" />
|
|
|
<el-table-column label="包材金额" width="140">
|
|
|
<template #default="{ row }">
|
|
|
<div>{{ row.peritectoidAmount }}</div>
|
|
@@ -104,63 +88,27 @@
|
|
|
<div>{{ row.other }}</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="收入总计" prop="incomeAmount" width="140" />
|
|
|
- <el-table-column
|
|
|
- label="支出总计"
|
|
|
- prop="expenditureAmount"
|
|
|
- width="140"
|
|
|
- />
|
|
|
- <el-table-column label="毛利率" width="140">
|
|
|
- <template #default="{ row }">
|
|
|
- <div>{{ parseFloat(row.grossRate).toFixed(2) }}%</div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column label="毛利" prop="gross" width="140" />
|
|
|
+
|
|
|
<el-table-column label="操作" align="center" width="160" fixed="right">
|
|
|
<template #default="{ row }">
|
|
|
<div>
|
|
|
- <el-button type="primary" @click="changeExchangeRate(row)" link
|
|
|
- >汇率</el-button
|
|
|
- >
|
|
|
- <el-button type="primary" @click="changeBudget(row)" link
|
|
|
- >预算</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="changeExchangeRate(row)" link>汇率</el-button>
|
|
|
+ <el-button type="primary" @click="changeBudget(row)" link>预算</el-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
<el-row style="padding: 20px" justify="end" type="flex">
|
|
|
- <el-pagination
|
|
|
- background
|
|
|
- layout="total, sizes, prev, pager, next, jumper"
|
|
|
- :current-page="sourceList.pagination.pageNum"
|
|
|
- :page-size="sourceList.pagination.pageSize"
|
|
|
- :total="sourceList.pagination.total"
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handlePageChange"
|
|
|
- />
|
|
|
+ <el-pagination background layout="total, sizes, prev, pager, next, jumper" :current-page="sourceList.pagination.pageNum"
|
|
|
+ :page-size="sourceList.pagination.pageSize" :total="sourceList.pagination.total" @size-change="handleSizeChange"
|
|
|
+ @current-change="handlePageChange" />
|
|
|
</el-row>
|
|
|
</div>
|
|
|
|
|
|
- <el-dialog
|
|
|
- title="默认汇率"
|
|
|
- v-if="dialogVisible"
|
|
|
- v-model="dialogVisible"
|
|
|
- width="600"
|
|
|
- >
|
|
|
- <byForm
|
|
|
- :formConfig="formConfig"
|
|
|
- :formOption="formOption"
|
|
|
- v-model="formData.data"
|
|
|
- :rules="rules"
|
|
|
- ref="submit"
|
|
|
- >
|
|
|
+ <el-dialog title="默认汇率" v-if="dialogVisible" v-model="dialogVisible" width="600">
|
|
|
+ <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="submit">
|
|
|
<template #currencyList>
|
|
|
- <el-table
|
|
|
- :data="formData.data.list"
|
|
|
- style="width: 100%"
|
|
|
- v-loading="loadingDialog"
|
|
|
- >
|
|
|
+ <el-table :data="formData.data.list" style="width: 100%" v-loading="loadingDialog">
|
|
|
<el-table-column label="币种">
|
|
|
<template #default="{ row }">
|
|
|
<div>{{ dictValueLabel(row.type, accountCurrency) }}</div>
|
|
@@ -168,20 +116,9 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column label="兑 CHY 汇率">
|
|
|
<template #default="{ row, $index }">
|
|
|
- <el-form-item
|
|
|
- :prop="'list.' + $index + '.rate'"
|
|
|
- :rules="rules.rate"
|
|
|
- :inline-message="true"
|
|
|
- >
|
|
|
- <el-input-number
|
|
|
- onmousewheel="return false;"
|
|
|
- v-model="row.rate"
|
|
|
- placeholder="请输入兑 CHY 汇率"
|
|
|
- style="width: 100%"
|
|
|
- :precision="6"
|
|
|
- :controls="false"
|
|
|
- :min="0"
|
|
|
- />
|
|
|
+ <el-form-item :prop="'list.' + $index + '.rate'" :rules="rules.rate" :inline-message="true">
|
|
|
+ <el-input-number onmousewheel="return false;" v-model="row.rate" placeholder="请输入兑 CHY 汇率" style="width: 100%" :precision="6"
|
|
|
+ :controls="false" :min="0" />
|
|
|
</el-form-item>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -190,31 +127,14 @@
|
|
|
</byForm>
|
|
|
<template #footer>
|
|
|
<el-button @click="dialogVisible = false" size="large">取 消</el-button>
|
|
|
- <el-button type="primary" @click="submitForm()" size="large"
|
|
|
- >确 定</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="submitForm()" size="large">确 定</el-button>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
|
|
|
- <el-dialog
|
|
|
- title="调整汇率"
|
|
|
- v-if="openChange"
|
|
|
- v-model="openChange"
|
|
|
- width="600"
|
|
|
- >
|
|
|
- <byForm
|
|
|
- :formConfig="formChangeConfig"
|
|
|
- :formOption="formOption"
|
|
|
- v-model="formChangeData.data"
|
|
|
- :rules="rules"
|
|
|
- ref="change"
|
|
|
- >
|
|
|
+ <el-dialog title="调整汇率" v-if="openChange" v-model="openChange" width="600">
|
|
|
+ <byForm :formConfig="formChangeConfig" :formOption="formOption" v-model="formChangeData.data" :rules="rules" ref="change">
|
|
|
<template #currencyList>
|
|
|
- <el-table
|
|
|
- :data="formChangeData.data.list"
|
|
|
- style="width: 100%"
|
|
|
- v-loading="loadingDialog"
|
|
|
- >
|
|
|
+ <el-table :data="formChangeData.data.list" style="width: 100%" v-loading="loadingDialog">
|
|
|
<el-table-column label="币种">
|
|
|
<template #default="{ row }">
|
|
|
<div>{{ dictValueLabel(row.type, accountCurrency) }}</div>
|
|
@@ -222,20 +142,9 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column label="兑 CHY 汇率">
|
|
|
<template #default="{ row, $index }">
|
|
|
- <el-form-item
|
|
|
- :prop="'list.' + $index + '.rate'"
|
|
|
- :rules="rules.rate"
|
|
|
- :inline-message="true"
|
|
|
- >
|
|
|
- <el-input-number
|
|
|
- onmousewheel="return false;"
|
|
|
- v-model="row.rate"
|
|
|
- placeholder="请输入兑 CHY 汇率"
|
|
|
- style="width: 100%"
|
|
|
- :precision="6"
|
|
|
- :controls="false"
|
|
|
- :min="0"
|
|
|
- />
|
|
|
+ <el-form-item :prop="'list.' + $index + '.rate'" :rules="rules.rate" :inline-message="true">
|
|
|
+ <el-input-number onmousewheel="return false;" v-model="row.rate" placeholder="请输入兑 CHY 汇率" style="width: 100%" :precision="6"
|
|
|
+ :controls="false" :min="0" />
|
|
|
</el-form-item>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -244,198 +153,73 @@
|
|
|
</byForm>
|
|
|
<template #footer>
|
|
|
<el-button @click="openChange = false" size="large">取 消</el-button>
|
|
|
- <el-button type="primary" @click="submitChangeForm()" size="large"
|
|
|
- >确 定</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="submitChangeForm()" size="large">确 定</el-button>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
|
|
|
<el-dialog title="预算" v-if="openBudget" v-model="openBudget" width="400">
|
|
|
- <byForm
|
|
|
- :formConfig="formBudgetConfig"
|
|
|
- :formOption="formOption"
|
|
|
- v-model="formBudgetData.data"
|
|
|
- ref="budget"
|
|
|
- >
|
|
|
+ <byForm :formConfig="formBudgetConfig" :formOption="formOption" v-model="formBudgetData.data" ref="budget">
|
|
|
<template #budgetMoney>
|
|
|
<div style="width: 100%">
|
|
|
<el-form-item label="拖车费" prop="trailerFee">
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.trailerFee"
|
|
|
- placeholder="请输入拖车费"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-input v-model="formBudgetData.data.trailerFee" placeholder="请输入拖车费" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.trailerFeeCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.trailerFeeCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="报关费"
|
|
|
- prop="customsFee"
|
|
|
- style="margin-top: 20px"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.customsFee"
|
|
|
- placeholder="请输入报关费"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-form-item label="报关费" prop="customsFee" style="margin-top: 20px">
|
|
|
+ <el-input v-model="formBudgetData.data.customsFee" placeholder="请输入报关费" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.customsFeeCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.customsFeeCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="代理费"
|
|
|
- prop="agencyFee"
|
|
|
- style="margin-top: 20px"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.agencyFee"
|
|
|
- placeholder="请输入代理费"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-form-item label="代理费" prop="agencyFee" style="margin-top: 20px">
|
|
|
+ <el-input v-model="formBudgetData.data.agencyFee" placeholder="请输入代理费" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.agencyFeeCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.agencyFeeCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="港杂费"
|
|
|
- prop="portMixedFee"
|
|
|
- style="margin-top: 20px"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.portMixedFee"
|
|
|
- placeholder="请输入港杂费"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-form-item label="港杂费" prop="portMixedFee" style="margin-top: 20px">
|
|
|
+ <el-input v-model="formBudgetData.data.portMixedFee" placeholder="请输入港杂费" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.portMixedFeeCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.portMixedFeeCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="验货红包"
|
|
|
- prop="inspectionRedPack"
|
|
|
- style="margin-top: 20px"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.inspectionRedPack"
|
|
|
- placeholder="请输入验货红包"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-form-item label="验货红包" prop="inspectionRedPack" style="margin-top: 20px">
|
|
|
+ <el-input v-model="formBudgetData.data.inspectionRedPack" placeholder="请输入验货红包" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.inspectionRedPackCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.inspectionRedPackCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
- <el-form-item
|
|
|
- label="佣金"
|
|
|
- prop="commission"
|
|
|
- style="margin-top: 20px"
|
|
|
- >
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.commission"
|
|
|
- placeholder="请输入佣金"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-form-item label="佣金" prop="commission" style="margin-top: 20px">
|
|
|
+ <el-input v-model="formBudgetData.data.commission" placeholder="请输入佣金" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.commissionCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.commissionCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="其他" prop="other" style="margin-top: 20px">
|
|
|
- <el-input
|
|
|
- v-model="formBudgetData.data.other"
|
|
|
- placeholder="请输入其他"
|
|
|
- class="input-with-select"
|
|
|
- >
|
|
|
+ <el-input v-model="formBudgetData.data.other" placeholder="请输入其他" class="input-with-select">
|
|
|
<template #prepend>
|
|
|
- <el-select
|
|
|
- v-model="formBudgetData.data.otherCurrency"
|
|
|
- placeholder="请选择货币"
|
|
|
- style="width: 115px"
|
|
|
- disabled
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="(item, index) in accountCurrency"
|
|
|
- :key="index"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value"
|
|
|
- />
|
|
|
+ <el-select v-model="formBudgetData.data.otherCurrency" placeholder="请选择货币" style="width: 115px" disabled>
|
|
|
+ <el-option v-for="(item, index) in accountCurrency" :key="index" :label="item.label" :value="item.value" />
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-input>
|
|
@@ -445,29 +229,16 @@
|
|
|
</byForm>
|
|
|
<template #footer>
|
|
|
<el-button @click="openBudget = false" size="large">取 消</el-button>
|
|
|
- <el-button type="primary" @click="submitBudgetForm()" size="large"
|
|
|
- >确 定</el-button
|
|
|
- >
|
|
|
+ <el-button type="primary" @click="submitBudgetForm()" size="large">确 定</el-button>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
|
|
|
- <el-dialog
|
|
|
- :title="'高级检索'"
|
|
|
- v-model="moreSearchDialog"
|
|
|
- width="500px"
|
|
|
- destroy-on-close
|
|
|
- >
|
|
|
- <byForm
|
|
|
- :formConfig="formSearchConfig"
|
|
|
- :formOption="formOption"
|
|
|
- v-model="sourceList.pagination"
|
|
|
- >
|
|
|
+ <el-dialog :title="'高级检索'" v-model="moreSearchDialog" width="500px" destroy-on-close>
|
|
|
+ <byForm :formConfig="formSearchConfig" :formOption="formOption" v-model="sourceList.pagination">
|
|
|
</byForm>
|
|
|
<template #footer>
|
|
|
<el-button @click="moreSearchReset" size="large">重置</el-button>
|
|
|
- <el-button @click="moreSearchQuery" type="primary" size="large"
|
|
|
- >搜索</el-button
|
|
|
- >
|
|
|
+ <el-button @click="moreSearchQuery" type="primary" size="large">搜索</el-button>
|
|
|
</template>
|
|
|
</el-dialog>
|
|
|
</div>
|