|
@@ -31,7 +31,7 @@
|
|
|
</div>
|
|
|
<div class="main-section">
|
|
|
<el-row :gutter="36">
|
|
|
- <el-col :span="6" v-for="item in data_typeArr" :key="item.label">
|
|
|
+ <el-col :span="8" v-for="item in data_typeArr" :key="item.label">
|
|
|
<el-card :class="['base-card', { 'main-card': filterObj.data_type === item.label }]" shadow="hover" @click.native="toggleType(item.label)">
|
|
|
<div slot="header" class="clearfix">
|
|
|
<span>
|
|
@@ -53,12 +53,29 @@
|
|
|
</span>
|
|
|
</div>
|
|
|
<div class="card-cont">
|
|
|
- {{ item.label === "新签客户" ? NewCompanyTotal : item.label === "续约客户" ? RenewalCompanyTotal : item.label === "未续约客户" ? NotRenewalCompanyTotal : "" }}
|
|
|
+ {{
|
|
|
+ item.label === "新签客户"
|
|
|
+ ? NewCompanyTotal
|
|
|
+ : item.label === "续约客户"
|
|
|
+ ? RenewalCompanyTotal
|
|
|
+ : item.label === "未续约客户"
|
|
|
+ ? NotRenewalCompanyTotal + " / " + NotRenewalCompanyToBeConfirmTotal
|
|
|
+ : ""
|
|
|
+ }}
|
|
|
</div>
|
|
|
</el-card>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
</div>
|
|
|
+ <div class="tabs-box" v-if="filterObj.data_type == '续约客户'">
|
|
|
+ <el-radio-group v-model="PackageDifference" class="tabs-box-confirm" @change="notRenewedConfirmChange">
|
|
|
+ <el-radio-button label="增加套餐">增加套餐</el-radio-button>
|
|
|
+ <div class="center-line"></div>
|
|
|
+ <el-radio-button label="减少套餐">减少套餐</el-radio-button>
|
|
|
+ <div class="center-line"></div>
|
|
|
+ <el-radio-button label="维持套餐">维持套餐</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ </div>
|
|
|
<div class="tabs-box" v-if="filterObj.data_type == '未续约客户'">
|
|
|
<el-radio-group v-model="isNotRenewedConfirm" class="tabs-box-confirm" @change="notRenewedConfirmChange">
|
|
|
<el-radio-button :label="1">已确认</el-radio-button>
|
|
@@ -78,7 +95,7 @@
|
|
|
<template v-for="item in incrementTableColums">
|
|
|
<el-table-column :key="item.label" :label="item.label" :width="item.widthsty" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
- <span :style="item.textsty" @click="jumpHandle(scope.row, item)" v-if="item.key === 'CreateTime' || item.key === 'StartDate' || item.key === 'EndDate'">
|
|
|
+ <span :style="item.textsty" @click="jumpHandle(scope.row, item)" v-if="item.key === 'CreateTime'">
|
|
|
{{ scope.row[item.key] | formatTime }}
|
|
|
</span>
|
|
|
<span v-else-if="item.label == '未续约说明'">
|
|
@@ -90,7 +107,7 @@
|
|
|
<span :style="item.textsty" @click="jumpHandle(scope.row, item)">
|
|
|
{{ scope.row[item.key] }}
|
|
|
</span>
|
|
|
- <div class="package-difference" v-if="scope.row.PackageDifference">
|
|
|
+ <div class="package-difference" v-if="scope.row.PackageDifference" @click="previousDetailHadler(scope.row)">
|
|
|
{{ scope.row.PackageDifference }}
|
|
|
</div>
|
|
|
</div>
|
|
@@ -103,6 +120,14 @@
|
|
|
{{ scope.row[item.key] }}
|
|
|
</span>
|
|
|
</div>
|
|
|
+ <div v-else-if="item.key == 'PermissionName'">
|
|
|
+ <template v-if="scope.row.PermissionName.length">
|
|
|
+ <el-tag size="mini" style="margin:0 10px 10px 0" v-for="key in scope.row.PermissionName.split(',')" :key="key">{{ key }}</el-tag>
|
|
|
+ </template>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="item.key == 'StartDate'">
|
|
|
+ <span> {{ scope.row[item.key] }} ~ {{ scope.row.EndDate }} </span>
|
|
|
+ </div>
|
|
|
<span v-else :style="item.textsty" @click="jumpHandle(scope.row, item)">
|
|
|
{{ scope.row[item.key] }}
|
|
|
</span>
|
|
@@ -139,6 +164,7 @@
|
|
|
@refreshReasonList="getNORenewalReasonList"
|
|
|
@saveLabel="saveLabel"
|
|
|
/>
|
|
|
+ <previous-detail :previousDetailDlg.sync="previousDetailDlg" :rowInfo="rowInfo"/>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -150,12 +176,13 @@ import renewalListDia from "./components/renewalListDia.vue";
|
|
|
import addRemark from "./components/noRenewalReasonDia/addRemark.vue";
|
|
|
import viewRemark from "./components/noRenewalReasonDia/viewRemark.vue";
|
|
|
import confirmedNoRenewal from "./components/noRenewalReasonDia/confirmedNoRenewal.vue";
|
|
|
+import PreviousDetail from './components/previousDetail.vue';
|
|
|
|
|
|
var moment = require("moment");
|
|
|
moment().format();
|
|
|
export default {
|
|
|
name: "",
|
|
|
- components: { mPage, renewalListDia, addRemark, viewRemark, confirmedNoRenewal },
|
|
|
+ components: { mPage, renewalListDia, addRemark, viewRemark, confirmedNoRenewal, PreviousDetail },
|
|
|
computed: {
|
|
|
exportExcel() {
|
|
|
let baseUrl = process.env.API_ROOT + "/statistic_report/incremental_company_list";
|
|
@@ -245,6 +272,7 @@ export default {
|
|
|
NewCompanyTotal: 0, //新签客户数
|
|
|
NotRenewalCompanyTotal: 0, //未续约客户数
|
|
|
RenewalCompanyTotal: 0, //续约客户数
|
|
|
+ NotRenewalCompanyToBeConfirmTotal: 0,
|
|
|
isRenewalShow: false, //未续约说明列表弹框是否显示
|
|
|
rowInfo: null, // 未续约说明更多行信息
|
|
|
tabsList: [
|
|
@@ -270,6 +298,8 @@ export default {
|
|
|
detailReason: "",
|
|
|
},
|
|
|
incrementTableColums: [],
|
|
|
+ PackageDifference: "增加套餐",
|
|
|
+ previousDetailDlg: false,
|
|
|
};
|
|
|
},
|
|
|
/* 页面跳转前记录参数 */
|
|
@@ -355,14 +385,16 @@ export default {
|
|
|
TryOutType: this.filterObj.data_type == "未续约客户" && this.isNotRenewedConfirm == 1 ? this.tabsActiveName : "",
|
|
|
IsConfirm: this.filterObj.data_type == "未续约客户" ? this.isNotRenewedConfirm : -1,
|
|
|
CompanyAscribeId: this.noRenewalReasonId,
|
|
|
+ PackageDifference: this.PackageDifference,
|
|
|
};
|
|
|
- dataMainInterface.incrementalList(params).then((res) => {
|
|
|
+ dataMainInterface.incrementalEquityList(params).then((res) => {
|
|
|
if (res.Ret === 200) {
|
|
|
this.tableData = res.Data.List || [];
|
|
|
this.total = res.Data.Paging.Totals;
|
|
|
this.NewCompanyTotal = res.Data.NewCompanyTotal;
|
|
|
this.RenewalCompanyTotal = res.Data.RenewalCompanyTotal;
|
|
|
this.NotRenewalCompanyTotal = res.Data.NotRenewalCompanyTotal;
|
|
|
+ this.NotRenewalCompanyToBeConfirmTotal = res.Data.NotRenewalCompanyToBeConfirmTotal;
|
|
|
this.NotRenewalTryOut = res.Data.NotRenewalTryOut;
|
|
|
this.NotRenewalNotTryOut = res.Data.NotRenewalNotTryOut;
|
|
|
this.isShowloadding = false;
|
|
@@ -371,7 +403,7 @@ export default {
|
|
|
},
|
|
|
/* 获取销售 */
|
|
|
getSale() {
|
|
|
- customInterence.getSale().then((res) => {
|
|
|
+ customInterence.getSalesRaiData().then((res) => {
|
|
|
if (res.Ret === 200) {
|
|
|
this.salesArr = res.Data.List;
|
|
|
}
|
|
@@ -523,11 +555,15 @@ export default {
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
+ previousDetailHadler(row) {
|
|
|
+ console.log(123);
|
|
|
+ this.rowInfo = row;
|
|
|
+ this.previousDetailDlg = true;
|
|
|
+ },
|
|
|
},
|
|
|
created() {},
|
|
|
mounted() {
|
|
|
this.incrementTableColums = equityTableColums(this.filterObj.data_type);
|
|
|
- console.log(this.incrementTableColums);
|
|
|
this.getSale();
|
|
|
if (sessionStorage.getItem("incrementBack")) {
|
|
|
let backData = JSON.parse(sessionStorage.getItem("incrementBack"));
|
|
@@ -540,7 +576,6 @@ export default {
|
|
|
/* 默认选中近1个月 */
|
|
|
this.filterDate(this.filterObj.month === "近1个月" ? 1 : this.filterObj.month === "近2个月" ? 2 : this.filterObj.month === "近3个月" ? 3 : 0);
|
|
|
},
|
|
|
-
|
|
|
};
|
|
|
</script>
|
|
|
<style lang="scss" scoped>
|
|
@@ -588,6 +623,9 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+.package-difference {
|
|
|
+ cursor: pointer;
|
|
|
+}
|
|
|
</style>
|
|
|
<style lang="scss">
|
|
|
#dataReport-container {
|