|
@@ -4,7 +4,8 @@
|
|
|
<div class="conferencecost-header-left">
|
|
|
<div class="conferencecost-header-left-item">
|
|
|
<label style="width:40px;">会务: </label>
|
|
|
- <el-select @change="conferenceidchange" size="small" v-model="conferenceid" filterable clearable placeholder="请选择">
|
|
|
+ <el-select @change="conferenceidchange" size="small" v-model="conferenceid" filterable clearable
|
|
|
+ placeholder="请选择">
|
|
|
<el-option v-for="item in conferenceidarr" :key="item.id" :label="item.teamName"
|
|
|
:value="item.id">
|
|
|
</el-option>
|
|
@@ -17,13 +18,12 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="conferencecost-header-right">
|
|
|
- <el-select size="small" v-model="conferenceid" clearable placeholder="请选择">
|
|
|
- <el-option v-for="item in a" :key="item.value" :label="item.label"
|
|
|
- :value="item.value">
|
|
|
+ <el-select size="small" v-model="fileSelect" clearable placeholder="请选择" style="width: 150px;">
|
|
|
+ <el-option v-for="item in filetype" :key="item.id" :label="item.name" :value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
- <el-button size="small" type="primary">生成表格</el-button>
|
|
|
- <el-button size="small" @click="ConferenceAffairsSave" type="primary">保存</el-button>
|
|
|
+ <el-button size="small" type="primary" @click="FileDown">生成表格</el-button>
|
|
|
+ <el-button size="small" @click="ConferenceAffairsSave(true)" type="primary">保存</el-button>
|
|
|
<el-button size="small" @click="ConferenceAffairsAudit(1)" type="primary">审核通过</el-button>
|
|
|
</div>
|
|
|
</div>
|
|
@@ -37,25 +37,27 @@
|
|
|
<el-table-column prop="name" label="类型" width="120">
|
|
|
<template slot-scope="scope">
|
|
|
<el-select size="small" v-model="scope.row.priceType" clearable placeholder="请选择">
|
|
|
- <el-option v-for="item in typearr" :key="item.id" :label="item.text"
|
|
|
- :value="item.id">
|
|
|
+ <el-option v-for="item in typearr" :key="item.id" :label="item.text" :value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="单项内容" width="160">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input type="textarea" :rows="3" placeholder="请输入内容" v-model="scope.row.priceName"></el-input>
|
|
|
+ <el-input type="textarea" :rows="3" placeholder="请输入内容"
|
|
|
+ v-model="scope.row.priceName"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="成本单价" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input-number @change="calculateQuotation(scope.row)" :precision="2" size="mini" :controls="false" v-model="scope.row.costPrice"></el-input-number>
|
|
|
+ <el-input-number @change="calculateQuotation(scope.row)" :precision="2" size="mini"
|
|
|
+ :controls="false" v-model="scope.row.costPrice"></el-input-number>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="币种" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-select size="small" @change="currencychange(scope.row)" v-model="scope.row.currency" clearable>
|
|
|
+ <el-select size="small" @change="currencychange(scope.row)" v-model="scope.row.currency"
|
|
|
+ clearable>
|
|
|
<el-option v-for="item in options" :key="item.currencyId" :label="item.currencyCode"
|
|
|
:value="item.currencyId">
|
|
|
</el-option>
|
|
@@ -64,26 +66,28 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="当时汇率" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input-number @change="calculateQuotation(scope.row)" :precision="4" size="mini" :controls="false" v-model="scope.row.rate"></el-input-number>
|
|
|
+ <el-input-number @change="calculateQuotation(scope.row)" :precision="4" size="mini"
|
|
|
+ :controls="false" v-model="scope.row.rate"></el-input-number>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="数量" width="80">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input-number @change="calculateQuotation(scope.row)" :precision="2" size="mini" :controls="false" v-model="scope.row.count"></el-input-number>
|
|
|
+ <el-input-number @change="calculateQuotation(scope.row)" :precision="2" size="mini"
|
|
|
+ :controls="false" v-model="scope.row.count"></el-input-number>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="单位" width="80">
|
|
|
<template slot-scope="scope">
|
|
|
<el-select size="small" v-model="scope.row.unit" placeholder="" clearable>
|
|
|
- <el-option v-for="item in units" :key="item.id" :label="item.text"
|
|
|
- :value="item.id">
|
|
|
+ <el-option v-for="item in units" :key="item.id" :label="item.text" :value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="系数" width="100">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input-number @change="calculateQuotation(scope.row)" :precision="2" size="mini" :controls="false" v-model="scope.row.coefficient"></el-input-number>
|
|
|
+ <el-input-number @change="calculateQuotation(scope.row)" :precision="2" size="mini"
|
|
|
+ :controls="false" v-model="scope.row.coefficient"></el-input-number>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="单项报价金额" width="100">
|
|
@@ -95,7 +99,8 @@
|
|
|
|
|
|
<el-table-column prop="name" label="附加值">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input type="textarea" :rows="3" placeholder="请输入内容" v-model="scope.row.addedValue"></el-input>
|
|
|
+ <el-input type="textarea" :rows="3" placeholder="请输入内容"
|
|
|
+ v-model="scope.row.addedValue"></el-input>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="name" label="明细">
|
|
@@ -116,9 +121,12 @@
|
|
|
<el-table-column label="操作" width="100px">
|
|
|
<template slot-scope="scope">
|
|
|
<div class="conferencecost-content-btn">
|
|
|
- <el-button size="mini" @click="removeRow(scope.$index, scope.row)" type="danger">移 除</el-button>
|
|
|
- <el-button size="mini" @click="ConferenceAffairsAudits(1,scope.row.id)" type="primary">通 过</el-button>
|
|
|
- <el-button size="mini" @click="ConferenceAffairsAudits(-1,scope.row.id)" type="danger">撤 销</el-button>
|
|
|
+ <el-button size="mini" @click="removeRow(scope.$index, scope.row)" type="danger">移
|
|
|
+ 除</el-button>
|
|
|
+ <el-button size="mini" @click="ConferenceAffairsAudits(1, scope.row.id)" type="primary">通
|
|
|
+ 过</el-button>
|
|
|
+ <el-button size="mini" @click="ConferenceAffairsAudits(-1, scope.row.id)" type="danger">撤
|
|
|
+ 销</el-button>
|
|
|
</div>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -130,36 +138,41 @@
|
|
|
<div class="conferencecost-foot">
|
|
|
<div class="conferencecost-foot-rateSummary">
|
|
|
<div class="conferencecost-rateSummary-title">使用的币种及汇率:</div>
|
|
|
- <div v-for="(item,index) in rateStatistics" :key="index">
|
|
|
- <span>{{item.currencyCode}} : {{item.rate}} 、</span>
|
|
|
+ <div class="rate-statistics">
|
|
|
+ <span v-for="(item, index) in rateStatistics" :key="index">
|
|
|
+ {{ item.currencyCode }} : {{ item.rate
|
|
|
+ }}{{ index < rateStatistics.length - 1 ? ' 、' : '' }} </span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="conferencecost-foot-totalcost">
|
|
|
- 成本总计:{{ conferenceAffairsCost.costAll }} {{ danwei }}
|
|
|
+ 成本总计:{{ conferenceAffairsCost.costAll }} <span style="color: red;">{{ danwei }}</span>
|
|
|
</div>
|
|
|
<div class="conferencecost-foot-totalquotations">
|
|
|
- 报价总计:{{ conferenceAffairsCost.baoJiaAll }} {{ danwei }}
|
|
|
+ 报价总计:{{ conferenceAffairsCost.baoJiaAll }} <span style="color: red;">{{ danwei }}</span>
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="conferencecost-allocation">
|
|
|
<div class="conferencecost-allocation-select">
|
|
|
注:其中
|
|
|
- <el-input-number style="width:120px;" :precision="2" size="mini" :controls="false" v-model="conferenceAffairsCost.allocationAmount"></el-input-number>
|
|
|
- <el-select @change="allocationGroupIdchange" style="width:120px;" size="mini" v-model="conferenceAffairsCost.allocationCurrency" clearable>
|
|
|
+ <el-input-number style="width:120px;" :precision="2" size="mini" :controls="false"
|
|
|
+ v-model="conferenceAffairsCost.allocationAmount"></el-input-number>
|
|
|
+ <el-select @change="allocationGroupIdchange" style="width:120px;" size="mini"
|
|
|
+ v-model="conferenceAffairsCost.allocationCurrency" clearable>
|
|
|
<el-option v-for="item in options" :key="item.currencyId" :label="item.currencyCode"
|
|
|
:value="item.currencyId">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
,会分摊到
|
|
|
- <el-select filterable style="width:200px;" size="mini" v-model="conferenceAffairsCost.allocationGroupId" clearable>
|
|
|
- <el-option v-for="item in conferenceidarr" :key="item.id" :label="item.teamName"
|
|
|
- :value="item.id">
|
|
|
+ <el-select filterable style="width:200px;" size="mini" v-model="conferenceAffairsCost.allocationGroupId"
|
|
|
+ clearable>
|
|
|
+ <el-option v-for="item in conferenceidarr" :key="item.id" :label="item.teamName" :value="item.id">
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</div>
|
|
|
<div class="conferencecost-Interestrate">
|
|
|
该会务利润率超过
|
|
|
- <el-input-number style="width:120px;" :precision="2" size="mini" :controls="false" v-model="liom"></el-input-number>%
|
|
|
+ <el-input-number style="width:120px;" :precision="2" size="mini" :controls="false"
|
|
|
+ v-model="liom"></el-input-number>%
|
|
|
需要增派几人去现场执行
|
|
|
</div>
|
|
|
</div>
|
|
@@ -170,23 +183,23 @@ import { debounce } from '../../store/statice'
|
|
|
export default {
|
|
|
data() {
|
|
|
return {
|
|
|
- a:[],
|
|
|
- liom:0,
|
|
|
+ a: [],
|
|
|
+ liom: 0,
|
|
|
danwei: '',
|
|
|
- conferenceAffairsCost:{
|
|
|
- city:'',//服务地区
|
|
|
- diid:'',//团组Id
|
|
|
- allocationAmount:'',//分配金额
|
|
|
- allocationCurrency:'',//分配币种
|
|
|
- allocationRate:'',//分配时汇率
|
|
|
- allocationGroupId:'',//分配团组Id
|
|
|
- id:0,
|
|
|
- remark:'',
|
|
|
- costAll:'',//成本总计
|
|
|
- baoJiaAll:'',//报价总计
|
|
|
+ conferenceAffairsCost: {
|
|
|
+ city: '',//服务地区
|
|
|
+ diid: '',//团组Id
|
|
|
+ allocationAmount: '',//分配金额
|
|
|
+ allocationCurrency: '',//分配币种
|
|
|
+ allocationRate: '',//分配时汇率
|
|
|
+ allocationGroupId: '',//分配团组Id
|
|
|
+ id: 0,
|
|
|
+ remark: '',
|
|
|
+ costAll: '',//成本总计
|
|
|
+ baoJiaAll: '',//报价总计
|
|
|
},
|
|
|
- units:[],
|
|
|
- typearr:[],
|
|
|
+ units: [],
|
|
|
+ typearr: [],
|
|
|
tableDatas: [
|
|
|
// {
|
|
|
// priceType:'',//费用类型
|
|
@@ -205,26 +218,28 @@ export default {
|
|
|
// id:0,//主表Id
|
|
|
// remark:'',//备注
|
|
|
// }
|
|
|
-
|
|
|
+
|
|
|
],
|
|
|
conferenceid: 0,
|
|
|
conferenceidarr: [],
|
|
|
input: '',
|
|
|
options: [],
|
|
|
- token:'',
|
|
|
+ token: '',
|
|
|
userId: '',
|
|
|
- restriction:true,
|
|
|
- rateStatistics:[],
|
|
|
+ restriction: true,
|
|
|
+ rateStatistics: [],
|
|
|
multipleSelection: [],
|
|
|
- conferenceAffairsCostChildids:[],
|
|
|
- conferencecostLoading:false,
|
|
|
+ conferenceAffairsCostChildids: [],
|
|
|
+ conferencecostLoading: false,
|
|
|
+ filetype: [],
|
|
|
+ fileSelect: ''
|
|
|
}
|
|
|
},
|
|
|
updated() {
|
|
|
console.log(1);
|
|
|
if (this.restriction) {
|
|
|
this.$emit('transfer', true)
|
|
|
- this.restriction=false;
|
|
|
+ this.restriction = false;
|
|
|
}
|
|
|
},
|
|
|
destroyed() {
|
|
@@ -232,14 +247,14 @@ export default {
|
|
|
},
|
|
|
watch: {
|
|
|
tableDatas: {
|
|
|
- handler (val) {
|
|
|
- var _this=this
|
|
|
- _this.rateStatistics=[];
|
|
|
+ handler(val) {
|
|
|
+ var _this = this
|
|
|
+ _this.rateStatistics = [];
|
|
|
var obj = {}
|
|
|
obj = _this.options.find(function (i) {
|
|
|
val.forEach((item, index) => {
|
|
|
if (i.currencyId === item.currency) {
|
|
|
- _this.rateStatistics.push(i);
|
|
|
+ _this.rateStatistics.push(i);
|
|
|
}
|
|
|
});
|
|
|
});
|
|
@@ -248,8 +263,8 @@ export default {
|
|
|
});
|
|
|
if (_this.rateStatistics.length > 1) {
|
|
|
_this.danwei = 'CNY';
|
|
|
- }else {
|
|
|
- _this.danwei = _this.rateStatistics.length==1? _this.rateStatistics[0].currencyCode : 'CNY';
|
|
|
+ } else {
|
|
|
+ _this.danwei = _this.rateStatistics.length == 1 ? _this.rateStatistics[0].currencyCode : 'CNY';
|
|
|
}
|
|
|
_this.updateTotals();
|
|
|
},
|
|
@@ -258,8 +273,8 @@ export default {
|
|
|
},
|
|
|
methods: {
|
|
|
//保留两位小数
|
|
|
- townum(val){
|
|
|
- val=Number(val);
|
|
|
+ townum(val) {
|
|
|
+ val = Number(val);
|
|
|
return val.toFixed(2);
|
|
|
},
|
|
|
handleSelectionChange(val) {
|
|
@@ -271,7 +286,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
//获取基础数据
|
|
|
- ConferenceAffairsInIt(){
|
|
|
+ ConferenceAffairsInIt() {
|
|
|
var url = "/api/Groups/ConferenceAffairsInIt"
|
|
|
var that = this
|
|
|
this.$axios({
|
|
@@ -286,14 +301,14 @@ export default {
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
that.conferenceidarr = res.data.data.groupList;
|
|
|
- that.conferenceid=that.conferenceidarr[0].id;
|
|
|
+ that.conferenceid = that.conferenceidarr[0].id;
|
|
|
that.options = res.data.data.typeData;
|
|
|
that.ConferenceAffairsInIts();
|
|
|
})
|
|
|
},
|
|
|
//获取数据
|
|
|
- ConferenceAffairsInIts(){
|
|
|
- this.conferencecostLoading=true;
|
|
|
+ ConferenceAffairsInIts() {
|
|
|
+ this.conferencecostLoading = true;
|
|
|
var url = "/api/Groups/ConferenceAffairsInIt"
|
|
|
var that = this
|
|
|
this.$axios({
|
|
@@ -307,17 +322,19 @@ export default {
|
|
|
groupId: that.conferenceid,
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
- let AffairsInIt=res.data.data;
|
|
|
- that.options=AffairsInIt.currenyList.teamRates;
|
|
|
- that.tableDatas=AffairsInIt.conferenceAffairsCostChi;
|
|
|
- that.typearr=AffairsInIt.typeData;
|
|
|
- that.units=AffairsInIt.units;
|
|
|
- that.conferenceAffairsCost=AffairsInIt.conferenceAffairsCost;
|
|
|
- that.conferencecostLoading=false;
|
|
|
+ let AffairsInIt = res.data.data;
|
|
|
+ that.options = AffairsInIt.currenyList.teamRates;
|
|
|
+ that.tableDatas = AffairsInIt.conferenceAffairsCostChi;
|
|
|
+ that.typearr = AffairsInIt.typeData;
|
|
|
+ that.units = AffairsInIt.units;
|
|
|
+ that.conferenceAffairsCost = AffairsInIt.conferenceAffairsCost;
|
|
|
+ that.conferencecostLoading = false;
|
|
|
+ that.filetype = res.data.data.fileType;
|
|
|
+ that.fileSelect = that.filetype[0].id;
|
|
|
})
|
|
|
},
|
|
|
//币种切换
|
|
|
- currencychange(val){
|
|
|
+ currencychange(val) {
|
|
|
var obj = this.options.find(function (i) {
|
|
|
return i.currencyId === val.currency;
|
|
|
});
|
|
@@ -331,24 +348,24 @@ export default {
|
|
|
this.ConferenceAffairsInIts();
|
|
|
},
|
|
|
//添加一行
|
|
|
- addlineclick(){
|
|
|
+ addlineclick() {
|
|
|
this.tableDatas.push({
|
|
|
index: this.tableDatas.length + 1,
|
|
|
- priceType:'',//费用类型
|
|
|
- priceName:'',//费用名称
|
|
|
- costPrice:0,//成本费用
|
|
|
- currency:'',//币种
|
|
|
- rate:0,//当时汇率
|
|
|
- count:0,//数量333
|
|
|
- unit:'',//单位
|
|
|
- coefficient:0,//系数
|
|
|
- baoJiaPrice:0,//报价金额
|
|
|
- addedValue:'',//附加值
|
|
|
- details:'',//明细
|
|
|
- reviewStatus:0,//审核状态
|
|
|
- diid:this.conferenceid,//团组Id
|
|
|
- id:0,//主表Id
|
|
|
- remark:'',//备注
|
|
|
+ priceType: '',//费用类型
|
|
|
+ priceName: '',//费用名称
|
|
|
+ costPrice: 0,//成本费用
|
|
|
+ currency: '',//币种
|
|
|
+ rate: 0,//当时汇率
|
|
|
+ count: 0,//数量333
|
|
|
+ unit: '',//单位
|
|
|
+ coefficient: 0,//系数
|
|
|
+ baoJiaPrice: 0,//报价金额
|
|
|
+ addedValue: 0,//附加值
|
|
|
+ details: '',//明细
|
|
|
+ reviewStatus: 0,//审核状态
|
|
|
+ diid: this.conferenceid,//团组Id
|
|
|
+ id: 0,//主表Id
|
|
|
+ remark: '',//备注
|
|
|
});
|
|
|
this.updateTotals();
|
|
|
},
|
|
@@ -368,19 +385,19 @@ export default {
|
|
|
updateTotals() {
|
|
|
// Calculate cost total
|
|
|
this.conferenceAffairsCost.costAll = this.tableDatas.reduce((sum, item) => {
|
|
|
- if (this.rateStatistics.length>1) {
|
|
|
- return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0)* (Number(item.rate) || 0);
|
|
|
- }else{
|
|
|
+ if (this.rateStatistics.length > 1) {
|
|
|
+ return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0) * (Number(item.rate) || 0);
|
|
|
+ } else {
|
|
|
return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0);
|
|
|
}
|
|
|
}, 0).toFixed(2);
|
|
|
|
|
|
// Calculate quotation total
|
|
|
this.conferenceAffairsCost.baoJiaAll = this.tableDatas.reduce((sum, item) => {
|
|
|
- if (this.rateStatistics.length>1) {
|
|
|
- return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0)* (Number(item.rate) || 0)* (Number(item.coefficient) || 0);
|
|
|
- }else{
|
|
|
- return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0)* (Number(item.coefficient) || 0);
|
|
|
+ if (this.rateStatistics.length > 1) {
|
|
|
+ return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0) * (Number(item.rate) || 0) * (Number(item.coefficient) || 0);
|
|
|
+ } else {
|
|
|
+ return sum + (Number(item.costPrice) || 0) * (Number(item.count) || 0) * (Number(item.coefficient) || 0);
|
|
|
}
|
|
|
// return sum + (Number(item.baoJiaPrice) || 0);
|
|
|
}, 0).toFixed(2);
|
|
@@ -389,7 +406,7 @@ export default {
|
|
|
allocationGroupIdchange(val) {
|
|
|
console.log(val);
|
|
|
console.log(val);
|
|
|
-
|
|
|
+
|
|
|
var obj = this.options.find(function (i) {
|
|
|
return i.currencyId === val;
|
|
|
});
|
|
@@ -398,9 +415,9 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
//移除
|
|
|
- removeRow(index,row) {
|
|
|
- console.log(index,row.id);
|
|
|
-
|
|
|
+ removeRow(index, row) {
|
|
|
+ console.log(index, row.id);
|
|
|
+
|
|
|
// this.tableDatas.splice(index, 1);
|
|
|
//this.updateTotals();//jisuan总计
|
|
|
var url = "/api/Groups/ConferenceAffairSinglesDelete"
|
|
@@ -412,18 +429,19 @@ export default {
|
|
|
Authorization: 'Bearer ' + that.token
|
|
|
},
|
|
|
data: {
|
|
|
- userId:21,
|
|
|
+ userId: 21,
|
|
|
ids: [row.id],
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
- if (res.data.code== 200) {
|
|
|
+ if (res.data.code == 200) {
|
|
|
that.$message({
|
|
|
type: 'success',
|
|
|
message: res.data.msg,
|
|
|
});
|
|
|
that.updateTotals()
|
|
|
+ that.ConferenceAffairsSave(false);
|
|
|
that.ConferenceAffairsInIts();
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
that.$message({
|
|
|
type: 'error',
|
|
|
message: res.data.msg
|
|
@@ -432,7 +450,7 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
//单条审核api
|
|
|
- ConferenceAffairsAudits: debounce(function (reviewStatus, id){
|
|
|
+ ConferenceAffairsAudits: debounce(function (reviewStatus, id) {
|
|
|
var url = "/api/Groups/ConferenceAffairsAudit"
|
|
|
var that = this
|
|
|
this.$axios({
|
|
@@ -446,20 +464,20 @@ export default {
|
|
|
reviewStatus: reviewStatus,
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
- if (res.data.code== 200) {
|
|
|
+ if (res.data.code == 200) {
|
|
|
that.$message({
|
|
|
- type: 'success',
|
|
|
+ type: 'success',
|
|
|
message: res.data.msg
|
|
|
});
|
|
|
that.ConferenceAffairsInIts();
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
that.$message({
|
|
|
type: 'error',
|
|
|
message: res.data.msg
|
|
|
});
|
|
|
}
|
|
|
})
|
|
|
- },1000, true),
|
|
|
+ }, 1000, true),
|
|
|
//多条审核api
|
|
|
ConferenceAffairsAudit: debounce(function (reviewStatus) {
|
|
|
if (this.conferenceAffairsCostChildids.length === 0) {
|
|
@@ -482,25 +500,25 @@ export default {
|
|
|
reviewStatus: reviewStatus,
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
- if (res.data.code== 200) {
|
|
|
+ if (res.data.code == 200) {
|
|
|
that.$message({
|
|
|
type: 'success',
|
|
|
message: '审核成功!'
|
|
|
});
|
|
|
that.ConferenceAffairsInIts();
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
that.$message({
|
|
|
type: 'error',
|
|
|
message: res.data.msg
|
|
|
});
|
|
|
}
|
|
|
})
|
|
|
- },1000, true),
|
|
|
+ }, 1000, true),
|
|
|
//保存api
|
|
|
- ConferenceAffairsSave: debounce(function (){
|
|
|
+ ConferenceAffairsSave: debounce(function (isShow) {
|
|
|
this.conferenceAffairsCost.diid = this.conferenceid;
|
|
|
this.conferenceAffairsCost.baoJiaAll = Number(this.conferenceAffairsCost.baoJiaAll);
|
|
|
- this.conferenceAffairsCost.costAll = Number(this.conferenceAffairsCost.costAll);
|
|
|
+ this.conferenceAffairsCost.costAll = Number(this.conferenceAffairsCost.costAll);
|
|
|
var url = "/api/Groups/ConferenceAffairsSave"
|
|
|
var that = this
|
|
|
this.$axios({
|
|
@@ -516,22 +534,64 @@ export default {
|
|
|
groupId: that.conferenceid,
|
|
|
}
|
|
|
}).then(function (res) {
|
|
|
- if (res.data.code== 200) {
|
|
|
+ if (res.data.code == 200) {
|
|
|
+ if (isShow) {
|
|
|
+ that.$message({
|
|
|
+ type: 'success',
|
|
|
+ message: res.data.msg,
|
|
|
+ });
|
|
|
+ that.ConferenceAffairsInIts();
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ that.$message({
|
|
|
+ type: 'error',
|
|
|
+ message: res.data.msg
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }, 1000, true),
|
|
|
+ //文件下载
|
|
|
+ FileDown() {
|
|
|
+ var url = "/api/Groups/ConferenceAffairsFileDown"
|
|
|
+ var that = this
|
|
|
+ this.$axios({
|
|
|
+ method: 'post',
|
|
|
+ url: url,
|
|
|
+ headers: {
|
|
|
+ Authorization: 'Bearer ' + that.token
|
|
|
+ },
|
|
|
+ data: {
|
|
|
+ fileTypeId: that.fileSelect,
|
|
|
+ groupId: that.conferenceid,
|
|
|
+ }
|
|
|
+ }).then(function (res) {
|
|
|
+ if (res.data.code == 200) {
|
|
|
+ //弹出成功提示
|
|
|
that.$message({
|
|
|
type: 'success',
|
|
|
- message: res.data.msg,
|
|
|
+ message: '下载成功!'
|
|
|
});
|
|
|
- that.ConferenceAffairsInIts();
|
|
|
- }else{
|
|
|
+
|
|
|
+ // 创建一个隐藏的<a>元素用于下载文件
|
|
|
+ const link = document.createElement('a');
|
|
|
+ link.style.display = 'none';
|
|
|
+ link.href = res.data.data.filePath;
|
|
|
+ link.download = res.data.data.fileName;
|
|
|
+
|
|
|
+ // 将<a>元素添加到DOM中,点击它,然后移除它
|
|
|
+ document.body.appendChild(link);
|
|
|
+ link.click();
|
|
|
+ document.body.removeChild(link);
|
|
|
+ } else {
|
|
|
that.$message({
|
|
|
type: 'error',
|
|
|
message: res.data.msg
|
|
|
});
|
|
|
}
|
|
|
})
|
|
|
- },1000, true),
|
|
|
+ },
|
|
|
},
|
|
|
- mounted(){
|
|
|
+ mounted() {
|
|
|
this.token = JSON.parse(localStorage.getItem('userinif')).token;
|
|
|
this.userId = JSON.parse(localStorage.getItem('userinif')).userInfo.userId;
|
|
|
this.ConferenceAffairsInIt()
|
|
@@ -546,11 +606,13 @@ export default {
|
|
|
border-radius: 10px;
|
|
|
min-height: 830px;
|
|
|
}
|
|
|
-.conferencecost-header{
|
|
|
+
|
|
|
+.conferencecost-header {
|
|
|
display: flex;
|
|
|
justify-content: space-between;
|
|
|
align-items: center;
|
|
|
}
|
|
|
+
|
|
|
.conferencecost-header-left {
|
|
|
display: flex;
|
|
|
flex-wrap: wrap;
|
|
@@ -565,43 +627,62 @@ export default {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
}
|
|
|
-.conferencecost-content .el-input-number--mini{
|
|
|
+
|
|
|
+.conferencecost-content .el-input-number--mini {
|
|
|
width: 100%;
|
|
|
}
|
|
|
-.conferencecost-content-btn{
|
|
|
+
|
|
|
+.conferencecost-content-btn {
|
|
|
display: flex;
|
|
|
justify-content: center;
|
|
|
flex-wrap: wrap;
|
|
|
}
|
|
|
-.conferencecost-content-btn .el-button+.el-button{
|
|
|
+
|
|
|
+.conferencecost-content-btn .el-button+.el-button {
|
|
|
margin-left: 0px;
|
|
|
margin-top: 5px;
|
|
|
}
|
|
|
-.Addline{
|
|
|
+
|
|
|
+.Addline {
|
|
|
margin-top: 10px;
|
|
|
text-align: center;
|
|
|
}
|
|
|
-.conferencecost-header-right>div,button{
|
|
|
+
|
|
|
+.conferencecost-header-right>div,
|
|
|
+button {
|
|
|
margin-bottom: 15px;
|
|
|
}
|
|
|
-.conferencecost-foot-rateSummary{
|
|
|
+
|
|
|
+.conferencecost-foot-rateSummary {
|
|
|
display: flex;
|
|
|
align-items: center;
|
|
|
flex-wrap: wrap;
|
|
|
margin-top: 10px;
|
|
|
}
|
|
|
-.conferencecost-all .conferencecost-content .el-table__header-wrapper,.el-table__body-wrapper{
|
|
|
- font-size:12px
|
|
|
+
|
|
|
+.conferencecost-all .conferencecost-content .el-table__header-wrapper,
|
|
|
+.el-table__body-wrapper {
|
|
|
+ font-size: 12px
|
|
|
}
|
|
|
-.conferencecost-allocation{
|
|
|
+
|
|
|
+.conferencecost-allocation {
|
|
|
margin-top: 15px;
|
|
|
}
|
|
|
-.conferencecost-Interestrate{
|
|
|
+
|
|
|
+.conferencecost-Interestrate {
|
|
|
margin-top: 10px;
|
|
|
}
|
|
|
-.conferencecost-foot,.conferencecost-allocation{
|
|
|
+
|
|
|
+.conferencecost-foot,
|
|
|
+.conferencecost-allocation {
|
|
|
font-size: 14px;
|
|
|
color: #909399;
|
|
|
font-weight: 600;
|
|
|
}
|
|
|
-</style>
|
|
|
+
|
|
|
+.rate-statistics {
|
|
|
+ color: #3cca54;
|
|
|
+ /* Element UI 主题色 */
|
|
|
+ font-weight: bold;
|
|
|
+}
|
|
|
+</style>
|