Commit 2bb61c6e authored by linxin's avatar linxin

Merge branch 'develop' of https://hel.hand-china.com/xugong/hls-xcmg-vue-app into develop

parents e167fb80 83e74673
......@@ -2,7 +2,7 @@
* @Description: 合同详情
* @Author: your name
* @Date: 2019-09-25 15:38:21
* @LastEditTime: 2019-09-30 10:33:53
* @LastEditTime: 2019-09-30 14:49:39
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -237,18 +237,7 @@ export default {
},
tabNum () {
if (this.tabNum === 1) {
let vm = this
let url = $config.basePath + 'prj_lease_query'
let param = {
project_id: window.sessionStorage.getItem('project_id'),
}
// 租赁信息
vm.hlsHttp.post(url, param).then(function (res) {
console.log('result', res)
if (res.result === 'S') {
vm.info = res.info
}
})
}
},
},
......@@ -263,6 +252,8 @@ export default {
this.getBseMsg()
this.getGuarantor()
}
this.getLease()
},
methods:
{
......@@ -281,6 +272,9 @@ export default {
if (res.result === 'S') {
// vm.lists = res.lists
vm.baseInfo = res.info
if (res.info.auth_flag) {
window.sessionStorage.setItem('auth_flag', res.info.auth_flag)
}
}
})
},
......@@ -299,6 +293,20 @@ export default {
}
})
},
getLease () {
let vm = this
let url = $config.basePath + 'prj_lease_query'
let param = {
project_id: window.sessionStorage.getItem('project_id'),
}
// 租赁信息
vm.hlsHttp.post(url, param).then(function (res) {
console.log('result', res)
if (res.result === 'S') {
vm.info = res.info
}
})
},
getTabNum (i) {
console.log(i)
this.tabNum = i
......
......@@ -82,10 +82,11 @@ export default {
}
},
created () {
console.log(window.localStorage.user_phone)
let vm = this
let url = $config.basePath + 'prj_confirm_list_query'
let param = {
user_phone: '18507155349',
user_phone: window.localStorage.user_phone,
}
vm.hlsHttp.post(url, param).then(function (res) {
console.log(res.result)
......
......@@ -2,7 +2,7 @@
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-27 18:07:12
* @LastEditTime: 2019-09-30 10:29:07
* @LastEditTime: 2019-09-30 14:34:43
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -48,7 +48,7 @@
<th class="table-top">现金流项目</th>
<th class="table-top">应还金额</th>
</tr>
<tr v-for="(item,index) in lists" :key="index" @click="goTrial">
<tr v-for="(item,index) in lists" :key="index">
<td>{{ index+1 }}</td>
<td>{{ dateConverse(item.due_date) }}</td>
<td>租金</td>
......@@ -113,11 +113,11 @@ export default {
}
})
},
goTrial () {
this.$router.push({
name: 'FinancingTrial',
})
},
// goTrial () {
// this.$router.push({
// name: 'FinancingTrial',
// })
// },
dateConverse (date) {
return date.replace(/\//g, '-')
},
......
......@@ -2,7 +2,7 @@
* @Descrip""/>User Settings Edit
* @Author: your name
* @Date: 2019-09-29 20:31:00
* @LastEditTime: 2019-09-29 21:04:35
* @LastEditTime: 2019-09-30 13:08:02
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -72,9 +72,8 @@
<div slot="name" class="font-color">年利率</div>
<input slot="content" placeholder="6.5%" >
</item>
<item :showArrow="true">
<item :showArrow="true" @click.native="goRepay">
<div slot="name" class="font-color">查看还款计划</div>
<!-- <input slot="content" placeholder="6.5%" > -->
</item>
</list-item>
</h-content>
......@@ -98,7 +97,11 @@ export default {
watch: {},
methods:
{
goRepay () {
this.$router.push({
name: 'FinancDetails',
})
},
},
}
</script>
......
......@@ -2,7 +2,7 @@
* @Description: 法人信息
* @Author: your name
* @Date: 2019-09-26 15:09:24
* @LastEditTime: 2019-09-30 09:48:00
* @LastEditTime: 2019-09-30 15:15:01
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -10,84 +10,83 @@
<list-item :item-height="44" class="second-part">
<item>
<div slot="name" class="font-color">业务经办</div>
<input slot="content" placeholder="张三" readonly>
<input slot="content" v-model="baseInfo.bp_id_user_n" readonly>
</item>
<item>
<div slot="name" class="font-color">经销商</div>
<input slot="content" placeholder="****代理商" readonly>
<input slot="content" v-model="baseInfo.bp_id_agent_n" readonly>
</item>
</list-item>
<div class="equipment-list">承租人信息</div>
<list-item :item-height="44" class="second-part">
<item>
<div slot="name" class="font-color">公司名称</div>
<input slot="content" placeholder="珠海市珠信达有限公司" readonly>
<input slot="content" v-model="baseInfo.bp_name" readonly>
</item>
<item>
<div slot="name" class="font-color">营业执照号</div>
<input slot="content" placeholder="9144044007079590477" readonly>
<input slot="content" v-model="baseInfo.business_license_num" readonly>
</item>
<item>
<div slot="name" class="font-color">注册资本</div>
<input slot="content" placeholder="1,000万(元)" readonly>
<input slot="content" v-model="baseInfo.registered_capital" readonly>
</item>
<item>
<div slot="name" class="font-color">注册地址</div>
<input slot="content" placeholder="湖北省武汉市洪山区" readonly>
<input slot="content" v-model="baseInfo.registered_place" readonly>
</item>
<item>
<div slot="name" class="font-color">经营地址</div>
<input slot="content" placeholder="湖北省武汉市江岸区" readonly>
<input slot="content" v-model="baseInfo.business_address" readonly>
</item>
<item>
<div slot="name" class="font-color">固定电话</div>
<input slot="content" placeholder="012-51380976" >
<input slot="content" v-model="baseInfo.phone" readonly>
</item>
<item>
<div slot="name" class="font-color" @click="changFlag">是否授权</div>
<!-- <input slot="content" placeholder="是" > -->
<p class="auth">{{ auth_text }}</p>
<div slot="name" class="font-color">是否授权</div>
<input slot="content" v-model="baseInfo.auth_flag" readonly>
</item>
</list-item>
<div class="equipment-list">{{ text }}</div>
<div class="equipment-list">{{ baseInfo.auth_flag === '是' ? '法定授权人': '法定代表人' }}</div>
<!-- 授权人 -->
<list-item v-show="auth_flag" :item-height="44" class="second-part">
<list-item v-show="baseInfo.auth_flag === '是'" :item-height="44" class="second-part">
<item>
<div slot="name" class="font-color">姓名</div>
<input slot="content" placeholder="李四" readonly>
<input slot="content" v-model="baseInfo.auth_person_name" readonly>
</item>
<item>
<div slot="name" class="font-color">证件号</div>
<input slot="content" placeholder="4214563787655457908" readonly>
<input slot="content" v-model="baseInfo.auth_person_id_card" readonly>
</item>
<item>
<div slot="name" class="font-color">公司职务</div>
<input slot="content" placeholder="财务部长" readonly>
<input slot="content" v-model="baseInfo.auth_person_position" readonly>
</item>
<item>
<div slot="name" class="font-color">授权事项</div>
<input slot="content" placeholder="合同签署" readonly>
<input slot="content" v-model="baseInfo.auth_person_matter" readonly>
</item>
</list-item>
<!-- 法定代表人 -->
<list-item v-show="!auth_flag" :item-height="44" class="second-part">
<list-item v-show="baseInfo.auth_flag === '否'" :item-height="44" class="second-part">
<item>
<div slot="name" class="font-color">姓名</div>
<input slot="content" placeholder="李四" readonly>
<input slot="content" v-model="baseInfo.id_card_name" readonly>
</item>
<item>
<div slot="name" class="font-color">证件号</div>
<input slot="content" placeholder="4214563787655457908" readonly>
<input slot="content" v-model="baseInfo.id_card_no" readonly>
</item>
<item>
<div slot="name" class="font-color">手机号码</div>
<input slot="content" placeholder="12345545434" readonly>
<input slot="content" v-model="baseInfo.cell_phone" readonly>
</item>
<item>
<div slot="name" class="font-color">居住地址</div>
<input slot="content" placeholder="珠海市象山区" readonly>
<input slot="content" v-model="baseInfo.living_address" readonly>
</item>
</list-item>
</div>
......@@ -96,29 +95,23 @@
<script>
export default {
name: '',
props: {
'baseInfo': {
type: Object,
default: {},
},
},
data () {
return {
auth_text: '否',
auth_flag: false,
text: '法定代表人信息',
}
},
computed: {},
watch: {
auth_flag () {
if (this.auth_flag === false) {
this.auth_text = '否'
this.text = '法定代表人信息'
} else {
this.auth_text = '是'
this.text = '法定授权人信息'
}
},
},
methods: {
changFlag () {
this.auth_flag = !this.auth_flag
},
},
}
</script>
......
......@@ -54,6 +54,11 @@ export default {
functionName: '用户绑定',
functionState: 'UserBind',
},
{
functionIcon: require('@/assets/intoApproval/introduce.png'),
functionName: '绑定查询',
functionState: 'NaturePersonReadOnly',
},
{
functionIcon: require('@/assets/intoApproval/introduce.png'),
functionName: '进件审批',
......@@ -81,14 +86,26 @@ export default {
area: {},
box1: {},
box2: {},
searchInput: '',
user_bp_status: '',
user_bp_class: '',
bp_id: '',
}
},
beforeCreate: function () {
},
created: function () {
this.imgList = [...functionState.bannerList]
/* this.imgList = [...functionState.bannerList]
this.moduleSeparateList = [...functionState.moduleSeparateList]
this.userQuery() */
},
beforeRouteEnter (to, from, next) {
next(vm => {
if (from.name === 'Login') {
vm.imgList = [...functionState.bannerList]
vm.moduleSeparateList = [...functionState.moduleSeparateList]
vm.userQuery()
}
})
},
updated: function () {
},
......@@ -102,9 +119,44 @@ export default {
})
},
goFunctionHome (data) {
if (data.functionState === 'NaturePersonReadOnly') {
if (this.user_bp_status === 'APPROVED' && this.user_bp_class === 'NP') {
this.$router.push({
name: 'NaturePersonReadOnly',
params: {
'bp_id': this.bp_id,
},
})
} else if (this.user_bp_status === 'APPROVED' && this.user_bp_class === 'ORG') {
this.$router.push({
name: 'EnterpriseReadOnly',
params: {
'bp_id': this.bp_id,
},
})
} else {
this.hlsPopup.showLongCenter('您的绑定申请还在流程中')
}
} else {
this.$router.push({
name: data.functionState,
})
}
},
// 用户信息查询
userQuery () {
let vm = this
let url = $config.basePath + 'user_query'
let param = {
'phone': window.localStorage.getItem('user_phone'),
}
vm.$post(url, param).then(function (res) {
if (res.result === 'S') {
vm.user_bp_status = res.info.user_bp_status
vm.user_bp_class = res.info.user_bp_class
vm.bp_id = res.info.user_bp_id
}
})
},
},
}
......
......@@ -12,7 +12,7 @@
<item>
<img slot="left-icon" src="../assets/login/phone.png" class="left-icon">
<div slot="name" class="required">手机号码</div>
<div slot="content">{{ phone_number }}</div>
<input slot="content" v-model="phone_number" placeholder="请输入手机号码">
</item>
<item>
<img slot="left-icon" src="../assets/login/phone_code.png" class="left-icon">
......@@ -50,7 +50,7 @@
export default {
data () {
return {
phone_number: window.localStorage.getItem('user_phone'),
phone_number: '',
verifiedCode: '',
username: '',
......
<template>
<div id="bank-card-read">
<div class="info">
<div class="info-icon">
<img src="@/assets/userBind/info.png" >
<span>温馨提示</span>
</div>
<p>推荐使用农行卡,农行卡支付免收手续费!</p>
</div>
<div class="my-card">
<div class="top">
<div class="left">
<img src="@/assets/userBind/bankIcon.png" class="icon" >
<span class="top-word">
我的卡
<span class="sum">(共{{ bankList.length }}张)</span>
</span>
</div>
</div>
<div class="clear" />
<div class="card-content">
<ul>
<li v-for="(item,index) in bankList" :key="index" @click="sendFlag(item)">
<div class="slider">
<div
:style="'background-image: url('+ changeBgImg (item) +')'"
class="my-bank-card"
>
<div class="card-info">
<span class="name">{{ item.bank_full_name }}</span>
<span class="card-type">{{ item.bank_card_type }}</span>
<span class="number">卡号</span>
<span class="card-number">**** **** **** {{ selectLast (item) }}</span>
</div>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</template>
<script>
import backImg1 from '@/assets/userBind/nong.png'
import backImg2 from '@/assets/userBind/unNong.png'
export default {
props: {
'bankList': {
default: [],
type: Array,
},
},
data () {
return {
backImg: null,
showModalValue: true,
}
},
created () {
},
methods: {
sendFlag (bank) {
this.showModalValue = true
this.$emit('getInfo', this.showModalValue,bank)
},
selectLast (item) {
let num = item.bank_account_num
return num.substring(num.length - 4)
},
changeBgImg (item) {
if (item.bank_full_name === '中国农业银行') {
return backImg1
} else {
return backImg2
}
},
},
}
</script>
<style lang="less" scoped>
#bank-card-read {
.info {
height: 70px;
background-color: rgba(142, 195, 30, 0.1);
.info-icon {
height: 20px;
padding-top: 20px;
display: flex;
align-items: center;
img {
width: 15.8px;
height: 15.8px;
margin-left: 17.1px;
}
span {
font-family: PingFangSC-Semibold;
font-size: 14px;
color: #8ec31e;
margin-left: 9px;
letter-spacing: 0.5px;
line-height: 20px;
}
}
p {
font-family: PingFangSC-Regular;
font-size: 13px;
color: #656464;
width: 310px;
margin-left: 42px;
letter-spacing: 0.4px;
line-height: 18px;
margin-top: 8px;
}
}
.my-card {
.top {
width: 320px;
margin: 0 auto;
margin-top: 13px;
.left {
height: 32px;
display: flex;
align-items: center;
float: left;
.icon {
width: 18px;
height: 20px;
margin-right: 4px;
}
.top-word {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #00469c;
letter-spacing: 0.46px;
.sum {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4d5d6c;
letter-spacing: 0.46px;
}
}
}
.icon-right {
width: 34px;
height: 34px;
float: right;
}
}
.clear {
clear: both;
}
.card-content {
width: 350px;
padding-left: 28px;
overflow: hidden;
margin-top: 16px;
li {
margin-bottom: 10px;
.slider {
height: 100%;
//margin-left: -14px;
}
}
.my-bank-card {
width: 320px;
height: 190px;
box-shadow: 0 5px 20px 0 rgba(101, 101, 101, 0.25);
border-radius: 6px;
background-size: 320px 190px;
.card-info {
font-family: PingFangSC-Medium;
color: #ffffff;
margin-left: 18px;
padding-top: 15px;
.name,
.card-type {
font-size: 16px;
letter-spacing: 5.5px;
line-height: 24px;
}
.card-type {
display: block;
margin-top: 9px;
}
.number {
font-size: 12px;
letter-spacing: 0;
line-height: 16px;
margin-top: 33px;
display: block;
margin-top: 33px;
}
.card-number {
display: block;
font-family: Avenir-Heavy;
font-size: 16px;
color: #ffffff;
letter-spacing: 6px;
line-height: 24px;
}
}
}
}
}
.swipeout-list .item .function {
left: 330px;
border-radius: 6px;
width: 54px;
height: 190px;
background: url("../../../assets/userBind/delete.png") 16px 84.9px #fde5e8
no-repeat;
background-size: 20px 20px;
}
}
</style>
<template>
<list-item :item-height="44">
<item :showArrow="true">
<div slot="name">纳税人类型</div>
<div slot="content">{{baseInfo.taxpayer_type}}</div>
</item>
<item :showArrow="true">
<div slot="name">发票类型</div>
<div slot="content">{{baseInfo.invoice_kind}}</div>
</item>
<item>
<div slot="name">发票抬头</div>
<div slot="content">{{baseInfo.invoice_title}}</div>
</item>
<item>
<div slot="name">发票地址及电话</div>
<div slot="content">{{baseInfo.invoice_bp_address_phone_num}}</div>
</item>
<item>
<div slot="name">发票开户行及账号</div>
<div slot="content">{{baseInfo.invoice_bp_bank_account}}</div>
</item>
<item>
<div slot="name">纳税人识别号</div>
<div slot="content">{{baseInfo.organization_code}}</div>
</item>
</list-item>
</template>
<script>
export default {
props:['baseInfo'],
data () {
return {
}
},
created () {
},
updated () {
},
methods: {
},
}
</script>
<style scoped>
input::placeholder{
color: #B4B4B5;
}
</style>
This diff is collapsed.
......@@ -2,7 +2,7 @@
* @Description: In User Settings Edit
* @Author: your name
* @Date: 2019-09-19 09:31:19
* @LastEditTime: 2019-09-29 11:38:23
* @LastEditTime: 2019-09-30 11:27:33
* @LastEditors: Please set LastEditors
-->
<template>
......@@ -307,7 +307,7 @@ export default {
bp_name: '',
phone: null,
auth_flag: '',
user_phone: '18507155349',
user_phone: window.localStorage.user_phone,
legal_person: '',
agent_username: '',
enterprise_type: '',
......
<template>
<div id="bank-card">
<div class="info">
<div class="info-icon">
<img src="@/assets/userBind/info.png" >
<span>温馨提示</span>
</div>
<p>推荐使用农行卡,农行卡支付免收手续费!</p>
</div>
<div class="my-card">
<div class="top">
<div class="left">
<img src="@/assets/userBind/bankIcon.png" class="icon" >
<span class="top-word">
我的卡
<span class="sum">(共{{ bankList.length }}张)</span>
</span>
</div>
</div>
<div class="clear" />
<div class="card-content">
<ul>
<li v-for="(item,index) in bankList" :key="index" @click="sendFlag(item)">
<div class="slider">
<div
:style="'background-image: url('+ changeBgImg (item) +')'"
class="my-bank-card"
>
<div class="card-info">
<span class="name">{{ item.bank_full_name }}</span>
<span class="card-type">{{ item.bank_card_type }}</span>
<span class="number">卡号</span>
<span class="card-number">**** **** **** {{ selectLast (item) }}</span>
</div>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</template>
<script>
import backImg1 from '@/assets/userBind/nong.png'
import backImg2 from '@/assets/userBind/unNong.png'
export default {
props: {
'bankList': {
default: [],
type: Array,
},
},
data () {
return {
backImg: null,
showModalValue: true,
}
},
methods: {
sendFlag (bank) {
this.showModalValue = true
this.$emit('getInfo', this.showModalValue,bank)
},
changeBgImg (item) {
if (item.bank_full_name === '中国农业银行') {
return backImg1
} else {
return backImg2
}
},
},
}
</script>
<style lang="less" scoped>
#bank-card {
.info {
height: 70px;
background-color: rgba(142, 195, 30, 0.1);
.info-icon {
height: 20px;
padding-top: 20px;
display: flex;
align-items: center;
img {
width: 15.8px;
height: 15.8px;
margin-left: 17.1px;
}
span {
font-family: PingFangSC-Semibold;
font-size: 14px;
color: #8ec31e;
margin-left: 9px;
letter-spacing: 0.5px;
line-height: 20px;
}
}
p {
font-family: PingFangSC-Regular;
font-size: 13px;
color: #656464;
width: 310px;
margin-left: 42px;
letter-spacing: 0.4px;
line-height: 18px;
margin-top: 8px;
}
}
.my-card {
.top {
width: 320px;
margin: 0 auto;
margin-top: 13px;
.left {
height: 32px;
display: flex;
align-items: center;
float: left;
.icon {
width: 18px;
height: 20px;
margin-right: 4px;
}
.top-word {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #00469c;
letter-spacing: 0.46px;
.sum {
font-family: PingFangSC-Semibold;
font-size: 15px;
color: #4d5d6c;
letter-spacing: 0.46px;
}
}
}
.icon-right {
width: 34px;
height: 34px;
float: right;
}
}
.clear {
clear: both;
}
.card-content {
width: 350px;
padding-left: 28px;
overflow: hidden;
margin-top: 16px;
li {
margin-bottom: 10px;
.slider {
height: 100%;
//margin-left: -14px;
}
}
.my-bank-card {
width: 320px;
height: 190px;
box-shadow: 0 5px 20px 0 rgba(101, 101, 101, 0.25);
border-radius: 6px;
background-size: 320px 190px;
.card-info {
font-family: PingFangSC-Medium;
color: #ffffff;
margin-left: 18px;
padding-top: 15px;
.name,
.card-type {
font-size: 16px;
letter-spacing: 5.5px;
line-height: 24px;
}
.card-type {
display: block;
margin-top: 9px;
}
.number {
font-size: 12px;
letter-spacing: 0;
line-height: 16px;
margin-top: 33px;
display: block;
margin-top: 33px;
}
.card-number {
display: block;
font-family: Avenir-Heavy;
font-size: 16px;
color: #ffffff;
letter-spacing: 6px;
line-height: 24px;
}
}
}
}
}
.swipeout-list .item .function {
left: 330px;
border-radius: 6px;
width: 54px;
height: 190px;
background: url("../../../assets/userBind/delete.png") 16px 84.9px #fde5e8
no-repeat;
background-size: 20px 20px;
}
}
</style>
This diff is collapsed.
<template>
<list-item :item-height="44">
<item :showArrow="true">
<div slot="name" class="font-color">纳税人类型</div>
<div slot="content">{{baseInfo.taxpayer_type}}</div>
</item>
<item :showArrow="true">
<div slot="name" class="font-color">发票类型</div>
<div slot="content">{{baseInfo.invoice_kind_n}}</div>
</item>
<item>
<div slot="name" class="font-color">发票抬头</div>
<div slot="content">{{baseInfo.invoice_title}}</div>
</item>
<item>
<div slot="name" class="font-color">发票地址及电话</div>
<div slot="content">{{baseInfo.invoice_bp_address_phone_num}}</div>
</item>
<item>
<div slot="name" class="font-color">发票开户行及账号</div>
<div slot="content">{{baseInfo.invoice_bp_bank_account}}</div>
</item>
<item>
<div slot="name" class="font-color">纳税人识别号</div>
<div slot="content">{{baseInfo.organization_code}}</div>
</item>
</list-item>
</template>
<script>
export default {
name: 'InvoiceInfo',
props: ['baseInfo'],
data () {
return {}
},
watch: {
},
created () {
},
updated () {
},
methods: {
},
}
</script>
<style scoped>
input::placeholder{
color: #B4B4B5;
}
.font-color {
color: #656464;
}
</style>
......@@ -26,7 +26,9 @@ import HlsPopup from '@/pages/hlsPopup'
import UserBind from '@/pages/userBind/userBind'
import NaturePerson from '@/pages/userBind/np/naturePerson'
import Enterprise from '@/pages/userBind/org/enterprise'
// 用户绑定查询
import NaturePersonReadOnly from '@/pages/userBind/npReadOnly/naturePersonReadOnly'
import EnterpriseReadOnly from '@/pages/userBind/orgReadOnly/enterpriseReadOnly'
// 进件审批
import Base from '@/pages/intoApproval/intoApproval/base'
import IntoList from '@/pages/intoApproval/intoList'
......@@ -108,6 +110,9 @@ export default new Router({
{path: '/user-bind', component: UserBind, name: 'UserBind', meta: {keepAlive: false}},
{path: '/nature-person', component: NaturePerson, name: 'NaturePerson', meta: {keepAlive: false}},
{path: '/enterprise', component: Enterprise, name: 'Enterprise', meta: {keepAlive: false}},
// 用户绑定查询
{path: '/nature-person-readonly', component: NaturePersonReadOnly, name: 'NaturePersonReadOnly', meta: {keepAlive: false}},
{path: '/enterprise-readonly', component: EnterpriseReadOnly, name: 'EnterpriseReadOnly', meta: {keepAlive: false}},
// 进件审批
{path: '/base', component: Base, name: 'Base', meta: {keepAlive: false}},
{path: '/refund', component: Refund, name: 'Refund', meta: {keepAlive: false}},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment