|
@@ -31,15 +31,80 @@
|
|
|
</a-upload>
|
|
</a-upload>
|
|
|
</div>
|
|
</div>
|
|
|
<a-radio-group v-model:value="value1" button-style="solid" style="width: 250px" @change="fileTypeClick">
|
|
<a-radio-group v-model:value="value1" button-style="solid" style="width: 250px" @change="fileTypeClick">
|
|
|
- <a-radio-button style="display: flex" value="businessContract">业务合同</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="smsNumberCertificate">号码证书</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="recordNotice">备案通知</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="groupPriceApproval">集团政企价格审批单</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="businessLicence">营业执照</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="customerIntroductionLetter">集团政企价格审批单</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="handlerIdNumberCopy">经办人身份复印件</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="crmScreenshot">CRM 行短业务截图</a-radio-button>
|
|
|
|
|
- <a-radio-button style="display: flex" value="valueAddedLicence">增值业务许可证</a-radio-button>
|
|
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.businessContract].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.businessContract].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.businessContract].numberStyle
|
|
|
|
|
+ >
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.businessContract>业务合同</a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.smsNumberCertificate].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.smsNumberCertificate].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.smsNumberCertificate].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.smsNumberCertificate>
|
|
|
|
|
+ 号码证书
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.recordNotice].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.recordNotice].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.recordNotice].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.recordNotice>
|
|
|
|
|
+ 备案通知
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.groupPriceApproval].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.groupPriceApproval].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.groupPriceApproval].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.groupPriceApproval>
|
|
|
|
|
+ 集团政企价格审批单
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.businessLicence].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.businessLicence].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.businessLicence].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.businessLicence>
|
|
|
|
|
+ 营业执照
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.customerIntroductionLetter].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.customerIntroductionLetter].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.customerIntroductionLetter].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.customerIntroductionLetter>
|
|
|
|
|
+ 集团政企价格审批单
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.handlerIdNumberCopy].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.handlerIdNumberCopy].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.handlerIdNumberCopy].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.handlerIdNumberCopy>
|
|
|
|
|
+ 经办人身份复印件
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.crmScreenshot].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.crmScreenshot].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.crmScreenshot].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.crmScreenshot>
|
|
|
|
|
+ CRM 行短业务截图
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
|
|
+ <a-badge class="badge-width-100" :count=fileTypeBadge[fileType.valueAddedLicence].len
|
|
|
|
|
+ :show-zero=fileTypeBadge[fileType.valueAddedLicence].showZero
|
|
|
|
|
+ :number-style=fileTypeBadge[fileType.valueAddedLicence].numberStyle>
|
|
|
|
|
+ <a-radio-button style="display: flex" :value=fileType.valueAddedLicence>
|
|
|
|
|
+ 增值业务许可证
|
|
|
|
|
+ </a-radio-button>
|
|
|
|
|
+ </a-badge>
|
|
|
|
|
+
|
|
|
</a-radio-group>
|
|
</a-radio-group>
|
|
|
</a-card>
|
|
</a-card>
|
|
|
</a-spin>
|
|
</a-spin>
|
|
@@ -49,12 +114,10 @@
|
|
|
<a-card title="资料详情" :bordered="false">
|
|
<a-card title="资料详情" :bordered="false">
|
|
|
<a-list item-layout="vertical" :data-source="delList">
|
|
<a-list item-layout="vertical" :data-source="delList">
|
|
|
<a-list-item slot="renderItem" slot-scope="item, index">
|
|
<a-list-item slot="renderItem" slot-scope="item, index">
|
|
|
-<!-- <pdf
|
|
|
|
|
- ref="pdf"
|
|
|
|
|
- :src="item.url">
|
|
|
|
|
- </pdf>-->
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
|
|
+ <!-- <pdf
|
|
|
|
|
+ ref="pdf"
|
|
|
|
|
+ :src="item.url">
|
|
|
|
|
+ </pdf>-->
|
|
|
|
|
|
|
|
|
|
|
|
|
<a-list-item-meta
|
|
<a-list-item-meta
|
|
@@ -131,6 +194,7 @@
|
|
|
import {JeecgListMixin} from '@/mixins/JeecgListMixin'
|
|
import {JeecgListMixin} from '@/mixins/JeecgListMixin'
|
|
|
import {httpAction} from '@api/manage'
|
|
import {httpAction} from '@api/manage'
|
|
|
import pdf from 'vue-pdf';
|
|
import pdf from 'vue-pdf';
|
|
|
|
|
+
|
|
|
let Base64 = require('js-base64').Base64
|
|
let Base64 = require('js-base64').Base64
|
|
|
|
|
|
|
|
|
|
|
|
@@ -146,11 +210,90 @@ export default {
|
|
|
setup() {
|
|
setup() {
|
|
|
|
|
|
|
|
},
|
|
},
|
|
|
- components:{
|
|
|
|
|
|
|
+ components: {
|
|
|
pdf
|
|
pdf
|
|
|
},
|
|
},
|
|
|
data() {
|
|
data() {
|
|
|
return {
|
|
return {
|
|
|
|
|
+
|
|
|
|
|
+ fileType: {
|
|
|
|
|
+ businessContract: "businessContract",
|
|
|
|
|
+ smsNumberCertificate: "smsNumberCertificate",
|
|
|
|
|
+ recordNotice: "recordNotice",
|
|
|
|
|
+ groupPriceApproval: "groupPriceApproval",
|
|
|
|
|
+ businessLicence: "businessLicence",
|
|
|
|
|
+ customerIntroductionLetter: "customerIntroductionLetter",
|
|
|
|
|
+ handlerIdNumberCopy: "handlerIdNumberCopy",
|
|
|
|
|
+ crmScreenshot: "crmScreenshot",
|
|
|
|
|
+ valueAddedLicence: "valueAddedLicence"
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ fileTypeBadge: {
|
|
|
|
|
+ "businessContract": {
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "smsNumberCertificate":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "recordNotice":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "groupPriceApproval":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "businessLicence":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "customerIntroductionLetter":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "handlerIdNumberCopy":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "crmScreenshot":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ "valueAddedLicence":{
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: '#fa073f'
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
spinning: false,
|
|
spinning: false,
|
|
|
value1: "businessContract",
|
|
value1: "businessContract",
|
|
|
expandedKeys: ['0-0', '0-1'],
|
|
expandedKeys: ['0-0', '0-1'],
|
|
@@ -159,6 +302,7 @@ export default {
|
|
|
autoSearch: false,
|
|
autoSearch: false,
|
|
|
dataSource: [],
|
|
dataSource: [],
|
|
|
errorCount: 0,
|
|
errorCount: 0,
|
|
|
|
|
+
|
|
|
url: {
|
|
url: {
|
|
|
importExcel: window._CONFIG['domainURL'] + "/smsCheck/task/importCustomerExcel",
|
|
importExcel: window._CONFIG['domainURL'] + "/smsCheck/task/importCustomerExcel",
|
|
|
importData: "/smsCheck/task/importCustomerData",
|
|
importData: "/smsCheck/task/importCustomerData",
|
|
@@ -166,16 +310,17 @@ export default {
|
|
|
editUrl: "/smsCheck/customerData/edit/info/id",
|
|
editUrl: "/smsCheck/customerData/edit/info/id",
|
|
|
list: "/smsCheck/customerData/list"
|
|
list: "/smsCheck/customerData/list"
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
delList: [],
|
|
delList: [],
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
created() {
|
|
created() {
|
|
|
|
|
+ //this.badgeCount()
|
|
|
this.customerDataList();
|
|
this.customerDataList();
|
|
|
|
|
+ this.badgeCount()
|
|
|
},
|
|
},
|
|
|
-
|
|
|
|
|
methods: {
|
|
methods: {
|
|
|
-
|
|
|
|
|
customerDataList() {
|
|
customerDataList() {
|
|
|
let model = {
|
|
let model = {
|
|
|
"infoId": this.infoId
|
|
"infoId": this.infoId
|
|
@@ -205,17 +350,68 @@ export default {
|
|
|
} else {
|
|
} else {
|
|
|
this.delList = [];
|
|
this.delList = [];
|
|
|
}
|
|
}
|
|
|
|
|
+ console.log( this.delList)
|
|
|
} else {
|
|
} else {
|
|
|
this.delList = [];
|
|
this.delList = [];
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
} else {
|
|
|
-
|
|
|
|
|
|
|
+ this.$message.error('查询资料信息失败')
|
|
|
}
|
|
}
|
|
|
}).finally(() => {
|
|
}).finally(() => {
|
|
|
|
|
|
|
|
})
|
|
})
|
|
|
},
|
|
},
|
|
|
|
|
+ badgeCount() {
|
|
|
|
|
+ //this.fileTypeBadge = []
|
|
|
|
|
+ let model = {
|
|
|
|
|
+ "infoId": this.infoId
|
|
|
|
|
+ }
|
|
|
|
|
+ let res = null;
|
|
|
|
|
+ httpAction(this.url.list, model, "post")
|
|
|
|
|
+ .then((res) => {
|
|
|
|
|
+ if (res.success) {
|
|
|
|
|
+ res = res.result.records
|
|
|
|
|
+ if (res.length > 0 && res != null) {
|
|
|
|
|
+ let data = res[0];
|
|
|
|
|
+ for (var i in this.fileType) {
|
|
|
|
|
+ let fileTypeElement = this.fileType[i];
|
|
|
|
|
+ let datum = data[fileTypeElement];
|
|
|
|
|
+ let badge = {};
|
|
|
|
|
+ if (datum == null) {
|
|
|
|
|
+
|
|
|
|
|
+ } else {
|
|
|
|
|
+ let length = datum.split(",").length;
|
|
|
|
|
+ let showZero = length > 0 ? false : true;
|
|
|
|
|
+ badge = {
|
|
|
|
|
+ len: parseInt(length),
|
|
|
|
|
+ showZero: showZero,
|
|
|
|
|
+ numberStyle: {
|
|
|
|
|
+ backgroundColor: "#52c41a"
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ this.fileTypeBadge[fileTypeElement] = badge;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ } else {
|
|
|
|
|
+ /* for (var i in this.fileType) {
|
|
|
|
|
+ let fileTypeElement = this.fileType[i];
|
|
|
|
|
+ let badge = {
|
|
|
|
|
+ len: 0,
|
|
|
|
|
+ showZero: true,
|
|
|
|
|
+ style: {}
|
|
|
|
|
+
|
|
|
|
|
+ }
|
|
|
|
|
+ this.fileTypeBadge[fileTypeElement] = badge;
|
|
|
|
|
+ }*/
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
|
|
|
importBeforeUpload(file) {
|
|
importBeforeUpload(file) {
|
|
|
var fileType = file.type;
|
|
var fileType = file.type;
|
|
@@ -234,6 +430,7 @@ export default {
|
|
|
|
|
|
|
|
return true
|
|
return true
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
importHandleChange(info) {
|
|
importHandleChange(info) {
|
|
|
this.spinning = true;
|
|
this.spinning = true;
|
|
|
info.file
|
|
info.file
|
|
@@ -253,6 +450,7 @@ export default {
|
|
|
.then((res) => {
|
|
.then((res) => {
|
|
|
if (res.success) {
|
|
if (res.success) {
|
|
|
this.customerDataList();
|
|
this.customerDataList();
|
|
|
|
|
+ this.badgeCount();
|
|
|
} else {
|
|
} else {
|
|
|
}
|
|
}
|
|
|
}).finally(() => {
|
|
}).finally(() => {
|
|
@@ -269,12 +467,10 @@ export default {
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
|
|
|
-
|
|
|
|
|
fileTypeClick(a, event) {
|
|
fileTypeClick(a, event) {
|
|
|
- //console.log(a)
|
|
|
|
|
- //console.log(event)
|
|
|
|
|
this.customerDataList();
|
|
this.customerDataList();
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
radioStyle() {
|
|
radioStyle() {
|
|
|
return {
|
|
return {
|
|
|
display: 'flex',
|
|
display: 'flex',
|
|
@@ -282,6 +478,7 @@ export default {
|
|
|
lineHeight: '30px'
|
|
lineHeight: '30px'
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
renderContent(h, {node, data, store}) {
|
|
renderContent(h, {node, data, store}) {
|
|
|
return (
|
|
return (
|
|
|
<span class="custom-tree-node">
|
|
<span class="custom-tree-node">
|
|
@@ -342,5 +539,8 @@ export default {
|
|
|
</script>
|
|
</script>
|
|
|
|
|
|
|
|
<style scoped>
|
|
<style scoped>
|
|
|
|
|
+.badge-width-100 {
|
|
|
|
|
+ width: 100%;
|
|
|
|
|
+}
|
|
|
|
|
|
|
|
</style>
|
|
</style>
|