Browse Source

groupName

prod
jiangyy 4 years ago
parent
commit
299b357e19
  1. 164
      src/views/modules/visual/basicinfo/cpts/topic-info.vue
  2. 3
      src/views/modules/visual/communityGovern/cpt/project-info.vue

164
src/views/modules/visual/basicinfo/cpts/topic-info.vue

@ -7,7 +7,8 @@
<span>话题详情</span> <span>话题详情</span>
</div> </div>
<div class="btn-close" @click="handleClose"> <div class="btn-close"
@click="handleClose">
<img src="@/assets/img/shuju/people/close.png" /> <img src="@/assets/img/shuju/people/close.png" />
</div> </div>
@ -15,12 +16,10 @@
<div class="info-title">话题内容</div> <div class="info-title">话题内容</div>
<div class="info-content">{{ info.topicContent }}</div> <div class="info-content">{{ info.topicContent }}</div>
<div class="info-pics"> <div class="info-pics">
<img <img :src="src"
:src="src"
:key="src" :key="src"
v-for="src in info.topicImgs" v-for="src in info.topicImgs"
@click="watchImg(src)" @click="watchImg(src)" />
/>
</div> </div>
<div class="info-prop"> <div class="info-prop">
<span>发布时间</span> <span>发布时间</span>
@ -37,65 +36,57 @@
</div> </div>
<div class="tabs"> <div class="tabs">
<div <div class="tab-btn"
class="tab-btn"
@click="subStartGroupIndex" @click="subStartGroupIndex"
v-if="groupList.length > 9" v-if="groupList.length > 9">
>
<img src="@/assets/img/shuju/people/arrow-double-left.png" /> <img src="@/assets/img/shuju/people/arrow-double-left.png" />
</div> </div>
<div <div v-show="index >= startGroupIndex && index < startGroupIndex + 9"
v-show="index >= startGroupIndex && index < startGroupIndex + 9"
class="tab" class="tab"
:class="groupIndex % groupList.length == index ? 'z-on' : ''" :class="groupIndex % groupList.length == index ? 'z-on' : ''"
:key="'tab' + index" :key="'tab' + index"
@click="groupIndex = index" @click="groupIndex = index"
v-for="(item, index) in groupList" v-for="(item, index) in groupList">
>
{{ item.label }} {{ item.label }}
</div> </div>
<div <div class="tab-btn"
class="tab-btn"
@click="addStartGroupIndex" @click="addStartGroupIndex"
v-if="groupList.length > 9" v-if="groupList.length > 9">
>
<img src="@/assets/img/shuju/people/arrow-double-right.png" /> <img src="@/assets/img/shuju/people/arrow-double-right.png" />
</div> </div>
</div> </div>
<div class="m-case"> <div class="m-case">
<div class="m-yanpan" v-if="groupIndex == 0"> <div class="m-yanpan"
v-if="groupIndex == 0">
<div v-if="issueInfo.projectId"> <div v-if="issueInfo.projectId">
<analyse <analyse v-if="yanPan.loading"
v-if="yanPan.loading"
singleTitle="楼院小组" singleTitle="楼院小组"
:userList="yanPan.houseUserList" :userList="yanPan.houseUserList"
:userName="yanPan.icUserName" :userName="yanPan.icUserName"
:singleList="yanPan.categoryList" :singleList="yanPan.categoryList"
@user="toUserInfo" @user="toUserInfo"
@project="toProjectInfo" @project="toProjectInfo" />
/>
<screen-loading v-else>加载中</screen-loading> <screen-loading v-else>加载中</screen-loading>
</div> </div>
<div v-else class="m-hint"> <div v-else
<img class="m-hint">
src="@/assets/img/modules/visual/noData.png" <img src="@/assets/img/modules/visual/noData.png"
class="no-data-img" class="no-data-img" />
/>
</div> </div>
</div> </div>
<div class="m-tb" v-if="groupIndex == 1"> <div class="m-tb"
<cpt-tb v-if="groupIndex == 1">
:col-list="comment.colList" <cpt-tb :col-list="comment.colList"
:loading="comment.loading" :loading="comment.loading"
:header="comment.header" :header="comment.header"
:list="comment.list" :list="comment.list"
@operate="checkTopicCommentImg" @operate="checkTopicCommentImg"></cpt-tb>
></cpt-tb>
</div> </div>
<div v-if="groupIndex == 2"> <div v-if="groupIndex == 2">
<div class="m-row" v-if="info.issueId"> <div class="m-row"
v-if="info.issueId">
<div class="m-info"> <div class="m-info">
<div class="info-prop"> <div class="info-prop">
<span>议题标题</span> <span>议题标题</span>
@ -113,7 +104,8 @@
<span>议题发起人</span> <span>议题发起人</span>
<span>{{ issueInfo.issueInitiator }}</span> <span>{{ issueInfo.issueInitiator }}</span>
</div> </div>
<div class="info-prop"> <div v-if="issueInfo.topicInfo&&issueInfo.topicInfo.groupName"
class="info-prop">
<span>议题来源</span> <span>议题来源</span>
<span>{{ issueInfo.topicInfo.groupName }}</span> <span>{{ issueInfo.topicInfo.groupName }}</span>
</div> </div>
@ -143,22 +135,20 @@
</div> </div>
</div> </div>
<line-chart <line-chart v-if="issueChartData.length > 0"
v-if="issueChartData.length > 0" :list="issueChartData" />
:list="issueChartData"
/>
</div> </div>
</div> </div>
<div v-else class="m-hint"> <div v-else
<img class="m-hint">
src="@/assets/img/modules/visual/noData.png" <img src="@/assets/img/modules/visual/noData.png"
class="no-data-img" class="no-data-img" />
/>
</div> </div>
</div> </div>
<div v-if="groupIndex == 3"> <div v-if="groupIndex == 3">
<div class="m-row" v-if="issueInfo.projectId"> <div class="m-row"
v-if="issueInfo.projectId">
<div class="m-info"> <div class="m-info">
<div class="info-prop"> <div class="info-prop">
<span>项目标题</span> <span>项目标题</span>
@ -176,33 +166,36 @@
<span>当前处理部门</span> <span>当前处理部门</span>
<span>{{ projectInfo.departmentNameList.join("、") }}</span> <span>{{ projectInfo.departmentNameList.join("、") }}</span>
</div> </div>
<div class="info-prop" v-if="projectCate.length > 0"> <div class="info-prop"
v-if="projectCate.length > 0">
<span>分类</span> <span>分类</span>
<fold-text :row="3"> <fold-text :row="3">
<div :key="item.name" v-for="item in projectCate"> <div :key="item.name"
v-for="item in projectCate">
{{ item.name }} {{ item.name }}
</div> </div>
</fold-text> </fold-text>
</div> </div>
<div class="info-prop" v-if="projectTag.length > 0"> <div class="info-prop"
v-if="projectTag.length > 0">
<span>标签</span> <span>标签</span>
<fold-text :row="3"> <fold-text :row="3">
<div :key="item.name" v-for="item in projectTag"> <div :key="item.name"
v-for="item in projectTag">
{{ item.name }} {{ item.name }}
</div> </div>
</fold-text> </fold-text>
</div> </div>
</div> </div>
<div class="m-process" v-if="projectProcess.length > 0"> <div class="m-process"
v-if="projectProcess.length > 0">
<div class="process-title">处理进展</div> <div class="process-title">处理进展</div>
<div class="list"> <div class="list">
<div <div class="item"
class="item"
:class="index === 0 ? 'z-on' : ''" :class="index === 0 ? 'z-on' : ''"
:key="item.processId" :key="item.processId"
v-for="(item, index) in projectProcess" v-for="(item, index) in projectProcess">
>
<div class="item-row"> <div class="item-row">
<div class="name">{{ item.processName }}</div> <div class="name">{{ item.processName }}</div>
<div class="date"> <div class="date">
@ -215,20 +208,16 @@
<div class="detail-value">{{ item.departmentName }}</div> <div class="detail-value">{{ item.departmentName }}</div>
</div> </div>
<div <div class="detail"
class="detail" v-if="item.processName != '转项目' && item.publicReply">
v-if="item.processName != '转项目' && item.publicReply"
>
<div class="detail-field"> </div> <div class="detail-field"> </div>
<div class="detail-value"> <div class="detail-value">
<fold-text :row="3">{{ item.publicReply }}</fold-text> <fold-text :row="3">{{ item.publicReply }}</fold-text>
</div> </div>
</div> </div>
<div <div class="detail"
class="detail" v-if="item.processName != '转项目' && item.internalRemark">
v-if="item.processName != '转项目' && item.internalRemark"
>
<div class="detail-field">内部备注</div> <div class="detail-field">内部备注</div>
<div class="detail-value"> <div class="detail-value">
<fold-text :row="3">{{ <fold-text :row="3">{{
@ -238,12 +227,10 @@
</div> </div>
<div class="detail"> <div class="detail">
<div class="attachement-list"> <div class="attachement-list">
<a <a :href="att.url"
:href="att.url"
target="_blank" target="_blank"
:key="att.url" :key="att.url"
v-for="att in item.internalFile" v-for="att in item.internalFile">
>
<i class="el-icon-folder-opened"></i> <i class="el-icon-folder-opened"></i>
{{ att.name }} {{ att.name }}
</a> </a>
@ -253,11 +240,10 @@
</div> </div>
</div> </div>
</div> </div>
<div v-else class="m-hint"> <div v-else
<img class="m-hint">
src="@/assets/img/modules/visual/noData.png" <img src="@/assets/img/modules/visual/noData.png"
class="no-data-img" class="no-data-img" />
/>
</div> </div>
</div> </div>
</div> </div>
@ -276,7 +262,7 @@ import analyse from "@/views/modules/visual/cpts/analyse";
import foldText from "@/views/components/foldText"; import foldText from "@/views/components/foldText";
import dateFormat from "dai-js/tools/dateFormat"; import dateFormat from "dai-js/tools/dateFormat";
function iniData() { function iniData () {
return { return {
groupList: [ groupList: [
{ label: "研判分析" }, { label: "研判分析" },
@ -434,7 +420,7 @@ export default {
computed: {}, computed: {},
watch: { watch: {
topicId() { topicId () {
let data = iniData(); let data = iniData();
Object.keys(data).forEach((k) => { Object.keys(data).forEach((k) => {
this[k] = data[k]; this[k] = data[k];
@ -443,16 +429,16 @@ export default {
}, },
}, },
mounted() { mounted () {
this.getApiData(); this.getApiData();
}, },
methods: { methods: {
watchImg(src) { watchImg (src) {
window.open(src); window.open(src);
}, },
addStartGroupIndex() { addStartGroupIndex () {
const { startGroupIndex, groupList } = this; const { startGroupIndex, groupList } = this;
if (startGroupIndex < groupList.length - 9) { if (startGroupIndex < groupList.length - 9) {
this.startGroupIndex = startGroupIndex + 1; this.startGroupIndex = startGroupIndex + 1;
@ -460,7 +446,7 @@ export default {
this.startGroupIndex = groupList.length - 9; this.startGroupIndex = groupList.length - 9;
} }
}, },
subStartGroupIndex() { subStartGroupIndex () {
const { startGroupIndex, groupList } = this; const { startGroupIndex, groupList } = this;
if (startGroupIndex > 0) { if (startGroupIndex > 0) {
this.startGroupIndex = startGroupIndex - 1; this.startGroupIndex = startGroupIndex - 1;
@ -468,11 +454,11 @@ export default {
this.startGroupIndex = 0; this.startGroupIndex = 0;
} }
}, },
handleClose() { handleClose () {
this.$emit("close"); this.$emit("close");
}, },
async getApiData() { async getApiData () {
this.getComment(); this.getComment();
await this.getInfo(); await this.getInfo();
await this.getIssueInfo(); await this.getIssueInfo();
@ -484,7 +470,7 @@ export default {
}, },
// //
async getInfo() { async getInfo () {
const url = "/resi/group/topic/gettopicdetail"; const url = "/resi/group/topic/gettopicdetail";
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
@ -499,7 +485,7 @@ export default {
}, },
// //
async getComment() { async getComment () {
const url = "/resi/group/comment/getcommentlistoftopic"; const url = "/resi/group/comment/getcommentlistoftopic";
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
@ -526,7 +512,7 @@ export default {
} }
}, },
checkTopicCommentImg(index) { checkTopicCommentImg (index) {
const { const {
comment: { srcList }, comment: { srcList },
} = this; } = this;
@ -536,7 +522,7 @@ export default {
}, },
// //
async getIssueInfo() { async getIssueInfo () {
const { const {
info: { issueId }, info: { issueId },
} = this; } = this;
@ -555,7 +541,7 @@ export default {
}, },
// //
async getIssueTrend() { async getIssueTrend () {
const { const {
info: { issueId }, info: { issueId },
} = this; } = this;
@ -592,7 +578,7 @@ export default {
}, },
// //
async getProjectProcess() { async getProjectProcess () {
const { issueInfo } = this; const { issueInfo } = this;
if (!issueInfo || !issueInfo.projectId) return; if (!issueInfo || !issueInfo.projectId) return;
const url = "/gov/project/trace/processlist-v2"; const url = "/gov/project/trace/processlist-v2";
@ -615,7 +601,7 @@ export default {
}, },
// //
async getProjectInfo() { async getProjectInfo () {
const { issueInfo } = this; const { issueInfo } = this;
if (!issueInfo || !issueInfo.projectId) return; if (!issueInfo || !issueInfo.projectId) return;
const url = "/gov/project/trace/projectdetail"; const url = "/gov/project/trace/projectdetail";
@ -631,7 +617,7 @@ export default {
} }
}, },
async getProjectCate() { async getProjectCate () {
const { issueInfo } = this; const { issueInfo } = this;
if (!issueInfo || !issueInfo.projectId) return; if (!issueInfo || !issueInfo.projectId) return;
const url = "/gov/project/projectcategory/categorytaglist"; const url = "/gov/project/projectcategory/categorytaglist";
@ -649,7 +635,7 @@ export default {
}, },
// //
async getYanPan() { async getYanPan () {
const url = "/gov/project/project/topic-research-analysis"; const url = "/gov/project/project/topic-research-analysis";
if (!this.issueInfo.projectId) return; if (!this.issueInfo.projectId) return;
@ -685,13 +671,13 @@ export default {
} }
}, },
toUserInfo(item) { toUserInfo (item) {
this.$router.push({ this.$router.push({
path: `/main-shuju/visual-basicinfo-people/${item.icResiUserId}`, path: `/main-shuju/visual-basicinfo-people/${item.icResiUserId}`,
}); });
}, },
toProjectInfo(item) { toProjectInfo (item) {
console.log(item); console.log(item);
this.topicId = item.topicId; this.topicId = item.topicId;
}, },

3
src/views/modules/visual/communityGovern/cpt/project-info.vue

@ -173,7 +173,8 @@
<span>议题发起人</span> <span>议题发起人</span>
<span>{{ issueInfo.issueInitiator }}</span> <span>{{ issueInfo.issueInitiator }}</span>
</div> </div>
<div class="info-prop"> <div v-if="issueInfo.topicInfo&&issueInfo.topicInfo.groupName"
class="info-prop">
<span>议题来源</span> <span>议题来源</span>
<span>{{ issueInfo.topicInfo.groupName }}</span> <span>{{ issueInfo.topicInfo.groupName }}</span>
</div> </div>

Loading…
Cancel
Save