0326-海宁pad走访修改
This commit is contained in:
@@ -112,6 +112,7 @@ import { Message } from "element-ui";
|
||||
import {
|
||||
|
||||
privateTotalColumns, publicTotalColumns,
|
||||
privateTotalColumnsNew825,
|
||||
privateTotalColumnsNm, publicTotalColumnsNm,
|
||||
privateTotalColumnsMap, publicTotalColumnsMap,
|
||||
privateTotalColumnsAll, publicTotalColumnsAll,
|
||||
@@ -163,7 +164,7 @@ export default {
|
||||
},
|
||||
|
||||
computed: {
|
||||
...mapGetters(["roles"]),
|
||||
...mapGetters(["roles", "deptId"]),
|
||||
//对公
|
||||
isPublic() {
|
||||
return this.roles.includes("headPublic");
|
||||
@@ -172,6 +173,9 @@ export default {
|
||||
isPrivate() {
|
||||
return this.roles.includes("headPrivate");
|
||||
},
|
||||
isRetailNew825Tenant() {
|
||||
return String(this.deptId || '').slice(0, 3) === '965';
|
||||
},
|
||||
},
|
||||
created() {
|
||||
const {
|
||||
@@ -196,7 +200,7 @@ export default {
|
||||
this.shapeName = shapeName;
|
||||
this.shapeId = shapeId;
|
||||
if (type == '1') {
|
||||
this.tableColumns = this.isActive1 ? privateTotalColumns : this.isActive3 ?
|
||||
this.tableColumns = this.isActive1 ? (this.isRetailNew825Tenant ? privateTotalColumnsNew825 : privateTotalColumns) : this.isActive3 ?
|
||||
privateTotalColumnsNm : this.isActive4 ? privateTotalColumnsMap : privateTotalColumnsAll;
|
||||
}
|
||||
if (type == '2') {
|
||||
|
||||
@@ -279,6 +279,7 @@ import { cloneDeep, isEmpty } from 'lodash'
|
||||
import { Message } from 'element-ui'
|
||||
import {
|
||||
privateColumns,
|
||||
privateColumnsNew825,
|
||||
publicColumns,
|
||||
privateColumnsNm,
|
||||
publicColumnsNm,
|
||||
@@ -349,7 +350,7 @@ export default {
|
||||
}
|
||||
},
|
||||
computed: {
|
||||
...mapGetters(['roles', 'userName']),
|
||||
...mapGetters(['roles', 'userName', 'deptId']),
|
||||
// 对公
|
||||
isPublic() {
|
||||
return this.roles.includes('headPublic')
|
||||
@@ -361,52 +362,17 @@ export default {
|
||||
// 965租户
|
||||
is965() {
|
||||
return this.userName.slice(0, 3) == 965
|
||||
},
|
||||
isRetailNew825Tenant() {
|
||||
return String(this.deptId || '').slice(0, 3) === '965'
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
selectedTab: {
|
||||
handler(val) {
|
||||
if (val) {
|
||||
if (val == '1') {
|
||||
this.tableColumns = this.isActive1
|
||||
? privateColumns
|
||||
: this.isActive3
|
||||
? privateColumnsNm
|
||||
: this.isActive4
|
||||
? privateColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: privateColumnsAll
|
||||
this.tableKey = this.isActive1
|
||||
? '11'
|
||||
: this.isActive3
|
||||
? '12'
|
||||
: this.isActive4
|
||||
? '13'
|
||||
: this.isActive7
|
||||
? '15'
|
||||
: '14'
|
||||
}
|
||||
if (val == '2') {
|
||||
this.tableColumns = this.isActive1
|
||||
? publicColumns
|
||||
: this.isActive3
|
||||
? publicColumnsNm
|
||||
: this.isActive4
|
||||
? publicColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: publicColumnsAll
|
||||
this.tableKey = this.isActive1
|
||||
? '21'
|
||||
: this.isActive3
|
||||
? '22'
|
||||
: this.isActive4
|
||||
? '23'
|
||||
: this.isActive7
|
||||
? '25'
|
||||
: '24'
|
||||
}
|
||||
this.tableColumns = this.getCurrentColumns(val)
|
||||
this.tableKey = this.getCurrentTableKey(val)
|
||||
}
|
||||
},
|
||||
immediate: true
|
||||
@@ -432,46 +398,8 @@ export default {
|
||||
this.isActive3 = isActive == '3'
|
||||
this.isActive4 = isActive == '4'
|
||||
this.isActive6 = isActive == '6'
|
||||
if (type == '1') {
|
||||
this.tableColumns = this.isActive1
|
||||
? privateColumns
|
||||
: this.isActive3
|
||||
? privateColumnsNm
|
||||
: this.isActive4
|
||||
? privateColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: privateColumnsAll
|
||||
this.tableKey = this.isActive1
|
||||
? '11'
|
||||
: this.isActive3
|
||||
? '12'
|
||||
: this.isActive4
|
||||
? '13'
|
||||
: this.isActive7
|
||||
? '15'
|
||||
: '14'
|
||||
}
|
||||
if (type == '2') {
|
||||
this.tableColumns = this.isActive1
|
||||
? publicColumns
|
||||
: this.isActive3
|
||||
? publicColumnsNm
|
||||
: this.isActive4
|
||||
? publicColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: publicColumnsAll
|
||||
this.tableKey = this.isActive1
|
||||
? '21'
|
||||
: this.isActive3
|
||||
? '22'
|
||||
: this.isActive4
|
||||
? '23'
|
||||
: this.isActive7
|
||||
? '25'
|
||||
: '24'
|
||||
}
|
||||
this.tableColumns = this.getCurrentColumns(type)
|
||||
this.tableKey = this.getCurrentTableKey(type)
|
||||
for (const key in this.$route.query) {
|
||||
delete this.$route.query[key]
|
||||
}
|
||||
@@ -489,6 +417,53 @@ export default {
|
||||
this.init()
|
||||
},
|
||||
methods: {
|
||||
getRetailPrivateColumns() {
|
||||
return this.isRetailNew825Tenant ? privateColumnsNew825 : privateColumns
|
||||
},
|
||||
getCurrentColumns(tab) {
|
||||
if (tab == '1') {
|
||||
return this.isActive1
|
||||
? this.getRetailPrivateColumns()
|
||||
: this.isActive3
|
||||
? privateColumnsNm
|
||||
: this.isActive4
|
||||
? privateColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: privateColumnsAll
|
||||
}
|
||||
return this.isActive1
|
||||
? publicColumns
|
||||
: this.isActive3
|
||||
? publicColumnsNm
|
||||
: this.isActive4
|
||||
? publicColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: publicColumnsAll
|
||||
},
|
||||
getCurrentTableKey(tab) {
|
||||
if (tab == '1') {
|
||||
return this.isActive1
|
||||
? (this.isRetailNew825Tenant ? '11-825' : '11')
|
||||
: this.isActive3
|
||||
? '12'
|
||||
: this.isActive4
|
||||
? '13'
|
||||
: this.isActive7
|
||||
? '15'
|
||||
: '14'
|
||||
}
|
||||
return this.isActive1
|
||||
? '21'
|
||||
: this.isActive3
|
||||
? '22'
|
||||
: this.isActive4
|
||||
? '23'
|
||||
: this.isActive7
|
||||
? '25'
|
||||
: '24'
|
||||
},
|
||||
handleMyApprove(type) {
|
||||
this.isActive1 = type == '1'
|
||||
this.isActive2 = type == '2'
|
||||
@@ -504,46 +479,8 @@ export default {
|
||||
this.isActive6 ||
|
||||
this.isActive7
|
||||
) {
|
||||
if (this.selectedTab == '1') {
|
||||
this.tableColumns = this.isActive1
|
||||
? privateColumns
|
||||
: this.isActive3
|
||||
? privateColumnsNm
|
||||
: this.isActive4
|
||||
? privateColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: privateColumnsAll
|
||||
this.tableKey = this.isActive1
|
||||
? '11'
|
||||
: this.isActive3
|
||||
? '12'
|
||||
: this.isActive4
|
||||
? '13'
|
||||
: this.isActive7
|
||||
? '15'
|
||||
: '14'
|
||||
}
|
||||
if (this.selectedTab == '2') {
|
||||
this.tableColumns = this.isActive1
|
||||
? publicColumns
|
||||
: this.isActive3
|
||||
? publicColumnsNm
|
||||
: this.isActive4
|
||||
? publicColumnsMap
|
||||
: this.isActive7
|
||||
? customAuth
|
||||
: publicColumnsAll
|
||||
this.tableKey = this.isActive1
|
||||
? '21'
|
||||
: this.isActive3
|
||||
? '22'
|
||||
: this.isActive4
|
||||
? '23'
|
||||
: this.isActive7
|
||||
? '25'
|
||||
: '24'
|
||||
}
|
||||
this.tableColumns = this.getCurrentColumns(this.selectedTab)
|
||||
this.tableKey = this.getCurrentTableKey(this.selectedTab)
|
||||
const date = new Date()
|
||||
date.setDate(date.getDate() - 1)
|
||||
const year = date.getFullYear()
|
||||
|
||||
@@ -201,6 +201,57 @@ export const privateColumns = [
|
||||
}
|
||||
]
|
||||
|
||||
export const privateColumnsNew825 = [
|
||||
{ prop: 'dt', label: '统计日期(T+1)', width: 140 },
|
||||
{ prop: 'gridName', label: '一级网格名称', width: 160 },
|
||||
{ prop: 'gridName2', label: '二级网格名称', width: 160 },
|
||||
{ prop: 'county', label: '县/区', width: 120 },
|
||||
{ prop: 'town', label: '镇/街道', width: 140 },
|
||||
{ prop: 'village', label: '村/社区', width: 140 },
|
||||
{ prop: 'deptId', label: '归属支行机构号', width: 140 },
|
||||
{ prop: 'deptName', label: '归属支行名称', width: 140 },
|
||||
{ prop: 'outletsId', label: '归属网点机构号', width: 140 },
|
||||
{ prop: 'outletsName', label: '归属网点名称', width: 140 },
|
||||
{ prop: 'userName', label: '归属客户经理', width: 140 },
|
||||
{ prop: 'custNum', label: '入格客户数', width: 120 },
|
||||
{ prop: 'zf365cnt', label: '近365天已走访人数', width: 150 },
|
||||
{ prop: 'zf180cnt', label: '近180天已走访人数', width: 150 },
|
||||
{ prop: 'zf90cnt', label: '近90天已走访人数', width: 150 },
|
||||
{ prop: 'zf30cnt', label: '近30天已走访人数', width: 150 },
|
||||
{ prop: 'curBalD', label: '活期存款余额(元)', width: 160 },
|
||||
{ prop: 'sxNum', label: '授信户数', width: 120 },
|
||||
{ prop: 'yxNum', label: '用信户数', width: 120 },
|
||||
{ prop: 'sxBal', label: '授信金额(合同)', width: 160 },
|
||||
{ prop: 'balLoan', label: '贷款余额(元)', width: 150 },
|
||||
{ prop: 'loanAve', label: '贷款年日均(元)', width: 150 },
|
||||
{ prop: 'yxhtNum', label: '合同签约客户数', width: 150 },
|
||||
{ prop: 'dianNum', label: '代扣电费客户数', width: 150 },
|
||||
{ prop: 'shuiNum', label: '代扣水费客户数', width: 150 },
|
||||
{ prop: 'taxNum', label: '代扣税费数', width: 140 },
|
||||
{ prop: 'openNum', label: '开户数', width: 120 },
|
||||
{ prop: 'depBal', label: '存款余额(元)', width: 150 },
|
||||
{ prop: 'finBal', label: '财富余额(元)', width: 150 },
|
||||
{ prop: 'grhxNum', label: '个人核心客户数', width: 150 },
|
||||
{ prop: 'cfyxNum', label: '财富有效客户数', width: 150 },
|
||||
{ prop: 'yxxykNum', label: '有效信用卡数', width: 140 },
|
||||
{ prop: 'yxsbkNum', label: '有效社保卡户数', width: 150 },
|
||||
{ prop: 'twoTo3SbkNum', label: '二换三社保卡户数', width: 160 },
|
||||
{ prop: 'yljToSbkNum', label: '养老金迁移至社保卡户数', width: 180 },
|
||||
{ prop: 'fshlNum', label: '丰收互联客户数', width: 150 },
|
||||
{ prop: 'yxsdNum', label: '有效收单商户', width: 140 },
|
||||
{ prop: 'zf365rt', label: '近365天走访率', width: 140 },
|
||||
{ prop: 'zf180rt', label: '近180天走访率', width: 140 },
|
||||
{ prop: 'zf90rt', label: '近90天走访率', width: 140 },
|
||||
{ prop: 'zf30rt', label: '近30天走访率', width: 140 },
|
||||
{ prop: 'sxRat', label: '授信率(%)', width: 120 },
|
||||
{ prop: 'yxRat', label: '用信覆盖率', width: 120 },
|
||||
{ prop: 'yxhtRat', label: '合同签约率(%)', width: 140 },
|
||||
{ prop: 'dianRat', label: '代扣电费覆盖率(%)', width: 150 },
|
||||
{ prop: 'shuiRat', label: '代扣水费率(%)', width: 140 },
|
||||
{ prop: 'taxRat', label: '代扣税费率(%)', width: 140 },
|
||||
{ prop: 'openRat', label: '开户率(%)', width: 120 }
|
||||
]
|
||||
|
||||
// 公司
|
||||
export const publicColumns = [
|
||||
{
|
||||
@@ -564,6 +615,37 @@ export const privateTotalColumns = [
|
||||
}
|
||||
]
|
||||
|
||||
export const privateTotalColumnsNew825 = [
|
||||
{ prop: 'custName', label: '客户名称', width: 120 },
|
||||
{ prop: 'custIdc', label: '客户证件号', width: 140 },
|
||||
{ prop: 'custIsn', label: '客户内码', width: 120 },
|
||||
{ prop: 'curBalD', label: '活期存款余额', width: 140 },
|
||||
{ prop: 'balLoan', label: '贷款余额', width: 140 },
|
||||
{ prop: 'loanAve', label: '贷款年日均', width: 140 },
|
||||
{ prop: 'isSx', label: '是否授信', width: 100 },
|
||||
{ prop: 'isYx', label: '是否用信', width: 100 },
|
||||
{ prop: 'sxBal', label: '授信金额', width: 120 },
|
||||
{ prop: 'isYxht', label: '是否合同签约', width: 120 },
|
||||
{ prop: 'isXyk', label: '是否持有信用卡', width: 130 },
|
||||
{ prop: 'fshl', label: '是否开通丰收互联', width: 140 },
|
||||
{ prop: 'isSd', label: '是否办理收单', width: 120 },
|
||||
{ prop: 'dian', label: '是否代扣电费', width: 120 },
|
||||
{ prop: 'shui', label: '是否代扣水费', width: 120 },
|
||||
{ prop: 'tax', label: '是否代扣税费', width: 120 },
|
||||
{ prop: 'openNum', label: '开户数', width: 100 },
|
||||
{ prop: 'depBal', label: '存款余额', width: 120 },
|
||||
{ prop: 'finBal', label: '财富余额', width: 120 },
|
||||
{ prop: 'isGrhx', label: '是否个人核心客户', width: 140 },
|
||||
{ prop: 'isCfyx', label: '是否财富有效客户', width: 140 },
|
||||
{ prop: 'isYxsbk', label: '是否有效社保卡客户', width: 150 },
|
||||
{ prop: 'is2to3Sbk', label: '是否二换三社保卡', width: 150 },
|
||||
{ prop: 'isYljToSbk', label: '是否养老金迁移至社保卡', width: 180 },
|
||||
{ prop: 'is365zf', label: '近365天有无走访', width: 140 },
|
||||
{ prop: 'is180zf', label: '近180天有无走访', width: 140 },
|
||||
{ prop: 'is90zf', label: '近90天有无走访', width: 140 },
|
||||
{ prop: 'is30zf', label: '近30天有无走访', width: 140 }
|
||||
]
|
||||
|
||||
// 公司明细
|
||||
export const publicTotalColumns = [
|
||||
{
|
||||
|
||||
@@ -422,6 +422,15 @@
|
||||
<el-radio v-for="item in sourceOptions" :key="item.value" :label="item.value">{{ item.label }}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="走访备注">
|
||||
<el-input
|
||||
v-model="feedbackForm.remark"
|
||||
type="textarea"
|
||||
:rows="3"
|
||||
maxlength="200"
|
||||
show-word-limit
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户意愿" required>
|
||||
<div class="feedback-groups">
|
||||
<section v-for="type in feedbackTypeOptions" :key="type" class="feedback-group">
|
||||
@@ -541,6 +550,7 @@ export default {
|
||||
feedbackForm: {
|
||||
id: null,
|
||||
source: "",
|
||||
remark: "",
|
||||
feedbackSelections: createEmptyFeedbackSelections()
|
||||
}
|
||||
};
|
||||
@@ -616,6 +626,7 @@ export default {
|
||||
this.feedbackForm = {
|
||||
id: null,
|
||||
source: "",
|
||||
remark: "",
|
||||
feedbackSelections: createEmptyFeedbackSelections()
|
||||
};
|
||||
},
|
||||
@@ -666,6 +677,7 @@ export default {
|
||||
this.feedbackForm = {
|
||||
id: row.id,
|
||||
source: row.source === null || row.source === undefined ? "" : String(row.source),
|
||||
remark: row.remark || "",
|
||||
feedbackSelections: this.parseFeedbackValue(row.intentionProductValue)
|
||||
};
|
||||
this.feedbackDialogVisible = true;
|
||||
@@ -683,6 +695,7 @@ export default {
|
||||
const payload = {
|
||||
id: this.feedbackForm.id,
|
||||
source: this.feedbackForm.source || null,
|
||||
remark: this.feedbackForm.remark || null,
|
||||
feedbackItems
|
||||
};
|
||||
this.feedbackSubmitting = true;
|
||||
|
||||
Reference in New Issue
Block a user