Commit 02bce022 authored by tianhongyang's avatar tianhongyang

企业详情 菜单层级更改,重写部分逻辑

parent fa04140e
<template>
<div id="detailPart" class="sides-container">
<!-- 搜索栏 -->
<el-input placeholder="搜索" class="side-input" v-model="searchText" clearable @input="handleSearch(true)" @keyup.enter.native="handleSearch()">
<i slot="prefix" class="el-input__icon el-icon-search" @click="handleSearch()"></i>
</el-input>
<el-menu ref="sideMenu" :unique-opened="true" :default-active="searchIndex?searchIndex:routeIndex" class="detail-menu" @open="handleOpen">
<el-menu ref="sideMenu" :unique-opened="true" :default-active="searchIndex" class="detail-menu" @open="handleOpen">
<template v-for="(item, index) in sideRoute">
<el-submenu :index="index.toString()" v-if="item.children"
<!-- 一级菜单 -->
<el-submenu :index="item.index" :key="item.index" v-if="item.children"
:disabled="!isCompanyId(item.title) || (item.title=='项目商机'&&statisticObj.business.landInfo<1&&statisticObj.business.busProposedProjectV1<1&&statisticObj.performance.specialDebt<1&&statisticObj.performance.bidPlan<1&&statisticObj.business.biddingAnnouncement<1&&statisticObj.business.proBiddingAnnouncement<1&&statisticObj.business.adminLicensing<1)">
<template slot="title">
<span>{{item.title}}</span>
</template>
<el-menu-item :index="index+'-'+idx" v-for="(it, idx) in item.children" :key="idx" @click="handleItem(it)"
:disabled="it.disabled">{{it.title}}</el-menu-item>
<template v-for="(subItem,subIndex) of item.children">
<!-- 二级菜单 -->
<template v-if="subItem.children && subItem.children.length">
<el-submenu :index="subItem.index" :key="subItem.index">
<template slot="title">
<span>{{subItem.title}}</span>
</template>
<!-- 三级菜单 -->
<template v-for="(threeLevelMenu,threeLevelIndex) of subItem.children">
<el-menu-item :index="threeLevelMenu.index" :key="threeLevelMenu.index" @click="handleItem(threeLevelMenu)"
:disabled="!isCompanyId(threeLevelMenu.title) || threeLevelMenu.disabled"
v-if="isCustomerId(threeLevelMenu.pathName)">{{threeLevelMenu.title}}</el-menu-item>
</template>
</el-submenu>
</template>
<template v-else>
<el-menu-item :index="subItem.index" @click="handleItem(subItem)" :disabled="!isCompanyId(subItem.title) || subItem.disabled"
v-if="isCustomerId(subItem.pathName)">{{subItem.title}}</el-menu-item>
</template>
</template>
</el-submenu>
<template v-else>
<el-menu-item :index="index.toString()" @click="handleItem(item)" :disabled="!isCompanyId(item.title) || item.disabled"
<el-menu-item :index="item.index" @click="handleItem(item)" :disabled="!isCompanyId(item.title) || item.disabled"
v-if="isCustomerId(item.pathName)">{{item.title}}</el-menu-item>
</template>
</template>
......@@ -25,6 +51,7 @@
<script>
import { financial } from '@/api/detail/party-a/financial';
import { detailSideBar } from "@/utils";
import { v4 } from "uuid";
export default {
name: 'Sidebar',
props: {
......@@ -58,123 +85,131 @@ export default {
searchText: '',
sideRoute: [
{
title: '企业概要', pathName: '', children: [
{ title: '企业速览', pathName: 'overview' },
{ title: '工商信息', pathName: 'businfo' },
{ title: '股东信息', pathName: 'holderinfo' },
{ title: '高管信息', pathName: 'execuinfo' },
{ title: '对外投资', pathName: 'overseas' },
{ title: '分支机构', pathName: 'branch' }
]
},
{ title: '财务简析', pathName: 'financial' },
{
title: '项目商机', pathName: '', children: [
{ title: '重点项目', pathName: 'majorProject' },
{ title: '土地交易', pathName: 'landtransaction' },
{ title: '拟建项目', pathName: 'proposed' },
{ title: '专项债项目', pathName: 'bond' },
{ title: '招标计划', pathName: 'biddingplan' },
{ title: '招标公告', pathName: 'announcement' },
{ title: '标讯Pro', pathName: 'tencent' },
{ title: '行政许可', pathName: 'administrative' }
]
},
{
title: '业务往来', pathName: '', children: [
{ title: '客户', pathName: 'custom' },
{ title: '供应商', pathName: 'supplier' },
{ title: '招标代理', pathName: 'bidagency' },
{ title: '历史发包', pathName: 'hiscontract' },
{ title: '开标记录', pathName: 'bidrecords' }
title: "企业经营", pathName: "", children: [
{
title: '企业概要', pathName: '', children: [
{ title: '企业速览', pathName: 'overview' },
{ title: '工商信息', pathName: 'businfo' },
{ title: '股东信息', pathName: 'holderinfo' },
{ title: '高管信息', pathName: 'execuinfo' },
{ title: '对外投资', pathName: 'overseas' },
{ title: '分支机构', pathName: 'branch' }
]
},
{ title: '财务简析', pathName: 'financial' },
{
title: '项目商机', pathName: '', children: [
{ title: '重点项目', pathName: 'majorProject' },
{ title: '土地交易', pathName: 'landtransaction' },
{ title: '拟建项目', pathName: 'proposed' },
{ title: '专项债项目', pathName: 'bond' },
{ title: '招标计划', pathName: 'biddingplan' },
{ title: '招标公告', pathName: 'announcement' },
{ title: '标讯Pro', pathName: 'tencent' },
{ title: '行政许可', pathName: 'administrative' }
]
},
{
title: '业务往来', pathName: '', children: [
{ title: '客户', pathName: 'custom' },
{ title: '供应商', pathName: 'supplier' },
{ title: '招标代理', pathName: 'bidagency' },
{ title: '历史发包', pathName: 'hiscontract' },
{ title: '开标记录', pathName: 'bidrecords' }
]
},
{
title: '城投分析', pathName: '', children: [
{ title: '区域经济', pathName: 'regionalEconomies' },
{ title: '城投拿地', pathName: 'landAcquisition' },
{ title: '同地区城投', pathName: 'sameRegion' }
]
},
{
title: '风险信息', pathName: '', children: [
{ title: '行政处罚', pathName: 'punish' },
{ title: '经营异常', pathName: 'businessAnomaly' },
{ title: '被执行人', pathName: 'ifThePerson' },
{ title: '失信被执行人', pathName: 'dishonesty' },
{ title: '限制高消费', pathName: 'limitHighConsumption' },
{ title: '股权冻结', pathName: 'equityFreezing' },
// { title: '裁判文书', pathName: 'judgment' },
// { title: '法院公告', pathName: 'courtNotice' },
// { title: '开庭公告', pathName: 'openacourtsessionNotice' },
// {title: '信用中国', pathName: ''}
]
},
{ title: '商务信息', pathName: 'business' },
{ title: '招标偏好', pathName: 'preference' },
{ title: '合作情况', pathName: 'cooperate' },
{ title: '联系人', pathName: 'decisionMaking' },
{ title: '跟进记录', pathName: 'gjjl' }
]
},
{
title: '城投分析', pathName: '', children: [
{ title: '区域经济', pathName: 'regionalEconomies' },
{ title: '城投拿地', pathName: 'landAcquisition' },
{ title: '同地区城投', pathName: 'sameRegion' }
]
},
{
title: '风险信息', pathName: '', children: [
{ title: '行政处罚', pathName: 'punish' },
{ title: '经营异常', pathName: 'businessAnomaly' },
{ title: '被执行人', pathName: 'ifThePerson' },
{ title: '失信被执行人', pathName: 'dishonesty' },
{ title: '限制高消费', pathName: 'limitHighConsumption' },
{ title: '股权冻结', pathName: 'equityFreezing' },
// { title: '裁判文书', pathName: 'judgment' },
// { title: '法院公告', pathName: 'courtNotice' },
// { title: '开庭公告', pathName: 'openacourtsessionNotice' },
// {title: '信用中国', pathName: ''}
]
},
{ title: '商务信息', pathName: 'business' },
{ title: '招标偏好', pathName: 'preference' },
{ title: '合作情况', pathName: 'cooperate' },
{ title: '联系人', pathName: 'decisionMaking' },
{ title: '跟进记录', pathName: 'gjjl' }
}
],
sideRoute1: [
{
title: '企业概要', pathName: '', children: [
{ title: '企业速览', pathName: 'overview' },
{ title: '工商信息', pathName: 'businfo' },
{ title: '股东信息', pathName: 'holderinfo' },
{ title: '高管信息', pathName: 'execuinfo' },
{ title: '对外投资', pathName: 'overseas' },
{ title: '分支机构', pathName: 'branch' }
]
},
{ title: '财务简析', pathName: 'financial' },
{
title: '项目商机', pathName: '', children: [
{ title: '重点项目', pathName: 'majorProject' },
{ title: '土地交易', pathName: 'landtransaction' },
{ title: '拟建项目', pathName: 'proposed' },
{ title: '专项债项目', pathName: 'bond' },
{ title: '招标计划', pathName: 'biddingplan' },
{ title: '招标公告', pathName: 'announcement' },
{ title: '标讯Pro', pathName: 'tencent' },
{ title: '行政许可', pathName: 'administrative' }
]
},
{
title: '业务往来', pathName: '', children: [
{ title: '客户', pathName: 'custom' },
{ title: '供应商', pathName: 'supplier' },
{ title: '招标代理', pathName: 'bidagency' },
{ title: '历史发包', pathName: 'hiscontract' },
{ title: '开标记录', pathName: 'bidrecords' }
]
},
{
title: '城投分析', pathName: '', children: [
{ title: '区域经济', pathName: 'regionalEconomies' },
{ title: '城投拿地', pathName: 'landAcquisition' },
{ title: '同地区城投', pathName: 'sameRegion' }
title: "企业经营", pathName: "", children: [
{
title: '企业概要', pathName: '', children: [
{ title: '企业速览', pathName: 'overview' },
{ title: '工商信息', pathName: 'businfo' },
{ title: '股东信息', pathName: 'holderinfo' },
{ title: '高管信息', pathName: 'execuinfo' },
{ title: '对外投资', pathName: 'overseas' },
{ title: '分支机构', pathName: 'branch' }
]
},
{ title: '财务简析', pathName: 'financial' },
{
title: '项目商机', pathName: '', children: [
{ title: '重点项目', pathName: 'majorProject' },
{ title: '土地交易', pathName: 'landtransaction' },
{ title: '拟建项目', pathName: 'proposed' },
{ title: '专项债项目', pathName: 'bond' },
{ title: '招标计划', pathName: 'biddingplan' },
{ title: '招标公告', pathName: 'announcement' },
{ title: '标讯Pro', pathName: 'tencent' },
{ title: '行政许可', pathName: 'administrative' }
]
},
{
title: '业务往来', pathName: '', children: [
{ title: '客户', pathName: 'custom' },
{ title: '供应商', pathName: 'supplier' },
{ title: '招标代理', pathName: 'bidagency' },
{ title: '历史发包', pathName: 'hiscontract' },
{ title: '开标记录', pathName: 'bidrecords' }
]
},
{
title: '城投分析', pathName: '', children: [
{ title: '区域经济', pathName: 'regionalEconomies' },
{ title: '城投拿地', pathName: 'landAcquisition' },
{ title: '同地区城投', pathName: 'sameRegion' }
]
},
{
title: '风险信息', pathName: '', children: [
{ title: '行政处罚', pathName: 'punish' },
{ title: '经营异常', pathName: 'businessAnomaly' },
{ title: '被执行人', pathName: 'ifThePerson' },
{ title: '失信被执行人', pathName: 'dishonesty' },
{ title: '限制高消费', pathName: 'limitHighConsumption' },
{ title: '股权冻结', pathName: 'equityFreezing' },
// { title: '裁判文书', pathName: 'judgment' },
// { title: '法院公告', pathName: 'courtNotice' },
// { title: '开庭公告', pathName: 'openacourtsessionNotice' },
// {title: '信用中国', pathName: ''}
]
},
{ title: '商务信息', pathName: 'business' },
{ title: '招标偏好', pathName: 'preference' },
{ title: '合作情况', pathName: 'cooperate' },
{ title: '联系人', pathName: 'decisionMaking' },
{ title: '跟进记录', pathName: 'gjjl' }
]
},
{
title: '风险信息', pathName: '', children: [
{ title: '行政处罚', pathName: 'punish' },
{ title: '经营异常', pathName: 'businessAnomaly' },
{ title: '被执行人', pathName: 'ifThePerson' },
{ title: '失信被执行人', pathName: 'dishonesty' },
{ title: '限制高消费', pathName: 'limitHighConsumption' },
{ title: '股权冻结', pathName: 'equityFreezing' },
// { title: '裁判文书', pathName: 'judgment' },
// { title: '法院公告', pathName: 'courtNotice' },
// { title: '开庭公告', pathName: 'openacourtsessionNotice' },
// {title: '信用中国', pathName: ''}
]
},
{ title: '商务信息', pathName: 'business' },
{ title: '招标偏好', pathName: 'preference' },
{ title: '合作情况', pathName: 'cooperate' },
{ title: '联系人', pathName: 'decisionMaking' },
{ title: '跟进记录', pathName: 'gjjl' }
}
],
defaultRoute: [],
customer: [
......@@ -197,13 +232,10 @@ export default {
};
},
computed: {
routeIndex() {
let idx = this.getRouteIdx('', this.pathName) || '0-0';
return idx;
}
},
created() {
this.defaultRoute = JSON.parse(JSON.stringify(this.sideRoute));
this.sideBarInit();
},
watch: {
statisticObj: {
......@@ -213,6 +245,33 @@ export default {
},
},
methods: {
sideBarInit() {
const _temp = this.sideAddUid(JSON.parse(JSON.stringify(this.sideRoute)));
this.sideRoute = _temp;
this.defaultRoute = JSON.parse(JSON.stringify(this.sideRoute));
this.searchIndex = this.findNodeIndex(this.defaultRoute, "overview").index;
},
// 查找菜单中的元素
findNodeIndex(tree, key, findKey = "pathName") {
let len = tree.length;
for (let index = 0; index < len; index++) {
if (tree[index][findKey] === key) {
return tree[index];
};
if (tree[index]?.children?.length) {
return this.findNodeIndex(tree[index]?.children, key, findKey);
}
}
},
sideAddUid(array) {
return array.map(item => {
item.index = v4();
if (item?.children?.length) {
item.children = this.sideAddUid(item?.children);
}
return item;
});
},
financial(id) {
financial({ cid: String(id) }).then(res => {
if ((res.code == 200 && !res.data) || !res.data?.totalAssets) {
......@@ -221,6 +280,7 @@ export default {
}
});
},
// 菜单关联服务端数据
createSideBarWithServerData(value) {
this.sideRoute = JSON.parse(JSON.stringify(this.defaultRoute));
......@@ -309,39 +369,26 @@ export default {
this.$emit("currentPath", obj);
},
handleSearch(flag) {
// 手动输入时 flag 为true
if ((this.searchText && !flag) || (!this.searchText && flag)) {
let idx = this.getRouteIdx(this.searchText);
if (idx) {
if (idx.includes('-')) {
let openIdx = idx.slice(0, 1);
this.sideRoute = [this.defaultRoute[openIdx]];
this.$refs.sideMenu.open(openIdx);
} else {
this.sideRoute = [this.defaultRoute[idx]];
}
this.searchIndex = '-1';
} else {
this.sideRoute = this.defaultRoute;
this.searchIndex = '';
}
}
},
getRouteIdx(pathTitle, pathName) {
let idx = '', sideArr = this.sideRoute == this.defaultRoute ? this.sideRoute : this.defaultRoute;
for (let i = 0; i < sideArr.length; i++) {
if (sideArr[i].title == pathTitle || sideArr[i].pathName == pathName) {
idx = i.toString();
break;
} else if (sideArr[i].children) {
for (let j = 0; j < sideArr[i].children.length; j++) {
if (sideArr[i].children[j].title == pathTitle || sideArr[i].children[j].pathName == pathName) {
idx = i + '-' + j;
break;
}
}
}
// 找到唯一标识
console.log(this.searchText);
let side = this.findNodeIndex(this.defaultRoute, this.searchText, "title");
console.log(side);
// if (idx) {
// if (idx.includes('-')) {
// let openIdx = idx.slice(0, 1);
// this.sideRoute = [this.defaultRoute[openIdx]];
// this.$refs.sideMenu.open(openIdx);
// } else {
// this.sideRoute = [this.defaultRoute[idx]];
// }
// this.searchIndex = '-1';
// } else {
// this.sideRoute = this.defaultRoute;
// this.searchIndex = '';
// }
}
return idx;
},
isCustomerId(name) {
if (this.customer.indexOf(name) != -1) {
......
......@@ -115,9 +115,9 @@ import Preference from "./preference"; //招标偏好
import Cooperate from "./cooperate"; //合作情况
import DecisionMaking from "./decisionMaking"; //决策链条
import Gjjl from "../../project/projectList/component/gjjl"; //跟进记录
import {
urbanInvestmentPage,
} from '@/api/detail/party-a/urbanLnvestment';
// import {
// urbanInvestmentPage,
// } from '@/api/detail/party-a/urbanLnvestment';
export default {
name: 'PartyA',
components: {
......@@ -290,14 +290,14 @@ export default {
provinceIds: [this.companyInfo.provinceId],
cityIds: [this.companyInfo.cityId],
};
const result = await urbanInvestmentPage(data);
if (result.code == 200) {
if (result.data.totalCount < 1) {
let arr = JSON.parse(JSON.stringify(this.$refs.sidebar.sideRoute));
arr[4].children[2].disabled = true;
this.$refs.sidebar.sideRoute = arr;
}
}
// const result = await urbanInvestmentPage(data);
// if (result.code == 200) {
// if (result.data.totalCount < 1) {
// let arr = JSON.parse(JSON.stringify(this.$refs.sidebar.sideRoute));
// arr[4].children[2].disabled = true;
// this.$refs.sidebar.sideRoute = arr;
// }
// }
if (this.companyInfo && this.companyInfo.companyName) {
this.$nextTick(() => {
document.getElementById('tagTitle').innerText = this.companyInfo.companyName;
......
......@@ -13,10 +13,68 @@
<tables v-if="!isSkeleton" :indexFixed="true" :tableData="tableData" :forData="forData" :tableDataTotal="tableDataTotal"
:queryParams="queryParams" @handle-current-change="handleCurrentChange">
<!-- 冻结起止日期 -->
<template slot="freezeStartDate" slot-scope="scope">
<span v-if="scope.row.freezeStartDate || scope.row.freezeEndDate">
{{`${scope.row.freezeStartDate ? scope.row.freezeStartDate : "-"}至${scope.row.freezeEndDate ? scope.row.freezeEndDate : "-"}`}}
</span>
<span v-else>-</span>
</template>
<!-- 操作 -->
<template slot="operation-table" slot-scope="scope">
<span style="color: #0081FF;cursor: pointer;" @click="viewDetail(scope.row)">操作</span>
</template>
</tables>
<!-- 股权冻结详情 -->
<el-dialog title="股权冻结详情" :visible.sync="equityFreezingDetailDialog" width="720px" @close="dialogClose" class="equity-freezing-dialog-container"
custom-class="equity-freezing-dialog">
<div class="equity-freezing-dialog-inner">
<table>
<tr>
<td class="table-key">执行通知书文号</td>
<td colspan="3">{{detailTemp.number ? detailTemp.number : "-"}}</td>
</tr>
<tr>
<td class="table-key">执行裁定书文号</td>
<td>{{detailTemp.adjudicateNo ? detailTemp.adjudicateNo : "-"}}</td>
<td class="table-key">执行事项</td>
<td>{{detailTemp.assistItem ? detailTemp.assistItem : "-"}}</td>
</tr>
<tr>
<td class="table-key">被执行人</td>
<td>{{detailTemp.beExecutedPerson ? detailTemp.beExecutedPerson : "-"}}</td>
<td class="table-key">被执行人证件种类</td>
<td>{{detailTemp.assistIdentType ? detailTemp.assistIdentType : "-"}}</td>
</tr>
<tr>
<td class="table-key">被执行人证照号</td>
<td>{{detailTemp.assistIdentNo ? detailTemp.assistIdentNo : "-"}}</td>
<td class="table-key">冻结状态</td>
<td>{{detailTemp.status ? detailTemp.status : "-"}}</td>
</tr>
<tr>
<td class="table-key">被执行人持有股权、其他收益的数额</td>
<td>{{detailTemp.freezeAmount ? detailTemp.freezeAmount : "-"}}</td>
<td class="table-key">执行法院</td>
<td>{{detailTemp.executiveCourt ? detailTemp.executiveCourt : "-"}}</td>
</tr>
<tr>
<td class="table-key">冻结日期自</td>
<td>{{detailTemp.freezeStartDate ? detailTemp.freezeStartDate : "-"}}</td>
<td class="table-key">冻结日期至</td>
<td>{{detailTemp.freezeEndDate ? detailTemp.freezeEndDate : "-"}}</td>
</tr>
<tr>
<td class="table-key">冻结期限</td>
<td>{{detailTemp.freezeYearMonth ? detailTemp.freezeYearMonth : "-"}}</td>
<td class="table-key">公示日期</td>
<td>{{detailTemp.publicDate ? detailTemp.publicDate : "-"}}</td>
</tr>
</table>
</div>
</el-dialog>
</div>
</template>
<script>
......@@ -39,12 +97,12 @@ export default {
type: "0"
},
forData: [
{ label: '执行通知书文号', prop: 'name', width: '164' },
{ label: '被执行人', prop: 'companyName', minWidth: '146' },
{ label: '股权数额', prop: 'executionApplicant', width: '113' },
{ label: '执行法院', prop: 'court', minWidth: '146' },
{ label: '状态', prop: 'releaseDate', width: '50' },
{ label: '冻结起止日期', prop: 'source', width: '171' },
{ label: '执行通知书文号', prop: 'number', width: '164' },
{ label: '被执行人', prop: 'beExecutedPerson', minWidth: '146' },
{ label: '股权数额', prop: 'amount', width: '113' },
{ label: '执行法院', prop: 'executiveCourt', minWidth: '146' },
{ label: '状态', prop: 'status', width: '50' },
{ label: '冻结起止日期', prop: 'freezeStartDate', width: '171', slot: true },
{ label: '公式时间', prop: 'source', width: '93' },
{ label: '操作', prop: 'operation-table', width: '50', slot: true },
],
......@@ -56,8 +114,12 @@ export default {
tableData: [],
tableDataTotal: 0,
showList: [],
isSkeleton: true,
resetStatus: false
isSkeleton: false,
resetStatus: false,
// 股权冻结详情
equityFreezingDetailDialog: false,
// 详情缓存
detailTemp: {}
};
},
//可访问data属性
......@@ -84,7 +146,7 @@ export default {
},
async handleQuery(params) {
try {
let data = params ? params : this.queryParams;
let data = params ? { ...params, type: parseInt(params.type) } : { ...this.queryParams, type: parseInt(this.queryParams.type) };
this.isSkeleton = true;
const res = await getEquityFreezingApi(data);
this.tableData = res.rows ? res.rows : [];
......@@ -102,7 +164,11 @@ export default {
},
// 查看详情
viewDetail(row) {
this.detailTemp = row;
this.equityFreezingDetailDialog = true;
},
dialogClose() {
this.detailTemp = {};
}
},
}
......@@ -159,5 +225,73 @@ export default {
}
}
@import "@/assets/styles/search-common.scss";
::v-deep .equity-freezing-dialog-container {
.equity-freezing-dialog {
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
border-radius: 4px;
margin: 0px !important;
.el-dialog__header {
padding: 20px;
height: 56px;
display: flex;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
border-bottom: 1px solid #eeeeee;
.el-dialog__title {
color: #232323;
font-weight: bold;
line-height: 16px;
}
.el-dialog__headerbtn {
position: static;
width: 16px;
height: 16px;
}
}
.el-dialog__body {
padding: 24px 20px;
box-sizing: border-box;
.equity-freezing-dialog-inner {
width: 100%;
height: 100%;
& > table {
width: 100%;
border-spacing: 0;
border-collapse: collapse;
&,
th,
td {
border: 1px solid #e6eaf1;
box-sizing: border-box;
}
td {
padding: 9px 12px;
line-height: 22px;
color: #232323;
font-size: 12px;
}
.table-key {
width: 140px;
background: #f0f3fa;
color: rgba(35, 35, 35, 0.8);
}
}
}
}
}
}
}
</style>
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